unix/linux 系统 进程资源限制参数

面列表为unix/linux 系统单进程资源参数限制,服务器开发中 RLIMIT_CORE 参数用得多(当需要产生core dump时)。

 

代码片段:

 

  1.               memset(&limit, 0, sizeof(limit));  
  2.     limit.rlim_cur = RLIM_INFINITY;  
  3.     limit.rlim_max = RLIM_INFINITY;  
  4.     if(setrlimit(RLIMIT_CORE, &limit)) {  
  5.     spd_log(LOG_WARNING, " unable to disable core size res limit %s\n", strerror(errno));  
  6.     }  
  7.   
  8.     if(getrlimit(RLIMIT_CORE, &limit)) {  
  9.     spd_log(LOG_WARNING, "unable to check rlimit of fd%s\n", strerror(errno));  
  10. }  


 

 

名称 意义
RLIMIT_AS 进程总共可用的内存大小的最大值
RLIMIT_CORE core文件的最大尺寸,如果为0说明不能创建core文件
RLIMIT_CPU CPU时间的最大值(单位:秒)
RLIMIT_DATA 数据段大小的最大值
RLIMIT_FSIZE 创建文件的大小的最大值
RLIMIT_LOCKS 进程可建立的文件锁的数量的最大值
RLIMIT_MEMLOCK 进程中使用mlock锁定内存的最大尺寸
RLIMIT_NOFILE 进程中文件的打开数量的最大值
RLIMIT_NPROC 每个real user id的子进程数量的最大值
RLIMIT_RSS 最大常驻存储区大小
RLIMIT_SBSIZE socket缓冲的大小的最大值
RLIMIT_STACK 栈的最大尺寸
RLIMIT_VMEM =RLIMIT_AS

 

 

平台支持

 


限制

FreeBSD 5.2.1

Linux 2.4.22 Mac OS X 10.3 Solaris 9
RLIMIT_AS N   N  
RLIMIT_CORE        
RLIMIT_CPU        
RLIMIT_DATA        
RLIMIT_FSIZE        
RLIMIT_LOCKS N   N N
RLIMIT_MEMLOCK       N
RLIMIT_NOFILE        
RLIMIT_NPROC       N
RLIMIT_RSS       N
RLIMIT_SBSIZE   N N N
RLIMIT_STACK        
RLIMIT_VMEM   N N

猜你喜欢

转载自jlins.iteye.com/blog/1489965