二级页表

本文探讨了一级页表和二级页表的工作原理及优缺点。一级页表需要连续的内存分配且每个进程至少占用4M内存。而二级页表克服了这些问题,允许页表分散存放,并仅按需分配,有效节省内存资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一级页表:

比如对于4G的空间,4K页
那需要2^20 == 1M个页标项(无论用不用都需要,系统不知道哪个地址是否会被访问)
1M * 4 == 4M

每个进程都需要4M的内存

(每个进程最小需要4M的内存)

二级页表:

每个进程最多需要一个页目录(4K) + 4K*2^10个页表=4M+4K

每个进程最少需要一个页目录(4K) + 4K*2^0个页表=4K+4K=8K

解释:

一级页表的两个问题:

1.页表在内存分配是必须连续,否则无法查表。

2.每个进程都必须实实在在占用4M,必须全部分配,进程才可以使用。

二级页表的优势:

1.允许页表被分散在内存的各个页面中,不需要连续的4M内存块;

2.并不需要为不存在的或线性地址空间未使用部分分配二级页表;

3.可以在虚拟内存中存放二级页表。

                                              二级页表结构图


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值