master
 1/* Copyright (C) 1991-2025 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.  */
32struct 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.  */
46extern clock_t times (struct tms *__buffer) __THROW;
47
48__END_DECLS
49
50#endif /* sys/times.h	*/