Information Security - 2. Descriptor Tables There are two descriptor tables – Global Descriptor Tables – Local Descriptor Tables The global descriptor.

Slides:



Advertisements
Similar presentations
Memory Management Unit
Advertisements

O PERATING I N P ROTECTED M ODE Prof.P.C.Patil Department of Computer Engg Matoshri College of Engg.Nasik M ICROPROCESSOR A RCHITECTURE.
Types of Code Segments Conforming Code Segment
Presented By Dr. Shazzad Hosain Asst. Prof. EECS, NSU
Introduction to The x86 Microprocessor
Computer Organization and Assembly Languages Yung-Yu Chuang
Unit 4 Chapter-1 Multitasking. The Task State Segment.
Intel MP.
CSC 221 Computer Organization and Assembly Language
OS Memory Addressing.
IA-32 Processor Architecture
X86 segmentation, page tables, and interrupts 3/17/08 Frans Kaashoek MIT
Segment-registers’ hidden bits A look at how segmentation attributes are cached within the CPU’s segment-registers.
Venturing into protected-mode
CS2422 Assembly Language & System Programming September 22, 2005.
Microprocessor Systems Design I Instructor: Dr. Michael Geiger Fall 2012 Lecture 15: Protected mode intro.
UNIT 2 Memory Management Unit and Segment Description and Paging
1/2002JNM1 With 20 bits, 1,048,576 different combinations are available. Each memory location is assigned a different combination. Each memory location.
Microprocessor system architectures – IA32 segmentation Jakub Yaghob.
The Pentium Processor.
Multitasking Mr. Mahendra B. Salunke Asst. Prof. Dept. of Computer Engg., STES SITS, Narhe, Pune-41 STES Sinhgad Institute of Tech. & Science Dept. of.
CSC 660: Advanced Operating SystemsSlide #1 CSC 660: Advanced OS Memory Addressing / Kernel Modules.
Memory Addressing in Linux (Chap. 2, Understanding the Linux Kernel) J. H. Wang Oct. 20, 2008.
System Address Registers/Memory Management Registers Four memory management registers are used to specify the locations of data structures which control.
80386DX.
1 i386 Memory Management Professor Ching-Chi Hsu 1998 年 4 月.
Virtual 8086 Mode  The supports execution of one or more 8086, 8088, 80186, or programs in an protected-mode environment.  An 8086.
Linux Memory Management
EFLAG Register of The The only new flag bit is the AC alignment check, used to indicate that the microprocessor has accessed a word at an odd.
Microprocessor system architectures – IA32 tasks Jakub Yaghob.
Segment Descriptor Segments are areas of memory defined by a programmer and can be a code, data or stack segment. In segments need not be all the.
contains 8086 processor and several additional functional chips: clock generator 2 independent DMA channels PIC 3 programmable 16-bit timers.
D P L s G D X U P Segment Descriptor A T Y P E
1 Microprocessors CSE Protected Mode Memory Addressing Remember using real mode addressing we were previously able to address 1M Byte of memory.
Page Replacement Implementation Issues Text: –Tanenbaum ch. 4.7.
Chapter 2 The Microprocessor Architecture Microprocessors prepared by Dr. Mohamed A. Shohla.
Microprocessor system architectures – IA32 security
Information Security - 2. Task Switching Every process has an associated Task State Segment, whose starting point is stored in the Task register. A task.
Memory Management Unit and Segment Description and Paging
Information Security - 2. Descriptor Tables Descriptors are stored in three tables: – Global descriptor table (GDT) Maintains a list of most segments.
OS Memory Addressing. Architecture CPU – Processing units – Caches – Interrupt controllers – MMU Memory Interconnect North bridge South bridge PCI, etc.
Information Security - 2. CISC Vs RISC X86 is CISC while ARM is RISC CISC is Compiler’s heaven while RISC is Architecture’s heaven Orthogonal ISA in RISC.
contains 8086 processor and several additional functional chips: –clock generator –2 independent DMA channels –PIC –3 programmable 16-bit.
Privilege Check for Control Transfer(Code Access) Control transfers (except interrupts) are accomplished by the instructions JMP, CALL, and RET The "near"
Tutorial 7 Module 6.
Microprocessor Architecture
Microprocessor Systems Design I
Introduction to The x86 Microprocessor
Lecture on Real Mode Memory Addressing
Descriptor Table & Register
16.317: Microprocessor System Design I
Microprocessor Systems Design I
Electronic Computers M
Microprocessor Systems Design I
Microprocessor Systems Design I
Privilege Levels.
Address Translation Mechanism of 80386
143A: Principles of Operating Systems Lecture 5: Address translation
Protection UQ: Explain the protection mechanism of X86 Intel family microprocessor(10 Marks)
Information Security - 2
x86 segmentation, page tables, and interrupts
System Segment Descriptor
Page Replacement Implementation Issues
Tutorial 7 MODULE 6.
Operating Modes UQ: State and explain the operating modes of X86 family of processors. Show the mode transition diagram highlighting important features.(10.
8086 Registers Module M14.2 Sections 9.2, 10.1.
Page Replacement Implementation Issues
Tutorial No. 11 Module 10.
Information Security - 2
CS444/544 Operating Systems II Virtual Memory
Presentation transcript:

Information Security - 2

Descriptor Tables There are two descriptor tables – Global Descriptor Tables – Local Descriptor Tables The global descriptor table’s base address is stored in GDTR The local descriptor table’s base address is stored in LDTR The two privileged instructions LGDT and LLDT loads the GDTR and LDTR.

Structure of a Selector IndexT T1 = 0 GDT = 1 LDT Since segment descriptors are each 8 bytes, the last three bits of the selector is zero, in which one of them is used for LDT/GDT access.

Two process each of PL = 3 should be allotted segments such that one should not access the segments of other. GDTR GDT All descriptors in GDT have PL = 0,1,2 LDTR Per process If at all each process should access memory, it has to use the descriptors in its LDTR only and it cannot change the LDTR/LDT/GDTR/GDT contents as they would be maintained in a higher privileged memory area.

Did You Note!! There is an 100 % degradation in Memory access time – because every memory access is two accesses now, one for getting the base address and another for actually accessing the data. A solution indeed: Along with the segment registers, keep a shadow registers which stores additional necessary information.

Segment selectorBase Address, Limit, DPL. Visible partHidden part CS SS DS ES FS GS

Be Careful 0x Descriptor Table Base Address Linear Address Logical Address Base = 100 Changing Base Linear address will still be 120 Have to execute mov DS,0x10 again to get the answer as 220, as this would update the hidden part Base = 200 add [DS:20],eax

End of Session-12 Thank You