linux輕量級進程LWP

很久沒有更新博客了,說下系統環境:

uname -a
Linux REDHAT6 2.6.32-279.el6.x86_64 #1 SMP Wed Jun 13 18:24:36 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux

tomcat的java進程號1243

[root@REDHAT6 proc]# ps -eL|head -1
  PID   LWP TTY          TIME CMD
[root@REDHAT6 proc]# ps -eL|grep java
 1243  1243 pts/0    00:00:00 java
 1243  1244 pts/0    00:00:01 java
 1243  1245 pts/0    00:00:32 java
 1243  1246 pts/0    00:00:00 java
 1243  1247 pts/0    00:00:00 java
 1243  1248 pts/0    00:00:00 java
 1243  1249 pts/0    00:00:03 java
 1243  1250 pts/0    00:00:04 java
 1243  1251 pts/0    00:00:00 java
 1243  1252 pts/0    00:00:08 java
 1243  1253 pts/0    00:00:00 java
 1243  1259 pts/0    00:00:00 java

cd /proc

[root@REDHAT6 proc]# ls -d [0-9]* 
1     1058  11    1158  12    1212  1395  16  2   23   25   27   293  31  35  381  40  44  52   692  729  733  9
10    1068  1111  1166  1207  1243  14    17  20  24   250  28   294  32  36  383  41  49  53   693  730  772
1014  1069  1128  1174  1209  1265  1462  18  21  242  251  29   3    33  37  39   42  5   6    7    731  8
1021  1097  1136  1189  1210  13    15    19  22  243  26   292  30   34  38  4    43  50  687  728  732  83

我們會發現根本看不到1244,1245等pid,別急,

[root@REDHAT6 proc]# ls 1244   
attr       clear_refs       cwd      fdinfo    maps       mountstats  oom_score      root       smaps  status
autogroup  cmdline          environ  io        mem        net         oom_score_adj  sched      stack  syscall
auxv       coredump_filter  exe      limits    mountinfo  numa_maps   pagemap        schedstat  stat   task
cgroup     cpuset           fd       loginuid  mounts     oom_adj     personality    sessionid  statm  wchan
[root@REDHAT6 proc]# ll 1244/exe
lrwxrwxrwx 1 root root 0 11月  6 11:27 1244/exe -> /usr/local/jdk1.6.0_45/bin/java

看到了吧,雖然看不到1244,但是顯示的內容其實就是1243的內容,本質上1244就是LWP進程號,linux的線程其實是LWP輕量級進程模擬出來的。

同時我們也可以理解,linux下最大進程數限制同時也對線程起了作用。如果要增大最大線程數,那就要增大最大進程數。

[root@REDHAT6 proc]# cat /etc/security/limits.d/90-nproc.conf 
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.

*          soft    nproc     1024


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章