第五章 虚拟存储器

虚拟存储器的定义:所谓“虚拟存储器”,是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。

虚拟存储管理下内存逻辑容量由内存容量和外存容量之和所决定;运行速度接近于内存速度;每位的成本却接近于外存。

虚拟存储器的实现

虚拟存储管理:允许将一个作业分多次调入内存。

若采用连续分配方式,需申请足够空间,再分多次装入,造成内存资源浪费,并不能从逻辑上扩大内存容量。

虚拟的实现建立在离散分配存储管理基础上

方式:请求分页/请求分段系统

细节:分页/段机构、中断机构、地址变换机构、软件支持。

虚拟存储器的特征:

离散分配方式是基础

多次性:一个作业被分成多次调入内存运行

对换性:允许在作业的运行过程中进行换进、换出。(进程整体对换不算虚拟)

最终体现虚拟性:能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际内存容量。

页面置换算法

进程运行过程中,访问的页面不在内存,调入时内存已无空闲空间,需要将内存中的一页程序或数据调到外存。

  页面置换算法(pagereplacement algorithms):选择换出哪些页面的算法,其好坏直接影响系统的性能。

应具有较低的缺页率:

页面调入次数(缺页次数)/总的页面使用次数

1.最佳Optimal置换算法

2.先进先出FIFO置换算法

3.最近最久未使用(LRU)置换算法

4.CLOCK置换算法

5.其他

最佳(Optimal)置换算法:Belady,1966年提出的一种理论上的算法

换出以后永不再用的,或在最长(未来)时间内不再被访问的页面。

优点:保证获得最低的缺页率

不足:无法实现,因为无法预知一进程将来的运行情况

作用:作为参照标准,评价其他算法。

先进先出置换算法(FIFO)

先进入的先淘汰,即选择内存中驻留时间最久的页面予以淘汰。

优点:实现简单,把一进程已调入内存的页面按先后次序组织成一个队列,并设置一个指针(替换指针),使它总是指向队首最老的页面。

不足:与进程实际运行规律不相适应(较早调入的页往往是经常被访问的页,频繁被对换造成运行性能降低)

Belady现象:出现分配的页面数增多,缺页率反而提高的异常现象。

描述:一个进程P要访问M个页,OS分配N个内存页面给进程P;对一个访问序列S,发生缺页次数为PE(S,N)。当N增大时,PE(S,

N)时而增大,时而减小。

Belady现象的原因:FIFO算法的置换特征与进程访问内存的动态特征矛盾,即被置换的页面并不是进程不会访问的。

轮转算法(clock):又称最近未使用算法

每个页设一个使用标志位(use bit),若该页被访问则将其置为1。

设置一个指针,从当前指针位置开始按地址先后检查各页,寻找use bit=0的页面作为被置换页。

若指针经过的页use bit=1,修改use bit=0(暂不凋出,给被用过的页面驻留的机会),指针继续向下。到所有页面末尾后再返回队首检查。

改进CLOCK

改进:主要考虑对没访问过的页面再细分是否修改过的不同情况,减少因修改造成的频繁I/O操作。

每页除记录是否用过A,还记录是否修改的标志M。置换时根据两个标志的值有4种不同情况的处理。


影响缺页率的主要因素

(1)分配给作业的主存块数: 多则缺页率低,反之则高。

(2)页面大小:大则缺页率低;反之则高。

(3)页面调度算法:对缺页中断率影响很大,但不可能找到一种最佳算法。

(4)程序编制方法:以数组运算为例,如果每一行元素存放在一页中,则按行处理各元素缺页中断率低;反之,按列处理各元素,则缺页中断率高。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,835评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,598评论 1 295
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,569评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,159评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,533评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,710评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,923评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,674评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,421评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,622评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,115评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,428评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,114评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,097评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,875评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,753评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,649评论 2 271

推荐阅读更多精彩内容

  • 一、虚拟存储器的基本概念 1、程序执行的特点: 1)多数情况下仍是顺序执行。 2)少部分的转移和过程调用指令会使程...
    6d9fe196fd45阅读 817评论 0 0
  • 1. 基础知识 1.1、 基本概念、 功能 冯诺伊曼体系结构1、计算机处理的数据和指令一律用二进制数表示2、顺序执...
    yunpiao阅读 5,108评论 1 22
  • 8.1虚拟存储的需求背景 虚拟内存是非连续内存分配的一个延续,非连续内存分配在存储空间内可以连续也可以不连续。虚拟...
    龟龟51阅读 5,745评论 2 6
  • 20161231—— 昨天晚上又玩pad玩到睡着,醒的时候还穿着上衣(尴尬),今天晚上能好好按时睡吗,时间管理要用...
    山人行阅读 362评论 0 0
  • Android 开发问题 一. 开发节奏混乱 暴露问题: 着急开发导致需求理解不到位, 如: 公告列表及公告详情,...
    二石兄阅读 927评论 0 0