You seem to be running these commands from a non global zone. You are missing CPU usage generated in other zones, including the global one. Monitoring need to be done from the global zone, as long as dtrace analysis.
Quote:
Naturally, I am thinking that if I have 1 cpu and my load=1 all the time, my CPU is 100% busy.
That is an oversimplification. CPU load is indeed based on measures of the run queue size and the number of running processes, but as it is a floating average, a load of 1 doesn't necessarily mean one CPU is 100% busy.
CPU utilization might be smaller if for example, two processes are competing for the same CPU 50% of the time and then are idle for the remaining 50% of the time. You'll have a load of 1 and a CPU 50% busy.
Should you have 10 processes competing for a single CPU 10% of the time, then idling for 90% of the time, you will still be observing a load of 1 but a CPU 10% busy.