gpt4 book ai didi

Unix 进程图困惑

转载 作者:行者123 更新时间:2023-12-01 04:56:40 25 4
gpt4 key购买 nike

enter image description here

你能告诉我 Unix 过程图中的两个红色箭头有什么区别吗?
为什么被抢占的进程直接进入 User Running 而不重新调度?我不太明白。为什么 Preempted 和 Ready to Run In Memery 用虚线连接?
提前致谢。

最佳答案

被抢占的进程已准备好在内存中运行,这就是为什么在此图中的“被抢占”和“准备好在内存中运行”状态之间有一条虚线。 CPU 密集型进程通常在整个时间片内工作并使用 CPU,直到硬件级别的计时器滴答触发并导致内核抢占该进程。这不会使进程准备好运行,因为在抢占进程的行为中,内核保存了上下文切换所需的所有数据结构。

但是,被抢占的进程不一定准备好在用户模式下运行。相反,内核可能会抢占自己,因为内核在网络数据包到达、磁盘读取完成、计时器滴答触发或某些其他事件导致抢占时正在做一些工作。如果进程在被抢占时最初在用户模式下运行(我在第一段中描述的情况),那么只要调度程序决定它应该再次运行,它就会返回到用户模式。那是最左边的红色箭头。另一方面,如果进程在内核模式下运行时被抢占,则只要调度程序决定它应该再次运行,它就会返回内核模式。那是另一个红色箭头。

关于Unix 进程图困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10158528/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com