Veritas File System

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
VERITAS File System
Full name VERITAS File System
Introduced 1991
Structures
Directory contents extensible hash
Limits
Max. volume size 128 ZB (277 bytes)
Max. file size 8 EB (263 bytes)
Max. filename length 256 bytes
Features
Forks yes
Attributes Extended file attributes
File system permissions POSIX, ACL
Transparent compression No
Transparent encryption No
Other
Supported operating systems Linux, Solaris, HP-UX, AIX, SINIX, UnixWare

The VERITAS File System (or VxFS; called JFS and OnlineJFS in HP-UX) is an extent-based file system. It was originally developed by VERITAS Software.[1] Through an OEM agreement, VxFS is used as the primary filesystem of the HP-UX operating system. With on-line defragmentation and resize support turned on via license, it is known as OnlineJFS.[2] It is also supported on AIX, Linux, Solaris, OpenSolaris, SINIX/Reliant UNIX, UnixWare and SCO OpenServer.[citation needed] VxFS was originally developed for AT&T's Unix System Laboratories. VxFS is packaged as a part of the Veritas Storage Foundation (which also includes Veritas Volume Manager).

History

According to the vendor, it was the first commercial journaling file system.[3] That claim can be taken in two ways, i.e., the first implementation of a journaling file system in a commercial context, or the first file system available as an unbundled product.

Dan Koren is cited as one of the original developers of VxFS.[4] He notes in a mailing list that they "finished release 1.0 one year or so later" after starting development of VxFS under a contract with AT&T Corporation in 1990.[5] Other sources agree that the product was first released in 1991.[6][7]

As the internet was not widely available in the early 1990s, getting a new file system deployed for Unix like operating systems was more difficult, so the one- to two-year delay in the release and commercialization of this file system was not unusual.

Version history

The on-disk layout of VxFS is versioned and upgradeable while the file system is mounted. This file system has gone through ten versions.

  • Version 2 added support for filesets, dynamic inode allocation and ACLs. Layouts 1-3 stopped being supported in VxFS 4.0.
  • Version 4 added support for storage checkpoints and for Veritas Cluster File System. Version 4 was released in VxFS 3.2.1. Layout version 4 is no longer supported under VxFS 5.1 [1].
  • Version 5 started support for file systems up to 32 terabytes (245 bytes) in size. Individual files can be up to 2 terabytes in size. Version 5 was introduced in VxFS 3.5 and is no longer supported under VxFS 5.1 [2].
  • Version 7 extends support for multiple volumes to permit Dynamic Storage Tiering. Dynamic Storage Tiering allows root users to move files among different volumes, allocate files to different volumes at file creation time based on policy, and independently recover volumes, without altering the namespace of the file system. Version 7 was introduced in VxFS 5.0.
  • Version 8 enables support for file-level snapshots and shared extents. Version 8 was introduced in VxFS 5.1.
  • Version 9 enables support for file compression, deduplication, and partition directories. Version 9 was introduced in VxFS 6.0.
  • Version 10 enables support for maxlink, which permits a directory to contain more than 64K subdirectories. Version 10 was introduced in VxFS 6.1.

Parallel access mode

VxFS file system can run in single instance mode or in a parallel access / cluster mode. The parallel mode allows for multiple servers (also known as cluster nodes) to simultaneously access the same file system. When run in this mode, VxFS is referred to as Veritas Cluster File System.

The Cluster File System provides cache coherency and POSIX compliance across nodes, so that data changes are atomically seen by all cluster nodes simultaneously. Because Cluster File System shares the same binaries and same on-disk layout as single instance VxFS, moving between cluster and single instance mode is straightforward.

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.

External links