- 1、本文档共49页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4单元 设备管理
* * * * * * * * * * * * * * * * * * * * 35 所需的软件程序 输入程序 控制信息从独占设备输入到辅存 缓输出程序 控制信息从辅存输出到独占设备 井管理程序 控制用户程序和辅存之间的信息交换 输入∕输出管理——设备分配 输入机1 输入机2 作业1 作业2 打印机 磁盘输入井 磁盘输出井 主存 * 37 2. I/O子系统 输入∕输出管理——设备控制 内核 内核I/O子系统 SCSI 设备驱动器 键盘 设备驱动器 鼠标 设备驱动器 PCI总线 设备驱动器 软盘 设备驱动器 … SCSI 设备控制器 键盘 设备控制器 鼠标 设备控制器 PCI总线 设备控制器 软盘 设备控制器 … SCSI 设备 键盘 鼠标 PCI 总线 软盘 驱动器 … 软件 硬件 * 42 I/O接口程序(I/O过程) 将逻辑设备转换为物理设备 获得 I/O系统调用中给出的逻辑设备名(ldev) 根据逻辑设备描述器,将逻辑设备名转换为物理设备名 合法性检查 获得 I/O系统调用中给出的操作模式mode 根据DCB中命令转换表中允许的操作,检查操作的合法性 形成I/O请求块,发消息给对应的设备处理进程 根据请求的参数形成I/O请求块(IORB) 将I/O请求块(IORB)挂到对应的设备请求队列 输入∕输出管理——设备控制 * 39 设备处理(驱动)程序 设备处理程序是能直接控制设备运转的程序,它根据各类设备的特点和性能来编写。每一类设备有一个相应的设备处理程序,能控制同类中多台物理设备同时工作。 输入∕输出管理——设备控制 设备驱动程序层的作用是为内核I/O子系统隐藏设备控制器之间的差异。将I/O子系统与硬件分离,简化了操作系统开发人员的任务,也有利于设备的设计与制造。 * 40 I/O子系统与驱动交互方式 以设备处理进程的方式 将设备与文件一样对待 输入∕输出管理——设备控制 * 以设备处理进程的方式 为每一类设备设置一个设备处理进程 (对应的程序就是设备处理程序); 当有I/O请求来到时,该进程被唤醒,进行设备驱动工作; 当没有I/O请求时,该进程睡眠。 由I/O控制模块的接口程序负责解释用户的I/O系统调用,将其转 换成I/O控制模块认识的命令形式后,将I/O请求发给对应的设备 处理进程。 * 请求I/O的进程、I/O过程、设备处理进程、中断处理程序之间的同步关系 输入∕输出管理——设备控制 中断处理程序 46 ? doio(ldev,mode, amount,addr); /* 等I/O完成*/ ? 标识设备; 执行出错检查; 构成iocb; 将iocb送入设备请求队列; 唤醒因等待I/O请求块而睡眠的I/O进程; 取iocb; 如无iocb则等待; 启动I/O操作; /*等I/O完成*/ 执行出错检查; ? 唤醒等待I/O的进程; I/O设备 ? 中断服务; 唤醒I/O处理 进程; ? 用户进程 I/O子系统 I/O驱动进程 启动 设备 中断信号 控制关系 同步关系 * 41 3. 输入/输出控制的例 用户进程请求I/O的系统功能调用 系统功能调用的形式为: doio(ldev,mode,amount,addr); ldev:逻辑设备名 mode:操作模式 amount:传输数据的数目 addr:传送地址 输入∕输出管理——设备控制 * 43 I/O接口程序的描述 算法 doio 输入:设备的逻辑名 ldev 操作类型 mode 传送数据数目 amount 传数数据地址 addr 输出:如果传送出错,则带错误码返回,否则正确返回 输入∕输出管理——设备控制 * 44 { while (该进程的逻辑设备描述器队列不空) { if (与ldev相联结的物理设备找到) break; / *找到* / } if (该进程的逻辑设备描述器队列为空)
您可能关注的文档
- 第3章常用金属切削加工.pdf
- 第3章平面机构的运动分析.ppt
- 第3章对象的基本操作.ppt
- 第3章平面连杆机构2011-2012.ppt
- 第3章彩色电视机组装、调试与维修.ppt
- 第3章常用电子材料.ppt
- 第3章宝石学.ppt
- 第3章微观组织分析与讨论.doc
- 第3章控制仪表上.ppt
- 第3章控制仪表上wdq.ppt
- 金太阳福建省福州市八县(市,区)协作校2024-2025学年第二学期期末联考政治含答案.doc
- 人力资源招聘与配置规范(T-NMC 005—2025).doc
- CNCA-RC-07:2025 铁路产品认证规则特定要求 密贴检查器.doc
- TCSCP 0058-2025 液体脱硫剂性能评价方法.doc
- AMB陶瓷基板活性焊料及钎焊性能要求(T-CI 917—2025).doc
- 单孔剪切波速测试方法(T-NMRJ 030—2025).doc
- 黑龙江省哈尔滨师范大学附属中学2024-2025学年高二下学期期末考试数学试题(含答案).doc
- 黑龙江省哈尔滨市2024-2025学年高二下学期期末质量检测英语试题(含答案).doc
- 黑龙江省哈尔滨市2024-2025学年高二下学期期末质量检测语文试题(含答案).doc
- 金太阳河北省2024-2025学年高二下学期7月联考地理含答案.doc
文档评论(0)