c - C 内核级多线程

标签 c multithreading

据我所知C language没有 multithreading 的直接显式框架喜欢 Java ,那么内核级程序,比如系统驱动和操作系统功能是怎样的multithreaded而它们写在C中?如何multithreading在较低级别受支持。

最佳答案

多线程是一种抽象。事实上,您不能执行比核心数量更多的指令(​​在一定程度上有异常(exception))。相反,它是通过调度和取消调度线程和/或进程来实现的。

基本上,为了获得看起来像多线程的东西,您希望能够跟踪两个不同的指令指针并共享内存。在内核中,您只是降低了一个抽象级别。

关于c - C 内核级多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12049008/

相关文章:

c - 多线程编程

c - 在 C 中尝试 catch 语句

C 运行时错误 : Dynamically Allocating Memory in a For Loop

c - C 中两个程序之间的管道

multithreading - 在非阻塞 IO 中——IO 到底是什么?

c# - 跨线程交互C#

char [] 作为 C 中的返回类型

c - 将 union 作为宏中的两个参数之一传递

c# - 我的方法中有多少个线程?

c# - WaitHandle.WaitAny 每次调用时都会分配 WaitHandle[] 的副本