7.构建页表,启用分页机制

本文详细介绍了分页机制的原因和工作原理,包括一级页表和二级页表的设置。通过建立页目录表和页表,解释了如何将线性地址转换为物理地址,并阐述了启用分页的实验过程,涉及到内核空间共享、GDT、段描述符和关键寄存器的修改。
摘要由CSDN通过智能技术生成

关于分页的原因,分页机制的原理就不赘述了。

0.一些问题

:前面已经把内存分段了,难道直接舍弃,采用分页嘛?
:要兼容,不舍弃。分段用 [段基址:偏移地址]得到一个线性地址,得到的线性地址再经过分页机制的转换,才得到真正的物理地址。才把这个物理地址送到地址线去访问真实的物理内存。
分页机制是建立在分段机制之上的。

在这里插入图片描述
段部件的作用是根据段基址和偏移地址得到一个线性地址。在没有启用分页机制的情况下,这个线性地址就是物理地址。

1.一级页表

整个内存空间分为大小相等的页,页的大小为 4KB。对于4GB的内存空间,也就有1M(1048576)个页。

内存中还有一个区域叫页表。页表中有页表项,每个页表项对应一个页。也就有1048576个页表项。
页表项里大小为4字节,存放的是对应的每个页的物理地址。

线性地址是如何转化为物理地址的呢?
一个线性地址是 32 位的,用高 20 位去页表中检索页表项,找到页表项,得到里面的物理地址,就得到真正的页的物理地址。低 12 位是页内偏移地址。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值