物理内存的分页

分页机制详述
对于4GB线性地址而言,每个页4KB,则总共可以分成1024*1024=1048576个页面。
要表示每个页面的物理地址,需要4个字节。那么总共需要4MB的空间来存储分页相关的信息
程序可以独享4GB的线性地址。所以每个程序都需要维护一个分页信息。那么每个程序都要4M的空间用来存储分页信息,这是不可接受的

重点理解每个页面的物理地址。也就是说 每个页面的地址 是需要告诉CPU的,CPU根据这个地址 去寻找实际的物理页面
那么这地址是几位呢,也就是物理地址总线的长度,32位的就是 4个字节。
一个页面4K

做个简单的数学计算,假设虚拟地址空间为32位(即4GB)。每个页面映射4KB以及每条页表项占4B:一级页表:进程需要1M个页表项(4GB / 4KB = 1M, 2^20个页表项),即页表(每个进程都有一个页表)占用4MB(1M * 4B = 4MB)的内存空间。二级页表:一级页表映射4MB(2^22)、二级页表映射4KB,则需要1K个一级页表项(4GB / 4MB = 1K, 2^10个一级页表项)、每个一级页表项对应1K个二级页表项(4MB / 4KB = 1K),这样页表占用4.004MB(1K * 4B + 1K * 1K * 4B = 4.004MB)的内存空间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值