I/O设备的基本概念与分类
I/O设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备,属于计算机中的硬件部分。
I/O设备按使用特性可以分为以下类型:
- 人机交互类设备。用于与计算机用户之间交互的设备,如打印机、显示器、鼠标和键盘等。
- 存储设备。用于存储程序和数据的设备,如磁盘、磁带和光盘等。
- 网络通信设备。用于与远程设备通信的设备,如各种网络接口、调制解调器等。
按传输速率分类:
- 低俗设备。传输速率仅为每秒几字节到数百字节的一类设备,如键盘、鼠标等。
- 中速设备。传输速率为每秒数千字节至数万字节的一类设备,如打印机等。
- 高速设备。传输速率在数百千字节至千兆字节的一类设备,如磁带机、磁盘机等。
按信息交换的单位分类:
- 块设备
- 字符设备
I/O控制器
I/O设备的电子部件
I/O控制方式
程序直接控制方式
中断驱动方式
允许I/O设备主动打断CPU的运行并请求服务,从而“解放”CPU,使得其向I/O控制器发送读命令后可以继续做其他工作。
数据传送的单位:每次读写一个字
数据的流向:
读操作(数据输入):I/O设备->CPU->内存
写操作(数据输出):内存->CPU->I/O设备
优点:CPU不再需要不停地查询,CPU和I/O设备可并行工作,CPU利用率明显提高。
缺点:数据中的每个字在存储器与I/O控制器之间的传输都必须经过CPU,这就导致了中断驱动方式仍然后消耗较多的CPU时间。
DMA方式(直接存储器存取)
DMA(直接存储器存取)方式的基本思想是在I/O设备和内存之间开辟直接的数据交换通路,彻底解放CPU。
DMA方式有这样几个改进:
1.数据的传送单位是”块“。不再是一个字、一个字的传送;
2.数据的流向是从设备直接放入内存,或者从内存直接到设备。不再需要CPU作为”快递小哥“。
3.仅在传送一个或多个数据块的开始和结束时,才需要CPU干预
DMA控制器的组成如下图:
通道控制方式