【发布时间】:2011-08-19 12:43:19
【问题描述】:
这篇文章http://msdn.microsoft.com/en-us/library/aa366912(v=vs.85).aspx 指出,win32 环境中的虚拟内存(假定为 32 位)一半专用于用户模式进程,一半专用于内核模式进程。
如果我从分页中回忆起,每个进程都应该有自己的地址空间,从 0 到任何值(根据文章最大 0x7FFFFFFF)。但是对于内核驱动程序呢?每个内核驱动程序/程序是否都有从 0x80000000 到 0xFFFFFFFF 的内核地址空间?
还是我错了?
【问题讨论】:
-
-> 所以 ring3 进程有许多不同的虚拟空间(都具有相同的地址范围)和一个只有 ring0 共享的虚拟空间,对吧?
-
@davka,我不是程序员,但我想 C/C++ 程序员应该很了解这一点
-
我更新了我的答案:大部分(但不一定是全部)内核地址空间都是共享的。
标签: windows memory pagination virtual