使用`pthread_create`创建用户级线程或内核级线程?

时间:2014-10-04 00:17:00

标签: c multithreading operating-system

问题:如何使用pthread_create创建用户级线程或内核级线程?

注意:我查看了this linkpthread_create的文档,但我没有找到任何可以指定的参数来告诉操作系统创建用户级别线程或内核级线程。因此,如果没有参数,那么默认情况下使用pthread_create创建的线程是用户级别还是内核级别?

任何信息或提示都会很棒。

感谢。

1 个答案:

答案 0 :(得分:5)

pthread_create只需创建一个帖子。不是"内核级线程"或者"用户级线程"。后者是你可以用来讨论线程实现的描述,但就POSIX线程而言,没有实际的方法来实现线程,而没有每个线程都有一些属于内核的相应调度/状态对象。这是因为每个线程具有独立的信号掩码,待处理信号等,并且可以在各种操作中被独立地阻止,这些操作允许其他线程在被阻塞时前进。所以在某种意义上,你可以说pthread_create创建"内核级线程"。这无疑是所有主要实际实施中的机制。