3

操作系统相关的问题不知道我是否可以在这里问

但我想我会在这个论坛上得到适当的解释

当一个进程在用户上下文中执行时......内核上下文中的更高优先级进程不会一直阻塞用户上下文中的进程......

对我来说是朦胧的……概念

……

4

4 回答 4

3

操作系统中有两种主要的调度器,抢占式调度器和非抢占式调度器。

非抢占式调度程序的行为会像您想象的那样,具有更高权限和更高优先级的进程将继续使用 cpu 直到它完成或直到它阻塞(例如在互斥锁上或调用 yield 显式释放 cpu 以便调度另一个。)

但是非抢占式调度器很少见,linux调度器不是那种。它使用时间片让进程在取消调度之前工作一小段时间,它还包括优先级但保持以较低优先级调度进程,你应该看看这篇 linux scheduler article

于 2009-04-17T08:41:49.550 回答
2

这篇 Stackoverflow 帖子有一个讨论,其中包括对内核模式如何工作的简要说明以及对一些行话的解释。特别是查看标题为“内核与用户模式的简要介绍”的部分。这可能有助于阐明您的问题。

于 2009-04-17T08:48:36.727 回答
1

内核模式下的进程也可以在达到量程时被抢占。

维基百科:抢占

于 2009-04-17T08:00:51.117 回答
1

http://en.wikipedia.org/wiki/Ring_0

于 2009-04-17T08:01:13.610 回答