Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 25 Mar 2005 08:47:35 +0200
From:      Giorgos Keramidas <keramida@ceid.upatras.gr>
To:        Jonathan Stewart <jonstew1983@yahoo.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Discrepancy between ps -i -o inblk and figuring numbers by hand
Message-ID:  <20050325064734.GA82858@gothmog.gr>
In-Reply-To: <20050325035303.41290.qmail@web50903.mail.yahoo.com>
References:  <20050325035303.41290.qmail@web50903.mail.yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2005-03-24 19:53, Jonathan Stewart <jonstew1983@yahoo.com> wrote:
>--- Dan Nelson <dnelson@allantgroup.com> wrote:
>>In the last episode (Mar 24), Jonathan Stewart said:
>>> In that case how would I track how much information a process has
>>> actually read from a drive?  I occasionally run processes that
>>> will read as much as 40+ gig in a single run which takes quite a
>>> while and on windows :P I can see "bytes read" and "bytes written"
>>> per process which lets me track how much the program has read so
>>> far and thus get an idea of how close it is to done.  Sorry for
>>> the run-on sentence there.
>>
>> I use lsof, which can tell you the file offset of each open
>> filedescriptor.  "lsof -o -o20 -p ###" will print all the files
>> currently opened by pid ###, and their current offset.
>
> Hmm, that almost works but the program opens 1000's of files each
> time.  The program is Unison which is a file synchronizer and I have
> it synchronizing files sets >40GB with and 1000's or more files.
> Based on your description once the file is closed I can't even tell if
> it was read or not :P

So, what you are looking for is a single byte count that increases
sequentially for all read() and write() system calls?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050325064734.GA82858>