svgxl
驱动牛犊
驱动牛犊
  • 注册日期2001-08-30
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1366回复:3

Page Mapping

楼主#
更多 发布于:2001-09-11 14:23
那位高手知道Windows 9x内存管理具体过程?
lcy
lcy
驱动牛犊
驱动牛犊
  • 注册日期2001-07-17
  • 最后登录2005-05-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-09-11 22:28
这个问题不是一两句话,就能回答清楚的。windows是基于段叶式管理的。当要访问内存时。先是得到段索引子和偏移量。接着用段索引子,到GDT或LDT 找到段描述符。经计算得到线性地址。此时段描述符,还告诉windows这个内容在主存中还是不在主存中。若在主存中。则可以直接访问。若不在主存中,则要经过分叶机制,才能得到起物理地址。分叶机制,是这样工作,它接连调用两个驱动程序,PAGEFILE.VXD,和PAGESWAP.VXD .大致这样就得到其要访问的数据
LitteSW
驱动中牛
驱动中牛
  • 注册日期2001-06-10
  • 最后登录2010-08-16
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-09-12 00:45
找本厚点的驱动开发的书,上面讲的比较详细。

穿梭于都市高楼之间,总是孜孜不倦地追寻着自由,蓦然回首,去发现已陷入深深的枷锁之中
svgxl
驱动牛犊
驱动牛犊
  • 注册日期2001-08-30
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-09-12 09:24
……:o
我想知道Windows 9x对Page Mapping的具体操作。

比如说,有个总的页表。进程Memory Context中记录了其所包含的页,或者每个进程都有自己的页表……(当然这个页表不是指Page Table)

我的最终目的是让多个进程的不同的线性地址指向相同的物理存储器。(有VMM Service可以让两个进程相同的线性地址共享物理存储空间)

还有,在天津好像买不到什么好书,而且我也没钱。:p
游客

返回顶部