题目
下列I/O方式中,会导致用户进程[1]进入阻塞态的是()。A. 程序直接控制B. 中断方式C. DMA方式D. 程序直接控制、中断方式、DMA方式
下列I/O方式中,会导致用户进程[1]进入阻塞态的是()。
A. 程序直接控制
B. 中断方式
C. DMA方式
D. 程序直接控制、中断方式、DMA方式
题目解答
答案
B. 中断方式
解析
本题考查计算机系统中不同I/O方式对用户进程状态的影响,解题思路是分别分析每种I/O方式的工作原理,判断在该方式下用户进程是否会进入阻塞态。
1. 程序直接控制方式
在程序直接控制方式中,CPU需要不断地查询I/O设备的状态,直到I/O操作完成。在这个过程中,CPU会一直处于忙等待状态,用户进程会一直占用CPU并持续查询,不会进入阻塞态。因为进程没有主动放弃CPU的使用权去等待I/O操作完成,而是一直在执行查询操作。
2. 中断方式
中断方式的工作流程如下:
- 当进程发起I/O请求后,CPU会启动I/O设备进行操作,然后进程会主动放弃CPU的使用权,进入阻塞态。
- I/O设备完成操作后,会向CPU发送中断信号。
- CPU接收到中断信号后,会暂停当前正在执行的进程,转去处理中断事件,唤醒之前因I/O请求而阻塞的进程。
所以,在中断方式下,用户进程会进入阻塞态。
3. DMA方式
DMA(直接内存访问)方式中,DMA控制器负责在内存和I/O设备之间直接进行数据传输,不需要CPU的干预。当进程发起I/O请求后,CPU只需将I/O操作的相关信息(如数据传输的起始地址、传输长度等)设置好,然后就可以继续执行其他任务。在DMA传输过程中,进程不会进入阻塞态,因为它不需要等待I/O操作的完成,而是可以继续执行其他操作。当DMA传输完成后,会向CPU发送中断信号,通知CPU传输完成。
综上所述,会导致用户进程进入阻塞态的I/O方式是中断方式。