网站大量收购独家精品文档,联系QQ:2885784924

IO设备的多样性的.ppt

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IO设备的多样性的

第13章 I/O系统;13.1 I/O管理-概述;按交互对象分类 人机交互设备:视频显示设备、键盘、鼠标、打印机 与计算机或其他电子设备交互的设备:磁盘、磁带、传感器、控制器 计算机间的通信设备:网卡、调制解调器 按交互方向分类 输入(可读):键盘、扫描仪 输出(可写):显示设备、打印机 输入/输出(可读写):磁盘、网卡 按外设特性分类 使用特征:存储、输入/输出、终端 数据传输率:低速(如键盘)、中速(如打印机)、高速(如网卡、磁盘) 信息组织特征:单个字符或数据块 字符设备(如打印机):通常的输入输出型设备,以字符为单位存储、传输信息;不可寻址 块设备(如磁盘):以数据块为单位存储、传输信息。可寻址;按资源分配角度分类 独占设备 在一段时间内只能有一个进程使用的设备,一般为低速I/O设备。如打印机,磁带等。 共享设备 在一段时间内可有多个进程共同使用的设备,多个进程以交叉的方式来使用设备,其资源利用率高。如硬盘 虚拟设备 在一类设备上模拟另一类设备,常用共享设备模拟独占设备,用高速设备模拟低速设备,被模拟的设备称为虚设备(实例:SPOOLing技术) 从程序使用角度分 逻辑设备: 用户程序中使用的设备 物理设备:实际完成I/O操作的设备;13.2 I/O控制技术;设备绝对号和相对号;设备绝对号和相对号;I/O软件的设计目标: 效率:大多数I/O设备慢,I/O操作一般是系统瓶颈,很大程度上影响系统的性能和吞吐量。因此要改善I/O的有效性,采用多道程序设计、交换。目前比较关注磁盘I/O。 通用性:设备种类、特点和性能千差万别;要求能够以一种一致的方式来管理所有设备-一致的外部接口,很难做到通用,但希望能够用统一的方法处理所有设备,用一种层次化的,模块化的方法设计I/O功能。 能够在低层例程中隐藏大部分设备I/O的细节, 使得用户进程和OS高层可以通过一些通用的功能,如读、写、打开、关闭等查看I/O设备。 设备独立性。用户在编写使用软盘或硬盘上文件的程序时,无需为不同的设备类型而修改程序就可以使用 统一命名。一个文件或一个设备的名字只应是一个简单的字符串或一个整数,不应依赖于设备;设备独立性 ; I/O软件的基本思想是按分层的思想构成: 较低层软件要使较高层软件独立于硬件的特性, 较高层软件则要向用户提供一个友好的、清晰的、简单的、功能更强的接口 ;13.3 设备管理分层模型; 逻辑I/O:将设备当作一个逻辑资源,不涉及实际的设备控制的细节: 针对用户接口,提供抽象的命令,如:Open, Close, Read, 针对通信设备,则是通信体系结构如网络协议栈; 针对文件存储设备,是文件系统的逻辑结构控制; 设备I/O:逻辑设备与物理设备间的过渡协调机构。用户命令到设备操作序列的转换。请求的操作和数据被转换成适当的I/O指令序列、通道命令和控制器指令。可以用I/O缓冲提高I/O效率 调度和控制:是I/O模块和设备硬件真正发生交互的软件层,直接面对硬件设备的控制细节。如I/O操作的排队,设备控制和状态维护、中断处理。这部分通常体现为设备驱动程序;;;用户进程层执行输入输出系统调用,对I/O数据进行格式化 独立于设备的软件实现设备的命名、设备的保护、成块处理、缓冲技术和设备分配;(逻辑I/O) 设备驱动程序设置设备寄存器、检查设备的执行状态 中断处理程序负责I/O完成时,唤醒设备驱动程序进程,进行中断处理 硬件层实现物理I/O的操作 ;练习题;;13.4 缓冲;缓冲技术的用途 可以在发出请求之前就开始执行输入操作(预输入),在发出请求一段时间后才开始执行输出操作(缓输出)。 匹配CPU或用户应用进程与外设的不同处理速度 减少对CPU的中断次数: 提高CPU和I/O设备之间以及各个I/O设备之间的处理并行性。 多道程序环境中提高OS效率和单个进程的工具(技术)之一。;单缓冲(single buffer):当一个用户进程发出I/O请求时,OS给该操作分配一个位于主存中系统部分的缓冲区。以面向块的设备为例:输入先传送至系统缓冲区,当传送完成时,进程将该块移动到用户空间,并立即请求另一块-预读(对于输出,则称为延迟写)。 好处: 用户可以在下一块数据正在读入时,处理这块数据(用户进程处理某个数据块的同时,下一个数据块正在读入)。由于输入发生功能在系统存储空间而不是用户进程存储区,因此OS可以将该进程换出。 增加了OS的逻辑复杂度:OS必须直到用户进程的缓冲区的分配情况,交换逻辑受到影响。;13.4 缓冲-双缓冲和循环缓冲;13.4 I/O 缓冲;13.4 I/O 缓冲;由于外设资源的有限,需解决进程间的外设共享问题,以提高外设资源的利用率。设备分配是对进程使用外设过程的管理。这里有两种作法: 1)在进程间切换使用

文档评论(0)

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

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

1亿VIP精品文档

相关文档