操作系统-虚拟存储

一、虚拟存储器

程序存在着局部性原理,时间局部性与空间局部性。时间局部性是指某条指令执行,不久之后可能再次执行。空间局部性是指一个存储单元访问后,其相邻单元不久之后可能会访问。

根据局部性原理,我们可以知道,在运行进程时,不必将所有的数据载入内存,可以将部分先载入内存,等运行需要时再动态载入。
虚拟存储器存在着多次性、对换性和虚拟性的重要特征。

二、分页请求
2.1请求页表机制


(1) 状态位 P:用于指示该页是否已调入内存,供程序访问时参考。

 (2) 访问字段 A:用于记录本页在一段时间内被访问的次数,或记录本页最近已有多长 时间未被访问,供选择换出页面时参考。 

(3) 修改位 M:表示该页在调入内存后是否被修改过。由于内存中的每一页都在外存上 保留一份副本,因此,若未被修改,在置换该页时就不需再将该页写回到外存上,以减少 系统的开销和启动磁盘的次数;若已被修改,则必须将该页重写到外存上,以保证外存中 所保留的始终是最新副本。简言之,M 位供置换页面时参考。

 (4) 外存地址:用于指出该页在外存上的地址,通常是物理块号,供调入该页时参考

2.2缺页中断机构

当访问的页面不在内存时,便产生一却也中断,请求OS调入缺页。

2.3地址变换机构





2.4内存分配

(1)分配策略:固定分配局部置换、可变分配全局置换、可变分配局部置换

三、对置算法

(1)最佳置换:将未来最长时间内不再被访问的置换。

(2)先进先出置换:先进先出原则
(3)最近最久未使用:记录页面自上次访问以来所经历的时间,将时间最长的置换。
(4)最少使用置换:记录被访问的频率。
(5)clock最近未用算法

四、抖动与工作集

4.1抖动

抖动是由于频繁换入换出现象。抖动的根本原因是分配给每一个进程的物理块较少。

4.2工作集

工作集是指在某段时间间隔里,进程实际所要访问页面的集合。

4.3抖动预防

(1)局部置换
(2)把工作集融入处理机调度
(3)利用L=S准则调节缺页率
(4)选择暂停进程

五、分段请求


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章