I/O设备管理一般分为4个层次,如下图所示。图中①②③分别对应(中断处理程序、设备驱动程序、与设备无关的系统软件)。

I/O设备管理通常采用分层架构实现硬件与软件的解耦,从贴近硬件的底层到面向用户的上层,核心层次功能各有分工:最底层是中断处理程序,它是硬件与操作系统交互的关键节点,负责实时响应外部设备的中断请求,处理硬件级的信号交互,是触发后续I/O操作的起点;往上是设备驱动程序,这是针对特定硬件的专属控制程序,直接与硬件通信,负责下发具体操作指令、完成设备读写控制等,是操作系统操控硬件的直接接口;再上层是与设备无关的系统软件,这一层实现了硬件抽象,向上提供统一的I/O操作接口,让用户程序无需关注具体硬件细节,同时还承担设备分配、缓冲管理、错误处理等通用I/O管理任务;在这之上还有面向用户的I/O软件层,比如用户程序中的I/O调用接口,进一步简化用户对设备的使用。这种分层架构既保证了硬件控制的专业性,又提升了I/O操作的通用性与可扩展性。
本题考察的是I/O设备管理的层次结构。
虚设备管理,是把本来独占、速度慢或不方便直接共享的物理设备,经过操作系统组织后,变成多个进程看起来都能“同时使用”的逻辑设备,典型就是 SPOOLing,比如打印机本来一次只能给一个进程用,但通过假脱机技术,多个作业都可以先排队输出,看起来像在共享一台“虚拟打印设备”。这里是干扰项
I/O设备管理的层次结构是:硬件 → 中断处理程序 → 设备驱动程序 → 与设备无关的系统软件 → 用户进程。其中,硬件 就是真实的外设和控制器;中断处理程序 是最贴近硬件的一层,负责响应设备完成、出错等中断信号;设备驱动程序 负责把操作系统发出的 I/O 命令翻译成具体设备能识别的操作,直接控制某一类设备;与设备无关的系统软件 则站在更高一层,负责设备命名、缓冲、分配、回收、保护等通用管理,对上层提供统一接口,屏蔽具体设备差异;用户进程 只负责提出 I/O 请求,不直接操作硬件。
基于这套划分,选项 D 正确。
