Systemcall um CPU Zeiten auszulesen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
burn3r
Beiträge: 15
Registriert: 27.12.2005 17:37:24
Wohnort: Reutlingen/Albstadt
Kontaktdaten:

Systemcall um CPU Zeiten auszulesen

Beitrag von burn3r » 09.03.2006 14:13:22

Hiho,

ich bin auf der suche nach nem Systemcall, der mir die System, User und Idle Zeit der CPU(s) gibt.

Ich hab mal nen struct in den manpages gefunden, aber ich komm da nichtmehr drauf wo das war.

Also im Prinzip brauch ich etwas, das mir wie /proc/stat die Werte liefert.

thx schonmal

yeti

Beitrag von yeti » 09.03.2006 14:39:10

Vielleicht meintest Du ...

Code: Alles auswählen

man 2 times

burn3r
Beiträge: 15
Registriert: 27.12.2005 17:37:24
Wohnort: Reutlingen/Albstadt
Kontaktdaten:

Beitrag von burn3r » 09.03.2006 19:27:15

hm,nee. times ist es nicht. Ist nicht ganz so ausführlich.

trotzdem Danke

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Beitrag von cosmac » 09.03.2006 19:58:20

hi,
also gut, naechster Versuch :)
sysinfo(2) liefert:

Code: Alles auswählen

struct sysinfo {
                   long uptime;             /* Seconds since boot */
                   unsigned long loads[3];  /* 1, 5, and 15 minute load averages */
                   unsigned long totalram;  /* Total usable main memory size */
                   unsigned long freeram;   /* Available memory size */
                   unsigned long sharedram; /* Amount of shared memory */
                   unsigned long bufferram; /* Memory used by buffers */
                   unsigned long totalswap; /* Total swap space size */
                   unsigned long freeswap;  /* swap space still available */
                   unsigned short procs;    /* Number of current processes */
                   unsigned long totalhigh; /* Total high memory size */
                   unsigned long freehigh;  /* Available high memory size */
                   unsigned int mem_unit;   /* Memory unit size in bytes */
                   char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding for libc5 */
}; 
Beware of programmers who carry screwdrivers.

burn3r
Beiträge: 15
Registriert: 27.12.2005 17:37:24
Wohnort: Reutlingen/Albstadt
Kontaktdaten:

Beitrag von burn3r » 09.03.2006 22:41:12

nope isses leider auch nicht

der struct hatte so ähnlich wie /proc/stat verschiedene Werte, im einzelnen kenn ich die auch nicht mehr, aber da war auf jeden Fall

System
User
Idle
Nice

Ich könnte das nat. aus der /proc/stat auslesen, aber ich denke über nen Syscall wäre das sauberer.

Hab mir schon die top Quellen angesehn, aber die machen das auc über /proc/stat

Antworten