操作系统课件os05设备管理5.45.5.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
 (2) 通道控制表(CHCT)。每个通道都配有一张通道控制表,如图5-21(b)所示。 * (3) 系统设备表(SDT)。这是系统范围的数据结构,其中记录了系统中全部设备的情况。每个设备占一个表目,其中包括有设备类型、设备标识符、设备控制表及设备驱动程序的入口等项,如图5-21(c)所示。 * (1) 独占设备。对于独占设备,应采用独享分配策略,即将一个设备分配给某进程后,便由该进程独占,直至该进程完成或释放该设备,然后,系统才能再将该设备分配给其他进程使用。这种分配策略的缺点是,设备得不到充分利用,而且还可能引起死锁。   (2) 共享设备。对于共享设备,可同时分配给多个进程使用,此时须注意对这些进程访问该设备的先后次序进行合理的调度。   (3) 可虚拟设备。由于可虚拟设备是指一台物理设备在采用虚拟技术后,可变成多台逻辑上的所谓虚拟设备,因而说,一台可虚拟设备是可共享的设备,可以将它同时分配给多个进程使用,并对这些访问该(物理)设备的先后次序进行控制。 * 对设备进行分配的算法,与进程调度的算法有些相似之处,但前者相对简单,通常只采用以下两种分配算法:   (1) 先来先服务。当有多个进程对同一设备提出I/O请求时,该算法是根据诸进程对某设备提出请求的先后次序,将这些进程排成一个设备请求队列,设备分配程序总是把设备首先分配给队首进程。 * ①安全分配方式--进程获得某种设备后便阻塞,使该进程不可能再请求任何资源,而在它运行时又不保持任何资源。CPU与I/O设备是串行工作的。  在这种分配方式中,每当进程发出I/O请求后,便进入阻塞状态,直到其I/O操作完成时才被唤醒。在采用这种分配策略时,一旦进程已经获得某种设备(资源)后便阻塞,使该进程不可能再请求任何资源,而在它运行时又不保持任何资源。因此,这种分配方式已经摒弃了造成死锁的四个必要条件之一的“请求和保持”条件,从而使设备分配是安全的。其缺点是进程进展缓慢,即CPU与I/O设备是串行工作的。   * ②不安全分配方式--请求设备被另一进程占用时,进程进入阻塞状态。应增加对本次设备分配是否会死锁的安全性计算,仅当安全情况下才进行设备分配。 *  1) 分配设备   首先根据I/O请求中的物理设备名,查找系统设备表(SDT),从中找出该设备的DCT,再根据DCT中的设备状态字段,可知该设备是否正忙。若忙,便将请求I/O进程的PCB挂在设备队列上;否则,便按照一定的算法来计算本次设备分配的安全性。如果不会导致系统进入不安全状态,便将设备分配给请求进程;否则,仍将其PCB插入设备等待队列。   2) 分配控制器   在系统把设备分配给请求I/O的进程后,再到其DCT中找出与该设备连接的控制器的COCT,从COCT的状态字段中可知该控制器是否忙碌。若忙,便将请求I/O进程的PCB挂在该控制器的等待队列上;否则,便将该控制器分配给进程。   3) 分配通道   在该COCT中又可找到与该控制器连接的通道的CHCT,再根据CHCT内的状态信息,可知该通道是否忙碌。若忙,便将请求I/O的进程挂在该通道的等待队列上;否则,将该通道分配给进程。只有在设备、 控制器和通道三者都分配成功时,这次的设备分配才算成功。然后,便可启动该I/O设备进行数据传送。 * 操作系统 Operating Systems WINDOWS UNIX LINUX OS2 VxWorks Mac OS 第五章 设备管理 5.4 I/O软件 I/O软件的总体设计目标 高效性 提高主机和外设的并行工作能力,提高系统效率。 通用性 设法消除或屏蔽设备硬件内部的低级处理过程 为用户提供一个简便、易用、抽象的逻辑设备接口 保证用户安全、方便地使用各类设备。 层次式结构的I/O软件 用户层软件 设备独立性软件 设备驱动程序 硬件 中断处理程序 用户可直接调用在用户层提供的、与I/O操作有关的库函数。 硬件相关,负责实现系统对设备发出操作指令、驱动I/O设备工作 用于保存被中断进程的CPU环境,转入相应的中断处理程序进行处理,处理完后再恢复被中断进程的现场后,返回到被中断进程 负责实现与设备驱动器的统一接口、设备命名、设备保护及设备分配与释放 5.4.2 中断处理程序 中断处理程序是设备驱动的组成部分之一,位于OS底层。 当设备向CPU提出中断请求时,OS响应请求,并转入中断处理程序执行。 检查设备状态寄存器的内容,判别产生中断的原因 根据I/O完成情况,进行相应处理; 若数据传输有错,应向上层软件报告设备出错信息; 若有等待传输的I/O命令,应通知相关软件启动下一个I/O请求; 若正常结束,应唤醒等待传输的进程,使其转为就绪。 5.4.3 设备驱动程序 设备驱动程序(设备处

文档评论(0)

aena45 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档