I/O特点
常见设备接口类型:
1、字符设备:键盘鼠标、串口
a.以字节为单位顺序访问
b.I/O命令通常使用文件访问接口和语义
2、块设备:磁盘、磁带、光驱
a.均匀的数据块访问
b.I/O命令通常使用文件系统接口,也可以使用内存映射访问
3、网络设备:以太网、无线、蓝牙
a.格式化的报文交换
b.I/O网络报文,通过网络接口支持多种网络协议。
同步与异步I/O:
1、阻塞I/O:发出请求后等待数据读出或写入完毕
2、非阻塞I/O:发出请求后不等待立即返回,返回值为成功传输的字节数
3、异步I/O:读数据时,使用指针标记好用户缓冲区,立即返回,稍后内核将填充缓冲区并通知用户;写数据内核写入完毕后通知用户