1 /* Copyright (C) 1991-2022 Free Software Foundation, Inc. 2 This file is part of the GNU C Library. 3 4 The GNU C Library is free software; you can redistribute it and/or 5 modify it under the terms of the GNU Lesser General Public 6 License as published by the Free Software Foundation; either 7 version 2.1 of the License, or (at your option) any later version. 8 9 The GNU C Library is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 Lesser General Public License for more details. 13 14 You should have received a copy of the GNU Lesser General Public 15 License along with the GNU C Library; if not, see 16 <https://www.gnu.org/licenses/>. */ 17 18 /* 19 * POSIX Standard: 4.5.2 Process Times <sys/times.h> 20 */ 21 22 #ifndef _SYS_TIMES_H 23 #define _SYS_TIMES_H 1 24 25 #include <features.h> 26 27 #include <bits/types/clock_t.h> 28 29 __BEGIN_DECLS 30 31 /* Structure describing CPU time used by a process and its children. */ 32 struct tms 33 { 34 clock_t tms_utime; /* User CPU time. */ 35 clock_t tms_stime; /* System CPU time. */ 36 37 clock_t tms_cutime; /* User CPU time of dead children. */ 38 clock_t tms_cstime; /* System CPU time of dead children. */ 39 }; 40 41 42 /* Store the CPU time used by this process and all its 43 dead children (and their dead children) in BUFFER. 44 Return the elapsed real time, or (clock_t) -1 for errors. 45 All times are in CLK_TCKths of a second. */ 46 extern clock_t times (struct tms *__buffer) __THROW; 47 48 __END_DECLS 49 50 #endif /* sys/times.h */ 51