导图社区 输入输出系统知识点总结
操作系统之输入输出系统知识点总结,归纳了I/O系统的功能、模型和接口,I/O设备和设备控制器,设备驱动程序等相关内容,知识全面详细,干货满满,赶紧收藏!
编辑于2021-06-26 14:31:19输入输出系统
I/O系统的功能、模型和接口
I/O系统管理的主要对象是I/O设备和相应的设备控制器
主要任务
提高设备的利用率。为此,应尽量提高 CPU 与 I/O 设备之间的并 行操作程度,主要利用的技术有:中断技术、 DMA 技术、通道 技术、缓冲技术。
为更高层的进程方便地使用 I/O 设备提供手段
操作系统庞大复杂的原因
资源多、杂,并发,均来自 I/O
外设种类繁多,结构各异
输入输出数据信号类型不同
速度差异很大
I/O系统的基本功能
隐藏物理设备的细节
与设备的无关性
提高处理机和I/O设备的利用率
对I/O设备进行控制
确保对设备的正确共享
独占设备
共享设备
错误处理
I/O系统的层次结构和模型
I/O软件的层次结构
用户层I/O软件
设备独立性软件
设备驱动程序
中断处理程序
I/O系统中各种模块之间的层次视图
I/O系统的上、下接口
I/O系统接口
软件、硬件接口
I/O系统的分层
中断处理程序
设备驱动程序
设备独立性软件
I/O系统接口
块设备接口
块设备
隐藏了磁盘的二维结构
将抽象命令映射为低层操作
流设备接口
字符设备
get和put操作
in-control指令
网络通信接口
I/O设备和设备控制器
I/O设备
I/O设备的类型
按使用特性分类
按传输速率分类
设备与控制器之间的接口
数据信号线
控制信号线
状态信号线
设备控制器
基本功能
接受和识别命令
数据交换
表示和报告设备的状态
地址识别
数据缓冲区
差错控制
设备控制器的组成
设备控制器与处理机的接口
设备控制器与设备的接口
I/O逻辑
内存映像
利用特定的I/O指令
内存映像I/O
I/O通道
I/O通道设备的引入
目 的: 建 立独立的 I/O 操作 ( 组织 , 管理和结 束 ) ,使 由 CPU 处理的 I/O工作 转由 通道完成( 解 放 CPU ,实现并行
基本过程
CPU 向通道发出 I/O 指令 → 通道接 收 指令 → 从内 存 取 出通道程序处 理 I/O → 向 CPU 发出中断
通道类型
字节多路通道
数组选择通道
数组多路通道
”瓶颈“问题
终端机构和中断处理程序
中断简介
中断和陷入
中断
对外部 I/O 设备发出的中断信号的响应
陷入
对紧急程度不同的中断处理方式
中断向量表和中断优先级
中断向量表
中断优先级
对中断源的处理方式
屏蔽(禁止)中断
嵌套终端
中断处理程序
中断处理程序的处理过程
1. 测定 是 否 有 未响 应的中断信号
2. 保护 被 中断进程的 CPU 环境 : 将 处理机 状态字 PSW 、程序计数
器 PC 中的 内容 、 CPU 的现 场 信息,保存在中断保 留 区 ( 栈 ) 中。
3. 转 入 响 应的设备处理程序
4. 中断处理
5. 恢 复 CPU 现 场 并 退
设备驱动程序
设备驱动程序概述
设备驱动程序的功能
接收由 I/O 进程发来的命令和参 数,并将命令中的抽象要求转换为具体要求
检查用户I/O请求的合法性,了解I/O设备的状态,传递有关参数,设置设备的工作方式。
发出 I/O 命令, 如果 设备 空闲 ,便立 即启 动 I/O 设备 去 完成指 定 的I/O 操作;如果 设备处于 忙碌状态 , 则将 请求 者 的请求块 挂 在设备队列 上等
及时响 应 由 控制器 或 通道发来的中断请求,并 根 据其中断类型调 用相应的中断处理程序进行处理
对于设置有通道的计算机系统,驱动程序 还 应能 够根 据用户的I/O 请求,自动地构成通道程序
设备驱动程序的特点
§ 驱动程序主要是指在请求 I/O 的进程与设备控制器之间的一个通信和 转换 程序。 将 IO 请求 转换后 传送 给 控制器。
§ 驱动程序与设备控制器和 I/O 设备的硬件特性 紧 密相关, 因 而 对不同类型的设备应配置不同的驱动程序。
§ 驱动程序与 I/O 设备 所采 用的 I/O 控制方式 紧 密相关。
§ 由 于驱动程序与硬件 紧 密相关, 因 而 其中的一 部 分 必须 用汇编语言书写
设备处理方式
每一类设备设置一个进程, 专门 用于执行这类设备的 I/O 操作
在 整 个系统中设置一个 I/O 进程, 专门 用于执行系统中 所 有各类设备的 I/O 操作。 由 于现 代 计算机系统设备 十 分复杂, I/O 负担 很重 ,因此, 又 可 把 I/O 进程分为输入进程和输出进程
不设置 专门 的设备处理进程, 而只 为各类设备设置相应的设备处理程序 ( 模 块 ) , 供用户进程 或 系统进程 调 用。
设备驱动程序的处理过程
将抽象要求转换为具体要求
对服务请求进行校验
检查设备的状态
传送必要的参数
启动I/O设备
对I/O设备的控制方式
使用轮询的可编程I/O方式
使用中断的可编程I/O方式
直接存储器访问方式
接存储器访问方式的引入
DMA控制器的组成
• 主机与 DMA 控制器的接口
• DMA 控制器与块设备的接口
• I/O 控制
DMA工作过程
I/O通道控制方式
I/O通道控制方式的引入
与设备无关的I/O软件
基本概念
以物理设备名使用设备
引入了逻辑设备名
逻辑设备名称到物理设备名称的转换
与设备无关的软件
设备驱动程序的统一接口
缓冲管理
差错控制
暂时性错误
持久性错误
对独立设备的分配与回收
独立于设备的逻辑数据块
设备分配
设备分配中的数据结构·
设备控制表DCT
控制器控制表、通道控制表和系统设备表
设备分配时应考虑的因素
设备的固有属性
设备分配算法
设备分配中的安全性
安全分配方式
不安全分配方式
独占设备的分配程序
基本的设备分配程序
分配设备
分配控制器
分配通道
设备分配程序的改进
逻辑设备名到物理设备名映射的表现
逻辑设备表
逻辑设别表的设置问题
用户层的I/O软件
系统调用与库函数
假脱机系统
SPOOLing的组成
输入井和输出井
输入缓冲区和输出缓冲区
SPOOLing系统特点
提高了I/O的速度
将独占设备改造为共享设备
实现了虚拟设备的功能
假脱机打印机系统
磁盘缓冲区
打印缓冲区
假脱机管理进程和假脱机打印进程
守护进程
缓冲区管理
单缓冲区和双缓冲区
环形缓冲区
缓冲池
磁盘存储器的性能和调度
磁盘性能简述
数据的组织和格式
磁盘的类型
固定头磁盘
移动头磁盘
磁盘访问时间
早期的磁盘调度算法
先来先服务
最短寻道时间优先
基于扫描的磁盘调度算法
扫描算法
循环扫描算法
NStepSCAN和FSCAN调度算法