操作系统中的未解之谜

当一个进程从就绪态进入运行态,在执行原语操作申请到io设备后,该进程是进入阻塞态吗?
如果时那进程时怎么让自己进入阻塞态的?就比如在记录型信号量中 进行wait原语操作时,只有当前资源(value)<0的时候才会自我阻塞(使用block原语).
求解析一下。想了半天,搜了半天也没搜到

当一个进程从就绪态进入运行态,在执行原语操作申请到io设备后,该进程会因为等待I/O完成而进入阻塞态。此时,进程将不再消耗CPU时间且处于无法继续执行的状态。

进程可以通过系统调用发出 I/O 请求,以进入阻塞态等待相关的I/O操作完成。例如,可以使用read()函数请求从文件或其他I/O设备读取数据,当I/O操作完成时,将触发中断并唤醒进程。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^