We mentioned earlier that performance tuning seeks to improve performance by removing processing bottlenecks.
To identify bottlenecks, we must be able to monitor system performance. Thus,
the operating system must have some means of computing and displaying measures of system behavior.
In a number of systems, the operating system does this by producing trace listings of system behavior.
All interesting events are logged with their time and important parameters and are written to a file.
Later, an analysis program can process the log file to determine system performance and to identify bottlenecks and inefficiencies.
These same traces can be run as input for a simulation of a suggested improved system.
Traces also can help people to find errors in operating-system behavior.