Heavy entropy consumers tend to use up the bits available. When this happens, /dev/random properly blocks until more entropy is collected. It can block for a noticeable length of time. The NetBSD entropy collector has a nice feature: programs can tell how much entropy is left. This C code frobs the disk to restore the entropy pool when it runs low.
Release 0.2 is alpha. If you use it, make sure it isn't running your disk continuously. (It only runs on NetBSD because other OSes have relatively primitive entropy collectors.)
The current (alpha) release is bitstir-0.2.tar.gz.
There is also a NetBSD package for easy installation.