操作系统课后习题答案4_第1页
操作系统课后习题答案4_第2页
操作系统课后习题答案4_第3页
操作系统课后习题答案4_第4页
操作系统课后习题答案4_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

6. 设备管理6.1 例题解析例 6.2.1 何谓虚拟设备?请说明 SPOOLing 系统是如何实现虚拟设备的。解 本题的考核要点是虚拟设备的实现方法。虚拟设备是指利用软件方法,比如 SPOOLing 系统,把独享设备分割为若干台逻辑上的独占的设备,使用户感受到系统有出若干独占设备在运行。当然,系统中至少一台拥有物理设备,这是虚拟设备技术的基础。SPOOLing 系统又称 “假脱机 I/O 系统” ,其中心思想是,让共享的、高速的、大容量外存储器(比如,磁盘)来模拟若干台独占设备,使系统中的一台或少数几台独占设备变成多台可并行使用的虚拟设备。SPOOLing 系统主要管理外存上的输入井和输出井,以及内存中的输入缓冲区和输出缓冲区。其管理进程主要有输入和输出进程,负责将输入数据装入到输入井,或者将输出井的数据送出。它的特点是:提高了 I/O 操作的速度;将独占设备改造为共享设备;实现了虚拟设备功能。例 6.2.2 有关设备管理要领的下列叙述中,( )是不正确的。A通道是处理输入、输出的软件B所有外围设备都由系统统一来管理C来自通道的 I/O 中断事件由设备管理负责处理D编制好的通道程序是存放在主存贮器中的E由用户给出的设备编号是设备的绝对号解 本题的考核要点是设备管理的基本概念。(1) 通道是计算机上配置的一种专门用于输入输出的设备,是硬件的组成部分。因此A 是错误的。(2) 目前常见 I/O 系统其外部设备的驱动和输入输出都由系统统一管理。因此 B 是对的。(3) 设备管理模块中的底层软件中配有专门处理设备中断的处理程序。通道中断属于设备中断的一种。因此 C 是对的。(4) 通道设备自身只配有一个简单的处理装置(CPU ) ,并不配有存储器,它所运行的通道程序全部来自内存。因此 D 是对的。(5) 系统在初启时为每台物理设备赋予一个绝对号,设备绝对号是相互独立的。由用户给出的设备号只能是逻辑编号,由系统将逻辑号映射为绝对号。因此 E 是错误的。例 6.2.3 在关于 SPOOLING 的叙述中, 描述是不正确的。0 6. 设备管理112ASPOOLING 系统中不需要独占设备BSPOOLING 系统加快了作业执行的速度CSPOOLING 系统使独占设备变成共享设备DSPOOLING 系统利用了处理器与通道并行工作的能力。本题的考核要点是 SPOOLING 技术。涉及的概念有 4 方面:(1) 该项技术应有外存空间作为物质基础,同时应当至少有一台独占设备实现输入或输出,因此选项 A 错误。(2) SPOOLING 技术又称“脱机输入输出系统” 。它将独享设备改造成与共享设备,使进程避免长期等待 I/O 操作的完成,因此加快了作业执行的速度。所以说 B是正确的。(3) SPOOLING 技术将外存空间模拟成多台独占设备,功能上看,它将一台独占设备变成一台共享设备,因而 C 是对的。(4) 在计算机系统中安装上通道设备,使处理器与通道可以并行工作。这作为一种硬件配置,与没有通道的系统相比,系统的资源利用率得到提高。不过,无论有没有配置通道,SPOOLING 系统都是可以运行的。因此 D 是不正确的。例 6.2.4 I/O 软件一般分为 4 个层次,用户层、与设备无关软件层、设备驱动程序以及中断处理程序。请说明以下各工作是在哪一层完成的?(1) 向设备寄存器写命令;(2) 检查用户是否有权使用设备;(3) 将二进制整数转换成 ASCII 码以便打印。解 本题的考核要点为设备管理模块的结构。有些系统的结构分为本题所说的 4 层结构,而有的系统将设备驱动程序与中断处理程序合并为 1 层,共分为 3 层(见汤子瀛计算机操作系统 ,P221) 。无论如何划分并不影响本题的回答。设备驱动程序是设备管理的底层软件,用于控制 I/O 设备进行具体输入输出操作。其功能是:1) 将抽象的要求转换为具体的要求;2) 检查用户 I/O 请求的合法性,了解外设的状态,设置设备的工作方式;3) 向设备发出 I/O 命令,启动设备,实现 I/O。(1) 由于“向设备寄存器写命令”属于直接操作设备控制器的操作,因此属于设备驱动程序。(2) 用户层软件是用户与设备管理模块的接口,负责解释用户的应用请求,并将这种请求转化为具体的输入输出操作。不过,该层软件并不检查用户的访问权限,因此, “检查用户是否有权使用设备”属于设备驱动程序。(3) 与设备无关软件层软件主要负责将逻辑设备名转换为物理设备,实现设备的分配和回收,进行缓冲区管理等。 “将二进制整数转换成 ASCII 码以便打印”不属于该层软件。它应当是将抽象要求转换为具体要求的一部分,所以也属于设备驱动程序。例 6.2.5 在缓冲池中有 3 个队列,分别为空白缓冲队列 em,输入缓冲队列 in,以及例题解析113输出缓冲队列 out。过程 add_buf(type,numb)和 take_buf(type,numb)分别用来把缓冲区 numb 插入 type 队列和从 type 队列中取出缓冲区 numb。试描述进程从任一缓冲队列得到一个缓冲区的过程 get_buf(type,numb)和将一个缓冲区 numb 放入缓冲队列的过程 put_buf(type,numb) 。解 设队列 type 的互斥信号量为 S(type) ,初值为 1。设描述资源数目的信号量RS(type ) ,初值为 n。信号量的定义及初始化过程,以及 get_buf()过程和 put_buf()过程的描述如下:Semaphore S(type):=1;Semaphore RS(type):=n; /*n 为 type 队列长度*/PROCEDURE get_buf(type,number)BEGINP(RS(type);P(S(type);Pointer of buffer(number)=take_buf(type,number)V(S(type);END;PROCEDURE put_buf(type,number)BEGINP(S(type);add_buf (type,number)V(S(type);V(RS(type);END。例 6.7 描述操作系统中使用公用缓冲池时数据块插入缓冲队列的输入过程。本题考核的要点是缓冲池技术。缓冲池由多个缓冲区组成,其中每个缓冲区包括缓冲区首部和缓冲体两部分。系统通过操作缓冲池首部,实现对缓冲区的管理。解 通常,缓冲池中有 3 个队列:em 队列(空白缓冲区队列) 、in 队列(装满输入数据的缓冲区队列) 、out 队列(装满输出数据的缓冲区队列) 。令参数 type 表示缓冲队列类型,number 表示缓冲区号。缓冲池管理中负责数据输入的过程可包括:(1)过程 get_buf(type,number):以某种选取规则从 type 指定的缓冲区队列中摘取一个缓冲区 number。(2)过程 put_buf(type,number):将 number 缓冲区程将缓冲区放入相应缓冲区队列。使用上述操作,输入过程可被描述如下:(1) 输入进程调用过程 get_buf(em,number)从空白缓冲区队列 em 中取出一0 6. 设备管理114个缓冲区,返回的号码为 number。将该空白缓冲区命名为 hin。(2) 将输入的数据装入缓冲区 hin,当 hin 中装满了由输入设备输入的数据之后,系统调用过程 put_buf(in,hin)将该缓冲区插入输入缓冲队列 in 中。例 6.8 逻辑设备表(LUT)的主要功能是( )和( ) 。设备驱动程序是一种低级的系统例程,它通常分为( )和( )两个部分。本题的考核要点是设备管理的基本概念。涉及的内容有:设备管理的功能之一是,将用户输入的逻辑设备名映射为系统内的物理设备。可使系统在设备分配中更灵活,设备管理更具独立性。在多用户系统中,LUT 是系统为每个进程配置的一种数据结构。该结构被保存到进程的 PCB 中,内含两个域:逻辑设备名和指向系统设备的指针。因此,该问题的正确答案应为:(实现逻辑设备到物理设备的映射)和(实现设备独立性) 。设备驱动程序是设备管理的底层软件,用于控制 I/O 设备进行具体输入输出操作。此外,当输入输出操作完成时,产生的外中断信号由系统予以响应,转入设备中断处理程序,根据操作的状态进行相应的处理。因此正确答案应为:控制 I/O设备进行具体输入输出操作程序、设备中断处理程序例 6.9(论述题)试给出两种 I/O 调度算法,并说明为什么 I/O 调度中不能采用时间片轮转法。本题的考核要点是 I/O 调度算法。两种常用的 I/O 调度算法是:先来先服务算法。当系统中多个进程对同一 I/O 设备提出输入输出请求时,该算法把它们按请求顺序排成一个等待队列,并将该 I/O 设备分配给队列中的第一个进程。优先权高者优先算法。当系统中多个进程对同一 I/O 设备提出输入输出请求时,该算法把它们按优先权由高到低的顺序排成一个等待队列。并将该 I/O 设备分配给队列中的第一个进程(其优先权最高) 。时间片轮转算法是不能用于 I/O 调度中的。因为在 I/O 操作中,大部分外部设备都是独占设备,其固有属性决定了设备只能独占使用,不能共享使用。这种设备一旦被某进程占用,直到使用完才能被释放。而且在通道程序控制的输入输出系统中,通道程序的执行是不受中断影响的。时间片中断信号并不能中断通道程序的操作。所以 I/O 调度中不能采用时间片轮转法。例 6.10 某操作系统采用双缓冲传送磁盘上的数据。设从磁盘将数据传送到缓冲区所用时间为 T1,将缓冲区中数据传送到用户区所用时间为 T2(假设 T2T1,即 CPU 处理数据快,数据传送慢。此时意味着 I/O 设备可连续输入,磁盘将数据传送到缓和冲区,再传送到用户区,与 CPU 处理数据可视为并行处理。例题解析115时间的花费取决于 CPU 最大花费时间,则系统的用总时间为 T3。如果 T3T1,即 CPU 处理数据比数据传送快,此时 CPU 不必等待 I/O 设备,磁盘将数据传送到缓冲区,与缓冲区中数据传送到用户区,及 CPU 处理数据,二者可视为并行执行,则花费时间取决于磁盘将数据传送到缓冲区所用时间 T1。答案应为 D。例 6.11 下面是一段简单的通道程序,则四个选项中叙述不正确的是( ) 。操作 P R 计数 内存地址WRITE 0 1 90 743WRITE 0 1 100 250READ 0 1 230 1200WRITE 0 0 120 400WRITE 0 1 120 350READ 1 1 70 2000(A)该段通道程序包括六条、两类通道指令(B)这些指令涉及的数据内存地址有相邻接的地方(C)该段通道程序共处理了 5 条记录(D)单记录最大为 230 个字节本题考核的是通道程序的功能。涉及的概念有:每一行就是一条指令;该段通道程序的 6 条指令可分为 WRITE 和 READ 两类通道指令。在 6 条指令中,第 2 条和第 5 条指令访问的内存地址是邻接的。在通道指令中,域 R 是记录的结束标志。 R=0 表明本通道指令与下一条通道指令处理的数据属于同一条记录;R=1 表明本指令处理完数据后,记录就结束了。因此上面的程序涉及 5 条记录。程序中的第 4 条指令和第 5 条指令共同处理一条记录,即第 4 条记录。记录的长度为 240(120+120)字节。答案应为 D。例 6.12(填空题)进行设备分配时所需的数据表格主要有( ) 、 ( ) 、 ( )和( )等。本题的考核要点是设备分配中使用的数据结构。主要包括: 设备控制表(UC 或 DCB):记录设备的使用情况。主要有设备类型、设备标识符、设备状态、出错后的重复执行次数、控制器表指针,及其他信息。 控制器控制表(CC 或 COCB):记录控制器的使用情况。主要有控制器标识符、控制器状态、通道控制表指针 ,及其他信息。 通道控制表(CH 或 CHCB):记录通道的使用情况。主要有通道标识符、通道状态、控制器控制表指针,及其他信息。0 6. 设备管理116 系统设备表(SDT ):这是系 统范围内的数据结构,记录全部设备的使用情况。主要有设备类型、设备标识符、 设备控制表指针、设备驱动程序入口等。上述前 3 个表的组织结构如下图所示。例 6.13(填空题)某操作系统中,采用中断驱动 I/O 控制方式,设中断时, CPU 用 1ms来处理中断请求,其它时间 CPU 完全用来计算,若系统时钟中断频率为 100HZ,则,CPU 的利用率为( ) 。(A)60% (B)90% (C)80% (D )70%本题的考核要点是时钟中断处理时 CPU 的利用率。首先根据中断频率确定两次中断的间隔时间 T 为:T=1/100=0.01s=10ms其次,在 10ms 时间间隔内, CPU 需要花费 1ms 去处理中断,生硬杀时间用来进行计算。因此 CPU 的利用率 p 为:p=1-1ms/10ms=90%例 6.14(问答题)某操作系统中采用单缓冲传送磁盘数据。设从磁盘将数据传送到缓冲区所用时间为 T1,将缓冲区数据传送到用户区所用时间为 T2,CPU 处理数据所用时间为 T3。问系统处理该数据所用总时间为多少?。本题考核的要点是系统利用单缓冲区进行数据输入的原理。在单缓冲区情况下,磁盘将数据传送到缓冲区的操作,与 CPU 处理数据可视为并行操作。处理过程见下图。例题解析117当第一个数据块从外存输入缓冲区,并将缓冲区数据送入用户区后,第二个数据块从外存输入缓冲区的操作就可以与 CPU 运行用户区的程序操作并行操作。见下图。从图中可以看出,处理一个数据块的时间可以估算为 MAX(T1 ,T3)+T2 。例 6.15(填空题)利用通道实现了( )之间数据的快速传输。(A)CPU 和外设 (B)内存和 CPU(C)内存和外设 (D )外设和外设本题的考核要点是通道的作用。涉及的概念有:计算机系统中设置通道设备,是为了使一些原来由 CPU 处理的输入输出操作转给通道,由通道来完成。这样一来可以按 CPU 从繁杂的输入输出操作中解脱出来。设有通道的硬件结构为:通道设备与 CPU 之间的连接实现的是接收 CPU 来的参数设置、启动外设的命令,及向 CPU 报告操作状态等。通道设备与内存之间的连接,主要实现内存和外设之间的数据快速传输。另外,通道与内存的连接还在于通道设备本身没有自己的内存,它所执行的通道程序必须来自于内存中。例 6.16(填空题)设备驱动程序是系统提供的一种通道程序,它专门用于在请求 I/O 的0 6. 设备管理118进程与设备控制器之间传输信息。下面的选项中不是设备驱动程序功能的是( ) 。(A)检查用户 I/O 请求的合法性(B)及时响应由控制器或通道发来的中断请求(C)控制 I/O 设备的 I/O 操作(D)了解 I/O 设备的状态,传送有关参数,设置设备的工作方式本题考核的要点是设备驱动程序的功能。设备驱动程序的功能有以下 5 种:将接收到的抽象要求转换为具体要求。检查拥护 I/O 的合法性,了解 I/O 设备的状态,传递有关部门参数,设置设备的工作方式。发出 I/O 操作命令,启动 I/O 设备,完成 I/O 操作。响应通道发来的中断请求,根据中断类型调用响应的中断处理程序。构造通道程序。例 6.17(填空题)下列哪种设备不是从设备分配策略角度来说的( ) 。(A)系统设备 (B)独享设备(C)共享设备 (D )虚拟设备本题的考核要点是设备的分类问题。主要涉及的概念有:按设备的所属权划分,设备可分为系统设备和用户设备。按设备分配方式划分,设备可分为 3 种:独享设备(又称独占设备) 、共享设备和虚拟设备。其中, 独享设备采用独享分配策略,采用的是“ 请求- 分配-使用- 回收”分配方式。 共享设备和虚拟设备采用的是共享分配策略,比如用 P、V 操作实现临界资源的使用,用任务排队方式 实现磁盘的分时访问等。例 6.18(选择题)对于速率为 9.6KB/s 的数据通信来说,如果说设置一个具有 8 位的缓冲寄存器,则 CPU 中断时间和响应时间大约分别为( ) 。(A)0.8ms,0.8ms (B)8ms,1ms(C)0.8ms,0.1ms (D )0.1ms ,0.1ms本题的考核要点是中断时间和响应时间的计算。设计的内容为:已知传输速率为 9.6KB/s 的数据通信,产生中断的频率为 9.6KHZ。题中引用了8 位的缓冲寄存器可使中断频率降为 1/8,即,9.6*1024/8。那么,CPU 的中断时间为T1:T1=8/(9.6*1024)0.8ms。CPU 的响应时间 T2 为:T2=1/(9.6*1024) 0.1ms。(注意:若再增设一个 8 位的缓冲寄存器,响应时间也可放宽到 0.8ms。 )例 6.19(问答题)在设备管理中,保持设备独立性有何意义?例题解析119本题的考核要点是设备分配原理。当用户需要一台系统设备时,用户请求中给出一个逻辑设备名。据此,系统就在多台同类的物理设备中分配一台具体的物理设备。这样一来,就在逻辑设备与物理设备之间建立了一个映射。系统将这一映射保存在进程的 PCB 中。以后该进程需要利用设备进行 I/O 时,系统就查阅 PCB,根据设备的映射关系去启动物理设备。设备独立性的优点有: 方便用户编程。用户不必知道设备在系统中的标识。 便于程序移植。程序中使用的是逻辑设备,与具体的物理设备无关,因此便于移植到其他系统中。 资源利用率提高。如果一台设备忙或者有故障,可换另外一台。 能适应多用户多进程的需要。例 6.20(问答题)用流程图描述设备中断的处理过程。本题的考核要点是中断的处理。其处理过程可分为以下几步:唤醒被阻塞的驱动程序进程。保护被中断进程的 CPU 现场信息。分析中断原因,转入相应的中断处理程序执行。进行中断处理。对于输入设备中断处理来说,需要将读入的数据从缓冲区转到用户区;对于输出设备来说,可将用户区中的下一批数据转到缓冲区。无论输入还是输出,都可重新启动外部设备进行下一次 I/O,同时,还要将等待 I/O 的进程唤醒。恢复被中断程序的现场。流程图为:例 6.21(问答题)在一个 CPU 和输入设备 I、输出设备 O 并行执行的系统中,设输入设备 I 和输出设备 O 的启动受 CPU 指令的控制,且输出设备 O 的启动还受输出缓冲是否0 6. 设备管理120装满输出数据的限制。只有装满输出数据,输出设备才能被启动。试描述中断处理方式下的 CPU 动作过程。本题的考核要点是系统响应中断的处理过程。在一个多道程序运行环境中,当进程A 正在使用 CPU 运行自己的程序且需要进行输入输出。系统一方面启动输入输出设备,令一方面系统需要选择另一个进程 B 使用 CPU,该处理过程可见下图所示。CPU 的动作过程为:当前进程 A 有输入输出请求时, CPU 发出“启动外设”命令。A 被阻塞起来等待外设的输入输出操作完成,进程调度原语从就绪队列上选择一个新的就绪进程 B 使用 CPU。当外设的输入输出完成后,I/O 控制器向 CPU 发出中断信号(比如 INTR) 。CPU 在收到中断信号之后,保护 B 的现场信息,转向预先设计好的中断处理程序对数据传输的结果进行处理。中断处理结束后,恢复 B 的现场信息,继续执行被中断的进程 B。在以后的进程调度中,只要选中了请求 I/O 的进程 A,A 才可以继续工作。6.2 习题一、选择最合适的答案1在下面的 I/O 控制方式中,需要 CPU 干预最少的方式是( ) 。(A)程序 I/O 方式 (B)中断驱动 I/O 控制方式 (C)直接存储器访问 DMA 控制方式 (D)I/O 通道控制方式2某操作系统中,采用中断驱动 I/O 控制方式,设中断时,CPU 用 1ms 来处理中断请求,其它时间 CPU 完全用来计算,若系统时钟中断频率为 100HZ,则,CPU 的利用率为( ) 。(A)60% (B)70% (C)80% (D )90%3下列哪一条不是磁盘设备的特点( ) 。(A)传输速率较高,以数据块为传输单位 (B)一段时间内只允许一个用户(进程)访问 (C)I/O 控制方式常采用 DMA 方式 (D)可以寻址,随机地读/写任意数据块习题1214利用通道实现了( )之间数据的快速传输。(A)CPU 和外设 (B)内存和 CPU (C)内存和外设 (D )外设和外设5假脱机技术中,对打印机的操作实际上是用对磁盘存储实现的,用以替代打印机的部分是指( ) 。(A)共享设备 (B)独占设备 (C)虚拟设备 (D )物理设备6设从磁盘将一块数据传送到缓冲区所用时间为 80s,将缓冲区中数据传送到用户区所用时间为 40s,CPU 处理数据所用时间为 30s,则处理该数据,采用单缓冲传送某磁盘数据,系统所用总时间为( ) 。(A)120s (B)110s (C)150s (D )70s7对于速率为 9.6KB/s 的数据通信来说,如果说设置一个具有 8 位的缓冲寄存器,则 CPU 中断时间和响应时间大约分别为( ) 。(A)0.8ms,0.8ms (B)8ms ,1ms(C)0.8ms,0.1ms (D )0.1ms,0.1ms8在调试程序时,可以先把所有输出送屏幕显示而不必正式输出到打印设备,其运用了( ) 。(A)SPOOLing 技术 (B)I/O 重定向 (C)共享技术 (D )缓冲技术9设备驱动程序是系统提供的一种通道程序,它专门用于在请求 I/O 的进程与设备控制器之间传输信息。下面的选项中不是设备驱动程序功能的是( ) 。(A)检查用户 I/O 请求的合法性 (B)及时响应由控制器或通道发来的中断请求 (C)控制 I/O 设备的 I/O 操作 (D)了解 I/O 设备的状态,传送有关参数,设置设备的工作方式10下列关于通道、设备、设备控制器三者之间的关系叙述中正确的是( ) 。(A)设备控制器和通道可以分别控制设备(B)设备控制器控制通道和设备一起工作 (C)通道控制设备控制器,设备控制器控制设备 (D)设备控制器控制通道,通道控制设备二、选择所有正确的答案1下列哪一个选项是引入缓冲的原因( ) 。(A)缓和 CPU 和 I/O 设备间速度不匹配的矛盾 (B)减少对 CPU 的中断频率,放宽对中断响应时间的限制 (C)减少 CPU 对 I/O 控制的干预 (D)提高 CPU 和 I/O 设备之间的并行性0 6. 设备管理1222从设备分配的角度来看,设备分成( ) 。A独享设备 B.系统设备C 用户设备 D.共享设备E虚拟设备3在操作系统中,下列选项属于软件机制的是( ) 。(A)缓冲池 (B)通道技术 (C)覆盖技术 (D )Spooling 技术4下列哪种设备是从设备分配策略角度来说的( ) 。(A)系统设备 (B)独享设备 (C)共享设备 (D )虚拟设备5下列关于通道、设备、设备控制器三者之间的关系叙述中正确的是( ) 。(A)控制器和通道可以分别控制设备(B)控制器、通道和设备一起工作(C)通道控制设备控制器,设备控制器控制设备(D)设备控制器控制通道,通道控制设备6在假脱机 I/O 技术中,对打印机的操作实际上是用对磁盘存储的访问。那么,用以替代打印机的部分通常称作( ) 。(A)共享设备 (B)独占设备(C)虚拟设备 (D )物理设备7下列存储设备中,适合作为共享设备的是( ) 。(A)语音输入输出设备 (B)打印机 (C)鼠标 (D )磁盘8低速设备一般被设置成独占设备,可用作独占设备的有( ) 。(A)软磁盘 (B)磁带机 (C)可擦写光驱 (D )磁鼓9系统中的通道数量较少,可能会产生“瓶颈”问题。 ( )不是解决此问题的有效方法(A)在结构上增加一些连线,以增加数据传送通路(B)在数据传输线路上多增设一些缓冲区(C)提高 CPU 的速度(D)采用虚拟设备技术10I/O 系统硬件结构分为 4 级:1. 设备控制器 2. I/O 设备 3. 计算机 4. I/O 通道,按级别由高到低的顺序是( ) 。(A)2-4-1-3 (B) 3-1-4-2(C)2-1-4-3 (D) 3-4-1-2三、判断正误,简要说明理由1操作系统采用缓冲技术的缓冲池主要是通过硬件来实现的。习题解答1232低速设备一般被设置成共享设备。3通道指令和一般机器的指令没有什么不同。4数组选择通道和数组多路通道可以支持多个通道程序并发执行,而字节多路通道不支持多个通道程度并发执行。5共享设备允许多个作业同时使用设备,即每一时刻可有多个作业在使用该共享设备,因而提高了系统设备资源的利用率。6由于设备分配中设置了若干数据结构,所以在设备分配中不会发生死锁。7I/O 通道控制方式中不需要任何 CPU 干预。8.先来先服务算法、优先级高者优先算法、时间片轮转算法等是经常在设备分配中采用算法。9由于独占设备在一段时间内只允许一个进程使用,因此,多个并发进程无法访问这类设备。10操作系统中应用的缓冲技术,多数通过使用外存来实现。四、简答题1 计算机中设备控制器是由哪些部分构成的?2 什么是字节多路通道?什么是数组选择通道和数组多路通道?3 有哪几种 I/O 控制方式?分别适用何种场合?4 试说明 DMA 的工作流程。5 在单缓冲情况下,为什么系统对一块数据的处理时间为 max(C,T)+M。6 为什么在双缓冲情况下,系统对一块数据的处理时间为 max(C,T)?7 试绘图说明把多缓冲用于输出时的情况。8 试说明收容输入工作缓冲区和提取输出工作缓冲区的工作情况。9 何谓安全分配方式和不安全分配方式?10 为什么要引入设备独立性?如何实现设备独立性?11 试说明 SPOOLing 系统的组成。12 在实现后台打印时,SPOOLing 系统应为请求 I/O 的进程提供哪些服务?13 试说明设备驱动程序具有哪些特点?14 试说明设备驱动程序应具有哪些功能?15 设备驱动程序通常要完成哪些工作?16 设备中断处理程序通常需完成哪些工作?6.3 习题解答一、1D 2D 3B 4C 5C 6A 7C 8B 9C10C二、1 (ABD) 2 (ADE) 3 (ACD) 4 (BCD)5 (BC) 6 (C) 7 (D ) 8 (ABC)0 6. 设备管理1249 (BCD) 10 (D)三、1答案:(错) 。缓冲技术的实现方法有硬件和软件两种。 硬件方法,适于应用在速度和安全性要求较高的重要场合,且费用很高; 软件方法,即在内存中开辟出专门的存储区来做缓冲区。操作系统采用的缓冲池技术是系统公用资源,由多个缓冲区组成,是通过采用软件的方法在内存中实现的。2答案:(错)计算机外部设备分为:高速设备和低速设备。低速设备是不可以共享使用的,因为在一段时间内不能由多个进程同时访问。3答案:(错)通道指令与一般机器指令有如下几点不同之处:通道指令的寻址方式较一般机器指令简单。通道指令的指令格式方式较一般机器指令简单。通道指令的操作码较一般机器指令简单。4答案:(错)在硬件结构中只有数组多路通道支持多个通道程序并发执行。5答案:(错)共享设备允许多个作业在一段时间内同时使用设备。6答案:(错)为了保证每一次设备分配的顺利实施,系统中设置了DCB、COCB、CHCB、SDT 等数据结构。但这并不能保证设备分配的安全性。要想保证分配不发生死锁,还需进行安全性测算。7答案:(错)通道在 I/O 程序执行的开始或结束时,必需要 CPU 进行一定的处理。只有在执行 I/O 程序期间,无需 CPU 干预。8答案:(错)前两种算法可用在设备分配中采用,而时间片轮转算法则不适合在设备 O 分配中。因为一般设备的 I/O 操作一经启动后,便一直运行下去直到完成, I/O 操作期间不宜中断,更不宜切换给其他进程使用。9答案:(错)可以把独占设备作为系统的一种临界资源,用互斥的方法访问它。10错。因为操作系统中应用的缓冲技术是有其限定性的,一般是在内存中或通过硬件技术来实现的。基本上不通过外存来实现。四、1答:包括:设备控制器与 CPU 的接口;设备控制器与设备的接口;输入输出逻辑(见下图所示) 。2答: 字节多路通道含有多个子通道。每个子通道连接一台低速设备,以轮流方式共享主通道。任一子通道交换完一个字节后就将主通道让给下一个子通道。 数组选择通道可连接多台高速外设,具有较高的传输速率。它有一台分配型子通习题解答125道,一段时间内只能执行一道通道程序,使一台设备独占通道以进行数据交换,直到交换完后才可让给其他的设备。 数组多路通道含有多个非分配型子通道,每个子通道连接一台高速外设,以轮流方式共享主通道。任一子通道交换完若干字节后就将主通道让给下一个子通道。3答:共有四种 I/O 方式: 程序 I/O 方式,又称作“ 忙-等”方式。该方式执行一个循环程序,反复查询外设状态,如果外设“忙碌”则循环查询,直到查得外设状态为“闲置”时止。该方式适用于机内没有中断机构的场合。 中断控制 I/O 方式。该方式在进行 I/O 时,CPU 向控制器发出 I/O 命令后,由控制器控制外设操作,CPU 转其他任务的处理,即,CPU 与外设并行工作。当外设完成I/O 后向 CPU 发中断信号, CPU 只需花费很少的时间进行 I/O 的善后处理,此前毋须进行干预。该方式可适于低速外设 I/O,并可配合 DMA 和通道方式实现 I/O。 DMA(直接内存访问)方式。该方式适于高速外设 I/O,一次可以在外设与内存之间传输一个或多个数据块。传输完毕后才需 CPU 干预。 通道方式。该方式中,系统预先要将 I/O 的过程实现为一段通道程序,置于内存的特定位置,而后启动通道。由通道负责执行通道程序对外设进行 I/O 控制,CPU 转其他程序运行。I/O 完成后通道向 CPU 发中断信号,CPU 花很少时间作善后处理。4答:CPU 需要访问外存时,便发送一条访问命令给 DMA 的命令寄存器 CR、一个内存地址码给 DMA 的内存地址寄存器 MAR、本次要传送的字节数给 DMA 的数据计数器 DC、外存地址给 DMA 的 I/O 控制逻辑中。启动 DMA 控制器,然后 CPU 转其他任务处理。DMA 控制器负责控制数据在内存与外存之间传送。每传送一个字节就需挪用一个内存周期,按 MAR 从内存读出或写入内存一个字节,修改 MAR 和计数器 DC。当 DC 修改为 0,表示传送结束,由 DMA 向 CPU 发出中断请求。5答:令 T 是读外存数据送内存缓冲区时间,M 是数据从缓冲区传送到用户区的时间,C 是读内存用户区数据进行计算的时间。当进行第 I 次读外存数据送缓冲区时,系统可同时读出用户区中第(I-1)次数据进行计算。此两项操作并行进行且互不干扰,并与数据从缓冲区传送到用户区的操作串行进行,因此处理一块数据的时间大约为 max(C,T)+M。6答:该方式又称缓冲对换方式。写入者花费时间 T 将数据写满一个缓冲区后再写另一个缓冲区;读出者花费时间 M 将一个缓冲区数据送到用户区后再传送另一个缓冲区数据,运算者读出用户区进行处理。由于将数据从缓冲区传送到用户区操作必须与读用户区数据进行处理串行进行,而且它们又可以与从外存传送数据填满缓冲区的操作并行。因此耗时大约为 max(C+M,T)。考虑到 M 是内存中数据块的“搬家”耗时,非常短暂可以省略,因此近似地认为是:max(C,T)。7答:一般情况下,需要将多缓冲区形成一个环。环上设置两个指针:Nexti 和Nextg。前者指出数据的存入位置,后者指出数据的提取位置。下图是由 6 个缓冲区组成的环,其中,带阴影的表示是装满数据的缓冲区,不带阴影的是空缓冲区。0 6. 设备管理126当需要将环中的一个缓冲区数据输出时,用 P 操作独占该环;判断 Nexti 与Nextg 是否重合,若是重合则表示环中数据已空,需要通过 V 操作释放该环,并阻塞等待。若 Nexti 与 Nextg 没有重合,则从 Nextg 处取出一个缓冲区的数据,将 Nextg 顺序向后推一个位置,需要通过 V 操作释放该环。8答:当需要输入数据时,调用 GetBuf(emq)过程从空闲队列上摘下一个空缓冲区,作为收容输入工作缓冲区 hin,输入的数据被装入 hin 中,装满 hin 后,调用PutBuf(inq, hin)过程将 hin 挂入输入队列 inq 中。当需要输出数据时,调用 GetBuf(outq)过程从输出队列上摘下一个装满数据的缓冲区,作为提取输出工作缓冲区 sout,将 sout 中的数据提取输出, sout 的数据被提取完后,调用 PutBuf(emq ,sout)过程将 sout 挂入空闲队列中。9答:安全分配是一种“摈弃请求和保持条件”的资源分配方式。在这种方式中,一个进程请求资源一旦获得(比如 I/O 请求时获得所需的设备) ,该进程就由运行状态变为阻塞状态,使它不可能再请求新的资源。相反,当该进程开始运行时(比如 I/O 完成后被唤醒) ,它已不占有资源。因此,这种分配摈弃了造成死锁的一个条件,分配是安全的。这种分配方式的缺点是进程推进速度慢,因为 CPU 与 I/O 是串行的。不安全的分配方式是指,进程在提出资源请求时(比如 I/O 请求)并不将它阻塞,而是允许它继续使用 CPU,并提出第二次资源请求。这样,若第二次请求的资源已被其他进程占用使该进程被阻塞时,则该进程具备了“请求和保持”条件,可能产生死锁,因而说,这种分配是不安全的分配。10答:设备独立性又称为设备无关性。它指的是应用程序在使用设备进行 I/O 时,使用的是逻辑设备,而系统在实际执行时使用的是物理设备,由操作系统负责逻辑设备与物理设备的映射。引入设备独立性可以使设备的分配具有极大的灵活性,并易于实现I/O 重定向。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论