Date: Wed, 1 Sep 1999 23:51:19 -0700 (PDT) From: Matthew Dillon <dillon@apollo.backplane.com> To: Andy Farkas <andyf@speednet.com.au> Cc: David Scheidt <dscheidt@tumbolia.com>, freebsd-hackers@FreeBSD.ORG Subject: Re: nobody knows the answer? Message-ID: <199909020651.XAA40058@apollo.backplane.com> References: <Pine.BSF.4.10.9909021633350.51435-100000@localhost>
index | next in thread | previous in thread | raw e-mail
:> filesystems is allocated in the from of blocks, which are divided into
:> fragments. These blocks are not the same as the physical disk blocks, but
:> are a number of sequential disk blocks. The default FFS block size is 8KB.
:> Each FFS block is subdivided into fragments. The default is 8 fragments per
:> block, giving a default frag size of 1KB.
:
:A very nice, simple, explanation.
:
:What are Cylinder Groups for?
:
:>
:> David Scheidt
A cylinder group is associated with the UFS/FFS filesystem, which is the
standard filesystem that *BSD systems use.
The filesystem resides in a disk partition. The filesystem breaks the
disk partition up into a number of 'cylinder groups'.
Each cylinder group is an organizational entity which contains inodes,
bitmap blocks (showing what is allocated and what is not allocated within
the cylinder group), and data blocks. It kinda looks like a mini version
of the filesystem, in fact.
When a file is created in a UFS/FFS filesystem, the filesystem attempts
to optimize the placement of the file's inode, meta-data, and data blocks
in the partition. The filesystem uses the concept of a 'cylinder group'
to localize the proximity of this information and to attempt to control
fragmentation as the filesystem fills up.
For example, the filesystem attempts to place a file's inode, meta-data,
and data blocks all within the same cylinder group to reduce seeking,
but if a file is large the filesystem will limit the number of data
blocks it allocates for the file out of any given cylinder group in order
to avoid filling up the cylinder group (which would cause other files
in that cylinder group to be laid-out non-optimally). In this case,
the overflow datablocks are placed in another cylinder group.
-Matt
Matthew Dillon
<dillon@backplane.com>
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199909020651.XAA40058>
