- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[操作系统-IO管理
设备管理 本章教学目标 了解I/O子系统的设计目标及实现方式 理解I/O子系统的硬件和软件原理 掌握磁盘的结构 掌握驱动器调度算法 理解设备独立性和虚拟设备 I/O工作方式回顾 轮询 中断 DMA 轮询 工作机制 CPU不断去测试状态寄存器中特定位的值 若就绪,则CPU从(向)数据寄存器读取(写入)一个字,并保存到主存储器 若I/O设备忙或未就绪,则CPU处于忙等状态 缺点 CPU轮询浪费宝贵的时间 CPU需要参与数据的传输,与设备只能串行工作 中断 工作机制 进程发出启动I/O指令,CPU加载控制信息到设备控制器的寄存器,之后进程继续执行或放弃CPU等待I/O操作完成; 设备控制器检查状态寄存器的内容,按照I/O指令的要求,执行I/O操作,一旦传输完成,设备控制器通过中断请求线向CPU发出I/O中断信号; CPU收到并响应I/O中断后,转向设备的中断处理程序执行; 中断处理程序执行操作(如数据读取),并将等待的进程移到就绪队列,结束后退出中断处理程序,返回到中断发生前的状态; 进程调度程序在适当时刻对得到数据的进程恢复执行。 优点 克服了轮询I/O中的忙等,实现了CPU和设备的部分并行操作 缺点 CPU仍需参与数据的传输 每当设备控制器的缓冲满后就要发生中断,发生中断的次数较多 每次中断处理需要保护现场和恢复现场,额外开销大 中断(cont) 在执行关键代码的时候,需要有延迟中断处理的能力; 中断分为可屏蔽中断和不可屏蔽中断 在执行关键代码之前,可以屏蔽中断 需要高效的分派中断处理的机制 中断向量: 存储了中断处理程序的入口地址 需要多重中断处理机制,以支持中断优先级 顺序执行 嵌套执行 直接存储器存储(DMA) 工作方式 CPU对DMA控制器进行设置,给出需要传输的数据的源地址、目的地址、需要传输的数据个数,以及控制信息(如读/写),然后就继续其它工作; DMA控制器获得总线控制权(此时,CPU无法获得总线),请求I/O控制器和内存进行数据读/写操作 I/O控制器与内存通过DAM控制器进行数据读/写操作 每传输一个字,DMA控制器将计数器减1,并重复上述操作,直至计数器递减为0 DMA控制器向CPU发出中断请求信号 优点 数据传输无需CPU参与,实现了CPU和I/O的并行操作 适合大数据量传输 缺点 DMA控制器需要和CPU竞争总线使用权 总线使用权的竞争会导致CPU等待,但不会造成其寄存器内容的修改 I/O设备的种类 用户交互设备 打印机 显示器 键盘 鼠标 存储设备 磁盘 磁带 通信设备 以太网卡 Modem 专用设备 飞机操纵杆 踏板 。。。 I/O设备物理特征 数据传输模式 字符设备 vs 块设备 访问模式 随机访问 vs 顺序访问 传输调度 同步 vs 异步 独占性 共享 vs 独占 速度 几字节每秒~几G字节每秒 读写特性 只读,只写,读写 I/O设备特征总结 I/O设备的种类和数量越来越多 I/O设备与主机的联络和信息交换方式各不相同 I/O设备的传输速度差别很大 I/O子系统设计的目的 通用性 I/O设备的多样化,操作方式各不相同,物理特性各异 增加新的I/O设备而无需修改操作系统 向应用程序和操作系统上层软件隐藏I/O操作的细节 高效性 I/O设备的速度远远低于CPU和Memory的速度,是系统的瓶颈所在 提高I/O设备的并行性和效率能大大提高系统的整体性能 I/O子系统应具备的功能 设备中断处理 缓冲区管理 设备分配和去配 设备驱动调度 虚拟设备及其实现 I/O系统的分层 I/O硬件 I/O设备(机械部件) 设备控制器(电子部件),又称适配器 中断装置 I/O软件 中断处理程序 设备驱动 与设备无关的内核I/O子系统 I/O硬件的通用概念 连接端口(Port) I/O设备与机器的连接点 如串行口、并行口 总线(Bus) 多个设备共用的一组数据线/地址线/控制线 一组严格的协议,规定什么类型的消息可以发送到线上 例如,PC BUS, 扩展总线,SCISI BUS 设备控制器(Controller) 一组用于操作端口、总线或设备的电子部件 I/O端口/寄存器 用于简化CPU和设备通信的一组寄存器,又称I/O Port 设备控制器(controller) Controller是操作系统与设备的机械部件之间的接口 Controller有一组寄存器用于数据传输和信号控制 操作系统与Controller的两种交互方式 通过特殊的I/O指令读/写controller的一组寄存器 Memory-mapped I/O:将寄存器映射到内存空间,通过内存读写指令来实现 Controller与设备之间的交互 很底层的接口 如磁盘控制器将一串比特流转换成字节块,并执行错误检测 引入控制器简化了
文档评论(0)