2024 操作系统 中断IO 选择题
第 31 题

键盘中断服务例程执行结束时,所输入的数据存放位置是() 。

中断IO

A. 用户缓冲区 B. CPU 的通用寄存器 C. 内核缓冲区 D. 键盘控制器的数据缓冲区

[tag_link]

正确答案:C

当键盘输入数据时,首先会将数据发送到键盘控制器的数据寄存器中。当键盘控制器的数据寄存器接收到数据后,它会触发一个中断请求 (IRQ1),通知 CPU 有数据等待处理。CPU 响应中断请求后,会执行键盘中断服务例程。在中断服务例程中,CPU 从键盘控制器的数据寄存器读取输入数据,并将其存放到内核缓冲区中。A 错误。用户缓冲区通常指的是应用程序为接收输入数据而分配的缓冲区。在键盘中断服务例程执行结束时,输入数据并不会直接存放在用户缓冲区中,而是先存放在内核缓冲区中。应用程序可以通过系统调用或其他机制从内核缓冲区读取输入数据,并将其复制到用户缓冲区中。B 错误。CPU 中的通用寄存器并不是输入数据的最终存放位置。在键盘中断服务例程执行过程中,输入数据可能会暂时存放在 CPU 的通用寄存器中,但最终会被存放到内核缓冲区中。C 正确。内核缓冲区是操作系统用于暂存输入数据的内存区域。在键盘中断服务例程执行过程中,输入数据被读取并存入内核缓冲区,以便后续的系统调用或应用程序访问。内核缓冲区通常由操作系统管理,确保数据的正确性和一致性。D 错误。键盘控制器的数据寄存器是输入数据的初始存放位置,但并不是中断服务例程执行结束时的最终存放位置。本题选 C。