【问题标题】:What does pthread_create in linux?linux中的pthread_create是什么?
【发布时间】:2013-01-13 19:44:02
【问题描述】:

我是操作系统的新手, 那么,我想了解 Linux 中的 pthread_create(标准化接口)吗? 它创建什么类型的线程?用户级线程还是内核级线程?证明合法 !

【问题讨论】:

  • @Bob,我在那个所谓的骗子中找不到任何提到 Linux 的东西。 pthreads 是用户模式还是内核模式完全取决于实现。
  • @paxdiablo:你是对的;我删除了我的反对票。
  • 首先,“用户级别”或“内核级别”线程的区别并不是很重要。很难理解什么是线程以及如何对它们进行编码。它们在“用户级别”或“内核级别”的实现是一个(重要的)实现细节。

标签: linux linux-kernel operating-system pthreads


【解决方案1】:

Linux 中的 PThreads 为您提供内核级线程,而不是用户级线程。

如果您查看 pthreads 的手册页,这很明显:(查找单词 Both):

两种线程实现都使用 Linux clone(2) 系统调用。

在此上下文中,“Both”一词指的是现在不受支持的 LinuxThreads 实现,以及 glibc 中较新的 NPTL(本机 POSIX 线程库)。

另请参阅this answer,了解 Linux 下内核线程调度的工作原理。

【讨论】:

    【解决方案2】:

    还可以阅读一个很好的 Posix 线程教程,例如 this

    阅读一本关于advanced linux programming 的好书也很重要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-29
      • 2021-07-24
      • 2010-11-24
      • 2018-05-26
      • 1970-01-01
      • 1970-01-01
      • 2022-01-03
      相关资源
      最近更新 更多