1 / 4

Address Translation - Mapping virtual addresses to physical memory

Address Translation - Mapping virtual addresses to physical memory. user. Mapping via page table entries Indirect relationship between virtual pages and physical memory. Virtual pages. x86:. Physical memory. 31. 22. 21. 12. 11. 0. system. 10. 10. 12. Page directory index. user.

yule
Download Presentation

Address Translation - Mapping virtual addresses to physical memory

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Address Translation - Mapping virtual addresses to physical memory user • Mapping via page table entries • Indirect relationship between virtual pages and physical memory Virtualpages x86: Physical memory 31 22 21 12 11 0 system 10 10 12 Page directory index user Page table index Byte index Page tableentries system

  2. Address TranslationHardware Support Intel x86 • Intel x86 provides two levels of address translation • Segmentation (mandatory, since 8086) • Paging (optional, since 80386) • Segmentation: first level of address translation • Intel: logical address (selector:offset) to linear address (32 bits) • NT virtual address is Intel linear address (32 bits) • Paging: second level of address translation • Intel: linear address (32 bits) to physical address • NT: virtual address (32 bits) to physical address • Physical address: 32 bits (4 GB) all NT versions, 36 bits (64 GB) PAE • Page size: • 4 kb since 80386 (all NT versions) • 4 MB since Pentium Pro (supported in NT 4, Windows 2000)

  3. 15 3 2 1 0 Index TI=0 RPL Intel x86 Segmentation Offset Segment Selector Intel Logical address 31 0 : IntelLinearAddresses Global Descriptor Table (GDT) 0xffffffff Access Limit=0xfffff Base Address = 0 Access Limit=0xfffff + Base Address = 0 NT VirtualAddresses 0

  4. Intel x86 Paging – Address Translation Intel Linear Address NT-PFN Database Physical Address 31 22 21 12 11 0 10 10 12 n NT Virtual Address operand PTE 4 Kb page 4Kb PDE 4kb pageframe 22 bitoffset Page table1024 entries operand 4Mb PDE 4 Mb page 3 4MB page frame 2 Page directory 1024x4byte entries (one per process) 1 0 cr 3 Physical Memory Page FrameNumber Database Physical address Page tables are created on demand

More Related