.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1992 Drew Eckhardt (drew@cs.colorado.edu), March 28, 1992 .\" .\" %%%LICENSE_START(VERBATIM) .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one. .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" %%%LICENSE_END .\" .\" Modified by Michael Haardt (michael@moria.de) .\" Modified Sat Jul 24 14:29:17 1993 by Rik Faith (faith@cs.unc.edu) .\" Modified 961203 and 001211 and 010326 by aeb@cwi.nl .\" Modified 001213 by Michael Haardt (michael@moria.de) .\" Modified 13 Jun 02, Michael Kerrisk .\" Added note on nonstandard behavior when SIGCHLD is ignored. .\" Modified 2004-11-16, mtk, Noted that the nonconformance when .\" SIGCHLD is being ignored is fixed in 2.6.9; other minor changes .\" Modified 2004-12-08, mtk, in 2.6 times() return value changed .\" 2005-04-13, mtk .\" Added notes on nonstandard behavior: Linux allows 'buf' to .\" be NULL, but POSIX.1 doesn't specify this and it's nonportable. .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH TIMES 2 "22. Oktober 2012" Linux Linux\-Programmierhandbuch .SH BEZEICHNUNG times \- Abfrage der Prozesszeiten .SH ÜBERSICHT \fB#include \fP .sp \fBclock_t times(struct tms *\fP\fIbuf\fP\fB);\fP .SH BESCHREIBUNG \fBtimes\fP() speichert die aktuellen Prozesszeiten in der Struktur \fItms\fP, auf die \fIbuf\fP weist. Die \fItms\fP\-Struktur wird in \fI\fP wie folgt definiert: .sp .in +4n .nf struct tms { clock_t tms_utime; /* Benutzer\-Zeit */ clock_t tms_stime; /* System\-Zeit */ clock_t tms_cutime; /* Benutzer\-Zeit der Kindprozesse */ clock_t tms_cstime; /* System\-Zeit der Kindprozesse */ }; .fi .in .LP Das Feld \fItms_utime\fP enthält die CPU\-Zeit, die mit dem Ausführen von Anweisungen des aufrufenden Prozesses verbracht wurde. Das Feld \fItms_stime\fP enthält die im System verbrachte CPU\-Zeit während der Ausführung von Aufgaben im Namen des aufrufenden Prozesses. Das Feld \fItms_cutime\fP enthält die Summe der \fItms_utime\fP\- und \fItms_cutime\fP \-Werte für alle Kindprozesse, auf deren Abschluss gewartet wurde. Das Feld \fItms_cstime\fP enthält die Summe der \fItms_stime\fP\- und \fItms_cstime\fP\-Werte für alle Kindprozesse, auf deren Abschluss gewartet wurde. .LP Zeiten für beendete Kindprozesse (und ihre Nachkommen) werden in dem Moment hinzugefügt, wenn \fBwait\fP(2) oder \fBwaitpid\fP(2) deren Prozess\-IDs zurückgeben. Insbesondere werden die Zeiten der Enkel, auf die die Kinder nicht gewarten haben, nicht erfasst. .LP Alle Zeiten werden in Uhrticks angegeben. .SH RÜCKGABEWERT \fBtimes\fP() gibt die Zahl der Ticks an, die seit einem beliebigen Punkt in der Vergangenheit abgelaufen sind. Der Rückgabewert kann den möglichen Bereich von Typ \fIclock_t\fP überlaufen. Tritt ein Fehler auf, wird \fI(clock_t)\ \-1\fP zurückgegeben und \fIerrno\fP entsprechend gesetzt. .SH FEHLER .TP \fBEFAULT\fP \fItms\fP zeigt außerhalb des adressierbaren Adressraums des Prozesses. .SH "KONFORM ZU" SVr4, 4.3BSD, POSIX.1\-2001. .SH ANMERKUNGEN Die Zahl der Uhrticks pro Sekunde kann wie folgt bestimmt werden: .in +4n sysconf(_SC_CLK_TCK); .in .PP In POSIX.1\-1996 wird das Symbol \fBCLK_TCK\fP (definiert in \fI\fP) als veraltet erwähnt. Es ist jetzt überholt. .PP .\" See the description of times() in XSH, which says: .\" The times of a terminated child process are included... when wait() .\" or waitpid() returns the process ID of this terminated child. Falls in Linux\-Kernel\-Versionen vor 2.6.9 die Disposition von \fBSIGCHLD\fP auf \fBSIG_IGN\fP eingestellt ist, werden die Zeiten der beendeten Kindprozesse automatisch in den Feldern \fItms_cstime\fP und \fItms_cutime\fP eingetragen, obwohl POSIX.1\-2001 sagt, dass dies nur geschehen soll, wenn der aufrufende Prozess (mit \fBwait\fP(2)) auf seine Kindprozesse wartet. Diese Nichtübereinstimmung wurde in Linux 2.6.9 und später behoben. Unter Linux kann das Argument \fIbuf\fP als NULL angegeben werden, worauf \fBtimes\fP() nur ein Funktionsergebnis zurückgibt. Dieses Verhalten wird aber nicht von POSIX beschrieben und die meisten UNIX\-Implementierungen erfordern einen von NULL verschiedenen Wert für \fIbuf\fP. .LP Beachten Sie, dass auch \fBclock\fP(3) einen Wert vom Typ \fIclock_t\fP zurückgibt. Die Maßeinheit für diesen Wert ist \fBCLOCKS_PER_SEC\fP, nicht die von \fBtimes\fP() verwendeten Uhrticks. .\" .PP .\" On older systems the number of clock ticks per second is given .\" by the variable HZ. Unter Linux hat sich der »beliebige Punkt in der Vergangenheit«, auf den sich der Rückgabewert von \fBtimes\fP () bezieht, über die Kernel\-Versionen geändert. Unter Linux 2.4 und früher war dieser Punkt der Moment, an dem das System gestartet wurde. Seit Linux 2.6 ist dieser Punkt \fI(2^32/HZ) \- 300\fP (d.h. etwa 429 Millionen) Sekunden vor Systemstart. Diese Variabilität zwischen Kernel\-Versionen (und über UNIX\-Implementierungen) und die Tatsache, dass der Rückgabewert den Bereich \fIclock_t\fP überlaufen lassen kann, bedeutet, dass eine portable Anwendung klug daran tut, diesen Wert nicht zu verwenden. Um Änderungen der verstrichenen Zeit zu messen, verwenden Sie stattdessen \fBclock_gettime\fP(2). .SS Historisches SVr1\-3 gibt \fIlong\fP zurück und Bestandteile der Struktur sind vom Typ \fItime_t\fP, obwohl sie Uhrticks speichern und nicht Sekunden seit dem Beginn der Unix\-Zeit. V7 verwendete \fIlong\fP für die Bestandteile der Struktur, weil es damals noch keinen Typ \fItime_t\fP gab. .SH FEHLER .\" The problem is that a syscall return of -4095 to -1 .\" is interpreted by glibc as an error, and the wrapper converts .\" the return value to -1. .\" http://marc.info/?l=linux-kernel&m=119447727031225&w=2 .\" "compat_sys_times() bogus until jiffies >= 0" .\" November 2007 Eine Beschränkung in den Linux\-Konventionen für Systemaufrufe für einige Architekturen (insbesondere i386) bewirkt unter Linux 2.6 ein kleines Zeitfenster (41 Sekunden) kurz nach dem Systemstart, in dem \fBtimes\fP() \-1 zurückgeben und damit fälschlicherweise anzeigen kann, dass ein Fehler auftrat. Dasselbe Problem kann auftreten, wenn der Rückgabewert den größten in \fBclock_t\fP speicherbaren Wert überschreitet. .SH "SIEHE AUCH" \fBtime\fP(1), \fBgetrusage\fP(2), \fBwait\fP(2), \fBclock\fP(3), \fBsysconf\fP(3), \fBtime\fP(7) .SH KOLOPHON Diese Seite ist Teil der Veröffentlichung 3.74 des Projekts Linux\-\fIman\-pages\fP. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter \%http://www.kernel.org/doc/man\-pages/. .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Ralf Demmer , Martin Eberhard Schauer und Mario Blättermann erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an .