操作系统 第六章-课后习题

  1. 说明 I/O 系统的基本功能
    1. 隐藏物理设备的细节;
    2. 与设备无关性;
    3. 提高处理机和 I/O 设备的利用率;
    4. 对 I/O 设备进行控制;
    5. 确保对设备的正确共享;
    6. 错误处理;
  2. 简要说明 I/O 软件的4个层次的基本功能
    1. 用户层 I/O 软件:用于实现用户与 I/O 设备的交互;
      • 系统调用;
      • spooling 技术;
        • 守护进程
    2. 设备独立性软件:用于实现用户程序与设备驱动器的统一接口、设备命令、设备保护、以及设备分配与释放;
      1. 各种数据结构:逻辑设备表,系统设备表,控制器控制表,设备控制表,通道控制表;
      2. 设备分配算法:
        1. 先来先服务
        2. 优先级
    3. 设备驱动程序:与硬件直接有关,用来具体实现系统对设备发出的操作指令,驱动 I/O 设备工作;
      1. I/O 设备控制方式:
        1. 程序直接控制(字节)
        2. 中断控制(字节)
        3. DMA(块)
        4. 通道(块)
    4. 中断处理程序:用于保存被中断进程的CPU 环境,准入相应的中断处理程序进行处理,处理完后回复现场,并返回到被中断的进程;
  3. I/O 系统接口与软件/硬件(RW/HW)接口分别是什么接口?
    1. I/O 系统接口是I/O 系统与上层系统之间的接口,向上层提供对设备进行操作的抽象命令,以方便高层对设备的使用
    2. 软件/硬件(RW/HW) 接口上面是中断处理程序和用于不同设备的设备驱动程序,下面是各种设备的控制器;
  4. 与设备无关性的基本含义是什么?为什么要设置该层?
    1. 应用程序独立于具体使用的物理设备,为了实现设备独立性而引入了逻辑设备和物理设备两概念。在应用程序中,使用逻辑设备名称来请求使用某类设备;在系统的实际执行时,还必须使用物理设备名称。
    2. 优点:
      1. 设备分配时的灵活性高;
      2. 易于实现 I/O 重定向(用于 I/O 操作的设备可以更换,而不必改变应用程序);
  5. 说明设备控制器的组成
    1. 设置控制器与处理机的接口;
    2. 设备控制器与设备的接口;
    3. I/O 逻辑
  6. 为了实现 CPU 与设备控制器之间的通信,设备控制器应该具备哪些功能?
    1. 接收和识别指令;
    2. 数据交换;
    3. 标识和报告设备的状态;
    4. 地址识别;
    5. 数据缓冲;
    6. 差错控制;
  7. 什么时内存映像 I/O ?它是如何实现的?
    1. 编址上不再区分内存单元地址和设备控制器中的寄存器地址,都采用k值。
    2. 当k值小于等于n时表示的是内存地址;
    3. 当k值大于n时表示的是设备控制器的寄存器地址;
    4. 统一编码,简化了寻址;
  8. 为什么说中断是OS赖以生存的基础?
    1. 中断在操作系统中有着特殊重要地位,它是多道程序得以实现的基础,没有中断,就不可能实现多道程序,因为进程之间的切换是通过中断来完成的;
    2. 中断也是设备管理的基础,为了提高处理机的利用率和实现CPU和I/O设备并执行,也必需有中断的支持;
    3. 中断处理程序是I/O 系统中最低的一层;
  9. 对中断源的两种处理方式分别适用于哪种情况?
    1. 屏蔽(禁止)中断:当处理机正在处理一个中断时,将屏蔽掉所有的中断,知道处理机已处理完本次中断,再去检查是否有中断产生。所有中断按顺序处理,优点是简单,但不能用于实时性要求较高的中断请求;
    2. 嵌套中断:在设置了中断优先级的系统中,当同时有多个不同优先级的中断请求,CPU优先响应优先级最高的中断请求,高优先级的中断请求可以抢占正在运行的低优先级的中断请求;
  10. 设备中断处理程序通常需要完成哪些工作?​​​​​​​
    1. ​​​​​​​唤醒被阻塞的驱动进程;
    2. 保护被中断进程的CPU环境;
    3. 转入相应的设备处理程序;
    4. 中断处理;
    5. 恢复被中断进程的现场;
  11. 简要说明中断处理程序对中断进行处理的几个步骤?
    1. ​​​​​​​测定是否有未响应的中断信号;
    2. 保护被中断进程的CPU环境;
    3. 转入相应的设备处理程序;
    4. 中断处理;
    5. 恢复CPU的现场并退出中断;
  12. 设备驱动程序通常需要完成哪些工作?
    1. ​​​​​​​将接收到的抽象要求转为具体要求;
    2. 检查用户 I/O 请求合法性,了解 I/O 设备状态,传递有关参数,设置设备工作方式(程序直接控制,中断控制,DMA,通道控制);
    3. 发出 IO 命令,启动分配到的 IO设备,完成指定IO操作;
    4. 及时响应由控制器或通道发来的中断请求,根据中断类型调用相应中断处理程序处理;
    5. 对于有通道的计算机,驱动程序还应该根据用户IO请求自动构成通道程序;
  13. 简要说明设备驱动程序的处理过程可分为哪几部分​​​​​​​
    1. 将抽象要求转换为具体要求;
    2. 对服务请求进行校验;
    3. 检查设备的状态;
    4. 传送必要的参数;
  14. IO控制发展的主要推动因素?
    1. ​​​​​​​减少CPU对IO控制的干预,把CPU从繁杂的IO控制中解脱出来,已变更毒品的去玩车个数据处理任务;
    2. 缓和CPU的高速性和低速性之间速度不匹配的矛盾,以提高CPU的利用率和系统的吞吐量;
    3. 提高CPU和IO设备操作的并行程度,使CPU和IO设备都处于忙碌状态,从而提高整个系统的资源利用率和系统吞吐量;
  15. 有哪几种IO控制方式?分别适用于?​​​​​​​
    1. ​​​​​​​程序IO方式:适用于早期无中断的计算机;
    2. 中断驱动IO控制方式:普遍用于现代的计算机系统中;
    3. DMA:适用于IO设备为块设备时在和主机进行数据交换的时候;
    4. IO通道控制方式:IO设备和主机进行一组数据块的数据交换时使用,但此时要求系统必须配置相应的通道及通道控制器;
  16. 试说明DMA的工作流程?
    1. ​​​​​​​(当CPU要从磁盘中读入一数据块时,便向磁盘控制器发送一条读命令)
    2. 该命令被送入命令寄存器CR 中;同时将本次需要读入数据在内存中的起始目标地址送入内存地址寄存器 MAR 中;
    3. 将要读取的字节数送入数据计数器 DR 中;
    4. 将磁盘中的源地址直接送至 DMA 控制器中的 IO控制逻辑上;
    5. 然后启动DMA 控制器进行数据传送;
    6. 此后,CPU 可以去处理其他任务,整个数据传送的过程有 DMA 控制器进行控制;
      1. DMA控制器从磁盘中读取一个字节的数据,并送入数据寄存器DR后,再挪用一个存储器周期,将该字节传送到MAR所指示的内存单元;
      2. 对MAR中的内容+1;
      3. 对DC内容-1;
      4. DC==0,DMA控制器发出中断请求;
    7. 仅在传送一个或多个数据块的开始和结束时,才需要CPU干预;
  17. 与设备无关的软件中,包括了哪些公有操作软件?
    1. ​​​​​​​设备驱动程序的统一接口;
    2. 缓冲管理;
    3. 差错控制;
    4. 对独立设备的分配与回收;
    5. 独立于设备的逻辑数据块;
  18. 考虑设备独立性时,应如何分配独占设备?
    1. ​​​​​​​进程以逻辑设备名提出IO请求;
    2. 系统根据逻辑设备表LUT找到逻辑设备对应的系统设备表SDT的表项;
    3. 根据SDT的表项找到对应的设备控制表DCT的表项,根据DCT表项的设备状态字段,判断当前设备是否正忙,若忙则将该进程的PCB挂在设备队列上,否则按照一定的算法,计算本次设备分配的安全性,不会导致不安全就分配,否则仍将改进程的PCB挂在设备队列上;
    4. 根据DCT找到该设备的控制器控制表COCT中对应的表项中的控制器状态字段,判断是否忙碌:忙碌则将该进程的PCB挂在控制器的等待队列,否则分配;
    5. 根据COCT中找到通道控制器CHCT对应项;判断状态字段;
    6. 只有当:设备、控制器、通道;三者都分配成功,这次的设备分配才算成功。然后便可启动该IO设备进行数据传送;
  19. 何为设备虚拟?实现设备虚拟时所依赖的关键技术是?​​​​​​​
    1. 通过虚拟技术可以将一台独占设备变换成若干台逻辑设备,供若干个用户(进程)同时使用,通常把这种经过虚拟技术处理后的设备称为虚拟设备。其实先所依赖的关键技术是SPOOLING技术;
  20. 在实现后台打印时,SPOOLING系统应为请求IO进程提供哪些服务?
    1. ​​​​​​​由输出进程在输出井(磁盘上)中为之申请一块空闲盘块区,并将要打印的数据送入其中;
    2. 输出进程再为用户进程申请一张空白的用户打印表,并将用户的打印要求填入其中,再将该表挂到请求打印队列上;
    3. 一旦打印机空闲,输出进程便从欧冠请求打印队列的对手取出一张请求打印表,根据表中的要求将要打印的数据从输出井传送到内存缓冲区,再由打印机进行打印;
  21. 假脱机系统向用户提供共享打印机的基本思想是?
    1. ​​​​​​​对每个用户而言,系统并非即时执行其程序输出的数据的真实打印操作,而只是即时将数据输出到缓冲区,这时的数据并未真正被打印,只是让用户感觉系统已为他打印;
    2. 真正的打印操作,是在打印机空闲且该打印任务在等待队列中已拍到队首时进行的;
    3. 以上过程对用户屏蔽,用户不可见;
  22. 何谓安全分配方式和不安全分配方式?
    1. 安全分配方式:每当进程发出IO请求后,便进入阻塞状态。知道其IO操作完成时才被唤醒。在采用这种分配策略时,一旦进入已获得某种设备资源后便阻塞,使它不可能再请求任何资源,而在它运行时又不保持任何资源。这种分配昂是摒弃了造成死锁“请求和保持”条件,分配是安全的;缺点是进程进展缓慢,CPU与IO设备串行工作;
    2. 不安全分配方式:仅当进程请求的设备已被另一个进程占有时,进程才会进入阻塞状态;可能具有“请求和保持”造成死锁;​​​​​​​
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第一章 1、设计现代OS的主要目标是什么?P1 答:其主要目标是有效性、方便性、可扩充性、开放性。 2、OS的作用可表现在哪几个方面?P2-P3 答:1、OS作为用户与计算机硬件系统之间的接口;2、OS作为计算机资源的管理者;3、OS实现了对计算机资源的抽象; 3、为什么说OS实现了计算机资源的抽象?P4 答:完全无软件的计算机系统(即裸机),它向用户提供的是实际硬件接口(物理接口),用户必须对物理接口的实现细节有充分的了解,并利用机器指令进行编程,因此该物理机器必定是难以使用的。为了方便用户使用I/O设备,人们在裸机上覆盖上一层I/O设备管理软件。通常把覆盖了上述软件的机器称为扩充机器或虚机器。它向用户(进程)提供了一个对硬件操作的抽象模型,用户更容易地使用计算机便件资源。由该层软件实现了对计算机硬件操作的第一个层次的抽象。为了方便用户使用文件系统,人们又在第一层软件上再覆盖上一层用于文件的管理软件,同样由它来实现对文件操作的细节,并向上提供一组对文件进行存取操作的命令,用户可利用这组命令进行文件的存取。此时用户所看到的是一台功能更强、使用更方便的虚机器。该层软件实现了对硬件资源操作的第二个层次的抽象。OS是铺设在计算机硬件上的多层系统软件,它们不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,由它们实现了对计算机硬件操作的多个层次的抽象。值得说明的,对一个硬件在底层进行抽象后,在高层还可再次对该资源进行抽象,成为更高层的抽象模型。随着抽象层次的提高,抽象接口所提供的功能就越来越强,用户使用起来也更加方便。 4、试说明推动多道批处理系统形成和发展的主要动力是什么?P4-P5 答:为了进一步提高资源的利用率和系统吞吐量,在该系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业高度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中各种资源。在OS中引入多道程序设计技术可带来以下好处:提高CPU和利用率、可提高内存和I/O设备利用率、增加系统吞吐量。主要动力:1、不断提高计算机资源的利用率;2、方便用户;3、器件的不断更新换代;4、计算机体系结构的不断发展; 5、何谓脱机I/O和联机I/O?P6 答:由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,它们是在脱离主机的情况下进行的,该技术是脱机输入/输出方式;反之,在主机的直接控制下进行输入/输出的方式称为联机输入/输出)ON-LINE I/O)方式。1、减少了CPU的空闲时间;2、提高了I/O速度。
1.操作系统概述 操作系统的形成,操作系统的定义与功能,操作系统的分类 2.处理机管理 多道程序设计技术,用户与操作系统的两种接口,进程的定义、特征和基本状态,进程控制块(PCB)和控制块队列(运行、就绪、阻塞),进程的各种调度算法(先来先服务、时间片轮转、优先数、多级队列),进程管理的基本原语(创建、撤消、阻塞、唤醒),作业与作业调度算法(先来先服务、短作业优先、响应比高者优先)。 3.存储管理 地址的静态重定位和动态重定位,单一连续区存储管理,固定分区存储管理,可变分区存储管理,空闲区的合并,分区的管理与组织方式(表格法、单链表法、双链表法),分页式存储管理,页表、快表及地址转换过程,内存块的分配与回收(存储分块表、位示图、单链表),虚拟存储器的概念,请求分页式存储管理,缺页与缺页中断位,缺页中断与页面淘汰,页面淘汰算法(先进先出、最近最久未用、最近最少用、最优),页面走向,缺页中断率,抖动,异常现象。 4.设备管理 计算机设备的分类(基于从属关系、基于分配特性、基于工作特性),记录间隙,设备管理的目标与功能,输入/输出的处理步骤,设备管理的数据结构(SDT、DCB、IVT),独享设备的分配,共享磁盘的调度算法(先来先服务、最短查找时间优先、电梯、单向扫描),设备控制器,数据传输的方式(循环测试、中断、直接存储器存取、通道),I/O的缓冲技术(单缓冲、双缓冲、多缓冲、缓冲池),虚拟设备,SPOOLing技术。 5.文件管理 文件,文件系统,文件的逻辑结构(流式文件、记录式文件),文件的物理结构(连续文件、串联文件、索引文件),文件的存取(顺序、随机),磁盘存储空间的管理(位示图、空闲区表、空闲块链),文件控制块(FCB),目录的层次结构(一级目录,二级目录、树型),主目录,根目录,绝对路径,相对路径,按名存取的实现,文件共享,文件保护,文件上的基本操作。 6.进程间的制约关系 与时间有关的错误,资源竞争——互斥,协同工作——同步,信号量,信号量上的P、V操作,用P、V操作实现互斥,用P、V操作实现同步,用P、V操作实现资源分配,死锁,死锁产生的必要条件,死锁的预防,死锁的避免,死锁的检测与恢复,银行家算法,进程间的高级通信。 7.操作系统实例分析 Windows操作系统,Linux操作系统,MS-DOS操作系统

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值