linux - 什么是抢占/什么是可抢占内核?到底有什么好处呢?

标签 linux operating-system kernel preemption

用你自己的话解释一下,什么是抢占,它对(linux)内核意味着什么?

拥有可抢占内核的优点和缺点是什么?

最佳答案

抢占式多任务 - 在单个处理器上运行多个进程/线程,当实际上每个都被分配了小的多路复用时间片来运行时,创造了它们同时运行的错觉。当一个进程被调度为不执行时,它被“抢占”并且等待下一个时间片运行。

抢占式内核是可以在执行代码(例如响应系统调用)的过程中被中断的内核,以执行其他操作并运行其他线程,可能是那些不在内核中的线程。

抢占式内核的主要优点是系统调用不会阻塞整个系统。如果一个系统调用需要很长时间才能完成,那么这并不意味着内核在这段时间内不能做任何其他事情。 主要缺点是这会给内核代码带来更多的复杂性,必须处理更多的最终情况,执行更细粒度的锁定或使用无锁结构和算法。

关于linux - 什么是抢占/什么是可抢占内核?到底有什么好处呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/817059/

相关文章:

linux - 单个对等节点可以运行 2 个不同的链码吗

java - 使用java的引导加载程序

java - Java可以访问操作系统中的搜索文件系统功能吗?

c - Linux内核链表和 'typeof'错误

c - 如何从内核板损坏报告中获取信息?

python - 使用多个键值连接两个不同的数据集

linux - Golang 中的缓冲区问题

kernel - 杀死 OpenCL 内核

python - 如何在 python tcp 套接字中获取 IP ID、SEQ ID、ACK ID?

linux - OS如何选择下一个要在CPU中运行的进程?