Attempts to improve database and operating system performance are best done using careful observation, not speculation, in order to determine where the system bottlenecks are at. You need to start observations before you have a performance problem, to record baseline information. Most production database servers should consider basic monitoring and trending setup a requirement of their early deployment.
However, it is helpful to know the low-level tools too, because the longer term views provided by most monitoring and trending tools will miss brief problems. With today's breed of database applications, even a pause lasting a few seconds could be a major response time failure, and it's one that you wouldn't even be able to see in data collected on a minute scale. Both short-term and long-term data collection has considerable value, and knowing when to switch to and from the detail level to match the problem at hand is a valuable skill to hone. Watching the total percentage of time a disk is being utilized is more useful than any queue or transfer total figures for determining how close it is to maximum capacity. It even allows you to estimate the random vs. sequential balance of the workload that disk is running. Periods with bad database response time will usually have a high waiting for I/O percentage, a drop in context switches, and/or a decrease in the number of processes running. The exact pattern that appears gives you a clue as to where the most likely performance bottleneck is at. Historical data can be collected and reported on with the sar utility, albeit at a rough timescale that will average out some performance spikes into invisibility.
Windows has functional replacements for all these UNIX utilities, particularly if you install a small number of useful monitoring tools. A variety of true trending graph analysis packages are available with various degrees of PostgreSQL monitoring support: Cacti and Munin are the most popular focused ones available.
The next chapter describes pooling and caching techniques, and tools available for pooling and caching.