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,则开销成本会更大,如果刚把修改的页面费半天劲淘汰了,而且为了一致性原则,还同步了外存,但是立马又要修改,这种情况就很麻烦,所以一般是最后用完之后再去淘汰,可以避免不必要的开销和重复修改)

相关内容

热门资讯

安卓系统用的华为应用,探索智能... 你知道吗?在安卓系统里,华为的应用可是个宝库呢!它们不仅功能强大,而且使用起来超级方便。今天,就让我...
安卓变ios系统魅蓝 你知道吗?最近有个朋友突然告诉我,他要把自己的安卓手机换成iOS系统,而且还是魅蓝品牌的!这可真是让...
幻书启世录安卓系统,安卓世界中... 亲爱的读者们,你是否曾在某个夜晚,被一本神奇的书所吸引,仿佛它拥有着穿越时空的力量?今天,我要带你走...
电脑安装安卓系统进不去,安卓系... 电脑安装安卓系统后竟然进不去,这可真是让人头疼的问题啊!你是不是也遇到了这种情况,心里直呼“怎么办怎...
用键盘切换控制安卓系统,畅享安... 你有没有想过,用键盘来控制你的安卓手机?是的,你没听错,就是那个我们每天敲敲打打的小玩意儿——键盘。...
小米安卓镜像系统在哪,小米安卓... 你有没有想过,你的小米手机里有一个隐藏的宝藏——安卓镜像系统?没错,就是那个可以让你的手机瞬间变身成...
安卓手机下载排班系统,高效排班... 你有没有想过,每天忙碌的工作中,有没有什么好帮手能帮你轻松管理时间呢?今天,就让我来给你介绍一个超级...
桌面组件如何弄安卓系统,桌面组... 亲爱的桌面爱好者们,你是否曾梦想过将安卓系统搬到你的电脑桌面上?想象那些流畅的动画、丰富的应用,还有...
安卓13系统介绍视频,新功能与... 亲爱的读者们,你是否对安卓13系统充满好奇?想要一探究竟,却又苦于没有足够的时间去研究?别担心,今天...
车机安卓7.1系统,功能升级与... 你有没有发现,现在的车机系统越来越智能了?尤其是那些搭载了安卓7.1系统的车机,简直就像是个贴心的智...
安卓系统下如何读pdf,And... 你有没有遇到过这种情况:手机里存了一大堆PDF文件,可是怎么也找不到一个能顺畅阅读的工具?别急,今天...
安卓系统全国通用的吗,畅享智能... 你有没有想过,为什么你的手机里装的是安卓系统呢?安卓系统,这个名字听起来是不是有点神秘?今天,就让我...
假苹果手机8安卓系统,颠覆传统... 你有没有想过,如果苹果手机突然变成了安卓系统,会是怎样的景象呢?想象那熟悉的苹果外观,却运行着安卓的...
安卓12.0系统vivo有吗,... 你有没有听说最近安卓系统又升级啦?没错,就是那个让手机焕然一新的安卓12.0系统!那么,咱们国内的手...
核心芯片和安卓系统,探索核心芯... 你知道吗?在科技的世界里,有一对“黄金搭档”正悄悄改变着我们的生活。他们就是——核心芯片和安卓系统。...
如何调安卓系统屏幕颜色,安卓系... 亲爱的手机控们,你是否曾觉得安卓系统的屏幕颜色不够个性,或者是因为长时间盯着屏幕而感到眼睛疲劳?别担...
旧台式电脑安装安卓系统,轻松安... 你那台旧台式电脑是不是已经服役多年,性能逐渐力不从心,却又不忍心让它退役呢?别急,今天就来教你怎么给...
美国要求关闭安卓系统,科技霸权... 美国要求关闭安卓系统:一场技术革新还是政治博弈?在数字化时代,智能手机已经成为我们生活中不可或缺的一...
安卓系统日记本 你有没有发现,手机里的安卓系统日记本,简直就是记录生活点滴的宝藏库呢?想象每天忙碌的生活中,有没有那...
安卓手机广告最少的系统,探索安... 你有没有发现,用安卓手机的时候,广告总是无处不在,让人烦得要命?不过别急,今天我要给你揭秘一个秘密—...