常用页面置换算法模拟实验.docx

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
.. .. .. 目录 一、摘要 3 二、正文 4 三、设计总结 8 四、参考文献 10 五、附录:源程序代码 11 . 专业资料 . .. .. .. 摘 要 Windows 中,为了提高内存利用率 ,提供了内外存进程对换机制 ;内存 空间的分配和回收均以页为单位进行 ;一个进程只需将其一部分 (段或页)调 入内存便可运行 ;还支持请求调页的存储管理方式 。当进程在运行中需要访问 某部分程序和数据时 ,发现其所在页面不在内存 ,就立即提出请求 (向 CPU 发 出缺页中断 ), 由系统将其所需页面调入内存 。这种页面调入方式叫请求调 页,为实现请求调页 ,核心配置了四种数据结构 :页表、页框号 、访问位、修 改位、有效位、保护位等 。此设计为了了解 Windows XP 的操作接口及系统调 . 专业资料 . .. .. .. 用方式,熟悉 Windows XP 常用操作的实现过程 ,练习并掌握 Visual C++ 开发 环境 。利用 Windows SDK (System Development Kit )提供的 API(应用程序 接口)设计一个虚拟存储管理程序 ,并使用最佳淘汰算法 (OPT)、先进先出 算法( FIFO)、最近最久未使用算法 ( LRU)计算访问命中率 。( 命中率 =1 -页面失效次数 /页地址流长度 )。 关键字 Windows ;请求调页 ;数据结构 ;存储管理 正 文 . 专业资料 . .. .. .. 一、设计思路 页面置换算法 :当 CPU 接收到缺页中断信号 ,中断处理程序先保存现 场,分析中断原因 ,转入缺页中断处理程序 。该程序通过查找页表 ,得到该页 所在外存的物理块号 。如果此时内存未满 ,能容纳新页 ,则启动磁盘 I/O 将所 缺之页调入内存 ,然后修改页表 。如果内存已满 ,则须按某种置换算法从内存 中选出一页准备换出 ,是否重新写盘由页表的修改位决定 ,然后将缺页调入 , 修改页表 。 利用修改后的页表 ,去形成所要访问数据的物理地址 ,再去访问内 存数据 。整个页面的调入过程对用户是透明的 。此设计为了了解 Windows XP 的操作接口及系统调用方式 ,熟悉 Windows XP 常用操作的实现过程 ,练习并 掌握 Visual C++ 开发环境 。利用 Windows SDK ( System Development Kit )提 供的 API(应用程序接口 )设计一个虚拟存储管理程序 ,并使用最佳淘汰算法 ( OPT)、先进先出算法 (FIFO)、最近最久未使用算法 (LRU)计算访问命 中率。 二、设计目的 1、用 C++ 语言实现页面置换算法 。 2、了解内存分页管理策略 。 3、掌握调页策略 。 4、掌握一般常用的调度算法 。 5、选取调度算法中的典型算法 ,模拟实现 。 三、设计任务 1、了解 Windows XP 的操作接口及系统调用方式 ,熟悉 Windows XP 常 . 专业资料 . .. .. .. 用操作的实现过程 ,练习并掌握 Visual C++ 开发环境 。 2、利用 Windows SDK (System Development Kit )提供的 API(应用程序 接口)设计一个虚拟存储管理程序 ,并使用最佳淘汰算法 (OPT)、先进先出 算法( FIFO)、最近最久未使用算法 ( LRU)计算访问命中率 。( 命中率 =1 -页面失效次数 /页地址流长度 )。 四、调页策略 1)何时调入页面 如果进程的许多页是存放在外存的一个连续区域中 ,则一次调入若干个相 邻的页 ,会比一次调入一页的效率更高效一些 。但如果调入的一批页面中的大 多数都未被访问 ,则又是低效的 。 可采用一种以预测为基础的预调页策略 ,将 那些预计在不久之后便会被访问的页面 ,预先调入内存 。 如果预测较准确 ,那 么,这种策略显然是很有吸引力的 。但目前预调页的成功率仅为 50%。 且这种 策略主要用于进程的首次调入时 ,由程序员指出应该先调入哪些页 。 2)请求调页策略 当进程在运行中需要访问某部分程序和数据时 ,若发现其所在的页面不在 内存,便即提出请求 ,由 OS 将其所需页面调入内存 。由请示调页策略所确定调 入的页 ,是一定会被访问的 ,再加之请求调页策略比较易于实现 ,故在目前的 虚拟存储器中 ,大多采用此策略 。 但这种策略每次仅调入一页 ,故须花费较大 的系统开销 ,增加了磁盘 I/O 的启用频率 。 3)从何处调入页面 在请求分页系统中的外存分为两部分 :用于存放文件的文件区和用于存 . 专业资料 . .. .. .. 放对换页面的对换区 。通常,由于对换区是采用连续分配方式 ,而事件是采用 离散分配方式 ,故对换区的磁盘 I/

您可能关注的文档

文档评论(0)

my0024 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档