gpt4 book ai didi

linux - 为什么在 Linux 中做 I/O 是不间断的?

转载 作者:太空狗 更新时间:2023-10-29 12:40:33 25 4
gpt4 key购买 nike

背后的原理是什么?如果允许执行 I/O 的进程处理信号,会有什么不良后果?

最佳答案

既然我已经阅读了莫里斯·巴赫 (Maurice Bach) 的《The Design of the Unix Operating Systems》一书,那么让我自己来回答这个问题。

简而言之,让I/O不间断就是为了让I/O任务尽快完成,不受信号干扰。

我从书中得到的一些相关知识:

  1. “不间断”一词应指“不间断 sleep ”。当进程处于不可中断 sleep 状态时,它不能被信号唤醒,也不会处理信号。
  2. 进程在以下情况下处理信号:它正在内核模式下运行,即将返回用户模式。 b. sleep 可中断时即将进入和离开 sleep 状态。
  3. 当 sleep 进程被信号唤醒时会发生什么?它会处理信号,默认操作是退出进程。当进程等待 I/O 完成时,您当然不希望它过早退出。

关于linux - 为什么在 Linux 中做 I/O 是不间断的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46040913/

25 4 0
文章推荐: javascript - ERROR 错误 : Uncaught (in promise), 无法匹配任何路由。网址段
文章推荐: android - 连接时自动启动 MTK 设备(非三星)
文章推荐: html - 为什么 的边距不会与相邻的

合并?