LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2245|回复: 6

再问如何增加linux的最大线程数?

[复制链接]
发表于 2003-5-9 17:30:57 | 显示全部楼层 |阅读模式
针对redhat Linux 8.0/9.0两个版本。
经过了解,找到两个方法,但都不完全,请大家给我补充一下:

1,ulimit -s 2048(把stack减小到2048k)
减小stack的大小,可增加线程数,线程数是大了,但stack又变小了,程序申请mem会受限吧!还有这个方子,我只登陆后用shell命令激活,还只对本用户,问:怎样才能在开机后未登陆就生效?加到sysctl.conf吗,怎么加?

2,重新编译glibc,在单用户模式替换libpthread.so文件。问要修改glibc源码中的那个文件中的那个代码?我没有找见呀?听说要编译十几个小时,是吗?

谁有编译好的libpthread.so文件对redhat Linux 8.0/9.0两个版本的,给我一份行吗?
发表于 2003-5-9 20:49:56 | 显示全部楼层
发表于 2003-5-9 22:18:48 | 显示全部楼层

回复:

呵呵,帮不上忙别怪我哦
 楼主| 发表于 2003-5-12 09:18:52 | 显示全部楼层

谢谢你,但不是我要的。

谢谢你,但不是我要的。
发表于 2003-5-12 09:44:23 | 显示全部楼层
在全局段描述表GDT中要有一个表项指向这个段的起始地址,并说明该段的长度
以及其他的一些参数。除此之外,每个进程还有一个TSS结构(任务状态段)也
是一样。所以,每个进程都要在全局段描述表GDT中占据两个表项。段寄存器中
用作GDT表下标的位段宽度是13位,所以GDT中可以有8192个描述项。除了一些
系统的开销(例如GDT中的第2项和第3项分别用于内核的代码段和数据段,第4
项和第5项永远用于当前进程的代码段和数据段,第1项永远是0,等等)以外,
尚有8180个表项可供使用,所以理论上系统中最大的进程数量是4090。

(摘自:内核情景分析)
 楼主| 发表于 2003-5-12 10:52:02 | 显示全部楼层

谢谢有影关注!

谢谢有影关注!
有什么方子,把默认的最大线程数256搞大一些,大到几千个?
发表于 2003-5-14 00:57:56 | 显示全部楼层
well,我认为linux的线程数不用手动的去改,但一定不止256个。
我也是最近读到这方面的书籍,不是很清楚GLIBC的代码,另外,自
己编译一个GLIBC要不了那么久,还没有GCC久。(如果不是非常老的
机器)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表