|
|
查了下,原来是这样- ^8 e2 S3 N. O1 }6 x7 `: C
2 V7 u5 Q* g7 ~' F1 g* V3 J
PSE 模式
2 f! ?( |# B, x# S( N7 e' i2 T9 E
IA-32支持两种访问超过4GB(32位)的内存的方法;PSE(Page Size Extension,分页大小扩展)是第一种方法,已经在Pentium II上实现了.这种方法的有点是兼容性好,因为它保留了4byte大小的PTE(page table entry,分页表条目).然而,这种方法只能通过驱动程序实现.这样就受到了较大的性能限制,因为在读写超过4GB的内存时,一个缓存区复制的操作是必须的.PSE模式在PSE 36 RAM磁盘使用模式中使用.
* v& P, l9 b' ^, i
2 p* R$ u! W; E: v+ ~PSE不使用任何的分页表而使用标准的1k目录将页面表延伸至4MB的大小(为该模式消除了间接的一层).分页条目(PDE)包含14位的地址,并且结合了22 位的索引,从而产生了36位的扩展物理地址,低于4GB的时候同时支持4KB和4MB的页,标准情况下支持4KB页.: B: I8 l: q ?8 L$ p( n
' |) Z) p6 A+ L% c3 ~8 h$ \注意:高于4GB的分页必须使用PSE模式(4MB分页大小)
: L! x }- {5 T2 q2 B1 E
, U1 e1 q) ]' u* V5 b* z: cPAE模式4 c% h1 v O0 v, l
' ?" Y# V5 ^: C$ i- QPAE是第二种支持4GB以上内存大小的方法;这种方法已经被广泛地使用.PAE以4KB或者2MB的分页将最多64GB的物理内存映射到32位(4GB)的虚地址空间.分页目录及分页表被扩展到8 byte的格式,这样就允许分页表和分页框架的基础地址延伸至24位(原来是20位).这样,额外的4 bit就被用来构成了36位的物理地址.
0 L. x4 G, |6 f# D7 i) \
" h7 p" x+ ~2 \ I0 V; V8 Kwindows以4KB分页大小支持PAE.PAE也支持2MB分页大小的模式.许多UNIX系统采用2MB分页模式.地址转换不需要使用到分页表(PDE直接提供页面框架地址); |
|