Hi Iman.. > init_task.signal->rlim[RLIMIT_NPROC].rlim_cur = max_threads/2; > why ? I see that too.... IMHO there are two number here, they are current and maximum limit. Maximum limit is set, so that the max number of process can still be changed, but not more than rlim_max. But, by setting rlim_cur equal to rlim_max (which is max_threads/2), we can conclude that maximum number of process is "locked" at max_threads/2, it can't go higher anymore. Perhaps anyone can CMIIW... regards, Mulyadi -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/