操作系统作业题(含答案) 下载本文

作业六解答过程:

1、(1)根据9000/1024=8.8,故该字节在文件索引8(从0开始计)直接块中,于是可从表目项中读出内容为367,即该字节在磁盘块号为367的盘块中;再根据9000mod1024=808,查表在367号磁盘块的808字节即为文件的9000字节。

(2)350000/1024=341.8,则该字节在文件的逻辑块号为341的块中,故可知它必在二次间接寻址中(因为直接+1次间接可寻256+10=266块)。根据(341-266)/256=75/256=0.29(整数部分为0),可知其在二次间接块中0的表目上,又因为75mod256=75,可知在一次间接75表目处,从题表中可分别读出表目项内容为331和3333,可知在磁盘块3333中。由350000mod1024=816,得出文件的350000字节是3333磁盘块的816字节。 2、(1)先来先服务算法(FCFS):访问序列55→22→77→35→90→40→83→66

总移动柱面距离为:33+55+42+55+50+43+17=295,总寻道时间为3ms*295=885ms。 (2)最短查找时间优先调度(SSTF):根据各个I/O请求的不同,总是为接近当前磁头位置的请求提供优先服务,也就是先执行查找时间最小的那个请求。由于查找时间正比于两个请求的柱面差值,所以磁头移动总是移到距当前最近的柱面上去。很明显,它比FCFS改善了磁盘的服务。从本质上讲,它是SJF短作业优先调度的形式。同样,可能导致某些请求长期得不到服务(被饿死)(当不断有I/O请求时)。 访问序列55→66→77→83→90→40→35→22

总移动柱面距离为:11+11+6+7+50+5+13=103,总寻道时间为3ms*103=309ms。 (3)扫描调度(SCAN):由于I/O请求具有动态性质,所以可以采取扫描法。磁头从磁盘的一端出发,向另一端移动,扫过所有柱面,遇到请求就服务。直到移到另一端后,移动方向反过来,继续做下面的服务。

访问序列55→66→77→83→90→40→35→22

总移动柱面距离为:11+11+6+7+50+5+13=103,总寻道时间为3ms*103=309ms。

(4)循环扫描(C-SCAN)算法:它是SCAN扫描算法的变种,这是为了适应极大量存取请求而设计的。磁头臂总是从0号柱面至最大号柱面顺序扫描,到头后直接返回0号柱面重复进行,就像是循环至0号柱面一样(也可视为单向扫描)。在一个柱面上,磁头臂往往停留,待磁盘旋转一定圈数之后,再移向另一个柱面。为了在磁盘移动每一周时间内执行更多的存取,必须考虑旋转优化(考虑等待时间与传送时间)。

访问序列55→66→77→83→90→0→22→35→40

总移动柱面距离为:11+11+6+7+90+22+13+5=165,总寻道时间为3ms*165=495ms。