操作系统6-1的.pptVIP

  1. 1、本文档共91页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统6-1的

第十四讲 设备控制原理、设备使用方法 目的与要求:掌握I/O控制的原理、设备的使用方法。 重点与难点:三种不同的I/O控制方式;三种不同的设备使用方法。;第六章 设备管理 6.1输入输出硬件概念;外部设备;1.设备分类;按设备从属关系分类 ;按设备的使用特性分类。;按设备的共享属性分类;按信息交换单位分类;2.设备管理的任务和功能 ;设备管理功能;IO设备与CPU信息交换时的问题;IO设备与控制器之间的接口;3.设备控制器(I/O部件);PCI总线控制器;设备控制器的组成;设备控制器组成图;设备与控制器之间的接口;设备控制器的基本功能;设备控制器的基本功能(续); 控制器的任务是在外部设备与CPU(或内存)之间完成比特流(外部信号)和字节流(块)之间的转换。;接口电路中:多个寄存器 一个寄存器有唯一的一个地址,每个地址为I/O端口,该地址称为I/O端口地址。 I/O指令形式与I/O地址是相互关联的,主要有两种形式: 内存映像编址(内存映像I/O模式) I/O独立编址(I/O专用指令) ;IO独立编址;Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd.;存储映像编址;4. I/O通道;5. I/O系统结构;微型机I/O系统结构;主机I/O系统结构;主机I/O系统结构示意图;多通路I/O系统;多通路I/O系统示意图;6. I/O控制方式;查询方式:CPU需花代价不断查询I/O状态(图6-7a) CPU资源浪费极大。 例:99.9ms+0.1ms=100ms 在9.2.1中99.9在忙等 ;程序直接控制方式流程;向I/O发命令——返回——执行其它任务。 I/O中断产生——CPU转相应中断处理程序。 如:读数据,读完后以中断方式通知CPU,CPU完成数据从I/O——内存 以字(节)为单位进行干预 CPU、设备并行工作 提高了系统的资源利用率和吞吐量;中断控制方式流程;一、DMA(Direct Memory Access)方式的引入 中断I/O,CPU“字节”干预一次,即每“字节”传送产生一次中断。 DMA:由DMA控制器直接控制总线传递数据块。DMA控制器完成从I/O——内存。 特点: ① 数据传输的基本单位是数据块,即在CPU与I/O设备之间,每次传送至少一个数据块; ② 所传送数据从设备直接送入内存,或者相反; ③ 仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送由控制器控制完成。;二、组成 一组寄存器+控制逻辑。 CR(命令/状态); DR(数据); MAR(内存地址); DC(计数);DMA控制器的组成 ;;I/O通道控制方式;通道方式:CPU只需给出 (1)通道程序首址。 (2)要访问I/O设备后,通道程序就可完成一组块操作 ;通道程序;通道工作过程; 6.2设备输入输出子系统;说明: 上述的系统调用主要用于对人机交互类慢速外设的使用。 对于存储类外设,用户程序一般通过对文件的访问,由文件管理模块读写存储外设间接使用它们,系统也提供直接使用存储类外设的接口。 对于网络通讯外设,用户级程序也不直接使用它们,用户通过SOCKET通讯系统调用接口调用TCP/IP层程序,由IP层程序选择调用网络通讯设备驱动程序。;在LINUX中,你也可以用如下的系统调用将数据直接写入软盘中: fd=open(“/dev/fd0”,O_RDRW);申请软盘,/dev/fd0代表软盘。 lseek(fd,1024,0);将软盘当前I/O位置定位到1024字节位置。 Write(fd,buffer,36);将用户缓冲区buffer中的36个字节写入软盘1024-1059字节。 … close(fd) ;释放软盘。 显然,这样的使用方式绕过了文件管理,而直接读/写软盘空间。当然你必须清楚软盘的什么位置存放了什么信息,你才能做到正确的读写。;二、独占式使用设备 所谓独占式使用设备是以设备完整使用过程(包含多次I/O操作)为单位使用设备。 在申请设备时,如果设备空闲,就将其独占,不再允许其它进程申请使用,一直等到该设备被释放,才允许被其它进程申请使用。 ;三、分时式共享使用设备 独占式使用设备时,设备利用率很低。 如果一个逻辑上完整的数据可以用设备的一次I/O操作完成,那么我们就不必要独占该设备。反过来说,如果一次I/O操作的数据逻辑上完整,我们就不必要对该设备进行独占方式的申请使用。在申请这种设备时,不必检查是否已被占用,只要简单累加设备使用者计数即可。 所谓分时式共享就是以一次I/O为单位

文档评论(0)

ayangjiayu4 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档