输入输出系统.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.3 I/O系统的软件组织 6.3.1 I/O软件设计的目标 将软件组织成一种层次结构,低层软件用来屏蔽硬件的细节,高层软件主要为用户提供一个简洁、规范的接口。 错误处理:一般说来,对于I/O错误应尽可能地由靠近它的硬件进行处理。 同步传输与异步传输 。 异步传输:是指CPU发出I/O指令,启动设备传输后,不等待I/O完成就返回继续运行其他的程序。 同步传输:是用户程序请求系统执行I/O后,相应的进程则转入阻塞态,等待I/O完成后,再继续运行。 6.3 I/O系统的软件组织 操作系统中一般把I/O软件的结构分成四个层次。 按照由高层向低层的排列次序,四个层次是: 中断处理程序 设备驱动程序 与设备无关的I/O软件 用户空间的I/O软件 6.3 I/O系统的软件组织 6.3.2 中断处理程序 中断处理程序位于I/O系统的最低层。当进程需要 进行I/O操作时,操作系统应将该进程挂起,直至I/O 操作结束并发生中断。中断发生时,中断处理程序执 行相应的操作,以解除相应进程的阻塞状态。 6.3 I/O系统的软件组织 6.3.3 设备驱动程序 设备驱动程序的功能 根据传送要求设置I/O接口中有关的各种控制寄存器的值。 向有关的I/O设备发出控制命令,启动设备、通道或DMA控制器工作,并且进行一些设备错误的检测和处理。 对该类设备的I/O请求队列、睡眠、唤醒等操作进行处理。 设备驱动程序的结构:通常,设备驱动程序与设备类型是一一对应的,系统为每一种类型的设备设置一个设备驱动程序。 为了对驱动子程序进行统一管理,系统为每一类 设备又设置了一个数据结构,来存放这些操作子程序 的入口地址,这个数据结构称为设备开关表DST (Device Switch Table)。 6.3 I/O系统的软件组织 6.3.4 与设备无关的I/O软件 在I/O软件中,除了设备驱动程序与设备的硬件特 性相关以外,大部分软件是与设备无关的。下表给出 了与设备无关软件所实现的典型功能。 设备驱动程序的统一接口 设备命名 设备保护 提供与设备无关的逻辑块 缓冲 存储设备的块分配 独占设备的分配和释放 错误处理 6.3 I/O系统的软件组织 1.设备命名:I/O软件中,对I/O设备采用了统一命名。设备名包含了主设备号和次设备号。 2.设备保护:设备保护防止未授权的用户对设备的使用或者用户的非法使用。 3.与设备无关的块大小:与设备无关的软件隐藏各种设备的空间大小,存取速度上的差异,而向上层软件提供大小统一的逻辑块 。 4.数据缓冲:缓冲技术可以解决数据传送过程中的瓶颈问题,提高并行程度。块设备和字符设备都要使用缓冲区传送数据。 5.数据块的分配:在创建或者更新一个文件时,都要向磁盘文件中写入数据,就要为该文件文件分配新的物理块。 6.对独占设备的分配与释放:对于独占设备的分配和释放属于临界资源的管理,用户进程只能排它性地使用该类资源。 7.错误处理:对于错误的处理,基本上是I/O中断处理程序和设备驱动程序共同完成的。 6.3 I/O系统的软件组织 6.3.5 用户空间的I/O软件 绝大部分的I/O软件都包含在操作系统中,是在内 核态下运行的。但是仍有一小部分I/O软件是和用户程 序装配在一起,在用户态下运行。它们通常以库函数形 式出现。 例 一个用C语言编写的程序可以安排如下系统调用: n_received=read(fd,buf,nbytes) 另一种重要的类型是Spooling系统,是在多道程 序设计中处理独占设备的一种方法。 6.3 I/O系统的软件组织 6.3.6 I/O系统软件的层次结构 层次 用户进程 进行I/O调用;格式化I/O;Spooling 设备无关软件 命名,保护,阻塞,缓冲,分配 设备驱动程序 建立设备寄存器;检查状态 中断处理程序 当I/O结束时,唤醒驱动程序 硬件 执行I/O操作 I/O应答 I/O功能 I/O请求 6.4 缓冲技术 引入目的: 缓解CPU与外设速度差距,提高CPU与I/O设备之间的并行性。 减少I/O中断次数和CPU的中断处理时间。 虽然通道技术和中断技术为计算机系统的并行活 动提供了强有力的支持,但由于CPU与外设之间的不 匹配,使得它们之间的并行程度并未得到充分发挥。 缓冲技术的引入可明显地提高CPU和外设并行程度, 提高系统的处理能力和设备的利用率。 6.4 缓冲技术 缓冲技术的基本思想是在CPU和外设之间设立缓 冲区,用于暂存CPU和外设之间交换的数据,从而缓 和CPU和外设速度不匹配所产生矛盾。缓冲技术包括 输入缓冲和输出缓冲。 缓冲区按使用方式有专用缓冲区和通用缓冲区。 专用缓冲区是专为某一设备而设置的缓冲区,为该设 备所专

文档评论(0)

浪漫唯美-文档菜鸟 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档