一.Windows内存地址空间
程序中可以寻址的最大范围。对于程序的运行效率就更高。对于32位操作系统,地址空间范围为0-4G(2^32)
二 地址空间的划分
2.1 用户地址空间
0 - 2G(7FFFFFFF )存放用户的程序和数据。用户空间不能访问内核空间
2.1.1 空指针区(NULL区,0-64K)系统将地址小于64K指针,都是空指针。为了帮助程序员掌握NULL指针的分配情况
2.1.2 用户区
2.1.3 64K禁入区(0x7FFEFFFF - 0x7F FFFFFF )隔离了用户和内核空间;防止用户程序跨越到内核空间中
2.2 内核地址空间
2G - 4G 存放内核的代码和数据,例如系统驱动。
内核空间代码是可以访问用户空间。
三. Windows 内存
3.1 区域
区域就是连续的一块内存。区域的大小一般为64K或者64K倍数。每个区域都有自己的状态:
1)空闲:没有被使用
2)私有:被预定的区域
3ÿ