作者wa120 (哇120)
看板Programming
标题[问题] 有关XP单一一个分页空间
时间Sat Jun 27 11:43:35 2009
我想问的是
一个page table里面会有很多个分页
XP的每一个分页的基本Size是不是64Kb
我在这方面有稍微的查询过
相关的可能是
1. Window 98, window 2000的分页才是64K
因为当时是16bits电脑 2^16-(相关保护位元)=65536-X
而XP为32bits则是无64K的限制
但是现今纯DOS版的仍然具有64Kb限制
2. XP现在使用的分页策略是 Page Cluster
所以没有任何单一分页大小的限制
其实我比较想知道...
我使用malloc()用到最大多少记忆体空间才会产生刚好一页的page分页
观念有错误请帮我指正 谢谢各位
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.175.103.6
※ 编辑: wa120 来自: 218.175.103.6 (06/27 11:44)
1F:→ meltice:OS无时无刻都有page fault 115.82.250.195 06/27 12:11
2F:→ meltice:我猜你可能是想要配置"真实"记忆体吧 115.82.250.195 06/27 12:11
3F:→ meltice:至於DOS的64k跟page size没有关系 115.82.250.195 06/27 12:14
4F:→ wa120:最简单的想法是使用malloc() 218.175.103.6 06/27 12:17
5F:→ wa120:最大单一page size上限 218.175.103.6 06/27 12:17
6F:推 meltice:请参考VirtualLock 115.82.250.195 06/27 12:27
8F:推 zlw:16位元时代,还没分页这种东西吧... 124.8.130.148 06/27 13:20
9F:→ MOONRAKER:有啊,那时候有EMS/XMS,後来有DPMI 125.232.99.96 06/27 13:41
10F:→ MOONRAKER:你要避免的是thrashing,其他可不用担心 125.232.99.96 06/27 13:42
11F:→ wa120:某Real-time Source Code的Linked List 218.175.103.33 06/27 14:34
12F:→ wa120:是以64K为一个单位 我在猜是不是Page fault 218.175.103.33 06/27 14:36
13F:→ zlw:嗯...EMS这些好像有听过,年代久远 124.8.130.148 06/27 14:37
14F:→ wa120:的问题 因为要满足Real-time所以会注重小细 218.175.103.33 06/27 14:37
15F:→ wa120:节 不过感谢meltice大 学到点新东西了@@ 218.175.103.33 06/27 14:38
16F:推 MOONRAKER:page fault是说目前使用的page不在记忆 125.232.99.96 06/27 20:07
17F:→ MOONRAKER:体内 要到swap去拿进来 跟page大小应该 125.232.99.96 06/27 20:08
18F:→ MOONRAKER:没有直接关系吧 125.232.99.96 06/27 20:08
19F:→ final01:你好像有点搞错xp page也不是64kb 是4kb 59.112.238.108 06/27 21:54
20F:→ wa120:嗯 4KB我记得是恐龙本讲的 不过网路上 218.175.103.33 06/27 23:00
21F:→ wa120:找不到资料... 218.175.103.33 06/27 23:00
※ 编辑: wa120 来自: 218.175.103.33 (06/27 23:08)
22F:推 meltice:SYSTEM_INFO struct的dwPageSize 115.83.254.151 06/28 08:57
23F:→ meltice:Linux的话有个getpagesize()可以用 115.83.254.151 06/28 08:58