您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 计算机原理 > chapter6输入输出系统
第六章输入输出系统第六章输入输出系统2021/7/291河北经贸大学信息技术学院第六章输入输出系统第六章输入输出系统2021/7/292内容概述6.1I/O系统的功能、模型和接口6.2I/O设备和设备控制器6.3中断机构和中断处理程序6.4设备驱动程序I/O系统包括用于实现数据输入、输出、存储功能的设备和相应的控制器,设备管理的基本任务是完成用户提出的I/O请求,提高I/O速率以及改善I/O的利用率。设备管理的主要功能有缓冲区管理、设备分配、磁盘管理、虚拟设备及实现设备独立性。6.5与设备无关的I/O软件6.6用户层的I/O软件6.7缓冲管理6.8磁盘存储器的性能和调度第六章输入输出系统2021/7/2936.1I/O系统的功能、模型和接口6.1.1I/O系统的基本功能6.1.2I/O系统的层次结构和模型6.1.3I/O系统接口第六章输入输出系统2021/7/2946.1.1I/O系统的基本功能方便用户使用I/O设备提高CPU和I/O设备的利用率为用户在共享设备是提供方便1、隐藏物理设备的细节2、与设备的无关性3、提供处理机和I/O设备的利用率(并行操作)4、对I/O设备进行控制(四种控制方式)5、确保对设备的正确共享(设备的共享属性)6、错误处理第六章输入输出系统第六章输入输出系统2021/7/295按设备的共享属性分类独占设备(临界资源)如打印机共享设备可供多个多个进程同时访问,如磁盘。共享设备必须是可寻址的和可随机访问的设备。虚拟设备通过虚拟技术将一台独占设备变换为若干个逻辑设备,供若干个进程同时使用。6.1.1I/O系统的基本功能第六章输入输出系统2021/7/2966.1.2I/O系统的层次结构和模型总体设计目标是高效性和通用性。(1)I/O设备与CPU的并发性;(2)简单抽象、清晰而统一的接口。第六章输入输出系统第六章输入输出系统2021/7/2976.1.2I/O系统的层次结构和模型1、I/O软件的层次结构用户层软件设备独立性软件设备驱动程序中断处理程序硬件产生I/O请求、格式化I/O、Spooling映射、保护、分块、缓冲、分配设置设备寄存器,检查寄存器状态执行I/O操作图6-1I/O系统的层次结构硬件无关硬件相关第六章输入输出系统第六章输入输出系统2021/7/2986.1.2I/O系统的层次结构和模型2、I/O系统中各种模块之间的层次视图I/O系统的上下接口I/O系统的分层第六章输入输出系统第六章输入输出系统2021/7/2991、块设备接口信息的存取以数据块为单位,有结构设备。传输速率较高,通常每秒钟为几兆位,可寻址,即对它可随机地读/写任一块。I/O采用DMA方式。例:磁盘2、字符设备接口(流设备接口)基本单位是字符,无结构设备。传输速率较低,通常每秒钟为几个字节到数千字节,不可寻址。I/O采用中断驱动方式。例:交互式终端、打印机6.1.3I/O系统接口第六章输入输出系统第六章输入输出系统2021/7/2910内容概述6.1I/O系统的功能、模型和接口6.2I/O设备和设备控制器6.3中断机构和中断处理程序6.4设备驱动程序6.5与设备无关的I/O软件6.6用户层的I/O软件6.7缓冲管理6.8磁盘存储器的性能和调度第六章输入输出系统第六章输入输出系统2021/7/29116.2.1I/O设备1、I/O设备的类型(1)按设备的使用特性分类存储设备磁带、磁盘、光盘等。输入/输出设备键盘、鼠标、扫描仪、视频摄像、传感器等。第六章输入输出系统第六章输入输出系统2021/7/2912(2)按传输速率分类低速设备每秒几个字节至数百字节。键盘、鼠标、语音输入输出设备等。中速设备每秒数千至数万字节。行式打印机、激光打印机等。高速设备每秒数百K至数十M字节。磁盘机、磁带机、光盘机等。6.2.1I/O设备第六章输入输出系统2021/7/29132、设备与控制器之间的接口6.2.1I/O设备缓冲转换器控制逻辑数据信号线I/O设备控制信号线信号数据至设备控制器状态信号线第六章输入输出系统2021/7/29146.2I/O系统6.2.1I/O设备6.2.2设备控制器6.2.3内存映像I/O6.2.3I/O通道第六章输入输出系统第六章输入输出系统2021/7/29156.2.2设备控制器1、设备控制器概述设备控制器是CPU与I/O设备之间的硬件接口,常做成印刷电路卡形式,也称接口卡。接收从CPU发来的命令,并控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换,减轻CPU的负担。第六章输入输出系统第六章输入输出系统2021/7/29162、设备控制器的基本功能接收和识别命令数据交换标识和报告设备的状态地址识别数据缓冲查错控制第六章输入输出系统第六章输入输出系统2021/7/29173、设备控制器的组成设备控制器与处理机的接口该接口用于实现设备控制器与CPU之间的通信。在该接口中有三类信号线:数据线、地址线、控制线。设备控制器与设备的接口在一个设备控制器上,可以连接一台或多台设备(一个或多个设备接口),一个接口连接一台设备,在每个接口中都有数据、控制和状态三种类型的信号。I/O逻辑控制器对设备的控制通过I/O逻辑实现的。包括对收到命令和地址进行译码。第六章输入输出系统2021/7/2918图6-4设备控制器的组成数据寄存器控制/状态寄存器数据线I/O逻辑…控制器与设备接口1控制器与设备接口i数据状态控制数据状态控制…地址线控制线CPU与控制器接口控制器与设备接口第六章输入输出系统2021/7/29196.2I/O系统6.2.1I/O设备6.2.2设备控制器6.2.3内存映像I/O6.2.4I/O通道第六章输入输出系统第六章输入输出系统2021/7/29206.2.4I/O通道1、I/O通道设备的引入是一种特殊处理机,专门负责输入/输出工作,具有执行I/O指令的能力。主要目的是为了建立独立的I/O操作,使有关对I/O操作的组织、管理及其结束处理也独立于CPU。CPU向I/O通道发送I/O命令,由通道执行程序。通道与一般处理机的区别指令类型单一,局限于与I/O操作有关命令。没有独立的内存,通道与CPU共享内存。第六章输入输出系统第六章输入输出系统2021/7/2921图6-6字节多路通道的工作原理2、通道类型(1)字节多路通道一个主通道连接多个子通道,以时间片轮转方式共享主通道。每个子通道每次只传送一个字节,连接中低速设备。控制器A控制器B控制器C控制器D控制器N…A1A2A3…子通道AB1B2B3…子通道BC1C2C3…子通道CN1N2N3…子通道NA1B1C1…A2B2C2…设备第六章输入输出系统第六章输入输出系统2021/7/2922(2)数组选择通道(BlockSelectorChannel)(1)不适合高速设备。以数组方式工作,高速传输数据。可以连接多台高速设备。每次只有一台设备进行数据传送,形成独占,如果它不传数据,别的设备也传不了。通道利用率较低。第六章输入输出系统第六章输入输出系统2021/7/2923(3)数组多路通道(BlockMultiplexorChannel)(2)有独占性。将数组选择通道传输速率高和字节多路通道分时并行操作的优点相结合而形成的一种新通道。其数据传送是按数组方式。采用分时并行传送多个非分配型子通道,因而这种通道既具有很高的数据传输速率,又能获得令人满意的通道利用率。第六章输入输出系统第六章输入输出系统2021/7/2924图6-7多通路I/O系统I/O设备1控制器1控制器2通道1通道2存储器I/O设备2I/O设备3I/O设备4第六章输入输出系统第六章输入输出系统2021/7/2925内容概述6.1I/O系统的功能、模型和接口6.2I/O设备和设备控制器6.3中断机构和中断处理程序6.4设备驱动程序6.5与设备无关的I/O软件6.6用户层的I/O软件6.7缓冲管理6.8磁盘存储器的性能和调度第六章输入输出系统2021/7/29266.3.1中断简介1、中断和陷入2、中断向量表和中断优先级3、对多中断源的处理方式第六章输入输出系统2021/7/29276.3.2中断处理程序中断处理程序的处理过程:(1)唤醒被阻塞的驱动进程(2)保护被中断进程的CPU环境(3)转入相应的设备处理程序(4)中断处理(5)恢复被中断进程的现场第六章输入输出系统第六章输入输出系统2021/7/2928图6-10中断现场保护示意图PSW程序状态字PC(N+1)程序计数器R0Rn…寄存器……开始返回用户程序中断服务子例程PSWPC(N+1)中断栈TT+M线指针YNN-1R0Rn…第六章输入输出系统第六章输入输出系统2021/7/2929图6-11中断处理流程唤醒被阻塞的驱动程序进程对被中断进程的CPU环境进行保护分析中断原因,转入相应的中断处理程序终端中断处理程序打印机中断处理程序磁盘中断处理程序…恢复被中断进程的CPU现场…返回被中断的进程,继续执行中断请求信号第六章输入输出系统第六章输入输出系统2021/7/29306.4设备驱动程序为每一类设备配置一种驱动程序。6.4.1设备驱动程序概述1、设备驱动程序功能(1)接收由I/O进程发来的命令和参数,并将命令中的抽象要求转换为具体要求。(2)检查用户I/O请求的合法性,了解I/O设备的状态,传递有关参数,设置设备的工作方式。(3)发出I/O命令并检查设备状态。(4)及时响应由控制器或通道发来的中断请求并处理。第六章输入输出系统第六章输入输出系统2021/7/29312、设备驱动程序的特点(1)驱动程序主要是指在请求I/O的进程与设备控制器之间的一个通信和转换程序。(2)驱动程序与设备控制器和I/O设备的硬件特性紧密相关,因而对不同类型的设备应配置不同的驱动程序。(3)驱动程序与I/O设备所采用的I/O控制方式紧密相关,常用中断驱动和DMA方式。(4)由于驱动程序与硬件紧密相关,因而其中的一部分必须用汇编语言书写。(5)驱动程序允许可重入。第六章输入输出系统第六章输入输出系统2021/7/29323、设备处理方式在不同的操作系统中所采用的设备处理方式并不完全相同。根据在设备处理时是否设置进程,以及设置什么样的进程而把设备处理方式分成以下三类:(1)为每一类设备设置一个进程,专门用于执行这类设备的I/O操作。(2)在整个系统中设置一个I/O进程,专门用于执行系统中所有各类设备的I/O操作。(3)不设置专门的设备处理进程,而只为各类设备设置相应的设备处理程序(模块),供用户进程或系统进程调用。第六章输入输出系统第六章输入输出系统2021/7/29336.4.2设备驱动程序的处理过程(1)将抽象要求转换为具体要求。设置控制器中的寄存器(2)检查I/O请求的合法性。若请求的设备不支持本次的I/O请求,认为是非法操作。(3)读出和检查设备的状态。检查设备是否空闲或是否就绪。(4)传送必要的参数。如数据量、起始地址等。(5)工作方式的设置。对于有多种工作方式的设备进行设置。(6)启动I/O设备第六章输入输出系统第六章输入输出系统2021/7/2934I/O请求合法?检验设备的状态(就绪)传送必要的参数NN出错处理向控制器发命令(读/写)启动I/O设备返回被中断的进程继续执行保护被中断的进程的CPU现场请求中断唤醒驱动进程(还要去等待队列排队,等待调度执行)YY返回传送完CPU-I/O(驱动进程“阻塞”)CPU做其它事(执行别的进程)I/O-CPU测试中断源,转入相应的中断处理程序(终端、打印机...磁盘等中断处理)恢复被中断的进程的CPU现场设备驱动程序工作流程第六章输入输出系统2021/7/29356.4.3对I/O设备的控制方式1、程序I/O方式2、中断驱动I/O方式3、直接存储器访问(DMA)I/O控制方式4、I/O通道控制方式设备管理的主要任务之一是控制设备和内存或CPU之间的数据传送。I/O控制方式主要有四种:程序I/O方式、中断驱
本文标题:chapter6输入输出系统
链接地址:https://www.777doc.com/doc-8614076 .html