第七章 IO设备管理
- 格式:ppt
- 大小:4.30 MB
- 文档页数:98
计算机四级操作系统-7-IO设备管理第7章I/O设备管理设备管理是操作系统的主要功能之⼀,它负责管理所有输⼈输出设备以完成期望的数据传设备管理可能是操作系统设计中最凌乱的部分,这主要是由于计算机系统中存在着⼤量的输⼊/输出设备,其性能和应⽤特点可能完全不同。
所以要建⽴⼀个通⽤的、⼀致的设备访问接⼝,使⽤户和应⽤程序开发⼈员能够⽅便地使⽤输⼊/输出设备,⽽⽆须关⼼每种设备各⾃的特性,这正是设备管理的主要⽬的。
本章⾸先讲述设备管理的基本概念,然后讨论I/O硬件组成、I/O软件结构、设备管理的相关技术,最后阐述I/O性能问题及解决⽅案。
7.1设备与设备分类输⼊/输出设备(I/O设备)也称为外部设备(Peripheral Device),有时简称为设备或外设,包括计算机系统中除CPU和内存储器以外的所有的设备和装置,还包括所有外部存储设备。
在不同的上下⽂中,I/O设备⼀词有⼴义和狭义两种含义,⼴义的I/O设备即上述定义,狭义的I/O设备不包括外存设备。
可见,计算机系统中外部设备⾮常多,并且这些设备在功能、速度和控制⽅式等⽅⾯都有较⼤的差异,本节将讨论这些问题。
7.1.1设备管理的重要性为了理解操作系统中设备管理的重要性,⾸先要了解I/O设备在计算机系统中所起的作⽤。
如果说处理器和内存是计算机系统的⼤脑部分的话,那么I/O设备就是计算机系统的五官和四肢。
各种需要处理的信息和操作⼈员对计算机系统的操作命令,都要通过输⼊设备进⼊计算机系统,处理后的信息和结果也要通过输出设备从计算机系统输出。
计算机系统中的I/O设备种类繁多,从简单的键盘到⿏标、打印机、图形显⽰终端、磁盘驱动器以⾄于⽹络设备,变化万千,造就计算机应⽤的多样性和普及性。
可以说没有I/O设备,就没有计算机的应⽤。
然⽽,正如⼈们已经认识到的,操作系统复杂和庞⼤的主要原因是它所管理的资源的庞杂和并发技术的采⽤,⽽I/o设备的庞杂正是操作系统所管理的资源庞杂的主要原因,I/O设备的速度远低于处理器的速度正是导致并发技术产⽣的直接原因。
操作系统——设备管理io组成io系统的组成需要用于输入、输出和存储信息的设备;需要相应的设备控制器;控制器与CPU连接的高速总线;有的大中型计算机系统,配置I/O通道;I/O系统的基本功能1)主要功能:1.隐藏物理设备细节,方便用户用户使用抽象的I/O命令即可2.实现设备无关性,方便用户用户可用抽象的逻辑设备名来使用设备,同时也提高了OS的可移植性和易适应性。
3.提高处理机和设备的并行性,提高利用率:缓冲区管理4.对I/O设备进行控制:控制方式、设备分配、设备处理5.确保对设备正确共享:虚拟设备及设备独立性等6.错误处理I/O系统的层析结构和模型层次结构:系统中的设备管理模块分为若干层次层次间操作:下层为上层提供服务,完成输入输出功能中的一些子功能,并屏蔽功能实现的细节。
I/O软件系统的层次.中断处理程序:处于IO系统的底层,直接与硬件交互.设备驱动程序:处于底层,是进程和控制器之间的通信程序功能:将上层发来的抽象IO请求,转化为IO设备的具体命令和参数,并把它装入寄存器中.设备独立性软件I/O系统接口:块设备接口,流设备接口,网络通信接口设备控制器设备并不直接与CPU通信计算机中的一个实体,“设备控制器”负责控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换。
控制器是CPU与I/O设备之间的接口,作为中间人接收从CPU发来的命令,并去控制I/O设备工作,以使处理机脱离繁杂的设备控制事务。
常作成接口卡插入计算机可编址,不同类:控制一个设备时只有一个地址,若连接多个设备则含有多个设备地址;管理的复杂性因设备而异,分为字符设备控制器、块控制器基本功能1.接收和识别CPU命令(控制寄存器:存放命令和参数)2.标识和报告设备的状态(状态寄存器)3.数据交换(数据寄存器)4.地址识别(控制器识别设备地址、寄存器地址。
地址译码器)5.数据缓冲(协调I/O与CPU的速度差距)6.差错控制I/O逻辑通过一组控制线与处理机交互cpu要启动一个设备时,将启动命令发送给控制器;同时通过地址线把地址发送给控制器控制器的I/O逻辑对收到的地址和命令进行译码,再根据所译出的命令选择设备进行控制。
操作系统的IO管理介绍今天这篇关于计算机操作系统的技术文章,我们主要来谈谈关于计算机操作系统的IO方面的内容。
I/O设备管理是操作系统设计中最凌乱也最具挑战性的部分。
由于它包含了很多领域的不同设备以及与设备相关的应用程序,因此很难有一个通用且一致的设计方案。
所以在理解设备管理之前,应该先了解具体的I/O设备类型。
计算机系统中的I/O设备按使用特性可分为以下类型:1) 人机交互类外部设备:用于同计算机用户之间交互的设备,如打印机、显示器、鼠标、键盘等。
这类设备数据交换速度相对较慢,通常是以字节为单位进行数据交换。
2) 存储设备:用于存储程序和数据的设备,如磁盘、磁带、光盘等。
这类设备用于数据交换,速度较快,通常以多字节组成的块为单位进行数据交换。
3) 网络通信设备:用于与远程设备通信的设备,如各种网络接口、调制解调器等。
其速度介于前两类设备之间。
网络通信设备在使用和管理上与前两类设备也有很大不同。
除了上面最常见的分类方法,I/O设备还可以按以下方法分类:1) 按传输速率分类: • 低速设备:传输速率仅为每秒几个到数百个字节的一类设备,如键盘、鼠标等。
• 中速设备:传输速率在每秒数千个字节至数万个字节的一类设备,如行式打印机、 激光打印机等。
• 高速设备:传输速率在数百个千字节至千兆字节的一类设备,如磁带机、磁盘机、 光盘机等。
2) 按信息交换的单位分类: • 块设备:由于信息的存取总是以数据块为单位,所以存储信息的设备称为块设备。
它属于有结构设备,如磁盘等。
磁盘设备的基本特征是传输速率较高,以及可寻址,即对它可随机地读/写任一块。
• 字符设备:用于数据输入/输出的设备为字符设备,因为其传输的基本单位是字符。
它属于无结构类型,如交互式终端机、打印机等。
它们的基本特征是传输速率低、不可寻址,并且在输入/输出时常釆用中断驱动方式。
设备管理的主要任务之一是控制设备和内存或处理机之间的数据传送,外围设备和内存之间的输入/输出控制方式有四种,下面分别介绍。
第7章 设备管理7.1 例题解析例7.2.1 何谓虚拟设备?请说明SPOOLing系统是如何实现虚拟设备的。
解本题的考核要点是虚拟设备的实现方法。
虚拟设备是指利用软件方法,比如SPOOLing系统,把独享设备分割为若干台逻辑上的独占的设备,使用户感受到系统有出若干独占设备在运行。
当然,系统中至少一台拥有物理设备,这是虚拟设备技术的基础。
SPOOLing系统又称“假脱机I/O系统”,其中心思想是,让共享的、高速的、大容量外存储器(比如,磁盘)来模拟若干台独占设备,使系统中的一台或少数几台独占设备变成多台可并行使用的虚拟设备。
SPOOLing系统主要管理外存上的输入井和输出井,以及内存中的输入缓冲区和输出缓冲区。
其管理进程主要有输入和输出进程,负责将输入数据装入到输入井,或者将输出井的数据送出。
它的特点是:提高了I/O操作的速度;将独占设备改造为共享设备;实现了虚拟设备功能。
例7.2.2有关设备管理要领的下列叙述中,( )是不正确的。
A.通道是处理输入、输出的软件B.所有外围设备都由系统统一来管理C.来自通道的I/O中断事件由设备管理负责处理D.编制好的通道程序是存放在主存贮器中的E.由用户给出的设备编号是设备的绝对号解本题的考核要点是设备管理的基本概念。
(1)通道是计算机上配置的一种专门用于输入输出的设备,是硬件的组成部分。
因此A是错误的。
(2)目前常见I/O系统其外部设备的驱动和输入输出都由系统统一管理。
因此B是对的。
(3)设备管理模块中的底层软件中配有专门处理设备中断的处理程序。
通道中断属于设备中断的一种。
因此C是对的。
(4)通道设备自身只配有一个简单的处理装置(CPU),并不配有存储器,它所运行的通道程序全部来自内存。
因此D是对的。
(5)系统在初启时为每台物理设备赋予一个绝对号,设备绝对号是相互独立的。
由用户给出的设备号只能是逻辑编号,由系统将逻辑号映射为绝对号。
因此E是错误的。
例7.2.3 在关于SPOOLING的叙述中,描述是不正确的。