操作系统学习笔记 逻辑地址 物理地址 以及分页管理

之前软考写写题目,关于地址这里的题目是会写了,但是也仅限于题目会写,于是准备把操作系统系统性的过一遍,然后到了这里的位置有一点疑惑,对逻辑地址作用于分页管理这里有点疑惑,于是就在这里学一下写下心得。

物理地址就是绝对地址,是内存里的实际地址。主要的还是逻辑地址。

逻辑地址

一开始我没搞清楚逻辑地址的性质,就想着这逻辑地址怎么比页面长度还大。后来看清楚了逻辑地址的属性,是页面号+偏移量。逻辑地址是一个整体,假设用32个二进制位表示逻辑地址。页面大小是4KB。
那么00000000000000000000000000000000红色部分就是偏移量,黑色部分就是页码号。
所以要表示0号页面的逻辑空间就是0~1023
00000000000000000000000000000000~00000000000000000000111111111111
表示1号页面的逻辑空间就是1024~2047
00000000000000000001000000000000~00000000000000000001111111111111

逻辑地址与物理地址的转化

逻辑地址到物理地址的转化就是初始值+偏移量。初始值就可以用页面号对应的内存块号 * 页面大小(页面大小等于内存分块大小)。

页 页表 页表项

页:将进程划分的块,对应的大小就叫页面大小。

页框:将内存划分的块。

页和页框二者一一对应,一个页放入一个页框,(理论上)页的大小和页框的大小相等。

页表:就是一个页和页框一一对应的关系表。【存放在内存中】 关系表只是起到一个索引的作用,说白了就是能根据关系表能查到某一个页面和哪一个页框所对应。

页表项是由页号+块号。但是一定要记住,页号其实是不存在的。页表项里存储的只有块号,页号是按顺序的。设每个块号被3个字节存储,该页表在内存中的起始地址为X,则M号页对应的页表项一定是存放在内存地址为X + 3 * M。所以页号就是页表存放的初始地址和页表项长度计算出来的,并非被存储的数值。(这是慢表)
但是快表是有页表号的,不需要计算,所以称之为快表。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值