第五章、设备管理
目录:
1.概要
2.I/O系统
3.I/O控制方式
4.缓冲管理
5.设备分配
6.设备处理
7.磁盘存储管理
一、概要
I/O系统由I/O设备、设备控制器、I/O通道和总线组成。
1)设备管理的对象:
1.I/O设备
2.设备控制器
3.I/O通道
2)设备管理的功能
1.完成用户提出的I/O请求
2.提高I/O速度
3.改善I/O设备的利用率
3)设备管理的基本任务
1.缓冲区管理
2.设备分配
3.设备处理
4.虚拟设备
5.实现设备的独立性
二、I/O系统
1)I/O设备
1.类型:按传输数率: 低速设备 、中速设备、高速设备
按信息交换的单位: 字符设备、块设备
按设备的共享属性: 共享设备、虚拟设备
2.与设备控制器的接口:数据信号、状态信号、控制信号
2)设备控制器:
作用:是控制设备进行数据传送的设备部件。它与CPU通过三种信号连接,包括数据信号、地址信号、控制信号。
功能:接受和识别命令、控制数据交换、设备状态收集和报告、地址识别、数据缓冲、差错控制。
组成:设备控制器与处理机的接口、设备控制器与设备的接口、I/O逻辑
数据的传输过程:CPU、内存、设备控制设备 (两两之间双向)3)I/O通道:
作用:是设备控制器和CPU之间的部件。
类型:字节多路通道、数组选择通道、数组多路通道
4)总线 基本概念及分类:
概念:一组能为多个部件共享的公共信息传送线路,是将计算机微处理器与内存芯片以及与之通信的设备连接起来的硬件通道。
按其任务可分为三类:内部总线
系统总线:前端总线:连接CPU到北桥芯片的总线。将CPU连接到主内存和通向磁盘驱动器、调制解调器以及网卡上
后端总线:连接CPU和外部缓存(经常为第二级缓存)
北桥的作用:北桥芯片主要负责实现与CPU、内存、AGP接口之间的数据传输,同时还通过特定的数据通道和南桥芯片相连接。
外部总线
三、I/O控制方式
1)作用:用于实现CPU对外部设备的控制
2)程序I/O控制方式:轮询方式,CPU主动,效率很低,速度很慢,以字节为单位
3)中断驱动程序:CPU被动,设备主动,速度慢
4)DMA控制方式:
解决的问题:速度慢,浪费CPU资源
DMAC代替CPU控制数据传输
特点: 以块为单位,在设备(控制器)和内存间传输数据
5)I/O通道控制方式:
解决的问题:进一步提高速I/O通道代替CPU控制数据传输
特点:多个数据块传送、在通道和内存之间传输数据
四、缓冲管理
1)作用:缓和CPU和I/O设备速度不匹配的矛盾
减少对CPU的中断频率,放宽对中断响应时间的限制
提高CPU和I/O设备之间的并行性
2)单缓冲:I/O设备和CPU之间只有一个缓冲区。当I/O设备向缓冲区输入时,CPU不能读取缓冲区,反之亦然。
存在的问题:输入、输出速度慢,设备的利用率低。表现在I/O设备和处理器不能并行工作。
3)双缓冲(缓冲对换):也称循环对换。
存在的问题:当速度不匹配时,效果退化到但缓冲机制的程度。
解决办法:增加缓冲区个数,按照循环链的方式组织缓冲区。
4)循环缓冲
5)缓冲池:
组成:空缓冲队列emq、输入队列inq、输出队列outq
专用缓冲区:hin/sin/hout/sout
缓冲区的工作方式:收容输入、提取输入、收容输出、提取输出
五、设备分配
1)设备分配中的数据结构:逻辑设备表(LUT)、系统设备表(SDT)、设备控制表(DCT)、控制器控制表(COCT)、通道控制表(CHCT)
2)设备分配算法:先来先服务算法、优先级高者优先
3)设备分配的安全性:安全分配方式、不安全分配方式、和"死锁"部分的资源分配一致
设备独立性:
1)用户编制程序使用的设备与实际使用的设备无关
2)逻辑设备名
3)物理设备名
六、设备处理
设备驱动程序:
概念:设备驱动程序时驱动物理设备和DMA控制器或I/O控制器等直接进行I/O操作的子程序的集合。它们负责设置相应设备有关寄存器的值,启动设备进行I/O操作,指定操作的类型和数据流。
功能:接受用户的I/O请求、取出请求队列中队首请求,将相应设备分配给它、启动设备工作,完成指定的I/O操作、处理来自设备的中断
设备处理方式:为每类设备设置一个进程、在整个系统中设置一个I/O进程、不设置专门的I/O进程。
设备驱动程序的处理过程:
1.将抽象要求转换为具体要求
2.检查I/O请求的合法性
3.读出和检查设备的状态
4.传送必要的参数
5.方式的设置
6.启动I/O设备
中断处理程序的处理过程:
1.唤醒阻塞的驱动程序进程
2.保护被中断的进程的CPU环境
3.分析中断原因、转入相应的设备中断处理程序
4.进行中断处理。
5.恢复被中断的进程现场。
七、磁盘存储器管理
1)数据的组织和格式:
温彻斯特硬盘:它的参数包括磁头数、柱面数、扇区数和字节数。各个盘面上的同一磁道组成的一个柱面。每个磁道有30个扇区。每个扇区存储600个字节,其中512个字节存储数据,其余字节存储控制信息。
磁盘的类型:
固定头磁盘:刚性磁臂,使用于大容量磁盘
移动头磁盘:移动磁臂,使用于中小型磁盘设备。
2)磁盘I/O访问时间:
磁盘I/O时间由数据在磁盘上的物理记录的位置决定
物理记录的位置:柱面号、磁头号(盘面号)、扇区号
总时间=柱面定位(寻道)时间+旋转延迟时间+数据传送时间
3)磁盘I/O调度策略
1.先进先出算法
2.优先级算法
3.后进先出算法
4.短时间优先算法
5.扫描算法(电梯算法)
6.循环扫描(注意和SCAN的区别)
7.N步扫描算法
8.双队列扫描算法
4)固态硬盘
形式:固态硬盘大部分被制作成与传统硬盘相同的外壳尺寸。例如:1.8英寸、2.5英寸,并用来相互兼容的接口。但有些固态硬盘也使用PCi Express或是Express Card作为接口来突破现有硬盘传输接口的速度,或是在有限空间中置放固态硬盘。
优点:和传统硬盘相比,固态硬盘具有低功耗、无噪声、抗震动、低热量的特点。这些特点不仅使得数据能更加安全的保存,而且也延长了靠电池供电的设备的连续元转时间。
缺点:目前固态硬盘普及的四大问题:成本、写入次数、损坏时的不可挽救性及掉速。
5)廉价磁盘冗余阵列