This articlerelies excessively onreferences toprimary sources. Please improve this article by addingsecondary or tertiary sources. Find sources: "AdvFS" – news ·newspapers ·books ·scholar ·JSTOR(September 2011) (Learn how and when to remove this message) |
| Developer(s) | Digital Equipment Corporation |
|---|---|
| Full name | Tru64 UNIX Advanced File System |
| Introduced | 1993; 32 years ago (1993) withOSF/1 |
| Structures | |
| Bad blocks | Table |
| Limits | |
| Max volume size | 16TiB |
| Max file size | 16TiB |
| Max filename length | 255 bytes |
| Other | |
| Supported operating systems | Tru64 UNIX |
AdvFS, also known asTru64 UNIX Advanced File System, is afile system developed in the late 1980s to mid-1990s[1] byDigital Equipment Corporation for theirOSF/1 version of theUnix operating system (laterDigital UNIX/Tru64 UNIX).[2] In June 2008, it was released as free software under theGPL-2.0-only license.[3] AdvFS has been used in high-availability systems where fast recovery from downtime is essential.[4]: 428
AdvFS uses a relatively advanced concept of a storage pool (called afile domain) and of logical file systems (calledfile sets). A file domain is composed of any number of block devices, which could be partitions,LVM orLSM devices. A file set is a logical file system created in a single file domain. Administrators can add or remove volumes from an active file domain, providing that there is enough space on the remaining file domain, in case of removal. This was one of the trickier original features to implement because all data or metadata residing on the disk being removed had to first be migrated, online, to other disks, prior to removal.
File sets can be balanced, meaning that file content of file sets be balanced across physical volumes. Particular files in a file set can bestriped across available volumes.
Administrators can take a snapshot (orclone) of any active or inactive file set. This allows for easy on-line backups and editing.
Another feature allows administrators to add or remove block devices from a file domain, while the file domain has active users. This add/remove feature allows migration to larger devices or migration from potentially failing hardware without a system shutdown.
Its features include:
Under Linux, AdvFS supports an additional ‘’syncv’’ system call to atomically commit changes to multiple files.[6]
AdvFS, also known asTru64 UNIX Advanced File System, was developed byDigital Equipment Corporationengineers beginning in the late 1980s[1] inBellevue, WA (DECwest). It started out as the filesystem of the canceledOZIX operating system project.[7]
It was first delivered on the DEC OSF/1 system (later Digital UNIX/Tru64 UNIX). Over time, development moved to teams located in Bellevue, WA andNashua, NH. Versions were always one version number behind the operating system version. Thus, DEC OSF/1 v3.2 had AdvFS v2.x, Digital UNIX 4.0 had AdvFS v3.x and Tru64 UNIX 5.x had AdvFS v4.x. It is generally considered[citation needed] that only AdvFS v4 had matured to production level stability, with a sufficient set of tools to get administrators out of any kind of trouble.[2] The original team had enough confidence in its log based recovery to release it without an "fsck" style recovery utility on the assumption that the file system journal would always be allocated on mirrored drives.
In 1996, Lee and Thekkath[8] described the use of AdvFS on top of a novel disk virtualisation layer known asPetal. In a later paper,[9] Thekkath et al. describe their own file system (Frangipani) built on top ofPetal and compare it to the performance of AdvFS running on the same storage layer.
Shapiro and Miller[10] compared the performance of files stored in AdvFS to Oracle RDBMS version 7.3.4 BLOB storage.
Compaq Sierra Parallel File System (PFS) created a cluster file system based on multiple local AdvFS filesystems; testing carried out atLawrence Livermore National Laboratory (LLNL) in 2000–2001 found that while the underlying AdvFS filesystem had adequate performance (albeit with high CPU utilisation), the PFS clustering layer on top of it performed poorly.[11]
On June 23, 2008, itssource code was released byHewlett-Packard[3] under theGPL-2.0-only license (instead of the recently releasedGPLv3) atSourceForge in order to becompatible with the also GPL-2.0-only licensedLinux kernel.[12]
AdvFS is a journaled, local file system that provides higher availability, and greater flexibility and recovery than traditional UNIX file systems. The recovery takes just a few seconds for AdvFS...
Log-structured file system implementations include the AIX Journalled File System (JFS), the DEC Advanced File System (AdvFS), and the SUN UFS with Transaction Logging in Solaris DiskSuite.
The only one of any note that I'd like to point out directly is the clarification in the COPYING file, making it clear that it's only _that_particular version of the GPL that is valid for the kernel. This should not come as any surprise, as that's the same license that has been there since 0.12 or so, but I thought I'd make that explicit