所有,请原谅我是 Windows 驱动程序开发的新手,从 WDK 阅读此文档后,我有一些我不明白的地方。
文件说
进程可用的虚拟地址范围称为进程的虚拟地址空间。每个用户模式进程都有自己的私有虚拟地址空间。对于 32 位进程,虚拟地址空间通常是 2 GB 范围 0x00000000 到 0x7FFFFFFF。对于 64 位进程,虚拟地址空间是 0x000'00000000 到 0x7FF'FFFFFFFF 的 8 TB 范围。虚拟地址范围有时称为虚拟内存范围。
我的问题是:
假设有一台具有 8 GB 内存库的计算机。
- 所有的虚拟地址空间都是从这 8 GB 的内存中实际分配的吗?
- 如果一个进程需要分配2g的虚拟地址空间,我可以说如果系统中有4个进程在运行。他们完全需要 8 GB 内存?如果答案是肯定的,这是否意味着在这些计算机中可以运行的最大进程数是 4?
我不知道我是不是误会了什么。请纠正我。多谢。