Skip to main content
p. 220

8.7 Further Topics

One reason there are so many tools to measure and manage resource utilization is that different types of resources are consumed in many different ways. In this chapter, you’ve seen CPU, memory, and I/O as system resources being consumed by processes, threads inside processes, and the kernel.

The other reason the tools exist is that the resources are limited, and for a system to perform well, its components must strive to consume fewer resources. In the past, many users shared a machine, so it was necessary to make sure that each user had a fair share of resources. Now, although a modern desktop computer may not have multiple users, it still has many processes competing for resources. Likewise, high-performance network servers require intense system resource monitoring because they run many processes to handle multiple requests simultaneously.

p. 222

Further topics in resource monitoring and performance analysis you might want to explore include:

sar (System Activity Reporter) The sar package has many of the continuous monitoring capabilities of vmstat, but it also records resource utilization over time. With sar, you can look back at a particular time to see what your system was doing. This is handy when you want to analyze a past system event.

acct (process accounting) The acct package can record the processes and their resource utilization.

Quotas You can limit the amount of disk space that a user can use with the quota system.

If you’re interested in systems tuning and performance in particular, Systems Performance: Enterprise and the Cloud, 2nd edition, by Brendan Gregg (Addison-Wesley, 2020) goes into much more detail.

We also haven’t yet touched on the many, many tools you can use to monitor network resource utilization. To use those, though, you first need to understand how the network works. That’s where we’re headed next.