Basics 1: SuperFetch offers non-volatile application pre-caching
You may have already heard of SuperFetch, as its benefits are indeed not bad. Facts first: The feature is available in all versions of Windows Vista: Most computers always have a certain amount of unused main memory capacity, which SuperFetch utilizes to automatically pre-load your favorite applications into these memory areas. Microsoft refers to this process as elimination of so-called cold memory states, where available RAM is unused. In order to pre-cache applications, the SuperFetch service keeps track of which applications are launched either regularly or most frequently. Provided that there is sufficient memory available, SuperFetch will populate the available space with as many applications as possible.
The reason for pre-buffering application data into the main memory is very simple: If you launch an application in Windows XP it has to be fetched from the hard drive before it can be executed. Since hard drives are rather slow in comparison to RAM (60-90 MB/s disk transfer rate vs. 5-7 GB/s RAM throughput), RAM access is much faster than hard drive I/O operations. In effect, SuperFetch provides faster application launch times.
Although this sounds similar to conventional Windows caching, the feature is more intelligent: Caching is ineffective as soon as you restart your system or the memory is flushed by anything else. SuperFetch will repopulate the application data once you boot your system during idle times.
However, the feature does not come for free: You do need free memory for SuperFetch to work efficiently. Typically, 512 MB RAM is not enough to experience quicker application launches over time, as Windows Vista will require all the memory for itself and a limited amount of applications. At 1 and 2 GB RAM, SuperFetch makes quite an impact. Since a very large number of users works with 512 MB RAM today, Microsoft came up with a way to provide the SuperFetch benefits without having to upgrade your RAM: ReadyBoost.