I haven't checked the man pages, but there are generally 3 types of "time" recorded for any Linux/Unix process:
time spent in "user space", time spent in "kernel space" and the time duration "on the clock".
User space is the part of memory where normal programs are loaded and executed from.
Kernel space is entered whenever the program does a so-called "system call", which simply means that it calls the operating system (Linux in this case) to perform a standard system operation, like reading a part of a file on disk. When this operation is done, the program will return back to "user space".
The "time on the clock" is simply the time it took for the program to complete, as if it was measured by a stopwatch. This should always be >= the sum of the user and system times, because the program you have time'd is alternated with all other running programs (processes)
(All processes get to run, one after another, for short periods of time, depending on things like priority, niceness, etc.)
Please note also that kernel space has different "rules" than user space. For instance, kernel routines are often made uninterruptable (so, the system can't switch to another process in the middle of the system call), so that the hardware can't get messed up.
|