北工大-操作系统-作业合集

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第八次作业

基础作业

1.假设一个磁盘驱动器有5000个柱面,从0到4999。驱动器正在为143的一个请求服务,且前面的一个请求在125。按照FIFO的顺序,即将到来的请86,1470,913,1774,948,1509,1022,1750,130。请按照FCFS、SSTF、SCAN、LOOK、C-SCAN、C-LOOK,要满足队列中的服务要求磁头总的移动距离是多少。

143 86 1470 913 1774 948 1509 1022 1750 130

a. FCFS : 143, 86, 1470, 913, 1774, 948, 1509, 1022, 1750, 130.

总寻道距离7081.

b. SSTF : 143, 130, 86, 913, 948, 1022, 1470, 1509, 1750, 1774.

总寻道距离1745.

c. SCAN :143, 913, 948, 1022, 1470, 1509, 1750, 1774, 4999, 130, 86.

总寻道距离9769.

d.LOOK:143, 913, 948, 1022, 1470, 1509, 1750, 1774, 130, 86.

总寻道距离3319.

e. C-SCAN : 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 4999, 0, 86, 130.

总寻道距离9813

f. C-LOOK : 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 86, 130.

总寻道距离3363.

2. 为什么文件分配的位图必须保存在大容量存储器中,而不是主存中?

答:因为如果保存在存中,当系统崩溃时,这些空闲区间的信息将会被丢失,而如果保存在大容量存储器中就可以解决这个问题。

3.假设要为一个文件换一个名字。一种选择是使用操作系统提供的RENAME方法,另一种方法是:把文件复制为新文件,然后删除原来的文件以实现重命名。请问,这两种方法在实现上有什么不同?

答:RENAME方法是修改目录文件的文件名部分,而删除原来文件再重命名则需要再创立一

个新文件,目录文件中增加一项,分配新空间;删除目录文件中的文件项目,然后回收占用的空间。

4.请解释使用索引节点有什么好处

答:减小目录文件的大小,提高查找文件的效率

5.在UNIX 中open 系统调用绝对需要么?如果没有会产生什么结果。

答:如果没有open 命令,那么每个read 命令都需要确定要打开的文件名。系统必须找到文件的i 节点,虽然这个数据放入cache 可以减少一些时间,但是当数据变化的时候,i 节点的数据需要刷新到磁盘上。

6.UNIX 系统中有关盘块的分配与释放是借助超级块中的栈来进行的。假如某个时刻系统状况如下图所示,若此时某个进程要删除文件A ,并归还它所占用的盘块220,110,645,549,176。请说明过程,并给出删除完毕后有关数据及表目的更改情况。

100 199 786 278 …

80 230 110 645

2 549 176 …

7. 考虑一个索引节点所表示的UNIX文件的组织。假设有12个直接块指针,在每个索引节点中有一个单重、双重和三重间接指针。此外,假设系统块大小和磁盘扇区大小都是8K,如果磁盘块指针是32位,其中8位表示物理磁盘,24位表示物理块,那么

a.该系统支持的最大文件大小是多少?

b.该系统支持的最大文件分区是多少?

c.假设主存中除了文件索引节点外没有其他信息,访问在位置12423956中的字节需要多少

磁盘访问?

答:

a.通过用块大小除以指针大小得到盘块指针的数目:

每块8K/4 = 2K

这样I节点可以支持的最大文件容量是:

12+2k+2k*2k+2k*2k*2k=(12+2K+4M+8G)*8K(块大小)= 96KB + 16MB + 32GB + 64TB

直接寻址一级间接寻址二级间接寻址三级间接寻址

b.在一个分区中识别一个块需要24位。所以:

*8K =16M*8K=128GB

c.使用从(a)得到的信息, 发现直接块只能表示96KB, 而一次间接块表示16MB. 题目中要求的请求位置在13M 左右,使用一次间接块.就可以了。所以要用两次磁盘访问,一次访问一次间接块,另一次访问包含数据的盘块

第七次作业

1.什么是设备无关性?

应用程序只按套路调用操作系统提供的功能即可,不关心实际的设备是什么,这就是与设备无关性

2.以下各项工作由I/O软件的哪一层完成?

a.为一个磁盘读操作计算磁道、扇区、磁头;设备驱动程序

b.向设备寄存器写命令;中断处理程序

c.检查用户是否允许使用设备;设备独立性软件

d.将二进制整数转换成ASCII码以便打印硬件

3.为什么在要打印的文件通常都假脱机输出到磁盘上?

答:达到缓冲的目的,实现提高I/O设备性能的目的。为了打印一个文件,一个进程首先要生成需要打印的整个文件并把它放在假脱机目录里。由守护进程打印该目录下的文件,该进程是允许使用打印机设备文件的唯一进程。通过保护设备文件来防止用户直接使用,可以解决某些进程不必要地长期空占打印机的问题。

第六次作业

1.假设页表在存保存的分页系统,

a.如果一次访问存用200ns,那么访问一个页的一次数据访问用多少时间?

b.如果加入TLB,有75%的命中率,那么存有效访问时间是多少?

a)访问一个页数据需要访问两次存,第一次访问存中的页表,第二次根据页表中的信息形成的物理地址访问存访问数据,所以要用200*2=400ns

b)加入TLB,获得物理地址的过程为:先在TLB中查找,如果TLB中命中,则直接获得物理地址,如果TLB中不存在,则去访问页表,所以需要的访问时间为0.25*200=50ns

总共需要的时间为50ns+200ns=250ns

2.在一个虚拟存储管理系统中采用页式方法对存空间进行管理,它有24位的虚拟地址空间,而实际的物理地址空间是16位,页框大小为2k。假设有两个进程A和B。其中A进程的0、2页已经调入到存的2、3号页框;B进程的1、3页已经调入到存的7、8号页框。请问:A进程的虚拟地址12FF可以转换成什么物理地址?B进程的虚拟地址17BA可以转换成什么物理地址?如果不能转换,操作系统会执行什么操作?

页框大小为2k=2^11,有11位的位移。

相关文档
最新文档