home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 June / PCWorld_2005-06_cd.bin / software / vyzkuste / firewally / firewally.exe / framework-2.3.exe / resource.h < prev    next >
C/C++ Source or Header  |  2004-01-30  |  2KB  |  77 lines

  1. /* sys/resource.h
  2.  
  3.    Copyright 1997, 1998, 2000, 2001 Red Hat, Inc.
  4.  
  5. This file is part of Cygwin.
  6.  
  7. This software is a copyrighted work licensed under the terms of the
  8. Cygwin license.  Please consult the file "CYGWIN_LICENSE" for
  9. details. */
  10.  
  11. #ifndef _SYS_RESOURCE_H_
  12. #define _SYS_RESOURCE_H_
  13.  
  14. #include <sys/time.h>
  15.  
  16. #ifdef __cplusplus
  17. extern "C" {
  18. #endif
  19.  
  20. #define RLIMIT_CPU    0        /* CPU time in seconds */
  21. #define RLIMIT_FSIZE    1        /* Maximum filesize */
  22. #define RLIMIT_DATA    2        /* max data size */
  23. #define RLIMIT_STACK    3        /* max stack size */
  24. #define RLIMIT_CORE    4        /* max core file size */
  25. #define RLIMIT_NOFILE    5        /* max number of open files */
  26. #define RLIMIT_OFILE    RLIMIT_NOFILE    /* BSD name */
  27. #define RLIMIT_AS    6        /* address space (virt. memory) limit */
  28.  
  29. #define RLIMIT_NLIMITS  7        /* upper bound of RLIMIT_* defines */
  30. #define RLIM_NLIMITS    RLIMIT_NLIMITS
  31.  
  32. #define RLIM_INFINITY    (0xffffffffUL)
  33. #define RLIM_SAVED_MAX    RLIM_INFINITY
  34. #define RLIM_SAVED_CUR    RLIM_INFINITY
  35.  
  36. typedef unsigned long rlim_t;
  37.  
  38. struct rlimit {
  39.     rlim_t    rlim_cur;
  40.     rlim_t    rlim_max;
  41. };
  42.  
  43. #define    RUSAGE_SELF    0        /* calling process */
  44. #define    RUSAGE_CHILDREN    -1        /* terminated child processes */
  45.  
  46. struct rusage {
  47.     struct timeval ru_utime;    /* user time used */
  48.     struct timeval ru_stime;    /* system time used */
  49.     long ru_maxrss;
  50.     long ru_ixrss;               /* XXX: 0 */
  51.     long ru_idrss;               /* XXX: sum of rm_asrss */
  52.     long ru_isrss;               /* XXX: 0 */
  53.     long ru_minflt;              /* any page faults not requiring I/O */
  54.     long ru_majflt;              /* any page faults requiring I/O */
  55.     long ru_nswap;               /* swaps */
  56.     long ru_inblock;             /* block input operations */
  57.     long ru_oublock;             /* block output operations */
  58.     long ru_msgsnd;              /* messages sent */
  59.     long ru_msgrcv;              /* messages received */
  60.     long ru_nsignals;            /* signals received */
  61.     long ru_nvcsw;               /* voluntary context switches */
  62.     long ru_nivcsw;              /* involuntary " */
  63. #define ru_last         ru_nivcsw
  64. };
  65.  
  66. int getrlimit (int __resource, struct rlimit *__rlp);
  67. int setrlimit (int __resource, const struct rlimit *__rlp);
  68.  
  69. int getrusage (int __who, struct rusage *__rusage);
  70.  
  71. #ifdef __cplusplus
  72. }
  73. #endif
  74.  
  75. #endif
  76.  
  77.