一、I/O设备(I/O系统)
I/O设备即输入/输出设备,是用于计算机系统与人通信或与其他机器通信的所有设备,以及所有外存设备。
1、I/O系统的组成
I/O系统不仅包括各种I/O设备,还包括与设备相连的设备控制器,有些系统还配备了专门用于输入/输出控制的专用计算机,即通道。
1.1 I/O系统的结构
分为两大类:微机I/O系统、主机I/O系统
1.1.1 微机I/O系统
CPU与内存之间可以直接进行信息交换,但是不能与设备直接进行信息交换,必须经过设备控制器
1.1.2 主机I/O系统
主机I/O系统采用四级结构,包括主机、通道、控制器和设备
一个通道可以控制多个设备控制器
一个设备控制器也可以控制多个设备
1.2 I/O设备的分类
1.2.1 按传输速率分类
-
低速设备,鼠标、键盘等
-
中速设备,打印机系列
-
高速设备,光盘系列
1.2.2 按信息交换单位分类
-
块设备,磁盘,数据的存取以数据块为单位
-
字符设备,打印机,传送字节流,不使用块结构
1.2.3 按设备的共享属性分类
-
独占设备,例如打印机,必须作为临界资源以互斥方式访问
-
共享设备,例如磁盘,允许多个进程共同访问的设备
-
虚拟设备,通过虚拟技术把一台物理设备变成若干逻辑设备
1.3 设备控制器
设备控制器是CPU与I/O设备之间的接口,接收I/O的命令并控制设备完成I/O工作
二、缓冲管理
2.1 缓冲区的定义
缓冲区是用来保存两个设备之间或设备与应用程序之间传输数据的内存区域。
2.2 缓冲区存在的意义
由于CPU的速度远远高于I/O设备,为了尽可能使CPU与设备并行工作,提高系统的性能,通常需要操作系统在设备管理软件中提供缓冲区管理功能。
2.3 缓冲的引入
在数据到达速率与数据离去速率不同的地方,都可以引入缓冲区。
引入缓冲的主要原因:
-
处理数据流的生产者与消费者之间的速度差异
-
协调传输数据大小不一致的设备
引入缓冲的主要作用:
引入缓冲区除了可以缓和CPU与I/O设备之间速度不匹配的矛盾,还能提高CPU和I/O设备之间的并行性。
三、 磁盘管理
磁盘管理的重要目标是提高磁盘空间利用率和磁盘访问速度。
3.1 磁盘结构
一个物理记录存储在一个扇区上,磁盘存储的物理记录数目是由扇区数、磁道数及磁盘面数决定的。
磁盘类型:
-
固定头磁盘:在每条磁道上都有读写磁头
-
活动头磁盘(移动头):每个盘面上仅配有一个磁头
磁盘的访问时间:
-
寻道时间:磁头移动到指定磁道所经历的时间
-
旋转延迟时间:指定扇区移动到磁头下面所经历的时间
-
传输时间:把数据从磁盘读出或向磁盘写入数据时所经历的时间
3.2 磁盘调度
磁盘调度的一个重要目标是使磁盘的平均寻道时间最少
磁盘调度遵循的规则:
-
先来先服务原则FCFS,First Come First Served
-
最短寻道时间有限SSTF,Shortest Seek Time First
-
扫描算法SCAN
-
循环扫描算法CSCAN