免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 858 | 回复: 0
打印 上一主题 下一主题

linux线程之NPTL [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-29 16:48 |只看该作者 |倒序浏览
   在第11章线程中11.4中讲到Linux的pthread实现是用clone系统调用产生一个与父进程共享一定资源的轻量级子进程来模拟线程。书中的实验代码表明,pthread_create产生的线程有不同的process id,证实了Linux线程实际上是用进程实现。网上的文章谈及Linux线程概念无一例外是这个观点。然后这一切在2.6内核产生了变化,网上的文章已经out了.
   我照着书中代码在fedora 7中用新版的gcc编译,产生出的多个线程却有一样的process id!!!经过翻查资料,原来在2.6版本内核中使用了NPTL线程模型,据说NPTL在大量线程时有较大的性能提升,他的内部实现与传统的LinuxThread有较大的变化。于是乎就有相同的pid这一想象。
   更多关于NPTL可以参考以下链接:
Linux多线程编程和Linux 2.6下的NPTL
http://fanqiang.chinaunix.net/system/linux/2006-07-11/4809.shtml

LinuxThreads和NPTL
http://blog.chinaunix.net/u2/64804/showart_586299.html


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/73519/showart_1096135.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP