Operating system 先发制人&;非抢占式内核与抢占式内核&;非抢占式调度
我正在努力理解抢占式和非抢占式内核之间的区别,以及抢占式和非抢占式调度之间的区别 来自操作系统概念(第九版),Silberschatz,Galvin和Gagne: 抢占式内核是内核允许进程在内核模式下运行时被删除和替换的内核 非抢占式内核不允许抢占以内核模式运行的进程;内核模式进程将一直运行,直到退出内核模式、阻塞或自动放弃对CPU的控制 在非抢占式调度下,一旦CPU分配给进程,进程将保持CPU,直到通过终止或切换到等待状态释放CPU。-在我看来,这与非preemeptive内核的描述完全相同 先发制人调度发生在这两种情况下(来自同一本书):Operating system 先发制人&;非抢占式内核与抢占式内核&;非抢占式调度,operating-system,kernel,scheduling,preemptive,Operating System,Kernel,Scheduling,Preemptive,我正在努力理解抢占式和非抢占式内核之间的区别,以及抢占式和非抢占式调度之间的区别 来自操作系统概念(第九版),Silberschatz,Galvin和Gagne: 抢占式内核是内核允许进程在内核模式下运行时被删除和替换的内核 非抢占式内核不允许抢占以内核模式运行的进程;内核模式进程将一直运行,直到退出内核模式、阻塞或自动放弃对CPU的控制 在非抢占式调度下,一旦CPU分配给进程,进程将保持CPU,直到通过终止或切换到等待状态释放CPU。-在我看来,这与非preemeptive内核的描述完全相同
谢谢大家! 您面临的问题是这些术语没有标准意义。我怀疑你的书是从某个特定操作系统的角度使用它们的(哪一个?-Je ne sais quois)。如果你搜索过互联网,你肯定会发现相互矛盾的解释 例如,抢占式调度可能意味着:
- 在我看来,这与非preemeptive内核的描述完全相同
操作系统可以强制切换进程,除非进程在内核模式下执行以处理异常(也可能在处理中断时无法切换进程)。
基本上,我想要的是对这4个术语的明确澄清。
-关于这些术语的堆栈溢出问题有很多。究竟什么是不清楚的?非抢占式调度和非抢占式内核的区别在于,非抢占式内核允许在进程处于用户模式时抢占进程,但非抢占式调度不允许。找一本更好的书。您在上面引用的“抢占式调度”是一堆带有误导性的术语,它们被标记在一起:(@MartinJames:Nah,它们不是术语。它们是关键字,实际上有意义。不幸的是,您对其余部分的看法完全正确。@Olaf没有有效线程状态及其含义的列表(即操作系统),。他们的口碑比钥匙更响亮:)@MartinJames:Meh,他需要清晰的定义/规范。我们有人工智能,让他们来处理这个想法,我们在facebook上,推特tinder来烧掉原因。谢谢!你说的4个理论组合是有道理的。对于第二种组合-非抢占式调度抢占式内核,这种组合不存在,因为要拥有抢占式内核,您需要拥有抢占式调度权?否则,就没有意义了。