操作系统设备管理解读.ppt

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
TechEd 2002 第七章 I/O设备管理 一、计算机设备的分类 二、设备管理的目标与功能 一、设备控制器 二、程序直接控制方式 三、中断方式 四、直接存储器存取方式 五、通道方式 一、设备属性和设备分配方法 二、Spooling技术 三、设备分配方法 四、设备管理采用的数据结构 五、与设备无关性 一、I/O 请求的提出 二、OS对I/O请求的管理 三、 I/O的具体实现 §7.3 设备分配 输入井 输出井 输出设备 SPOOLing系统工作示意 磁盘 输入设备 预输入进程 输出缓冲区 缓输出进程 输入缓冲区 内存 §7.3 设备分配 系统对用户请求的处理 当用户请求打印输出时,SPOOLing系统中输出进程做如下2件事: A)?在输出井申请一空闲盘块区 ? 将要打印的数据送入其中 B)?为用户申请空白的用户请求打印表 ? 将用户的打印请求填入表中 ? 把该表挂到请求打印队列上。 如还有其它进程提出打印请求,系统一概接受请求,同样做上述2件事。 以共享打印机为例说明SPOOLing系统工作过程 §7.3 设备分配 系统对具体输出的处理 如打印机空闲,输出进程做以下操作: 从请求打印队列的队首取出请求打印表 ? 将打印数据从输出井送内存输出缓冲区 ? 打印机执行打印操作 ? 打印完即检查打印队列是否还有请求表 ? ? 若有,取出现时队首的请求表,继续上述操作 若无,即打印队列空,输出进程阻塞自己 ? 等再有打印请求才被唤醒 §7.3 设备分配 SPOOLing系统的特点 : 将独占设备改造为共享设备,实现了虚拟设备功能。 宏观上看,多个进程能同时使用一台独占设备,从每一个进程看,都认为自己独占了一个设备(逻辑设备)。 提高了I/O速度。 从请求打印的进程角度看,其输出数据实质上是送到输出井,极其快速。 §7.3 设备分配 设备分配2种方式: 静态分配方式 在用户进程创建时,OS便一次性地把进程运行所要求的全部设备都分配给它,并由该进程占有,直到进程撤消。 不会死锁,但设备利用率极其低下。 动态分配方式 在进程执行过程中,随时根据需要,向系统提出设备请求,由系统依据一定算法给进程分配设备,用户进程用完设备,即予释放。 有利于提高设备利用率,但分配不当即有死锁可能。 §7.3 设备分配 动态分配算法: 先来先服务 对于多个请求某类设备的用户进程,系统按其发出请求的先后顺序,使它们在设备请求队列里排队,并把设备分配给队列的前列者。 优先级高者优先 进入设备请求队列的进程,按优先级排队,优先级相同,则按到达的先后排,系统总是把设备分配给队列的首进程使用。 §7.3 设备分配 系统设备表SDT(System Device Table) 整个系统一张,记录了系统中所有外设,每类设备占一个表项。 设备控制表DCT(Device Control Table) 系统中每台设备一个,其中随时记录了该设备的基本信息(设备状态、等待使用该设备的阻塞进程等)。 §7.3 设备分配 I/O过程中,OS从SDT内查得某类设备的DCT地址,然后再转到DCT取得具体设备信息。 SDT … *类设备类型 DCT首址 驱动程序地址 … DCT1 设备标识 设备状态 设备队列指针 DCT0 DCT1 DCT2 * 类设备DCT区 … … §7.3 设备分配 基本含义: 应用程序独立于具体使用的物理设备。 用户程序中要用到外设时,不须指定具体哪一台设备,而用逻辑设备名来代替,这样用户程序就与实际使用的物理设备无关; 执行程序时,由系统进行逻辑设备到具体物理的链接。 §7.3 设备分配 与设备无关性带来的好处: 如果在程序中指定具体的物理设备,则当该设备已经分配,或正在维修,而此时尽管有同类设备空闲,可供分配,则该进程也只能阻塞等待。 遵循了设备无关性,在编程时不具体指定具体物理设备,当系统中设备变更,用户程序就不用修改。 §7.4 缓冲管理 凡是数据到达和离去速度不匹配的地方均可采用缓冲技术,几乎所有的外设在与CPU交换数据时,都使用了缓冲区。

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档