设备管理
zKing 2018-11-19 专业知识
# I/O 系统
- 输入、输出设备
- 存储功能的设备
- 设备控制器 --如显卡、声卡等
# 设备管理的概念
- 提供的功能
- 提供和进程关系系统的接口
- 进行设备分配
- 实现设备和设备之间、设备与CPU之间的并行操作
- 进行缓冲区管理
# I/O 控制方式
- 程序 I/O方式
- 中断控制 I/O方式
- 直接存储器访问(DMA)方式
- I/O 通道控制方式
- 字节多路通道
- 选择通道
- 成组多路通道
# 缓冲管理
# 引入缓冲区的主要原因
- 缓和 CPU 与 I/O 设备间速度不匹配的矛盾
- 减少对 CPU 的中断频率,放宽对 CPU 中断响应时间的限制
- 提高 CPU 和 I/O 设备之间的并行性
# 分类
- 单缓冲
- 多缓冲
- 循环缓冲
- 循环缓冲由多个大小相同的缓冲区,可以分为3类
- 用于装输入数据的空缓冲区 R
- 已装满数据的缓冲区 G
- 计算进程正在使用的现行工作缓冲区 C
- 循环缓冲由多个大小相同的缓冲区,可以分为3类
- 缓冲池(Buffer Pool)
- 对于即可输入又可输出的公用缓冲池,至少应含3类缓冲区
- 空缓冲区
- 装满输入数据的缓冲区
- 装满输出数据的缓冲区
- 对于即可输入又可输出的公用缓冲池,至少应含3类缓冲区
# 设备的分配
# 两种原则
- 静态分配 --不会发生死锁现象
- 动态分配 --按需分配
# 分配策略
- 先请求者先分配
- 优先级高者先分配
# 磁盘管理
# 磁盘
- 一个磁盘由多个盘片构成,每个盘片有上下两个盘面,均可存储信息
- 一个盘面由若干个同心圆构成,同心圆称之为磁道,信息就是存到磁道上的
- 沿半径可以将盘面分成若干个块,称之为扇区。扇区是存储信息的最基本单位
- 柱面号(磁道号),盘面号(磁头号)
# 磁盘的访问时间
- 寻道时间 Ts
- 把磁臂从当前位置移到指定磁道上所经历的时间
- 旋转延迟时间 Tr
- 指定扇区移动到磁头下面所经历的时间
- 传输时间 Tt
- 数据从磁盘读出或向磁盘写入数据所经历的时间
- 在访问时间中,寻道时间和旋转延迟时间,通常是占据了访问时间的大头。适当地集合数据(不要太零散)传输,将有利于提高传输效率
# 磁盘的调度算法
- 先来先服务(FCFS)
- 按顺序执行
- 优点 --公平、简单,且每个进程的请求都能依次得到处理
- 缺点 --未对寻道进行优化,致使平均寻道时间可能较长
- 最短寻道时间优先
- 寻找最近的磁道
- 不能保证平均寻道时间最短
- 扫描(SCAN)算法(电梯调度算法)【常考】
- 顾名思义,按电梯的方式进行
- 循环扫描 CSSCAN
- 将最小磁道号紧接着最大磁道号构成循环进行扫描
# 虚设备和 SPOOLing 技术(假脱机技术)
该技术是利用专门的专门的外围控制机,将低速设备上的数据传送到高速磁盘上,等传输了一段时间,再从磁盘读入到内存中。
# 三大部分组成
- 输入井和输出井
- 是磁盘上开辟的两大存储空间
- 输入缓冲区和输出缓冲区
- 在内存中开辟两个缓冲区,输入缓冲区暂存由输入设备送来的数据,后送输入井
- 输出缓冲区暂存从输出井送来的是数据,后送输出设备
- 输入进程和输出进程
- 利用两个进程模拟脱机 I/O 时的外围处理机
# 特点
- 提高了 I/O 的速度。利用 输入输出井 模拟成脱机输入输出,缓和了 CPU 和 I/O 设备速度不匹配的矛盾
- 将独占设备改造成共享设备
- 实现了虚拟设备功能。多个进程同时使用一台独占设备,虚拟成了多台设备
个人
简单来说,就是将U盘的数据通过外围机器先传入到移动硬盘中,再从移动硬盘存入到主机中,提高了 I/O 的速度。