内存管理---物理内存、虚拟内存

内存管理----物理内存

PC上有三条总线,分别是数据总线、地址总线和控制总线。32位的CPU的寻址能力为4GB(2^32)个字节。用户最多可以使用4GB的真实的物理内存。


内存管理----虚拟内存

Windows的所有程序(包括Ring0层和Ring3层的程序)可以操作的都是虚拟内存。之所以称为虚拟内存,是因为对它的所有操作,最终会变成一系列对真实物理内存的操作。在CPU中有一个重要的寄存器CR0,它是32位的寄存器,其中的一个位(PG位)是负责告诉系统是否分页的。Windows在启动前会将它的PG位置1,即Windows允许分页。DDK中有一个宏PAGE_SIZE记录着分页大小,一般为4KB。4GB的虚拟内存会被分割成1M个(4GB/4KB=2^20)分页单元。

虚拟地址在0~0x7FFFFFFF范围内的虚拟内存,即低2GB的虚拟地址,被称为用户模式地址。而0x80000000~0xFFFFFFFF范围内的虚拟内存,即高2GB的虚拟地址,被称为内核模式地址。Windows规定运行在用户态(Ring3层)的程序,只能访问用户模式地址,而运行在核心态(Ring0层)的程序,可以访问整个4GB的虚拟内存,即用户模式地址和内核模式地址。





  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值