《操作系统》课程笔记(Ch13-I/O系统)
IO硬件
几种IO方式
-
轮询
-
中断
- 可屏蔽、不可屏蔽
- 中断向量、中断优先级
-
直接内存访问DMA
使用DMA控制器完成一些PIO(程序控制IO),减轻CPU负担
应用程序IO接口
- 块与字符设备
- 基本行为:read、write、seek
- 原始IO:将块设备作为简单的线性数组来访问,将设备控制直接交给应用程序
- 直接IO:操作系统允许一种文件操作模式,以便禁止缓冲和锁定
- 基本行为:read、write、seek
- 网络设备
- 利用套接字(socket)接口
- 时钟与定时器
- 非阻塞与异步IO
内核IO子系统
内核提供与IO先关的许多服务,如调度、缓冲、缓存等等。
- IO调度
- 设备状态表:在设备状态条目上拉链,链元素为排队中的动作
- 缓冲
- 协调传输速率不匹配的设备
- 协调传输大小不一的设备
- 支持应用程序IO的复制语义
- 缓存
- 假脱机与设备预留
- 错误处理
- IO保护
其他问题
流
性能优化
- 减少上下文切换
- 减少设备与应用程序传递数据时内存数据的复制次数
- 通过DMA来分担CPU的数据复制任务