免费注册 查看新帖 |

Chinaunix

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

主流linux上的线程模型是用户态线程还是内核态线程还是混合线程?? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-05-10 14:29 |只看该作者 |倒序浏览
请教:

主流linux上的线程模型是用户态线程还是内核态线程还是混合线程??
如redhat EL4 下的NPTL??

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2007-05-10 17:01 |只看该作者
按照通常宣传的
2.6内核采用1:1模型内核线程
EL4是2.6.9内核

论坛徽章:
0
3 [报告]
发表于 2007-05-10 18:51 |只看该作者
请阅读:
UNIX Systems Progamming
Communication, Concurrency and Threads
第三部分,第十二章

论坛徽章:
0
4 [报告]
发表于 2007-05-10 20:03 |只看该作者
原帖由 redac 于 2007-5-10 14:29 发表
请教:

主流linux上的线程模型是用户态线程还是内核态线程还是混合线程??
如redhat EL4 下的NPTL??

这样就可以知道用的是什么线程库了,比如nptl或者linuxthreads
ailantian@vax:~/mypg$ getconf GNU_LIBPTHREAD_VERSION
NPTL 2.3.6
ailantian@vax:~/mypg$

比较新的都是nptl,linux2.4就支持内核线程了,nptl据说调度的单位是线程,而不是进程了,进程模型好像是1:1的。
可以看看glibc的代码。

其实个人感觉你的问法有问题,
线程本身就分好几种,比如用户线程,内核线程,一般是两者都有,
如果是1:1模型的,那么一个用户线程对应一个内核线程。
不知道我说的有无问题。

论坛徽章:
0
5 [报告]
发表于 2007-05-10 20:07 |只看该作者

回复 4楼 ailantian 的帖子

调度工作在内核空间完成的,称为内核线程。反之就是用户线程。
http://www.google.com/search?hl= ... B%E5%AE%9E%E7%8E%B0

论坛徽章:
0
6 [报告]
发表于 2007-05-10 22:57 |只看该作者
需要用户态线程的话可以考虑GNU的libpth

论坛徽章:
0
7 [报告]
发表于 2007-05-11 09:23 |只看该作者
原帖由 langue 于 2007-5-10 18:51 发表
请阅读:
UNIX Systems Progamming
Communication, Concurrency and Threads
第三部分,第十二章


langue 兄:
  我正是读了你说的那本书才有这个疑问的, 它好象并没有说linux下线程的模型情况
另外, 看以前的帖, JohnBull兄好象说过freebsd上是用户态的线程模型... ...

论坛徽章:
0
8 [报告]
发表于 2007-05-11 12:27 |只看该作者
原帖由 redac 于 2007-5-11 09:23 发表


langue 兄:
  我正是读了你说的那本书才有这个疑问的, 它好象并没有说linux下线程的模型情况
另外, 看以前的帖, JohnBull兄好象说过freebsd上是用户态的线程模型... ...


我不是很懂,但是linux调度的单位确实是一个task,而且一个线程也对应一个task解构。
线程拥有调度所需的所有信息,
task解构,tgid,exit_group
都说明线程不是纯用户态的。

论坛徽章:
0
9 [报告]
发表于 2007-05-12 00:49 |只看该作者
通用做法是将每个用户级线程map到一个核心进程,这样可以支持SMP调度。和用户调度。Solairs也是这样

论坛徽章:
0
10 [报告]
发表于 2007-05-13 14:52 |只看该作者
原帖由 redac 于 2007-5-11 09:23 发表

另外, 看以前的帖, JohnBull兄好象说过freebsd上是用户态的线程模型... ...


呵呵,误会了。FreeBSD上两种都有。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP