书面作业:文件系统2

提示:HDU OS

答案仅个人回答,仅供参考

文章目录

  1. 在UNIX系统中有空闲盘块栈如下图所示:
    书面作业:文件系统2_第1张图片

(1)现有一个进程要释放3个物理块,其块号为156#、160#、220#,画出空闲盘块栈的变化。

释放 156#
书面作业:文件系统2_第2张图片

释放 160#
书面作业:文件系统2_第3张图片

释放 220#, 将空闲盘块栈内容存入空闲块 220 中,空闲盘块栈变为:
书面作业:文件系统2_第4张图片

(2)在(1)的基础上假定一个进程要求分配5个空闲块,请说明进程所分配到的盘块的盘块号,并画出分配后的空闲盘块栈。

220 -> 160 -> 156 -> 201 -> 151
书面作业:文件系统2_第5张图片

  1. (2001,华南理工大学)一个软盘有40个柱面,寻道时移过每个柱面花费6ms,
    若不采取任何使文件的块尽量紧密存放的措施,则逻辑上相邻的块平均间隔13个柱面,
    如果采取一定的措施使得文件中相邻的块尽可能放在一起,则块间的平均间隔是2个柱面。假定读写时找到柱面后平均旋转延迟时间为100ms,传输速率为每块25ms,
    则在此两种情况下传输一个100块的文件各需多长时间?

    知识储备/扩展:

    书面作业:文件系统2_第6张图片
    在这里插入图片描述
    书面作业:文件系统2_第7张图片
    书面作业:文件系统2_第8张图片
    书面作业:文件系统2_第9张图片
    书面作业:文件系统2_第10张图片

    零乱存放:
    读取1个block要:
    13 * 6 + 100 + 25 = 203ms
    传输100个block:
    100 * 203 = 20300ms

    优化存放:
    读取1个block要:
    2 * 6 + 100 + 25 = 137ms
    传输100个block:
    100 * 137 = 13700ms

  2. 旋转型存储设备上信息的优化分布能减少若干输入输出服务的总时间。例如,有10个记录A,B,…,J存放在某磁盘的某一磁道上,假定这个磁道划分为10个扇区,每扇区存放一个记录,安排如下表所示。现在要从该磁道上顺序地将A至J的10个记录读出如果磁盘旋转速度为20ms/周,处理程序每读出一个记录后花4ms进行处理。试问处理完10个记录的总时间是多少(从找到A记录开始计算)?为了缩短处理时间应进行优化分布,试问应如何安排这些记录,并计算处理的总时间(从找到A记录开始计算)?

扇区 1 2 3 4 5 6 7 8 9 10
记录号 A B C D E F G H I J

由题意
旋转时间:20ms
传送时间:20/10 = 2ms

  • 依赖于旋转速度每条磁道的扇区数目

读取记录时间:4ms

(1) (磁道是某个同心圆,扇区为某一段,各记录不同扇区)
从找到A记录开始
1 * (4+2) + 9 * (20+2) = 204ms

(2) 优化方案
因为 找到并读取一个记录时间/传送时间 = (4+2)/2 = 3
把逻辑相邻,放置物理间隔3n区域 (n=0,1,2,3,……)
10 * (2+4) = 60ms

扇区 1 2 3 4 5 6 7 8 9 10
记录号 A H E B I F C J G D
  1. 本单元的知识点思维导图

    书面作业:文件系统2_第11张图片
    书面作业:文件系统2_第12张图片

source:NCTU Operating System Design and Implementation PPT

你可能感兴趣的:(操作系统,操作系统)