arjan de lumens
Veteran
Heres a question with ram being cheap why are we having to make do with drives with only 16mb cache, why not a gig
The disk buffer is not really a cache in the usual sense; it's there to buffer data going to and from the hard drive, so that the IDE/SATA interface on one side and the physical read/write head on the other side don't need to operate in exact lockstep.
The disk buffer may do read-ahead/read-behind caching - if the read/write head happens to be located above a data track but not above data requested by the OS (e.g. it has completed a seek to a track containing the requested data, but the actual data are still half a rotation away), the read/write head will still be picking up data; these data can then be cached by the disk buffer, in anticipation of the OS requesting them in the near future.
For these uses, a 16 Mbyte buffer is basically enough; larger buffers suffer diminishing returns. General-purpose disk caching can easily benefit from much larger caches, however such a cache is better left under the control of the OS, which can make far more informed choices than what the hard disk itself can. Also, a cache located in system RAM is going to be much faster than a cache located at the hard disk itself.