11

320 阅读4分钟

何谓磁盘高速缓存?在设计磁盘高速缓存时需要考虑哪些问题? 【参考答案】磁盘高速缓存是指在内存中为磁盘盘块设置的一个缓冲区,在该缓冲区中保存了某些盘块的副本。系统在访问磁盘时,首先会查看磁盘高速缓冲中是否存在要访问的盘块内容,如果存在,则可从磁盘高速缓存中去获取,而无须启动盘,进而提高了访问速度;如果不存在,则启动磁盘以将所需盘块内容读人,并把该内容传送给磁盘高速缓存,以方便再次访问时获取在设计磁盘高速缓存时需要考虑的问题有:如何将磁盘高速缓存中的数据传送给请求进程;②应采用什么样的置换策略;③已修改的盘块数据应在何时写回磁盘

为什么要有设备驱动程序?用户进程是如何通过设备驱动程序来控制设备工作的? 【参号答案】设备驱动程序与硬件密切相关,主要负责接收上层软件发来的I/O指令,并将其转换成具体要求发送给设备控制器;反之,也将来自设备控制器的信号传送给上层软件。采 用设备驱动程序实现IO系统的高层与设备控制器之间的通信,驱动UO设备工作用户进程通过设备驱动程序控制设备工作的过程为:①接收由用户进程发来的IO命令和参数,并将命令中的抽象要求转换为具体要求,如将磁盘盘块号转换为盘的盘面、磁道和扇区号:2检查用户IO请求的合法性,如果请求不合法,则拒绝接收IO请求并反馈用户进程;3了解I/O设备的状态,如果设备准备就绪,则可由设备控制器设置设备的工作方式、传递有关参数;否则,将请求者的请求块挂到设备请求队列上等待;4发出IO命令,如果设备空闲,则立即启动IO设备,完成指定的IO操作

什么是微内核 OS?它具有哪些优点? 【参考答案】微内核OS具有如下4个特征:足够小的内核;2)基于客户/服务器模式:3应用策略与机制分离原则;4采用面向对象技术。 微内核OS的主要优点包括:①提高了系统的可扩展性;2增强了系统的可靠性和可移植性;③提供了对分布式系统的支持;4融入了面向对象技术

假设某系统的目录管理采用了索引节点方式,如果用户需要打开文件/user/student/myfile.dat,则请简要阐述目录检索的大致过程。(假设根目录内容已经读入内存且对应相关目录、文件均存在) 【参考答案】目录检索的大致过程为: 1在根目录中查找user目录项; 2找到user目录项后,根据其索引节点编号,获得索引节点位置并将其索引节点内容读入内存(若不在内存),然后根据索引节点中的文件外存地址读入user的目录文件内容; 3在user内容中查找student目录项,根据其索引节点编号,获得索引节点位置,并读入student的内容(过程类似于第2步,若还有更深层次的目录,则中间目录也采用类似的方法); 4.在student目录文件内容中查找myfile,dat月录项,根据其索引节点编号,获得索引节点位置并将其索引节点内容读入内存,myfile.dat文件被打开。

(1)簇大小为4KB,每个地址项长度为4B,故每簇有4KB/4B=1024个地址项。最大文件的物理块数可达8+1x1024+1x10242+1x10243,每个物理块(簇)大小为4KB,故最大文件长度为(8+1x1024+1x10242+1x10243)x4KB=32KB+4MB+4GB+4TB (2)文件索引结点总个数为1Mx4KB/64B=64M,17KB的文件占5个簇,512M个簇可存放的文件总个数为512M/5=102.4M。可表示的文件总个数受限于文件索引结点总个数,故能存储64M个大小为17B的图像文件 (3)文件F1的大小为17KB<4KBx8=32KB,故获取文件F1的最后一个簇的簇号只需要访问索引结点的直接地址项。文件F2的大小为45KB4KBx8<45KB<4KBx8+4KBx1024,故获取2的最后一个簇的簇号还需要读一级索引表。综上,需要的时间不相同。