At 2004-08-20T15:26:29+1200, Roy Britten wrote:
> On my desktop at the moment I'm noticing brief HDD action every 5
> seconds or so.

Being every 5 seconds, it's most likely to be the kernel's flush daemon
(bdflush in < 2.5, pdflush in >= 2.5).  This daemon is responsible for
periodically flushing any outstanding deferred writes.

You can increase the period between flushes using the tunables in
/proc/sys/vm.

> Is there some tool that will allow me to see which application /
> process is accessing the HDD?

There's nothing in the stock Linux kernel or most current vendor kernels
that will allow you to see per-process I/O statistics.  There are a few
things available to remedy this, such as SGI's Comprehensive System
Accounting patches, but that doesn't help you right now.

Some systems may provide per-partition I/O statistics in
/proc/partitions as well, but it's not common enough that you can assume
it's available.

In a general sense, the best you can hope to achieve given a random
Linux box is to guess which processes are doing I/O using vmstat,
iostat, top, ps, sar, and whatever other standard tools are available.
Once you have a rough idea of the processes that may be doing the I/O,
you can use something heavy-handed like ltrace/strace to look at the
library/system calls each specific process is performing.

DTrace in Solaris Express/10 looks like a nice solution to this sort of
problem.  Hopefully someone will eventually reimplement a similar thing
for Linux in a three-quarter assed manner.

Cheers,
-mjg
-- 
Matthew Gregan                     |/
                                  /|                [EMAIL PROTECTED]

Reply via email to