词条 | Page Size Extension |
释义 |
In computing, Page Size Extension (PSE) refers to a feature of x86 processors that allows for pages larger than the traditional 4 KiB size. It was introduced in the original Pentium processor, but it was only publicly documented by Intel with the release of the Pentium Pro.[1] The CPUID instruction can be used to identify the availability of PSE on x86 CPUs.[2] MotivationImagine the following scenario. An application program requests a 1 MiB memory block. In order to fulfill this request, an operating system that supports paging and that is running on older x86 CPUs will have to allocate 256 pages of 4 KiB each. An overhead of 1 KiB of memory is required for maintaining page directories and page tables. When accessing this 1 MiB memory, each of the 256 page entries would be cached in the translation lookaside buffer (TLB; a cache that remembers virtual address to physical address translations for faster lookup on subsequent memory requests). Cluttering the TLB is possibly one of the largest disadvantages of having several page entries for what could have been allocated in one single memory block. If the TLB gets filled, then a TLB entry would have to be freed, the page directory and page tables would have to be “walked” in memory, and finally, the memory would be accessed and the new entry would be brought into the TLB. This is a severe performance penalty and was possibly the largest motivation for augmenting the x86 architecture with larger page sizes. The PSE allows for page sizes of 4 MiB to exist along with 4 KiB pages. The 1 MiB request described previously would easily be fulfilled with a single 4 MiB page, and it would require only one TLB entry. However, the disadvantage of using larger page sizes is internal fragmentation. Operation{{See also|PSE-36|Physical Address Extension}}In traditional 32-bit protected mode, x86 processors use a two-level page translation scheme, where the control register Enabling PSE (by setting bit 4, PSE, of the system register If newer PSE-36 capability is available on the CPU, as checked using the CPUID instruction, then 4 more bits, in addition to normal 10 bits, are used inside a page-directory entry pointing to a large page. This allows a large page to be located in 36-bit address space. If Physical Address Extension (PAE) is used, the size of large pages is reduced from 4 MiB down to 2 MiB, and PSE is always enabled, regardless of the PSE bit in References1. ^{{cite book | author=T. Shanley | title=Pentium Pro and Pentium II System Architecture | url=https://books.google.com/books?id=MLJClvCYh34C&pg=PA439 | year=1998|publisher=Addison-Wesley Professional | isbn=978-0-201-30973-7|page=439}} 2. ^{{cite book | title = Intel 64 and IA-32 Architectures Software Developer's Manual, Volume 3A | publisher = Intel Corporation | date = August 2007 | pages = 3-26 to 3-28}} External links
2 : X86 architecture|Virtual memory |
随便看 |
|
开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。