Sometimes my system (Ubuntu 10.04 .. 12.04) becomes almost unresponsive due to some I/O activities.
For example, this happens when some RAM content is being moved to swap on resume from suspend mode. I've made that conclusion after looking into htop (swap size was growing) and iotop (swap process I/O rate was about 3MB/s) output.
Another example is
/etc/cron.daily/popularity-contest. When it is running the system becomes unusable.
One more example, updatedb.mlocate (I/O rate 3-5MB/s), as you can see below there was enough free RAM when it was running
# free -m total used free shared buffers cached Mem: 3919 3494 424 0 10 107 -/+ buffers/cache: 3377 542 Swap: 4102 134 3967
First of all, it is not quite clear for me why I/O activity causes other running applications being blocked?
Second question: Is there any way to avoid that annoying happening?
I didn't ever noticed such effect on Windows. Thus I believe there must be some system property which can be tuned.
Ubuntu 12.04 x86_64
Laptop (SATA HDD 5400rpm), RAM 4GB.