OK, anonymous no more :-)
I had thought about using the stat function, but while it
does get the information, it doesn't do it the way I'd like.
Let me explain further.
Execution speed is critical to the application I'm writing.
Any process that relies upon navigating the file system's
directory tree will probably be too slow. That rules out
things involving ls, find, or perl's stat. My
understanding is that the inode table is a block of binary
data sitting on the disk just after the superblock. If I
read and parse through it, I can get the information I
need without the overhead of navigating the file structure.
I had also looked into using C instead of Perl. Every C
snippet I found seemed to use a different set of header
files. In no case did I have all of them present upon my
system. I'd prefer to only write the thing once rather than
have to port it for different Unix flavors.
That at least is the theory. It's been put together from
an awful lot of odds and ends and there may be some
erroneous assumptions in there. If you spot one, please
let me know.
I am root on the box(es) that this will be running on.
Cerian
|