4-5 IO软件的实现计算机应用基础.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
I/O中断处理程序  位于操作系统底层,与硬件设备密切相关,与系 统其余部分尽可能少地发生联系  进程请求I/O操作时,通常被挂起,直到数据传输 结束后并产生I/O 中断时,操作系统接管CPU后转 向中断处理程序  当设备向CPU提出中断请求时,CPU响应请求并 转入中断处理程序 I/O中断处理程序的功能  检查设备状态寄存器内容,判断产生中断的原因, 根据I/O操作的完成情况进行相应的处理  如果数据传输有错,向上层软件报告设备的出错信 息,实施重新执行  如果正常结束,唤醒等待传输的进程,使其转换为 就绪态  如果有等待传输的I/O命令,通知相关软件启动下 一个I/O请求 设备驱动程序  包括与设备密切相关的所有代码  从独立于设备的软件中接收并执行I/O请求  把用户提交的逻辑I/O请求转化为物理I/O操作的启 动和执行  监督设备是否正确执行,管理数据缓冲区,进行必 要的纠错处理 设备驱动程序的功能  设备初始化  在系统初次启动或设备传输数据时,预置设备和控 制器以及通道状态  执行设备驱动例程  负责启动设备,进行数据传输  对于具有通道方式,还负责生成通道指令和通道程 序,启动通道工作  调用和执行中断处理程序  负责处理设备和控制器及通道所发出的各种中断 设备驱动程序的层次  每个设备驱动程序只处理一种设备,或者一类紧 密相关的设备  设备驱动程序分为整体驱动程序和分层驱动程序  整体驱动程序直接向操作系统提供接口和控制硬件  适用于功能简单的驱动程序,效率较高,但较难迁移  分层驱动程序将驱动程序分成多层,放在栈中,系 统接到I/O请求时先调用栈顶的驱动程序,栈顶的 驱动程序可以直接处理请求或向下调用更低层的驱 动程序,直至请求被处理  适用于功能复杂、重用性要求较高的驱动程序,结构 清晰且便于移植,但会增加一部分系统开销 独立于设备的I/O软件  执行适用于所有设备的常用I/O功能,并向用户层 软件提供一致性接口  功能  设备命名:通过路径名寻址设备  设备保护:检查用户是否有权访问所申请设备  提供与设备无关的数据单位:字符数量,块尺寸  缓冲技术:传输速率,时间约束,不能直接送达目 的地  设备分配和状态跟踪:分配不同类型的设备  错误处理和报告:驱动程序无法处理的错误 用户空间的I/O软件  库函数  一小部分I/O软件不在操作系统中,是与应用程序 链接在一起的库函数,甚至完全由运行于用户态的 程序组成  系统调用通常由库函数封装后供用户使用,封装函 数只是将系统调用所用的参数放在合适位置,然后 执行访管指令来陷入内核,再由内核函数实现真正 的I/O操作  SPOOLing软件  在内核外运行的系统I/O软件,采用预输入、缓输 出和井管理技术,通过创建守护进程和特殊目录解 决独占型设备的空占问题

文档评论(0)

恬淡虚无 + 关注
实名认证
内容提供者

学高为师,身正为范.师者,传道授业解惑也。做一个有理想,有道德,有思想,有文化,有信念的人。 学无止境:活到老,学到老!有缘学习更多关注桃报:奉献教育,点店铺。

1亿VIP精品文档

相关文档