I/O Devices

DMA
DMA (Direct Memory Access) 是一种允许外部设备直接和内存进行数据传输的机制,无需CPU的直接干预。
- 工作原理:
- CPU设置DMA控制器的参数(源地址、目标地址、传输数据量等)
- DMA控制器直接控制系统总线
- 数据传输完成后,DMA控制器向CPU发出中断信号
- 主要特点:
- 减轻CPU负担
- 提高系统性能
- 数据传输速度快
- 适合大量数据传输
- 应用场景:
- 磁盘I/O操作
- 网络数据传输
- 打印机输出
- 声卡数据传输
- 显卡数据传输
- 传输模式:
- 单字节传输:每次传送一个字节
- 块传输:每次传送一块数据
- 突发传输:连续传送多个数据块
- 循环窃取:在CPU不使用总线时传输数据
DMA的使用大大提高了计算机系统的I/O效率,是现代计算机系统中不可或缺的组成部分。
DMA自动去做数据拷贝

Storage Devices
磁头转是为了找磁道,磁盘转的目的是为了找扇区
存储数据的容量=磁头数量*磁道数量*扇区数量*扇区大小
如何去计算这三个时间?
假设
- 寻道时间是5ms
- 转速为7200RPM,Time for rotation:
- 传输速度是4MBytes/s,扇区大小是1 Kbyte
Read sector from random place on disk:
- Approx 10ms to fetch/put data: 100KByte/sec
Read sector from random place in same cylinder:
- 相同磁道读取扇区,不需要寻道时间了
- Approx 5ms to fetch/put data : 200 KByte/sec
Read next sector on same track:
- 4 MByte/sec
SSD
这部分并不是重点,看看得了

Disk Scheduling

- 磁头在磁盘表面来回移动,类似电梯在大楼上下运行
- 在一个方向上移动时,处理所有该方向上的请求,直到到达磁盘边界
- 到达边界后改变方向,再处理反方向上的所有请求
