getrusage

Autres langues

Langue: ja

Autres versions - même langue

Version: 2004-11-16 (openSuse - 09/10/07)

Section: 2 (Appels système)

̾Á°

getrusage - »ñ¸»¤Î»ÈÍÑÎ̤ò¼èÆÀ¤¹¤ë

½ñ¼°

#include <sys/time.h>
#include <sys/resource.h>

int getrusage(int who, struct rusage *usage);

ÀâÌÀ

getrusage() ¤Ï¸½ºß¤Î»ñ¸» (resource) ¤Î»ÈÍÑÎÌ (usage) ¤òÊÖ¤¹¡£ who ¤Ë¤Ï RUSAGE_SELF ¤« RUSAGE_CHILDREN ¤Î¤É¤Á¤é¤«¤ò»ØÄꤹ¤ë¡£ Á°¼Ô¤Ï¸Æ¤Ó½Ð¤·¤¿¥×¥í¥»¥¹¤Î¥ê¥½¡¼¥¹»ÈÍÑÎ̤òÍ׵ᤷ¡¢ ¸å¼Ô¤Ï¸Æ¤Ó½Ð¤·¤¿¥×¥í¥»¥¹¤Î»Ò¶¡¤Î¤¦¤Á ½ªÎ»¤·¤ÆÂÔ¤Á¾õÂ֤ˤ¢¤ë¥×¥í¥»¥¹¤Î»ÈÍÑÎ̤òÍ׵᤹¤ë¡£


struct rusage {

    struct timeval ru_utime; /* »ÈÍѤµ¤ì¤¿¥æ¡¼¥¶¡¼»þ´Ö */

    struct timeval ru_stime; /* »ÈÍѤµ¤ì¤¿¥·¥¹¥Æ¥à»þ´Ö */

    long   ru_maxrss;        /* RAM ¾å¤Ë¸ºß¤¹¤ë²¾ÁÛ¥Ú¡¼¥¸¤Î¥µ¥¤¥º

                               (resident set size) ¤ÎºÇÂçÃÍ */

    long   ru_ixrss;         /* ¶¦Í­¥á¥â¥ê¤Î¹ç·×¥µ¥¤¥º */

    long   ru_idrss;         /* Èó¶¦Í­¥Ç¡¼¥¿¤Î¹ç·×¥µ¥¤¥º */

    long   ru_isrss;         /* Èó¶¦Í­¥¹¥¿¥Ã¥¯¤Î¹ç·×¥µ¥¤¥º */

    long   ru_minflt;        /* ÍøÍѤµ¤ì¤¿¥Ú¡¼¥¸ */

    long   ru_majflt;        /* ¥Ú¡¼¥¸¥Õ¥©¡¼¥ë¥È */

    long   ru_nswap;         /* ¥¹¥ï¥Ã¥× */

    long   ru_inblock;       /* ¥Ö¥í¥Ã¥¯ÆþÎÏÁàºî */

    long   ru_oublock;       /* ¥Ö¥í¥Ã¥¯½ÐÎÏÁàºî */

    long   ru_msgsnd;        /* Á÷¿®¤µ¤ì¤¿¥á¥Ã¥»¡¼¥¸ */

    long   ru_msgrcv;        /* ¼õ¿®¤µ¤ì¤¿¥á¥Ã¥»¡¼¥¸ */

    long   ru_nsignals;      /* ¼õ¿®¤µ¤ì¤¿¥·¥°¥Ê¥ë */

    long   ru_nvcsw;         /* °Õ¿Þ¤·¤¿¥³¥ó¥Æ¥­¥¹¥ÈÀÚ¤êÂؤ¨ */

    long   ru_nivcsw;        /* °Õ¿Þ¤·¤Ê¤¤¥³¥ó¥Æ¥­¥¹¥ÈÀÚ¤êÂؤ¨ */

};

ÊÖ¤êÃÍ

À®¸ù¤·¤¿¾ì¹ç¤Ï 0 ¤¬ÊÖ¤µ¤ì¤ë¡£¥¨¥é¡¼¤Î¾ì¹ç¤Ï -1 ¤¬ÊÖ¤µ¤ì¡¢ errno ¤ËŬÀÚ¤ÊÃͤ¬ÀßÄꤵ¤ì¤ë¡£

¥¨¥é¡¼

EFAULT
usage ¤¬¥¢¥¯¥»¥¹²Äǽ¤Ê¥¢¥É¥ì¥¹¶õ´Ö¤Î³°¤ò»Ø¤·¤Æ¤¤¤ë¡£
EINVAL
who ¤¬Ìµ¸ú¤Ç¤¢¤ë¡£

½àµò

SVr4, 4.3BSD. POSIX.1-2001 ¤Ï getrusage() ¤òµ¬Äꤷ¤Æ¤¤¤ë¤¬¡¢µ¬Äꤷ¤Æ¤¤¤ë¥Õ¥£¡¼¥ë¥É¤Ï ru_utime ¤È ru_stime ¤À¤±¤Ç¤¢¤ë¡£

Ãí°Õ

º£Æü¤Ç¤Ï <sys/time.h> ¤ò¥¤¥ó¥¯¥ë¡¼¥É¤¹¤ëɬÍפϤʤ¤¤¬¡¢ ¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤ª¤±¤Ð°Ü¿¢À­¤¬Áý¤¹¡£ (¼ÂºÝ struct timeval ¤Ï <sys/time.h> ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£)

2.6.9 ¤è¤êÁ°¤Î¥Ð¡¼¥¸¥ç¥ó¤Î Linux ¥«¡¼¥Í¥ë¤Ç¤Ï¡¢ SIGCHLD ¤Î½èÍý¤¬ SIG_IGN ¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¤È¡¢ »Ò¥×¥í¥»¥¹¤Î¥ê¥½¡¼¥¹»ÈÍÑÎ̤¬ RUSAGE_CHILDREN ¤ÇÊÖ¤µ¤ì¤ëÃͤ˼«Æ°Åª¤Ë´Þ¤á¤é¤ì¤ë¡£ ¤·¤«¤· POSIX.1-2001 ¤Ç¤Ï¡¢¤³¤ì¤òÌÀ³Î¤Ë¶Ø»ß¤·¤Æ¤¤¤ë¡£ ¤³¤Î½àµò¤·¤Æ¤¤¤Ê¤«¤Ã¤¿ÅÀ¤Ï¡¢Linux 2.6.9 °Ê¹ß¤Ç²þÀµ¤µ¤ì¤¿¡£

¾åµ­¤Î¹½Â¤ÂÎ¤Ï 4.3BSD Reno ¤Î¤â¤Î¤òºÎÍѤ·¤¿¡£ Linux ¤Ç¤ÏÁ´¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤¬°ÕÌ£¤ò»ý¤Ä¤È¤¤¤¦¤ï¤±¤Ç¤Ï¤Ê¤¤¡£ Linux 2.4 ¤Ç¤Ï¡¢¥Õ¥£¡¼¥ë¥É ru_utime, ru_stime, ru_minflt, ru_majflt ¤Î¤ß¤¬¥á¥ó¥Æ¥Ê¥ó¥¹¤µ¤ì¤Æ¤¤¤ë¡£ Linux 2.6 °Ê¹ß¤Ç¤Ï ru_nvcsw, ru_nivcsw ¤â¥á¥ó¥Æ¥Ê¥ó¥¹¤µ¤ì¤Æ¤¤¤ë¡£

´ØÏ¢¹àÌÜ

getrlimit(2), times(2), wait(2), wait4(2)