2.3操作系统-存储管理:页式存储、逻辑地址、物理地址、物理地址逻辑地址之间的地址关系、页面大小与页内地址长度的关系、缺页中断、内存淘汰规则
创始人
2024-05-31 19:12:44
0

2.3操作系统-存储管理:页式存储、逻辑地址、物理地址、物理地址逻辑地址之间的地址关系、页面大小与页内地址长度的关系、缺页中断、内存淘汰规则

  • 页式存储
  • 逻辑地址、物理地址
  • 如何判断物理地址和逻辑地址它们之间的地址关系?
  • 页面大小与页内地址长度的关系
  • 例题
  • 总结
  • 缺页中断
  • 内存淘汰规则

在存储管理当中,操作系统会负责将外存的一些文件调入到内存当中,以便给CPU调用,如果调用的内容不在内存当中,那么会产生一种中断,叫做缺页中断。然后从外存调数据,调完数据再返回,接着访问之前的断点部分。

在调用的过程当中,如果是一个几十G的文件,调入到内存是一下放不进去的,如果是大型游戏,几百G,都放入内存显然是不可能的。

如果只调用一部分内容,是不是内存就恰好有足够大小的连续空间去放置呢?
太理想化了,这个可能性并不大。所以在存储管理当中,从外存调入数据到内存当中的时候,一般会把完整的内容切割之后,分散的进行放置,那么分割的方式不一样,会有不同的调用方式。

页式存储

分页存储管理,分页存储也就是页式存储的过程。它会将文件与内存都划分成相同大小的区域,这个区域我们叫做,或者叫做

逻辑地址、物理地址

知道相应的页或块之后,我们只需要将页和内存当中对应的位置关系以一个表记录下来,就可以记录它们之间的映射关系。
这个表我们把它叫做页表,页表最基础的内容会包含在用户程序当中的页号,我们一般把它叫做逻辑页号,程序里面的地址叫做逻辑地址

调入到内存之后,放到内存的什么位置呢?
我们把对应关系记录下来,我们叫做页帧号,或者物理块号,它在内存当中的地址我们称为物理地址

对于物理地址和逻辑地址,我们一般会对应用程序根据逻辑地址查表,从而得到它的内存当中的物理地址,然后在实际的访问这个内容,整个过程当中,需要掌握逻辑地址和物理地址的转换关系。

如何判断物理地址和逻辑地址它们之间的地址关系?

我们所有的地址都会划分成两个部分,一个部分是在页内的具体地址,一个是在页外的出现的页号编号,这种编号与页号之间的关系类似于在寄快递的时候,先省市区,再是街道门牌号,较大的地址范围会放在高位上,细节的地址范围会放在低位上,一般低位我们把它叫做页内地址,它是在固定区域大小当,它所定义的一个偏移量,高位就是它对应的编号。

一个完整的地址,一般会用二进制,或者十六进制,有时候也会用十进制来表示,那么怎么确定哪里是页内地址,哪些是页号?
这个时候,会涉及到对页面大小的定义,如果页面存储系统当中,每个页的大小都是4KB,我们在回到主存编制的过程中,现在有一个页面大小的区域,总容量大小是4KB,在未知的情况下,默认按字节编组,也就是4KB/1B=4KB=4096个存储单元,可以表示的编号是0 ~ 4095,如果用比特位二进制来表示的话,则是000000000000 ~ 111111111111。

页面大小与页内地址长度的关系

可以总结下4KB的对应关系:4KB大小的页需要十二位二进制来表示212的不同的编码,对应4K个存储单元编号,对应4KB大小。依此类推,页面大小8KB,则页内地址长度为213

有了这种对应关系之后,将相应的地址转换成二进制,数一数页内地址的长度(从右往左数),第一位是页内地址,剩余的高位就是页号。

例题

例如页式存储系统中,每个页的大小4KB。
逻辑地址:10 1100 1101 1110,求物理地址

请添加图片描述
4K个存储单元编号,对应4KB大小
逻辑地址:10 1100 1101 1110,因此从右往左数12位,还剩下左面的10,10所对应的十进制数是2,也就是页号为2,排除的12位是页内地址,是不变的,于是根据图中页表可知,块号为6,6转换为二进制是110

所以对应的物理地址:110 1100 1101 1110

总结

页的大小一般是以KB为单位的,相对来说,页面大小比较小。

在页式存储中,对于内存进行页面分配的时候,要么页面空闲,我们把它塞满,要么它已经占用了,一般可以利用到的碎片空间都可以利用,如果碎片空间小于页面大小,才不能够使用,所以在分配内存的时候,空闲的碎片一般会小于页面大小,空间利用率高,分配管理起来就比较简单。

但也正因为如此,页面太过于零碎,所以每次都需要查表去找相应的页面,这样增加了系统的开销;以页面位单位来进行调度的时候可能会产生抖动现象。所谓抖动现象就是给某一个进程分配3个页面,那它需要淘汰调用新页面的次数n,会小于给进程分配4个页面的情况,这种情况就是说明虽然系统增加了硬件设备,但是系统整体性能反而降低了,这个想想就叫做抖动。

高级程序语言使用逻辑地址,
运行状态,内存中使用物理地址。

逻辑地址=页号+页内地址
物理地址=页帧号+页内地址

优点:利用率高,碎片小,分配及管理简单
缺点:增加了系统开销;可能产生抖动现象

缺页中断

在调用的过程中,会给用户进程分配个别的一些内存页面来给它用,但是有限的页面肯定是不够用的,当想要访问某个用户程序页的时候,发现它并不在内存中,就会产生缺页中断。

内存淘汰规则

有缺页中断后,就需要把这个页面调用到内存当中,那么已经满了,要怎么调用?需要把内存已有的数据给剔除出去,这个剔除遵循下述规则:

页表相对来说比较复杂,还会记录相应的界面是否在内存的状态位,还有是否访问的访问位,是否修改的修改位。访问位会定时清零,也就是说,最近访问的最近是有时间限制的,如果超过了这个时间,没有再次被访问,则会认为近期不再会被访问,因此将访问位置为0。

修改位只要被修改过,就会置为1,不论过了多久。
请添加图片描述
上图只分配了2,3,5,6四个物理页,剩下的并没有使用,也就是说0,1,2,5号逻辑页已经在内存了,那么躲过现在想用3号逻辑页,怎么做?

需要经内存当中,已有的逻辑页淘汰一个,才能使用3

淘汰规则:
前提条件:状态位为1(0表示都不在内存,自然无法内存参与淘汰)
①访问位为0,(根据局部性原理来看,最近访问过的页面接下来很有可能用到,这种页面尽可能保留)
②访问位都为0,再优先淘汰修改位为0,(修改位为1,则开销成本会更大,如果刚把修改的页面费半天劲淘汰了,而且为了一致性原则,还同步了外存,但是立马又要修改,这种情况就很麻烦,所以一般是最后用完之后再去淘汰,可以避免不必要的开销和重复修改)

相关内容

热门资讯

电视安卓系统哪个品牌好,哪家品... 你有没有想过,家里的电视是不是该升级换代了呢?现在市面上电视品牌琳琅满目,各种操作系统也是让人眼花缭...
安卓会员管理系统怎么用,提升服... 你有没有想过,手机里那些你爱不释手的APP,背后其实有个强大的会员管理系统在默默支持呢?没错,就是那...
安卓系统软件使用技巧,解锁软件... 你有没有发现,用安卓手机的时候,总有一些小技巧能让你玩得更溜?别小看了这些小细节,它们可是能让你的手...
安卓系统提示音替换 你知道吗?手机里那个时不时响起的提示音,有时候真的能让人心情大好,有时候又让人抓狂不已。今天,就让我...
安卓开机不了系统更新 手机突然开不了机,系统更新还卡在那里,这可真是让人头疼的问题啊!你是不是也遇到了这种情况?别急,今天...
安卓系统中微信视频,安卓系统下... 你有没有发现,现在用手机聊天,视频通话简直成了标配!尤其是咱们安卓系统的小伙伴们,微信视频功能更是用...
安卓系统是服务器,服务器端的智... 你知道吗?在科技的世界里,安卓系统可是个超级明星呢!它不仅仅是个手机操作系统,竟然还能成为服务器的得...
pc电脑安卓系统下载软件,轻松... 你有没有想过,你的PC电脑上安装了安卓系统,是不是瞬间觉得世界都大不一样了呢?没错,就是那种“一机在...
电影院购票系统安卓,便捷观影新... 你有没有想过,在繁忙的生活中,一部好电影就像是一剂强心针,能瞬间让你放松心情?而我今天要和你分享的,...
安卓系统可以写程序? 你有没有想过,安卓系统竟然也能写程序呢?没错,你没听错!这个我们日常使用的智能手机操作系统,竟然有着...
安卓系统架构书籍推荐,权威书籍... 你有没有想过,想要深入了解安卓系统架构,却不知道从何下手?别急,今天我就要给你推荐几本超级实用的书籍...
安卓系统看到的炸弹,技术解析与... 安卓系统看到的炸弹——揭秘手机中的隐形威胁在数字化时代,智能手机已经成为我们生活中不可或缺的一部分。...
鸿蒙系统有安卓文件,畅享多平台... 你知道吗?最近在科技圈里,有个大新闻可是闹得沸沸扬扬的,那就是鸿蒙系统竟然有了安卓文件!是不是觉得有...
宝马安卓车机系统切换,驾驭未来... 你有没有发现,现在的汽车越来越智能了?尤其是那些豪华品牌,比如宝马,它们的内饰里那个大屏幕,简直就像...
p30退回安卓系统 你有没有听说最近P30的用户们都在忙活一件大事?没错,就是他们的手机要退回安卓系统啦!这可不是一个简...
oppoa57安卓原生系统,原... 你有没有发现,最近OPPO A57这款手机在安卓原生系统上的表现真是让人眼前一亮呢?今天,就让我带你...
安卓系统输入法联想,安卓系统输... 你有没有发现,手机上的输入法真的是个神奇的小助手呢?尤其是安卓系统的输入法,简直就是智能生活的点睛之...
怎么进入安卓刷机系统,安卓刷机... 亲爱的手机控们,你是否曾对安卓手机的刷机系统充满好奇?想要解锁手机潜能,体验全新的系统魅力?别急,今...
安卓系统程序有病毒 你知道吗?在这个数字化时代,手机已经成了我们生活中不可或缺的好伙伴。但是,你知道吗?即使是安卓系统,...
奥迪中控安卓系统下载,畅享智能... 你有没有发现,现在汽车的中控系统越来越智能了?尤其是奥迪这种豪华品牌,他们的中控系统简直就是科技与艺...