操作系统的设备管理.ppt
《操作系统的设备管理.ppt》由会员分享,可在线阅读,更多相关《操作系统的设备管理.ppt(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统的设备管理目标和功能目标和功能nI/O管理是操作系统的主要功能之一,负责管理是操作系统的主要功能之一,负责管理所有管理所有I/O设备。计算机系统中存在着大设备。计算机系统中存在着大量的量的I/O设备,其性能和应用特点可能完全设备,其性能和应用特点可能完全不同,不同,所以要建立一个通用的、一致的设所以要建立一个通用的、一致的设备访问接口,备访问接口,使用户和应用程序开发人员使用户和应用程序开发人员能够方便地使用能够方便地使用I/O设备,而无须关心每种设备,而无须关心每种设备各自的特性。设备各自的特性。nI/O管理是管理是管理管理I/O设备,控制设备,控制I/O操作操作2接收接收OS的命令
2、,控制设备实现指定的功能。的命令,控制设备实现指定的功能。每个控制器有几个每个控制器有几个寄存器寄存器,用来与,用来与CPU通信,通信,即即存放设备驱动程序向设备发送的命令和参数。存放设备驱动程序向设备发送的命令和参数。控制寄存器:被主机用来向设备发送命令。控制寄存器:被主机用来向设备发送命令。状态寄存器:包含主机可读取的状态信息。状态寄存器:包含主机可读取的状态信息。数据缓冲寄存器数据缓冲寄存器每个寄存器被分配一个每个寄存器被分配一个端口号端口号。处理机通过。处理机通过I/O端口地址找到对应的端口地址找到对应的I/O部件和设备寄存器,以部件和设备寄存器,以实现对设备的控制和数据传输。实现对设
3、备的控制和数据传输。控制器的作用控制器的作用6控制器的作用控制器的作用除了几个寄存器外,许多设备控制器还有一个除了几个寄存器外,许多设备控制器还有一个操作系统可以读写的操作系统可以读写的数据缓冲区数据缓冲区。如在屏幕上如在屏幕上显示像素的常规方法是使用一个视频显示像素的常规方法是使用一个视频RAM,该,该RAM基本上只是一个数据缓冲区。基本上只是一个数据缓冲区。磁盘控制器磁盘控制器:从磁盘驱动器出来的是一连串的:从磁盘驱动器出来的是一连串的位流,控制器把串行的位流组装为字节,存入位流,控制器把串行的位流组装为字节,存入控制器内部的控制器内部的数据缓冲区数据缓冲区中,形成以字节为单中,形成以字节
4、为单位的块。对块验证后,复制到主存。位的块。对块验证后,复制到主存。7内存映射内存映射I/O单独的单独的I/O和内存空间和内存空间IN R0,4MOV R0,4前者读取前者读取I/O端口端口4的的内容并将其存入内容并将其存入R0,后者读取内存字后者读取内存字4的内的内容并将其存入容并将其存入R0。内存内存I/O端口端口两个地址空间两个地址空间8内存映射内存映射I/O内存映射内存映射I/O:将所有设备控制器将所有设备控制器寄存器映射到内存空间。每个控寄存器映射到内存空间。每个控制器寄存器被分配唯一的一个内制器寄存器被分配唯一的一个内存地址。通常分配给控制器寄存存地址。通常分配给控制器寄存器的地址
5、位于地址空间的顶端。器的地址位于地址空间的顶端。优点优点:对内存的操作指令都可用:对内存的操作指令都可用于对于对I/O端口的操作,不需要专门端口的操作,不需要专门的的I/O指令。指令。I/O设备驱动程序可设备驱动程序可以完全用以完全用C语言编写。语言编写。如如UNIX。内存内存一个地址空间一个地址空间9内存映射内存映射I/O-混合方案混合方案内存映射内存映射I/O的的数据缓冲数据缓冲区区,控制器寄存器则具有单独控制器寄存器则具有单独的的I/O端口。端口。Pentium处理器使用的就处理器使用的就是这一体系结构。是这一体系结构。内存内存I/O端口端口两个地址空间两个地址空间10计算机系统对计算机
6、系统对I/O设备的设备的4种控制方式种控制方式1.程序查询方式(轮询程序查询方式(轮询(polling))2.程序中断方式程序中断方式3.直接存储器访问直接存储器访问(DMA)方式方式4.通道控制方式通道控制方式111.程序查询方式程序查询方式向向I/O控制器发控制器发读读命令命令读读I/O控制器的状态控制器的状态从从I/O控制器中读入字节控制器中读入字节向存储器中写字节向存储器中写字节CPUI/OI/OCPU未就绪未就绪出错出错就绪就绪I/OCPUCPU内存内存传送完成传送完成检查状态检查状态是,停止设备是,停止设备未完未完从外部设从外部设备读取一备读取一块数据到块数据到存储器,存储器,每次
7、读几每次读几个字节的个字节的数据。数据。CPU忙等忙等串行工作串行工作122.程序中断方式程序中断方式CPU/设备设备并行工作并行工作向设备控制器发写写命令CPU转去执行其它程序将控制传递给中断服务例程无重试或故障终止中断服务例程检查本次传输是否有错传输有错?中断返回,继续执行被中断的进程CPU响应中断传输完成?无完CPU工作情况设备完成数据传输或出错,产生中断设备驱动程序启动设备工作I/O设备工作情况有13支持大量数据传输的支持大量数据传输的块设备块设备,其控制器,其控制器支持直接存储器存取(支持直接存储器存取(DMA,Direct Memory Access)。)。通常,通常,CPU控制地
8、址总线,进行与主存控制地址总线,进行与主存储器的数据交换。储器的数据交换。允许允许DMA控制器接管地址总线的控制权,控制器接管地址总线的控制权,直接控制与主存的数据交换。直接控制与主存的数据交换。3.直接存储器访问(直接存储器访问(DMA)14l整块数据的传输是在控制器的控制下完成整块数据的传输是在控制器的控制下完成的。仅在开始和结束时才需的。仅在开始和结束时才需CPU干预。干预。向磁盘向磁盘O控制器控制器发读块命令发读块命令读读DMA控制器控制器的状态的状态下条指令下条指令CPUDMACPU做其它事做其它事中断中断DMACPUDMA方式方式15 数据缓冲寄存器数据缓冲寄存器主存地址寄存器主存
9、地址寄存器MAR传送字节个数计数器传送字节个数计数器DC控制控制/状态寄存器状态寄存器数据总线数据总线地址总线地址总线DMA控制器控制器主存主存CPU数据缓冲存储区数据缓冲存储区磁磁盘盘控制器独立地进行控制器独立地进行DMA传送传送控制总线控制总线16DMA工作过程:工作过程:设置设置MAR和和DC初值初值启动启动DMA传送命令传送命令挪用挪用CPU工作周期传送数据工作周期传送数据主存地址增主存地址增1数据计数器减数据计数器减1DC=0?请求中断请求中断NY每当磁盘把一块数每当磁盘把一块数据读入控制器的数据读入控制器的数据缓冲区时,检验据缓冲区时,检验校验和。校验和。DMA控控制器取代制器取代
10、CPU,接,接管地址总线的控制管地址总线的控制权,直接控制与主权,直接控制与主存的数据交换。使存的数据交换。使CPU访问总线时速访问总线时速度会变慢。度会变慢。17l 与与DMA方式相比,通道所需的方式相比,通道所需的CPU干预干预更少,且可以做到一个通道控制多台设备,更少,且可以做到一个通道控制多台设备,进一步减轻了进一步减轻了CPU的负担。的负担。l 通道是一种专用的通道是一种专用的I/O处理机。处理机。l 通道有自己的指令系统,若干条通道命令通道有自己的指令系统,若干条通道命令连接成连接成通道程序通道程序。4.通道控制方式通道控制方式18CPU主存储器主存储器磁盘控制器磁盘控制器软盘控制
11、器软盘控制器磁带控制器磁带控制器读卡机读卡机磁盘控制器磁盘控制器控制器控制器控制器控制器磁盘控制器磁盘控制器打印机打印机控制器控制器终端终端数组多路通道数组多路通道选择通道选择通道字节多路通道字节多路通道CPU、通道和、通道和I/O设备并行工作设备并行工作总线总线191.字节多路通道字节多路通道:以字节为单位传输信息,可以分:以字节为单位传输信息,可以分时地执行多个通道程序,一个通道程序对应一台时地执行多个通道程序,一个通道程序对应一台设备。主要用来连接大量慢速设备。设备。主要用来连接大量慢速设备。2.选择通道选择通道:以成组方式工作,即每次传送一批数:以成组方式工作,即每次传送一批数据,故传
12、送速度很高。在一段时间内只能执行一据,故传送速度很高。在一段时间内只能执行一个通道程序,只允许一台设备传输数据。可用于个通道程序,只允许一台设备传输数据。可用于连接高速设备,如固定头磁盘等。连接高速设备,如固定头磁盘等。3.数组多路通道数组多路通道:结合了选择通道传送速度高和字:结合了选择通道传送速度高和字节多路通道能够分时的优点。先为一台设备执行节多路通道能够分时的优点。先为一台设备执行一条通道指令,自动转接,再为另一台设备执行一条通道指令,自动转接,再为另一台设备执行一条通道指令。可连接多台活动头磁盘机。一条通道指令。可连接多台活动头磁盘机。通道的三种类型通道的三种类型20工作过程:工作过
13、程:1.CPU向向I/O通道发出一通道发出一条条I/O指令,给出指令,给出所要执行的通道程序的首地址和要访问所要执行的通道程序的首地址和要访问的的I/O设备。设备。2.通道接到通道接到CPU发来的指令,通过执行发来的指令,通过执行通通道程序道程序便可完成便可完成CPU指定的指定的I/O任务。任务。3.完成任务后,通道与设备一起发出中断完成任务后,通道与设备一起发出中断请求信号,请求请求信号,请求CPU处理。处理。216.2 I/O软件的组成软件的组成I/O软件的基本思想软件的基本思想:按分层构建,较低:按分层构建,较低层的软件为较高层的软件服务,使较高层的软件为较高层的软件服务,使较高层软件独
14、立于硬件,为用户提供统一接层软件独立于硬件,为用户提供统一接口。口。221.设备独立性设备独立性。用户在编写使用磁盘上文件的程用户在编写使用磁盘上文件的程序时,无需为不同的设备类型而修改程序,就序时,无需为不同的设备类型而修改程序,就可以使用。可以使用。用户程序中给出的是一个逻辑设备用户程序中给出的是一个逻辑设备名,由名,由OS实现逻辑设备与物理设备的映射。实现逻辑设备与物理设备的映射。2.设备的统一命名设备的统一命名。与设备独立性密切相关。一。与设备独立性密切相关。一个设备的逻辑名字只应是一个简单的字符串或个设备的逻辑名字只应是一个简单的字符串或一个整数,如一个整数,如 PRN,不依赖于具体
15、的设备。不依赖于具体的设备。6.2.1 I/O软件的目标软件的目标233.出错处理出错处理。数据传输中的错误应尽可能地在接。数据传输中的错误应尽可能地在接近硬件层上处理,可重试多次。仅当低层软件近硬件层上处理,可重试多次。仅当低层软件无能为力时,才将错误上交高层软件处理。无能为力时,才将错误上交高层软件处理。4.缓冲技术缓冲技术。其目的就是设法使数据的到达率和。其目的就是设法使数据的到达率和离去率相匹配,以提高系统的吞吐量。离去率相匹配,以提高系统的吞吐量。5.设备的分配设备的分配。涉及到共享设备和独占设备的分。涉及到共享设备和独占设备的分配问题。配问题。246.2.2 I/O软件的功能软件的
16、功能1.中断处理程序中断处理程序2.设备驱动程序设备驱动程序3.独立于设备的软件独立于设备的软件4.用户空间用户空间的的I/O软件软件I/O软件的分层:软件的分层:在在I/O软件中,软件中,大部分软件是与大部分软件是与设备无关的。设备无关的。251.中断处理程序中断处理程序1)每个进程在启动一个每个进程在启动一个I/O操作后阻塞起来,操作后阻塞起来,I/O操作完成,控制器产生一个操作完成,控制器产生一个中断中断。2)CPU响应中断,执行中断处理程序。响应中断,执行中断处理程序。3)检查设备状态检查设备状态。若是正常完成,就唤醒等。若是正常完成,就唤醒等待该待该I/O的进程。然后检查是否还有的进
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 设备管理
限制150内