.1.程序员利用系统调用打开I/O设备时,通常使用的设备标识是(A)。
逻辑设备名
物理设备名
主设备号
从设备
解析:
设备管理具有设备独立性的特点,操作系统以系统调用方式来请求某类设备时,使用的是逻辑设备名。而在程序实际执行时,将逻辑设备名转换为对应的物理设备名。
2.本地用户通过键盘登录系统时,首先获得键盘输入信息的程序是(B)。
命令解释程序
中断处理程序
系统调用服务程序
用户登录程序
解析:键盘是典型的通过中断I/O方式工作的外设,当用户输入信息时,计算机响应中断并通过中断处理程序获得输入信息。
3.用户程序发出磁盘IO请求后,系统的正确处理流程是 B
用户程序->系统调用->中断处理->设备驱动
用户程序->系统调用->设备驱动->中断处理
用户程序->设备驱动->系统调用->中断处理
用户程序->设备驱动->中断处理->系统调用
4.某文件占10个磁盘块,现要把该文件磁盘块逐个读入主存缓冲区,并送用户区进行分析,假设一个缓冲区与一个磁盘块大小相同,把一个磁盘块读入缓冲区的时间为100ms,将缓冲区的数据传送到用户区的时间是50ms,CPU对一块数据进行分析的时间为50ms。在单缓冲区和双缓冲区结构下,读入并分析完该文件的时间分别是(B)。
1500s、1000s
1550s、1100s
1550s、1550s
2000s、2000s
解析:
在单缓冲区中,当上一个磁盘块从缓冲区读入用户区完成时,下一磁盘块才能开始读入,也就是当最后一块磁盘块读入用户区完毕时所用时间为150×10=1500ms,加上处理最后一个磁盘块的时间50ms,得1550ms。双缓冲区中,不存在等待磁盘块从缓冲区读入用户区的问题,10个磁盘块可以连续从外存读入主存缓冲区,加上将最后一个磁盘块从缓冲区送到用户区的传输时间50ms以及处理时间50ms,也就是100×10+50+50=1100ms。
5.操作系统的I/O子系统通常由四个层次组成,每一层明确定义了与邻近层次的接口。其合理的层次组织排列顺序是(A)。
用户级I/O软件、设备无关软件、设备驱动程序、中断处理程序
用户级I/O软件、设备无关软件、中断处理程序、设备驱动程序
用户级I/O软件、设备驱动程序、设备无关软件、中断处理程序
用户级I/O软件、中断处理程序、设备无关软件、设备驱动程序
解析:设备管理软件一般分为四个层次:用户层、与设备无关的系统调用处理层、设备驱动程序以及中断处理程序。
6.下列选项中,不能改善磁盘设备I/O性能的是(B)。
重排I/O请求次序
在一个磁盘上设置多个分区
预读和滞后写
优化文件物理块的分布
解析:
对于A,重排I/O请求次序也就是进行I/O调度,从而使进程之间公平地共享磁盘访问,减少I/O完成所需要的平均等待时间。对于C,缓冲区结合预读和滞后写技术对于具有重复性及阵发性的I/O进程改善磁盘I/O性能很有帮助。对于D,优化文件物理块的分布可以减少寻找时间与延迟时间,从而提高磁盘性能。在一个磁盘上设置多个分区与改善设备I/O性能并无多大联系,相反还会带来处理的复杂和降低利用率。
7.用户程序发出磁盘I/O 请求后, 系统的处理流程是:用户程序→系统调用处理程序→设备骆动程序→中断处理程序。其中,计算数据所在磁盘的柱面号、磁头号、扇区号的程序是( )。
用户程序
系统调用处理程序
设备驱动程序
中断处理程序
解析:计算磁盘柱面号、磁头号和扇区号就是设备驱动程序要做的事……
我的理解是,磁盘I/O是要直接和硬件打交道,一般来说不同的硬件需要用不同的设备驱动程序,然后针对具体的某个硬件来计算物理存储位置。
8.设系统缓冲区和用户工作区均采用单缓冲,从外设读入1 个数据块到系统缓冲区的时间为 100,从系统缓冲区读入 1 个数据块到用户工作区的时间为 5, 对用户工作区中的 1 个数据块进行分析的时间为 90(如下图所示)。进程从外设读入并分析 2 个数据块的最短时间是: C
200
295
300
390
9.下列关于SPOOLing技术的叙述中,错误的是 。
需要外存的支持
需要多道程序设计技术的支持
可以让多个作业共享一台独占设备
由用户作业控制设备与输入/输出井之间的数据传送
解析:
SPOOLing是利用专门的外围控制机,将低速I/O设备上的数据传送到高速磁盘上;或者相反。SPOOLing的意思是外部设备同时联机操作,又称为假脱机输入/输出操作,是操作系统中采用的一项将独占设备改造成共享设备的技术。高速磁盘即外存,A正确。SPOOLing技术需要进行输入/输出操作,单道批处理系统无法满足,B正确。SPOOLing技术实现了将独占设备改造成共享设备的技术,C正确。设备与输入/输出井之间数据的传送是由系统实现的,D错误