Cramfs

From Wikipedia, the free encyclopedia

The compressed ROM filesystem (or cramfs) is a free (GPL'ed) read-only Linux file system designed for simplicity and space-efficiency. It is mainly used in embedded systems and small-footprint systems.

Unlike a compressed image of a conventional filesystem, a cramfs image can be used as it as i.e. without the need to decompress the image first. For this reason, some Linux distributions also use cramfs as a file system for initial ramdisks (initrd) (Debian in particular) and installation images (SuSE in particular), where there are onerous constraints on memory and image size.

[edit] Design

Files on cramfs file systems are zlib-compressed one page at a time to allow random read access. The meta-data is not compressed, but is expressed in a terse representation that is more space-efficient than conventional filesystems.

The file system is intentionally read-only to simplify its design: random write access for compressed files is difficult to implement. cramfs ships with a utility (mkcramfs) to pack files into new cramfs images.

File sizes are limited to less than 16MB.

Maximum filesystem size is a little over 256MB. (The last file on the filesystem is allowed to extend past 256MB.)

[edit] See also

[edit] External link

In other languages