shijiang1130 发表于 2007-11-11 09:48

进程管理、进程控制 solaris

进程管理、进程控制
  
  solaris有一组PROC工具,处理/PROC信息;/proc/nnn 显示了process nnn 的信息;所以/proc/*可以表示为系统的所有进程;对每个进程都有一组资源限制,其中一些可以用getrlimit和setrlimit函数查询和更改;
  
  solaris:
  
  #include
  
  int getrlimit(int resource, struct rlimit *rlp);
  
  int setrlimit(int resource, const struct rlimit *rlp);
  
  1. RLIM_CORE(SVR4及4.3+BSD)core文件的最大字节数,若其值为0则阻止创建 core 文件。?
  
  (2)RLIMIT_CPU(SVR4及4.3+BSD)CPU时间的最大量值(秒),当超过此软限止时,向该进程发送SIGXCPU信号。?
  
  (3)RLIMIT_DATA(SVR4及4.3+BSD)数据段的最大字节长度。初始化数据、非初始化数据以及堆的总和。?
  (4)RLIMIT_FSIZE(SVR4及4.3+BSD)可以创建的一个文件的最大字节长度。当超过此软限制时,则向该进程发送SIGFSZ信号。?
  
  (5)RLIMIT_NOFILE(SVR4)每个进程最多打开的文件数。更改此限制将影响到sysconf函数在参数-sc-OPEN-MAX中返回的值
  
  (6)RLIMIT_NPROC(4.3+BSD)每个实际用户ID所拥有的最大子进程数。更改此限制将影响到sysconf函数在参数;
  
  (7)RLIMIT_STACK(SVR4及4.3+BSD)栈的最大字节长度。
  
  (8)RLIMIT_VMEM(SVR4)可映照地址空间的最大字节长度。这影响到mmap函数。?资源限制影响到调用进程并由其子进程继承。这就意味着为了影响一个用户的所有后续进程 ,需将资源限制设置构造在shell之中。确实,Bourne Shell和Kornshell具有内部ulimit命令,CShell具有内部limit命令。(umask和chdir也必须是shell内部的)。?较早的Bourme Shell,例如由贝克莱提供的一种,不支持ulimit命令。?较新的KornShell的ulimit命令具有-H和-s选择项,以分别检查和修改硬和软的限制;
  
  linux:
  
  #include
  
  #include
  
  #include
  
  int getrlimit (int resource, struct rlimit *rlim);
  
  int getrusage (int who, struct rusage *usage);
  
  int setrlimit (int resource, const struct rlimit *rlim);
  
  
  
  四、cron处理
  
  文件:/var/spool/cron/crontabs/root由
  
  /etc/init.d/cron start启动
  
  /etc/init.d/cron stop关闭
  
  0 0 * * * /usr/local/apache1312/logs/runlog.sh
  
  1-59 * * * * /home/zrh/card/cgi-bin/bin/bbs
  
  20 0 * * * /usr/local/apache1312/logs/ftplog
  
  0 12 * * * /home/zrh/card/cgi-bin/bin/love1
  
  如果有一个程序需要由INFORMIX用户执行,则写在相应路径informix文件中
  
  
  

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/15010/showart_419540.html
页: [1]
查看完整版本: 进程管理、进程控制 solaris