操作系统的输入输出系统I/O

I/O系统是OS的主要组成部分,一种是用于管理外设的I/O设备,一种是用于存储数据,如磁盘驱动器和磁带机等各种存储设备。向下与硬件密切相关,向上与文件系统、虚拟存储系统和用户直接交互。

I/O系统管理的主要对象是I/O设备和相应的设备控制器,其主要任务是完成用户提出的I/O请求,提高I/O速率,提高设备的利用率,并能为更高层的进程方便的使用这些设备提供手段。

I/O系统的基本功能:

  • 隐藏物理设备的细节
  • 与设备无关性
  • 提高处理机和I/O设备的利用率
  • 对I/O设备进行控制
  • 确保对设备的正确共享
  • 错误处理

I/O软件的层次结构

用户软件层:与用户交互 产生I/O请求,格式化I/O,spooling
设备独立性软件:用于实现用户程序与设备驱动器的统一接口、设备命名、设备的保护以及设备的分配与释放,同时为设备管理和数据传送提供必要的存储空间。 映射、保护、分块、缓冲、分配
设备驱动程序:与硬件直接相关,具体实现系统对设备发出的操作指令,驱动设备工作。 设置设备寄存器,检查状态

中断处理层序:保存被中断进程的cpu环境,转入相应的中断处理程序进行处理,处理完成再恢复被中断进程的现场后,返回到被中断的进程。

 
硬件 执行I/O操作

I/O系统按照传输方式分类:

块设备接口:磁盘存储器和光盘存储器,虚拟存储系统。数据的存取和传输都是以数据块为单位的设备。传输速度快

流设备接口:又称字符设备接口,数据的存取和传输以字符为单位的设备。传输速度慢

网络通信接口:

设备控制器

I/O设备不是直接与cpu通信,而是通过设备控制器,通信包括三种通信信号:数据信号,控制信号,状态信号。

设备控制器的主要功能:控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换,接受cpu发来的命令,去控制I/O设备工作,使处理机能够从设备控制事务中解脱出来。

设备控制器的基本功能:

  • 接收和识别命令
  • 数据交换
  • 标识和报告设备状态
  • 地址识别
  • 数据缓冲区
  • 差错控制

I/O通道

cpu向通道发送一条I/O指令,通道收到I/O指令,便从内存中取出本次要执行的通道程序,然后执行该通道程序,仅当通道完成了规定的I/O任务之后,才向cpu发中断信号。

 

你可能感兴趣的:(操作系统)