All-
On Monday, 1 Jul 1996, I asked some questions about AdvFS. We've been
using AdvFS here for quite some time and I had a working (but incomplete)
understanding of AdvFS, but I wanted to make sure some of the things I had
assumed about it were correct. The original email I sent to this list follows
at the end of this message.
I received responses from:
Peter Stern <peter_at_wiscpa.weizmann.ac.il>
alan_at_nabeth.cxo.dec.com (Alan Rollow - Dr. File System's Home for Wayward
Inodes.)
Both gave me useful information about AdvFS. Most of the assumptions/guesses
I had made about AdvFS turned out to be correct. Alan answered each of my
questions in turn; his response follows.
-------------Alan's response: (my questions are quoted with > )---------------
>1) I've seen the term `metadata' mentioned a hundred times on this list
>but I have yet to find a clear definition of what exactly the metadata is.
>From the context it seems to be akin to dynamically allocated groups of
>inodes, but I suspect there's more to it than that (or that it's
>something completely different).
You're not far off. AdvFS seems to have very few static data
structures. As files are created a data structure is allocated
from a table to store information about the file (extends, owner-
ship, permissions, etc). The initial table is allocated when
the domain is created. The default size is 128 file system
blocks (8 KB), but it can be controlled with with the -x option.
As more per-file data structures are needed, more extents are
allocated to the table. What causes AdvFS many of its problems
is that the extents have to be contiguous space and the number
of extents is limited. In order to support a very large number
of files, a large extent size is needed, but the large size makes
it hard to allocate a new one.
>If the metadata is along the lines of
>dynamically allocated inodes I obviously don't need to worry about
>increasing the density of inodes, but is there a way to create a
>filesystem that defaults to having fewer inodes?
You can try using an extent size smaller than the default of
128. That will limit the number of files the file system can
support and give back a bit of space that might not be used,
if you intend to have a very few number of files. I don't
know if -x can be used to go below the default. Most people
are trying to get more, not less.
>UFS has a concept of `minfree'. Is there anything similar in the AdvFS?
>If there is a minfree, can I adjust it a la newfs/tunefs? I'm guessing
>there's no need for a `minfree' for AdvFS because of different block
>allocation algorithms than UFS. Am I correct?
I've never seen anything in the doucmentation to suggest one. UFS
needs minfree because the space allocation algorithms need a
reasonable amount of free space to run quickly. I think AdvFS
views all of its via a single bit map, so the algorithm is as
complicated as it is for UFS.
>3) Is there any reason to *not* change the value for RPM to match my drives
>when repartitioning my drives with disklabel? Both of my drives spin at
>5400 RPM. Will it do any harm (or any good) to up the RPM entry from the
>default of 3600? This obviously has nothing to do with AdvFS but it's also
>something I've been thinking about changing when I re-install.
The only thing I know of that uses the rotational speed is UFS when
rotdelay is set to a non-zero value. Rotdelay is typically only
interesting on disks with no read-ahead cache. This makes it unlikely
that it will ever be used. But, when I think of it and am editing
the disklabel, I update the speed just so it will be accurate.
I wouldn't go out of my way, but if you're there, there's no harm.
----------end of Alan's response--------------
Thanks to Peter and Alan for taking the time to help me out!
Tim
--
Tim Mooney mooney_at_toons.cc.ndsu.NoDak.edu
Information Technology Services (701) 231-1076 (Voice)
Room 242-J6, IACC Bldg. (701) 231-8541 (FAX)
North Dakota State University, Fargo, ND 58105
---------original question follows----------------
All-
I'm preparing to re-install (not update) my personal workstation (which
should have been named `guinea-pig') with Digital Unix 4.0, before we
put 4.0 on any other more important machines. In most respects I know
exactly what I want to do and how to do it, but despite the fact that
we've been using the advanced filesystem here for nearly a year I still
have some fundamental/bonehead questions about it.
I spent quite a bit of time going through the archives for this list
(and found a lot of useful information about the AdvFS) without finding
the answers to my questions. If I haven't RTFM'ed enough please let me
know which FM I should read. Pointers to a good (detailed) reference on
the AdvFS would be especially appreciated. Chapter 8 of the 3.x System
Administration book (AA-PS2RC-TE) doesn't go into any of the types of
details I'm interested in.
1) I've seen the term `metadata' mentioned a hundred times on this list
but I have yet to find a clear definition of what exactly the metadata is.
>From the context it seems to be akin to dynamically allocated groups of
inodes, but I suspect there's more to it than that (or that it's
something completely different). The AFA320 release notes
(/usr/advfs/AFA320_RELNOTES.*) seem to support my hypothesis without
actually spelling it out.
2) If I were creating a UFS filesystem, I could control the inode density
and the minfree with `newfs'. If the metadata is along the lines of
dynamically allocated inodes I obviously don't need to worry about
increasing the density of inodes, but is there a way to create a
filesystem that defaults to having fewer inodes? For the UFS you can
buy yourself some additional space if you know you're not going to need
the inodes; can (should?) this be done with AdvFS? I see the otherwise
undocumented `-x' option to mkfdmn & addvol mentioned in the AFA320
release notes. It appears that the default extent allocation policy is
`as low as it goes'. Is this correct?
UFS has a concept of `minfree'. Is there anything similar in the AdvFS?
If there is a minfree, can I adjust it a la newfs/tunefs? I'm guessing
there's no need for a `minfree' for AdvFS because of different block
allocation algorithms than UFS. Am I correct?
3) Is there any reason to *not* change the value for RPM to match my drives
when repartitioning my drives with disklabel? Both of my drives spin at
5400 RPM. Will it do any harm (or any good) to up the RPM entry from the
default of 3600? This obviously has nothing to do with AdvFS but it's also
something I've been thinking about changing when I re-install.
I will of course summarize.
Tim
Received on Tue Jul 09 1996 - 23:22:49 NZST