页面置换算法 订阅
在地址映射过程中,若在页面中发现所要访问的页面不在内存中,则产生缺页中断。当发生缺页中断时,如果操作系统内存中没有空闲页面,则操作系统必须在内存选择一个页面将其移出内存,以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做页面置换算法。 [1] 展开全文
在地址映射过程中,若在页面中发现所要访问的页面不在内存中,则产生缺页中断。当发生缺页中断时,如果操作系统内存中没有空闲页面,则操作系统必须在内存选择一个页面将其移出内存,以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做页面置换算法。 [1]
信息
适用领域范围
服务器终端
应用学科
计算机
中文名
页面置换算法
页面置换算法常见的置换算法
这是一种理想情况下的页面置换算法,但实际上是不可能实现的。该算法的基本思想是:发生缺页时,有些页面在内存中,其中有一页将很快被访问(也包含紧接着的下一条指令的那页),而其他页面则可能要到10、100或者1000条指令后才会被访问,每个页面都可 [1]  以用在该页面首次被访问前所要执行的指令数进行标记。最佳页面置换算法只是简单地规定:标记最大的页应该被置换。这个算法唯一的一个问题就是它无法实现。当缺页发生时,操作系统无法知道各个页面下一次是在什么时候被访问。虽然这个算法不可能实现,但是最佳页面置换算法可以用于对可实现算法的性能进行衡量比较。 [1]  最简单的页面置换算法是先入先出(FIFO)法。这种算法的实质是,总是选择在主存中停留时间最长(即最老)的一页置换,即先进入内存的页,先退出内存。理由是:最早调入内存的页,其不再被使用的可能性比刚调入内存的可能性大。建立一个FIFO队列,收容所有在内存中的页。被置换页面总是在队列头上进行。当一个页面被放入内存时,就把它插在队尾上。 [1]  这种算法只是在按线性顺序访问地址空间 [1]  时才是理想的,否则效率不高。因为那些常被访问的页,往往在主存中也停留得最久,结果它们因变“老”而不得不被置换出去。FIFO的另一个缺点是,它有一种异常现象,即在增加存储块的情况下,反而使缺页中断率增加了。当然,导致这种异常现象的页面走向实际上是很少见的。 [1]  FIFO算法和OPT算法之间的主要差别是,FIFO算法利用页面进入内存后的时间长短作为置换依据,而OPT算法的依据是将来使用页面的时间。如果以最近的过去作为不久将来的近似,那么就可以把过去最长一段时间里不曾被使用的页面置换掉。它的实质是,当需要置换一页时,选择在之前一段时间里最久没有使用过的页面予以置换。这种算法就称为最久未使用算法(Least Recently Used,LRU)。 [1]  LRU算法是与每个页面最后使用的时间有关的。当必须置换一个页面时,LRU算法选择过去一段时间里最久未被使用的页面。 [1]  LRU算法是经常采用的页面置换算法,并被认为是相当好的,但是存在如何实现它的问题。LRU算法需要实际硬件的支持。其问题是怎么确定最后使用时间的顺序,对此有两种可行的办法: [1]  1.计数器。最简单的情况是使每个页表项对应一个使用时间字段,并给CPU增加一个逻辑时钟或计数器。每次存储访问,该时钟都加1。每当访问一个页面时,时钟寄存器的内容就被复制到相应页表项的使用时间字段中。这样我们就可以始终保留着每个页面最后访问的“时间”。在置换页面时,选择该时间值最小的页面。这样做, [1]  不仅要查页表,而且当页表改变时(因CPU调度)要 [1]  维护这个页表中的时间,还要考虑到时钟值溢出的问题。2.栈。用一个栈保留页号。每当访问一个页面时,就把它从栈中取出放在栈顶上。这样一来,栈顶总是放有目前使用最多的页,而栈底放着目前最少使用的页。由于要从栈的中间移走一项,所以要用具有头尾指针的双向链连起来。在最坏的情况下,移走一页并把它放在栈顶上需要改动6个指针。每次修改都要有开销,但需要置换哪个页面却可直接得到,用不着查找,因为尾指针指向栈底,其中有被置换页。 [1]  因实现LRU算法必须有大量硬件支持,还需要一定的软件开销。所以实际实现的都是一种简单有效的LRU近似算法。 [1]  一种LRU近似算法是最近未使用算法(Not Recently Used,NUR)。它在存储分块表的每一表项中增加一个引用位,操作系统定期地将它们置为0。当某一页被访问时,由硬件将该位置1。过一段时间后,通过检查这些位可以确定哪些页使用过,哪些页自上次置0后还未使用过。就可把该位是0的页淘汰出去,因为在之前最近一段时间里它未被访问过。 [1]  4)Clock置换算法(LRU算法的近似实现) [1]  5)最少使用(LFU)置换算法在采用最少使用置换算法时,应为在内存中的每个页面设置一个移位寄存器,用来记录该页面被访问的频率。该置换算法选择在之前时期使用最少的页面作为淘汰页。由于存储器具有较高的访问速度,例如100 ns,在1 ms时间内可能对某页面连续访 [1]  问成千上万次,因此,通常不能直接利用计数器来记录某页被访问的次数,而是采用移位寄存器方式。每次访问某页时,便将该移位寄存器的最高位置1,再每隔一定时间(例如100 ns)右移一次。这样,在最近一段时间使用最少的页面将是∑Ri最小的页。 [1]  LFU置换算法的页面访问图与LRU置换算法的访问图完全相同;或者说,利用这样一套硬件既可实现LRU算法,又可实现LFU算法。应该指出,LFU算法并不能真正反映出页面的使用情况,因为在每一时间间隔内,只是用寄存器的一位来记录页的使用情况,因此,访问一次和访问10 000次是等效的。6)工作集算法 [1]  7)工作集时钟算法8)老化算法(非常类似LRU的有效算法) [1]  9)NRU(最近未使用)算法10)第二次机会算法第二次机会算法的基本思想是与FIFO相同的,但是有所改进,避免把经常使用的页面置换出去。当选择置换页面时,检查它的访问位。如果是 [1]  0,就淘汰这页;如果访问位是1,就给它第二次机会,并选择下一个FIFO页面。当一个页面得到第二次机会时,它的访问位就清为0,它的到达时间就置为当前时间。如果该页在此期间被访问过,则访问位置1。这样给了第二次机会的页面将不被淘汰,直至所有其他页面被淘汰过(或者也给了第二次机会)。因此,如果一个页面经常使用,它的访问位总保持为1,它就从来不会被淘汰出去。 [1]  第二次机会算法可视为一个环形队列。用一个指针指示哪一页是下面要淘汰的。当需要一个 [1]  存储块时,指针就前进,直至找到访问位是0的页。随着指针的前进,把访问位就清为0。在最坏的情况下,所有的访问位都是1,指针要通过整个队列一周,每个页都给第二次机会。这时就退化成FIFO算法了。 [1] 
收起全文
精华内容
下载资源
问答
  • 页面置换算法

    2018-12-20 18:26:07
    使用简单的图形化界面展示了FIFO、LRU、SC、Clock四种页面置换算法的运行结果,可以接受任意长度的作业序列,并统计缺页中断次数以及缺页中断率。
  • 该工程具体是在codeblock上面实现了操作系统课程上讲解的页面置换算法,包括先进先出(FIFO)、最佳置换算法(OPT)、最久最近未使用算法(LRU)。 具体实现功能有: 1、建立相应的数据结构 2、在屏幕上显示页面...
  • 使用LRU算法实现页面置换算法。LRU算法基于一种假设,长期不使用的数据,在未来的使用性也不大。因此,当数据占用内存达到一定的阙值时,我们要移除最近最少使用的数据。LRU算法中,使用了一种有趣的数据结构,叫做...
  • 页面置换算法演示 实验目的 1. 分析内存管理办法中每个页面置换算法原理; 2. 掌握页面置换算法执行过程。 二、实验预备内容 1. 熟悉内存管理办法; 2. 熟悉页面置换算法原理; 3. 熟悉不同页面置换算法的置换过程。...
  • java实现页面置换算法

    2020-08-18 15:57:05
    主要为大家详细介绍了java实现页面置换算法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 页面置换算法LRU(模拟页面管理)  用高级语言编写一个页面置换算法LRU的模拟程序。  设置恰当的数据结构,有效存储数据。   动态输入存储区块数、作业调度序列。  输出分配结果、置换过程以及其它相关的...
  • 基于Qt开发的,模拟操作系统的内存页面置换算法的实现。该项目主要是模拟操作系统的内存管理中的页面置换算法,对比几种算法的优劣,并将结果以动态的形式展示出来。选择了四种置换算法:先来先服务(FIFO)、最近最少...
  • 页面置换算法: 资源包含三个算法:OPT---最佳置换算法、//FIFO---先进先出、//LRU---最近最久未使用 操作:用户输入物理块数、页面待要访问的个数、每个页面编号,计算出缺页数、置换数、缺页率 语言:C++ 运行环境...
  • 页面置换算法.doc

    2020-03-23 22:48:13
    (1) 先进先出页面置换算法(FIFO) (2) 最近最久未使用页面置换算法(LRU) (3) 最佳置换页面置换算法(OPT) 操作系统页面置换算法课程设计,完整的课设结构,有详细的流程图、Java源码,还有调试截图!!...
  • 编程实现页面置换算法,最少实现两种算法,比较算法的优劣,并将调试结果显示在计算机屏幕上,检测机算和笔算的一致性。 (1)采用页式分配存储方案,通过分别计算不同算法的命中率来比较算法的优劣,同时也考虑页面...
  • 甘肃政法学院 本科生实验报告 六 姓名 : 马晓娟 学院 : 公安技术学院 专业 : 信息安全 班级 :...第一学期 甘肃政法学院实验管理中心印制 实验题目 小 组 合 否 虚拟内存页面置换算法 作 姓名 马晓娟 班级 2013 级 信 学
  • 实用文案 计算机科学系 实 验 报 告 书 课 程 名 操 作 系 统 题 目 虚拟存储器管理 页面置换算法模拟实验 班 级 学 号 姓 名 评语 成绩 指导教师 批阅时间 年 月 日 标准文档 实用文案 一实验目的与要求 1....
  • 通过请求页式管理方式中页面置换算法的模拟设计,了解虚拟存储技术的特点,掌握请 求页式存储管理中的页面置换算法。 容 二、课程设计内容 模拟实现 OPT(最佳置换)、FIFO 和 LRU 算法,并计算缺页率。 示 三、要求...
  • 页面置换算法—LRU (1)建立相应的数据结构; (2)在屏幕上显示物理块的变化,可逐步展示或完整展示; (3)设计页面访问序列,可以展现你所设计的页面置换算法; (4)计算页面的缺页次数、缺页后的页面置换次数
  • 要求计算以下两种置换算法的缺页数 1先进先出算法FIFOFirst In First Out 2最近最久未使用算法LRULeast Recently Used 二实验实训方法过程步骤 1新建一个文件命名为fifo.c并打开该文件编写C程序 2在fifo.c程序中实现...
  • 本资源使用Java实现了页面置换算法OPT、FIFO、LRU的模拟实现以及FIFO和LRU的命中率对比,内容包括Java源项目、jar包和bat文件。该资源的文字版信息请访问博客《操作系统实验:页面置换算法的模拟实现及命中率对比...
  • 课程名称 计算机操作系统 实验项目名称 请求页式存储管理中常用页面置换算法模拟 学号 20111214034 班级 计?1103 姓名 韩瑶 专业 计算机科学与技术 实验地点 12J-661?实验室 计算机操作系统 实 验 报 告 济南大学 ...
  • LRU页面置换算法模拟 - 最近最久未使用置换算法 - 课程设计 LRU 页面置换算法模拟 - 最近最久未使用置换算法 | 课程设计 | 计算机数据库课程设计 一设计目的 1用 C 语言实现最近最久未使用 LRU置换算法 2了解内存...
  • 页面置换算法演示

    2018-01-25 17:04:40
    操作系统页面置换算法,课设实验,设计了三个算法,请选择要模拟的算法名称: <option value="OPT" >OPT <option value="FIFO" >FIFO <option value="LRU" >LRU</option>
  • 操作系统课程设计报告 课 程 名 称 操 作 系 统 课 程 设 计 课程设计题目 页面置换算法 学院 计算机科学与技术学院 专 业 科 技 小 组 成 员 : 庞 思 慧 E01114081 王 蒙 E01114161 姚 慧 乔 E01114349 朱 潮 潮 E...
  • 燕山大学2018级操作系统课程设计评优作品,页面置换算法的实现,其中包括课程设计书,源码,答辩PPT。该项目实现的功能包括多种页面置换算法(FIFO,LRU,OPT)页面置换算法的动态显示,各类参数的设定,实验结果的...
  • 操作系统实验报告 页面置换算法模拟 OFTFIFO 和 LRU算法 班级 2013 级软件工程 1 班 学号 X X X 姓名萧氏一郎 实用标准文案 数据结构说明 Memery[10] 物理块中的页码 Page[100] 页面号引用串 Temp[100][10] 辅助数组...
  • 操作系统os 页面置换算法 (java实现) Clock.java Lru.java Opt.java Fifo.java
  • 包括了操作系统页面置换算法,其中有OPT,FIFO,LRU,CLOCK,改进型的CLOCK算法
  • 这是一个自己完成软件工程的操作系统课程课程设计题目:此程序用于模拟虚拟磁盘页面置换算法,实现了FIFO页面置换算法和LRU页面置换算法,获得课程设计优秀的好成绩
  • 实验地点 实验时间 实验课表 现 出勤和个人表现Q115+15 组长评分=30分 得分 实验 总分 (Q1+Q2+C 3+Q4) 实验完成情况Q245分组 长与教师评分的加权平 均 得分 实验编号与实验名称 第7次实验常用页面置换算法模拟实验 ...
  • a:最佳置换算法(OPT):将以后永不使用的或许是在最长(未来)时间内不再被访问的页面换出。 b: 先进先出算法(FIFO):淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。 c:最近最久未使用算法(LRU)...
  • 页面置换算法 fifo min lru clock second-chance五种算法。
  • C#源码
  • 操作系统课程设计报告 课程名称 操作系统课程设计 课程设计题目 页面置换算法 学院 计算机科学与技术学院 专业 科技 小组成员: 庞思慧 E01114081 王蒙 E01114161 慧乔 E01114349 朱潮潮 E01114408 指导老师 邱剑锋 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,902
精华内容 5,960
关键字:

页面置换算法