Jump to content

Be File System

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by 212.117.116.190 (talk) at 13:28, 15 January 2008. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
BFS
Developer(s)Be Inc.
Full nameBe File System
IntroducedMay 10, 1997 with BeOS Advanced Access Preview Release[1]
Partition IDsBe_BFS (Apple Partition Map)
0xEB (MBR)
Structures
Directory contentsB+ tree
File allocationInodes
Bad blocksInodes
Limits
Max volume size~2 EB *
Max file size~260 GB *
Max no. of filesUnlimited
Max filename length255 characters
Allowed filename
characters
All UTF-8 but "/"
Features
Dates recordedAccess, Creation, Modified
Date rangeUnknown
Date resolutionUnknown
ForksYes
AttributesPOSIX ACLs: Read, Write, Execute
File system
permissions
Yes, POSIX (RWX per owner, group and all)
Transparent
compression
No
Transparent
encryption
No
Other
Supported
operating systems
BeOS, ZETA, Haiku, SkyOS

The Be File System (BFS, occasionally misnamed as BeFS. The name BeFS is also used in linux kernel to avoid any confusion with Boot File System) is the native file system for the BeOS operating system.

BFS was developed by Dominic Giampaolo and Cyril Meurillon over a ten month period, starting in September 1996[2], to provide BeOS with a modern 64-bit capable journaling file system[3]. It is case sensitive and capable of being used on floppy, hard disks and read-only media such as CD-ROMs, although its use on small removable media is not advised, as the file system headers consume from 600KB to 2MB, rendering floppy disks virtually useless.

Like its predecessor, OFS (written by Benoit Schillings, Old Be File System, was also called BFS when current[4]), it includes support for extended file attributes (metadata) with indexing and querying characteristics to provide functionality similar to that of a relational database.

Whilst intended as a 64-bit capable file system the size of some on-disk structures mean that practical size limit is approximately 2 exabytes. Similarly the extent based file allocation reduces the maximum practical file size to approximately 260 gigabytes at best and as little as a few blocks in a pathological worst case depending on the degree of fragmentation.

Its design process, application programming interface, and internal workings are, for the most part, documented in the book Practical File System Design with the Be File System[2].

Implementations

In early 1999, Makoto Kato developed a Be File System driver for Linux, however the driver never reached a complete stable state, so in 2001 Will Dyson developed his own version of the Linux BFS driver[5].

As part of the OpenBeOS attempt to recreate the BeOS operating system, in 2002 Axel Dörfler and a few other developers created and released a reimplemented BFS called OpenBFS[6]. In January 2004, Robert Szeleney announced that he had developed a fork of this OpenBFS file system for use in his SkyOS operating system[7].

References

  1. ^ Scot Hacker (July 1, 1997). "BeOS Journal 10: A First Look at DR9". ZDNet. Retrieved 2007-03-22.
  2. ^ a b Giampaolo, Dominic (1999). Practical File System Design with the Be File System (PDF). Morgan Kaufmann. ISBN 1-55860-497-9.
  3. ^ Andrew Orlowski (March 29, 2002). "Windows on a database – sliced and diced by BeOS vets". The Register. Retrieved 2006-12-09.
  4. ^ Henry Bortman. "Benoît Schillings, Software Engineer". The BeOS Bible. Retrieved 2006-09-10.
  5. ^ Will Dyson (2002). "BeFS driver for Linux: About BeFS". SourceForge. Retrieved 2006-12-09.
  6. ^ Daniel Teixeira (September 04, 2002). "OBFS Reaches Beta". Haiku News. Retrieved 2006-12-09. {{cite web}}: Check date values in: |date= (help)
  7. ^ Robert Szeleney (January 23, 2004). "Update". skyos.org. Retrieved 2006-12-09.

See also