二、选择
1.在对磁盘进行读/写操作时,下面给出的参数中, C 是不正确的。
A. 柱面号 B.磁头号 C.盘面号 D.扇区号
2.在设备管理中,是由 B 完成真正的I/O操作的。
A.输入/输出管理程序 B.设备驱动程序
C.中断处理程序 D.设备启动程序
3.在下列磁盘调度算法中,只有 D 考虑I/O请求到达的先后次序。
A.最短查找时间优先调度算法 B.电梯调度算法
C.单向扫描调度算法 D.先来先服务调度算法
4.下面所列的内容里, C 不是DMA方式传输数据的特点。
A.直接与内存交换数据 B.成批交换数据
C.与CPU并行工作 D.快速传输数据
5.在CPU启动通道后,由 A 执行通道程序,完成CPU所交给的I/O任务。
A. 通道 B.CPU C.设备 D.设备控制器
6.利用SPOOL技术实现虚拟设备的目的是 A 。
A.把独享的设备变为可以共享 B.便于独享设备的分配
C.便于对独享设备的管理 D.便于独享设备与CPU并行工作
7.通常,缓冲池位于 C 中。
A.设备控制器 B.辅助存储器 C.主存储器 D.寄存器
8. B 是直接存取的存储设备。
A.磁带 B.磁盘 C.打印机 D.键盘显示终端
9.SPOOLING系统提高了 A 的利用率。
A.独享设备 B.辅助存储器 C.共享设备 D.主存储器
10.按照设备的 D 分类,可将系统中的设备分为字符设备和块设备两种。
A.从属关系 B.分配特性 C.操作方式 D.工作特性
三、问答
1.基于设备的从属关系,可以把设备分为系统设备与用户设备两类。根据什么来区分一个设备是系统设备还是用户设备呢?
答:所谓“系统设备”,是指在操作系统生成时就已被纳入系统管理范围的设备;所谓“用户设备”是指在完成应用任务过程中,用户特殊需要的设备。因此,判定一个设备是系统设备还是用户设备,依据是它在系统生成时,是否已经纳入了系统的管理范围。如果是,它就是系统设备;如果不是,它就是用户设备。
2.设备管理的主要功能是什么?
答:设备管理的主要功能是:(1)提供一组I/O命令,以便用户进程能够在程序中提出I/O请求,这是用户使用外部设备的“界面”;(2)记住各种设备的使用情况,实现设备的分配与回收;(3)对缓冲区进行管理,解决设备与设备之间、设备与CPU之间的速度匹配问题;(4)按照用户的具体请求,启动设备,通过不同的设备驱动程序,进行实际的I/O操作;I/O操作完成之后,将结果通知用户进程,从而实现真正的I/O操作。
3.试分析最短查找时间优先调度算法的“不公平”之处。例如例4-1里,原来磁臂移到16柱面后,下一个被处理的I/O请求是柱面1。假定在处理16柱面时,到达一个对柱面8的I/O新请求,那么下一个被处理的就不是柱面1而是柱面8了。这有什么弊端存在?
答:最短查找时间优先调度算法,只考虑各I/O请求之间的柱面距离,不去过问这些请求到达的先后次序。这样一来,可能会出现的弊端是磁头总是关照邻近的I/O请求,冷待了早就到达的、位于磁盘两头的I/O请求。这对于它们来说,当然是“不公平”的。
4.总结设备和CPU在数据传输的4种方式中,各自在“启动、数据传输、I/O管理以及善后处理”各个环节所承担的责任。
答:使用“程序循环测试”的方式来进行数据传输,不仅启动、I/O管理和善后处理等工作要由CPU来承担,即使在数据传输时,CPU也要做诸如从控制器的数据寄存器里取出设备的输入信息,送至内存;将输出的信息,从内存送至控制器的数据寄存器,以供设备输出等工作。因此,在这种方式下,CPU不仅要花费大量时间进行测试和等待,并且只能与设备串行工作,整个计算机系统的效率发挥不出来。
使用“中断”的方式来进行数据传输,启动、I/O管理以及善后处理等工作仍然要由CPU来承担,但在设备进行数据传输时,CPU和外部设备实行了并行工作。在这种方式下,CPU的利用率有了一定的提高。
使用“直接存储器存取(DMA)”的方式来进行数据传输,I/O的启动以及善后处理是CPU的事情,数据传输以及I/O管理等事宜均由DMA负责实行。不过,DMA方式是通过“窃取”总线控制权的办法来工作的。在它工作时,CPU被挂起,所以并非设备与CPU在并行工作。因此,在一定程度上影响了CPU的效率。
使用“通道”方式来进行数据传输,在用户发出I/O请求后,CPU就把该请求全部交由通道去完成。通道在整个I/O任务结束后,才发出中断信号,请求CPU进行善后处理。这时CPU对I/O请求只去做启动和善后处理工作,输入/输出的管理以及数据传输等事宜,全部由通道独立完成,并且真正实现了CPU与设备之间的并行操作。
5.用户程序中采用“设备类,相对号”的方式使用设备有什么优点?
答:在用户程序中采用“设备类,相对号”的方式使用设备的优点是:第一,用户不需要记住系统中每一台设备的具体设备号,这是非常麻烦的事情;第二,在多道程序设计环境下,用户并不知道当前哪一台设备已经分配,哪一台设备仍然空闲。通过“设备类,相对号”来提出对设备的使用请求,系统就可以根据当前的具体情况来分配,从而提高设备的使用效率;第三,用户并不知道设备的好坏情况。如果是用“绝对号”指定具体的设备,而该设备正好有故障时,这次I/O任务就不可能完成,程序也就无法运行下去。但通过“设备类,相对号”来提出对设备的使用请求,系统就可以灵活处理这种情况,把好的设备分配出去。
6.启动磁盘执行一次输入/输出操作要花费哪几部分时间?哪个时间对磁盘的调度最有影响?
答:执行一次磁盘的输入/输出操作需要花费的时间包括三部分:(1)查找时间;(2)等待时间;(3)传输时间。在这些时间中,传输时间是设备固有的特性,无法用改变软件的办法将它改进。因此,要提高磁盘的使用效率,只能在减少查找时间和等待时间上想办法,它们都与I/O在磁盘上的分布位置有关。由于磁臂的移动是靠控制电路驱动步进电机来实现,它的运动速度相对于磁盘轴的旋转来讲较缓慢。因此,查找时间对磁盘调度的影响更为主要。
7.解释通道命令字、通道程序和通道地址字。
答:所谓“通道命令字”,是指通道指令系统中的指令。只是为了与CPU的指令相区别,才把通道的指令改称为“通道命令字”。
若干条通道命令字汇集在一起,就构成了一个“通道程序”,它规定了设备应该执行的各种操作和顺序。
通常,通道程序存放在通道自己的存储部件里。当通道中没有存储部件时,就存放在内存储器里。这时,为了使通道能取得通道程序去执行,必须把存放通道程序的内存起始地址告诉通道。存放这个起始地址的内存固定单元,被称为“通道地址字”。
8.何为DMA?通道与DMA有何区别?
答:所谓“DMA”,是指“直接存储器存取”的数据传输方式,其最大特点是能使I/O设备直接和内存储器进行成批数据的快速传输。适用于一些高速的I/O设备,如磁带、磁盘等。通道方式与DMA方式之间的区别如下。
(1)在DMA方式下,数据传输的方向、传输长度和地址等仍然需要由CPU来控制。但在通道方式下,所需的CPU干预大大减少。
(2)在DMA方式下,每台设备要有一个DMA控制器。当设备增加时,多个DMA控制器的使用,显然不很经济;但在通道方式下,一个通道可以控制多台设备,这不仅节省了费用,而且减轻了CPU在输入/输出中的负担。
(3)在DMA方式下传输数据时,是采用“窃取”总线控制权的办法来工作的。因此,CPU与设备之间并没有实现真正的并行工作;在通道方式下,CPU把I/O任务交给通道后,它就与通道就真正并行工作。
9.解释记录的成组与分解。为什么要这样做?
答:往磁带、磁盘上存放信息时,经常是把若干个记录先在内存缓冲区里拼装成一块,然后再写到磁带或磁盘上。存储设备与内存储器进行信息交换时,就以块为单位。这个把记录拼装成块的过程,被称为是“记录的成组”。
从磁带、磁盘上读取记录时,先是把含有那个记录的块读到内存的缓冲区中,在那里面挑选出所需要的记录,然后把它送到内存存放的目的地。这个把记录从缓冲区里挑选出来的过程,被称为是“记录的分解”。
之所以这样做,一是为了提高存储设备的存储利用率;二是减少内、外存之间信息交换次数,提高系统的效率。
10.试述SPOOL系统中的3个组成软件模块各自的作用。
答:SPOOLING系统中的3个软件模块是预输入程序、缓输出程序和井管理程序。它们各自的作用如下。
(1)预输入程序预先把作业的全部信息输入到磁盘的输入井中存放,以便在需要作业信息以及作业运行过程中需要数据时,可以直接从输入井里得到,而无需与输入机交往,避免了等待使用输入机的情况发生。
(2)缓输出程序总是查看“输出井”中是否有等待输出的作业信息。如果有,就启动输出设备(如打印机)进行输出。因此,由于作业的输出是针对输出井进行的,所以不会出现作业因为等待输出而阻塞的现象。
(3)井管理程序分为“井管理读程序”和“井管理写程序”。当作业请求输入设备工作时,操作系统就调用井管理读程序,把让输入设备工作的任务,转换成从输入井中读取所需要的信息;当作业请求打印输出时,操作系统就调用井管理写程序,把让输出设备工作的任务,转换成为往输出井里输出。
四、计算
1.在例4-1里,对电梯调度算法只给出了初始由外往里移动磁臂时的调度结果。试问如果初始时假定是由里往外移动磁臂,则调度结果又是什么?
解:这时调度的顺序是11→9→1→12→16→34→36,总共划过的柱面数是:
2+8+11+4+18+2=45
2.磁盘请求以10、22、20、2、40、6、38柱面的次序到达磁盘驱动器。移动臂移动一个柱面需要6ms,实行以下磁盘调度算法时,各需要多少总的查找时间?假定磁臂起始时定位于柱面20。
(a)先来先服务;
(b)最短查找时间优先;
(c)电梯算法(初始由外向里移动)。
解:(a)先来先服务时,调度的顺序是20→10→22→20→2→40→6→38,总共划过的柱面数是:
10+12+2+18+38+34+32=146
因此,总的查找时间为:146×6=876ms。
(b)最短查找时间优先时,调度的顺序是20→22→10→6→2→38→40(由于磁臂起始时定位于柱面20,所以可以把后面第20柱面的访问立即进行),总共划过的柱面数是:
2+12+4+4+36+2=60
因此,总的查找时间为:60×6=360ms。
(c)电梯算法(初始由外向里移动)时,调度的顺序是20→22→38→40→10→6→2(由于磁臂起始时定位于柱面20,所以可以把后面第20柱面的访问立即进行),总共划过的柱面数是:
2+16+2+30+4+4=58
因此,总的查找时间为:58×6=348ms。
3.假定磁盘的移动臂现在处于第8柱面。有如下表所示的6个I/O请求等待访问磁盘,试列出最省时间的I/O响应次序。
序 号 | 柱 面 号 | 磁 头 号 | 扇 区 号 |
1 | 9 | 6 | 3 |
2 | 7 | 5 | 6 |
3 | 15 | 20 | 6 |
4 | 9 | 4 | 4 |
5 | 20 | 9 | 5 |
6 | 7 | 15 | 2 |
解:由于移动臂现在处于第8柱面,如果按照“先来先服务”调度算法,对这6个I/O的响应次序应该是8→9→7→15→9→20→7;如果是按照“最短查找时间优先”调度算法,对这6个I/O的响应次序可以有两种,一是8→9→7→15→20(到达9时完成1和4的请求,到达7时完成2和6的请求),二是8→7→9→15→20(到达7时完成2和6的请求,到达9时完成1和4的请求);如果按照“电梯”调度算法,对这6个I/O的响应次序可以有两种,一是8→9→15→20→7(由里往外的方向,到达9时完成1和4的请求,到达7时完成2和6的请求),二是8→7→9→15→20(由外往里的方向,到达7时完成2和6的请求,到达9时完成1和4的请求);如果按照“单向扫描”调度算法,对这6个I/O的响应次序是8→9→15→20→0→7。对比后可以看出,实行8→7→9→15→20的响应次序会得到最省的时间,因为这时移动臂的移动柱面数是:
1+2+6+5 = 14
第5章
一、填空
1.一个文件的文件名是在 创建该文件 时给出的。
2.所谓“文件系统”,由与文件管理有关的 那部分软件 、被管理的文件以及管理所需要的数据结构三部分组成。
3. 块 是辅助存储器与内存之间进行信息传输的单位。
4.在用位示图管理磁盘存储空间时,位示图的尺寸由磁盘的 总块数 决定。
5.采用空闲区
本文链接:https://my.lmcjl.com/post/8340.html
4 评论