You won’t see this in a standard ps listing. The kernel_task process begins during the boot sequence, called into existence as one of the kernel’s first jobs (see the xnu kernel source, available from http://developer.apple.com/opensource/). When running with the default settings, top displays a list of processes, sorted by descending process ID, with associated statistics about each. Besides each individual process, you’ll see a dashboard of statistics, similar to the following:
Processes: 129 total, 3 running, 122 sleeping… 438 threads 22:12:18
Load Avg: 0.71, 0.95, 0.95 CPU usage: 17.39% user, 10.00% sys, 72.61% idle
SharedLibs: num = 8, resident = 63M code, 412K data, 4280K linkedit.
MemRegions: num = 27913, resident = 1302M + 19M private, 289M shared.
PhysMem: 354M wired, 1319M active, 763M inactive, 2436M used, 1627M free.
VM: 16G + 371M 567026(0) pageins, 106583(0) pageouts
The first line displays how many processes the Berkeley Software Distribution (BSD) UNIX layer currently is responsible for, the number of processes that are active, how many are idle, the total number of threads (remember that each process is further broken down into threads of execution), and the current time.
On the next line is the statistic of load average. Explanations for the load average range from fairly straightforward to very complex. First, the load average metric appears in several places: the top utility, the uptime command, the output from w, and more. One thing remains constant: As in the example above, three numbers appear. They are the 1-minute, 5-minute, and 15-minute load averages the result of the number of jobs in the run queue, or the load on the system. Some say it’s the most important metric, and some say it’s of little use.
In either case, you have to know the system in question, and load average is just another data point for your investigation.