COMPONENTS OF CPU USAGE
So what “types of tasks” are there? The obvious ones are “user” and “system”:
System: The CPU is running kernel code. This includes device drivers and kernel modules.
User: The CPU is running code in user-mode. This includes your application code. Note that if an application tries to read from disk or write to network, it actually goes to sleep while the kernel performs that work, and wakes up the application again.
Idle: And when there is really nothing the kernel can do, it just as to waste away this slice of time. Technically, when the runnable queue is empty and there are no I/O operations going on, the CPU usage is marked as idle.
Am I understanding correctly that user, system, and idle percentage would always add up to 100%?