123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- #include <stdio.h>
- #include <stdlib.h>
- #include <sys/resource.h>
- int
- main (int argc, char **argv)
- {
- struct rusage buf;
- if (argc > 1)
- {
- system (argv[1]);
- if (getrusage (RUSAGE_CHILDREN, &buf ))
- {
- perror ("getrusage");
- return 1;
- }
- }
- else
- {
- if (getrusage (RUSAGE_SELF, &buf ))
- {
- perror ("getrusage");
- return 1;
- }
- }
- printf ("ru_utime = %ld.%06ld\n",
- buf.ru_utime.tv_sec, buf.ru_utime.tv_usec);
- printf ("ru_stime = %ld.%06ld\n",
- buf.ru_stime.tv_sec, buf.ru_stime.tv_usec);
- printf ("ru_maxrss = %ld\n", buf.ru_maxrss );
- printf ("ru_ixrss = %ld\n", buf.ru_ixrss );
- printf ("ru_idrss = %ld\n", buf.ru_idrss );
- printf ("ru_isrss = %ld\n", buf.ru_isrss );
- printf ("ru_minflt = %ld\n", buf.ru_minflt );
- printf ("ru_majflt = %ld\n", buf.ru_majflt );
- printf ("ru_nswap = %ld\n", buf.ru_nswap );
- printf ("ru_inblock = %ld\n", buf.ru_inblock );
- printf ("ru_oublock = %ld\n", buf.ru_oublock );
- printf ("ru_msgsnd = %ld\n", buf.ru_msgsnd );
- printf ("ru_msgrcv = %ld\n", buf.ru_msgrcv );
- printf ("ru_nsignals= %ld\n", buf.ru_nsignals );
- printf ("ru_nvcsw = %ld\n", buf.ru_nvcsw );
- printf ("ru_nivcsw = %ld\n", buf.ru_nivcsw );
- fprintf (stderr, "ru_utime ru_stime ru_minflt ru_nccsw ru_nivcsw\n");
- fprintf (stderr, "%ld.%06ld %ld.%06ld %5ld %5ld %5ld\n");
- return 0;
- }
- /* Codesnippet for debugging in random.c. */
- #if 0
- static void
- collect_rusage_stats (struct rusage *rb)
- {
- static int idx;
- static struct rusage buf[100];
- if (!rb)
- {
- int i;
- fprintf (stderr, "ru_utime ru_stime ru_minflt ru_nvcsw ru_nivcsw\n");
- for (i=0; i < idx; i++)
- fprintf (stderr, "%ld.%06ld %ld.%06ld %5ld %5ld %5ld\n",
- buf[i].ru_utime.tv_sec, buf[i].ru_utime.tv_usec,
- buf[i].ru_stime.tv_sec, buf[i].ru_stime.tv_usec,
- buf[i].ru_minflt,
- buf[i].ru_nvcsw,
- buf[i].ru_nivcsw);
- }
- else if (idx < DIM(buf))
- {
- buf[idx++] = *rb;
- }
- }
- #endif
- /*
- void
- _gcry_random_dump_stats()
- {
- @@ -233,8 +261,11 @@
- rndstats.naddbytes, rndstats.addbytes,
- rndstats.mixkey, rndstats.ngetbytes1, rndstats.getbytes1,
- rndstats.ngetbytes2, rndstats.getbytes2 );
- +
- + collect_rusage_stats (NULL);
- }
- ========
- getrusage (RUSAGE_SELF, &buf );
- + collect_rusage_stats (&buf);
- add_randomness( &buf, sizeof buf, 1 );
- memset( &buf, 0, sizeof buf );
- }
- */
|