1 / 6
文档名称:

操作系统课程设计.doc

格式:doc   页数:6页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

操作系统课程设计.doc

上传人:janny 2011/6/10 文件大小:0 KB

下载得到文件列表

操作系统课程设计.doc

文档介绍

文档介绍:操作系统课程设计
一、问题描述:
【摘要】页面置换算法(也称页面淘汰算法)是用来确定应该淘汰哪一页的一种策略。页面置换算法的优劣直接影响到系统的效率,若选用的算法不合适,可能会出现这种现象:刚被淘汰出去的页,过后不久又要访问它,需要再次调入,而调入后不久又再次被淘汰,然后又要访问,如此反复,使得系统把大部分时间用在了页面的调进与调出上,这种现象称为抖动或颠簸。
比较常用的置换算法有以下几种:
1.        最佳置换算法
2.        先进先出算法(FIFO)
3.        最近最就未使用算法(LRU)
本篇设计的内容是先进先出算法(FIFO)的演示。
这种算法总是选择在主存中驻留时间最长的一页并将它淘汰,即先进入主存的页,先退出主存。这种算法的出发点是最早掉入主存中的页,其不再被使用的可能性会大一些。这种算法比较简单,对具有按线性顺序访问的程序比较合适,而对其他情况则效率不高。因为经常被访问的页,往往在主存中也停留得最久,结果这些常用的页最终因变老而不得不被淘汰。
另外,先进先出置换算法还存在一种异常现象,即使某些情况下会出现分配给进程的页面增多,缺页次数反而增加的奇怪现象,这种现象称为Belady现象。
【关键字】:页面置换页面淘汰先进先出 FIFO 缺页数缺页率 Belady现象
关键字说明:
页面淘汰:又称页面置换。
FIFO:即先进先出。
缺页数:在进行页面置换时,发生缺页的次数。
缺页率:缺页数占总进程数的比率。
Belady:在FIFO算法中出现的一种异常现象(比较少见)。
二、设计目的:




三、设计要求:
(FIFO)算法。
,说明随机的性能和其性能可能对算法的影响。


四、设计分析:
(1)界面设计
为了更直观的显示FIFO页面置换算法,本程序使用Visual Basic 进行设计,设计包括界面设计和程序设计。根据本设计的目的可将程序初始化界面设计如下:
文本框中分别用于提取用户输入的进程数和页块数。
由于界面宽度有限,故要求对用户输入的数字有个范围控制。
当用户输入进程数后,点击随机生成进程序列,将在右边的文本框中显示产生的随机序列,随机数由参数控制(参数根据用户输入的数字设定)。
只有当随机进程序列产生后,方可进行页面置换,上图中由于未生成随机序列,故无法进行页面置换。当得到用户输入的进程数,进而产生随机数后,如果得到用户输入的正确的页块数时,就可以进行页面置换了。
然后点击页面置换(FIFO)按钮,即可进行页面置换(FIFO)演示了。并计算出缺页数和缺页率并在对应的标签中显示:
这样,页面置换(FIFO)算法就演示完毕了。
(2)代码设计
本程序的代码是结合上面的界面来设计的。 
下面是本程序的代码:
// FIFO页面置换程序代码(使用语言: Visual Basic ):
// 以下为通用段代码
Dim p As Integer
Dim b As Integer
Dim q As Integer
Dim i