File System Comparison General information



Download 355 Kb.
Page6/6
Date29.01.2017
Size355 Kb.
#12493
1   2   3   4   5   6

Notes


Note 1: The Mac OS provides two sets of functions to retrieve file names from a HFS Plus volume, one of them returning the full Unicode names, the other shortened names fitting in the older 31 byte limit to accommodate older applications.
Note 2: HFS Plus mandates support for an escape sequence to allow arbitrary Unicode. Users of older software might see the escape sequences instead of the desired characters.
Note 3: Varies wildly according to block size and fragmentation of block allocation groups.
Note 4: For filesystems that have variable allocation unit (block/cluster) sizes, a range of size are given, indicating the maximum volume sizes for the minimum and the maximum possible allocation unit sizes of the filesystem (e.g. 512 bytes and 128KiB for FAT — which is the cluster size range allowed by the on-disk data structures, although some Installable File System drivers and operating systems do not support cluster sizes larger than 32KiB).
Note 5: NTFS access control lists can express essentially any access policy possible using simple POSIX file permissions, but use of a POSIX-like interface is not supported without an add-on such as Services for UNIX or Cygwin.
Note 6: The file change logs, last entry change timestamps, and other filesystem metadata, are all part of the extensive suite of auditing capabilities built into NDS/eDirectory called NSure Audit. (Filesystem Events tracked by NSure)
Note 7: While FAT32 partitions this large work fine once created, some software won't allow creation of FAT32 partitions larger than 32GiB. This includes, notoriously, the Windows XP installation program and the Disk Management console in Windows 2000, XP, 2003 and Vista. Use FDISK from a Windows ME Emergency Boot Disk to avoid. [1]
Note 8: ReiserFS has a theoretical maximum file size of 1EiB, but "page cache limits this to 8 Ti on architectures with 32 bit int"[2]
Note 9: XFS has a limitation under Linux 2.4 of 64TiB file size, but Linux 2.4 only supports a maximum block size of 2TiB. This limitation is not present under IRIX.
Note 10: Microsoft first introduced FAT32 in Windows 95 OSR2 (OEM Service Release 2) and then later in Windows 98. NT-based Windows did not have any support for FAT32 up to Windows NT4; Windows 2000 was the first NT-based Windows OS that received the ability to work with it.
Note 11: IBM introduced JFS with the initial release of AIX Version 3.1 in 1990. This file system now called JFS1. The new JFS (sometimes called JFS2), on which the Linux port was based, was first shipped in OS/2 Warp Server for e-Business in 1999.
Note 12: The on-disk structures have no inherent limit. Particular Installable File System drivers and operating systems may impose limits of their own, however. MS-DOS does not support full pathnames longer than 260 bytes for FAT12 and FAT16. Windows NT does not support full pathnames longer than 32767 bytes for NTFS.
Note 13: This is the limit of the on-disk structures. The HPFS Installable File System driver for OS/2 uses the top 5 bits of the volume sector number for its own use, limiting the volume size that it can handle to 64GiB.
Note 14: The f-node contains a field for a user identifier. This is not used except by OS/2 Warp Server, however.
Note 15: Maximum combined filename/filetype length is 236 bytes; each component has an individual maximum length of 255 byes.
Note 16: Maximum pathname length is 4096 bytes, but quoted limits on individual components add up to 1664 bytes.
Note 17: Record Management Services (RMS) attributes include record type and size, among many others.
Note 18: These are referred to as "aliases".
Note 19: Novell calls this feature "multiple data streams". Published specifications say that NWFS allows for 16 attributes and 10 data streams, and NSS allows for unlimited quantities of both.
Note 20: Case-sensitivity/Preservation depends on client. Windows, DOS, and OS/2 clients don't see/keep case differences, whereas clients accessing via NFS or AFP may.
Note 21: Published specs say that the 128-bit file system provides for up to 264 bytes to describe the file system, file size, directory entries, etc, with a theoretical max of 2128 bytes total to describe all storage on such a machine.
Note 22: Particular Installable File System drivers and operating systems may not support extended attributes on FAT12 and FAT16. The OS/2 and Windows NT filesystem drivers for FAT12 and FAT16 support extended attributes (using a "EA DATA. SF" pseudo-file to reserve the clusters allocated to them). Other filesystem drivers for other operating systems do not.
Note 23: Some Installable File System drivers and operating systems may not support extended attributes, access control lists or security labels on these filesystems. Linux kernels prior to 2.6.x may either be missing support for these altogether or require a patch.
Note 24: Depends on whether the FAT12, FAT16, and FAT32 implementation has support for LFNs. Where it does not, as in OS/2, MS-DOS, Windows 95, Windows 98 in DOS-only mode and the Linux "msdos" driver, file names are limited to 11 8-bit characters (space padded in both the basename and extension parts) and may not contain NUL (end-of-directory marker) or character 5 (replacement for character 229 which itself is used as deleted-file marker). Short names also do not normally contain lowercase letters. Also note that a few special names (CON, NUL, LPT1) should be avoided, as some operating systems (notably DOS and windows) effectively reserve them.
Note 25: These are the restrictions imposed by the on-disk directory entry structures themselves. Particular Installable File System drivers may place restrictions of their own on file and directory names; and particular and operating systems may also place restrictions of their own, across all filesystems. MS-DOS, Microsoft Windows, and OS/2 disallow the characters \ / : ? * " > < | and NUL in file and directory names across all filesystems. Unices and Linux disallow the characters / and NUL in file and directory names across all filesystems.
Note 26: In these filesystems the directory entries named "." and ".." have special status. Directory entries with these names are not prohibited, and indeed exist as normal directory entries in the on-disk data structures. However, they are mandatory directory entries, with mandatory values, that are automatically created in each directory when it is created; and directories without them are considered corrupt.
Note 27: The "." and ".." directory entries in HPFS that are seen by applications programs are a partial fiction created by the Installable File System drivers. The on-disk data structure for a directory does not contain entries by those names, but instead contains a special "start" entry. Whilst on-disk directory entries by those names are not physically prohibited, they cannot be created in normal operation, and a directory containing such entries is corrupt.
Note 28: NSS allows files to have multiple names, in separate namespaces.
Note 29: Some file and directory metadata is stored on the NetWare server irrespective of whether Directory Services is installed or not, like date/time of creation, file size, purge status, etc; and some file and directory metadata is stored in NDS/eDirectory, like file/object permissions, ownership, etc.
Note 30: Particular Installable File System drivers and operating systems may not support case sensitivity for JFS. OS/2 does not, and Linux has a mount option for disabling case sensitivity.
Note 31: The local time, timezone/UTC offset, and date are derived from the time settings of the reference/single timesync source in the NDS tree.
Note 32: Some operating systems implemented extended attributes as a layer over UFS1 with a parallel backing file (e.g., FreeBSD 4.x).
Note 33: Access-control lists and MAC labels are layered on top of extended attributes.
Note 34: As of Windows Vista, NTFS fully supports soft links. See this Microsoft article on Vista kernel improvements. NTFS 3.0 (Windows 2000) and higher can create junctions, which allow entire directories (but not individual files) to be mapped to elsewhere in the directory tree of the same partition (file system). These are implemented through reparse points, which allow the normal process of filename resolution to be extended in a flexible manner.
Note 35: Although often believed to be case sensitive, HFS Plus normally is not. The typical default installation is case-preserving only. From Mac OS 10.3 on the command newfs_hfs -s will create a case-sensitive new file system. HFS Plus version 5 optionally supports case-sensitivity. However, since case-sensitivity is fundamentally different from case-insensitivity, a new signature was required so existing HFS Plus utilities would not see case-sensitivity as a file system error that needed to be corrected. Since the new signature is 'HX', it is often believed this is a new filesystem instead of a simply an upgraded version of HFS Plus. See Apple's File System Comparisons (which hasn't been updated to discuss HFSX) and Technical Note TN1150: HFS Plus Volume Format (which provides a very technical overview of HFS Plus and HFSX).
Note 36: While NTFS itself supports case sensitivity, the Win32 environment subsystem cannot create files whose names differ only by case for compatibility reasons. When a file is opened for writing, if there is any existing file whose name is a case-insensitive match for the new file, the existing file is truncated and opened for writing instead of a new file with a different name being created. Other subsystems like e. g. Services for Unix, that operate directly above the kernel and not on top of Win32 can have case-sensitivity.
Note 37: NTFS stores everything, even the file data, as meta-data, so its log is closer to block journaling.
Note 38: UDF and LFS are log-structured file systems and behave as if the entire file system were a journal.
Note 39: In "extents" mode.
Note 40: Optionally no on IRIX.
Note 41: Variable block size refers to systems which support different block sizes on a per-file basis. (This is similar to extents but a slightly different implementational choice.) The current implementation in UFS2 is read-only.
Note 42: Each possible size (in sectors) of file tail has a corresponding suballocation block chain in which all the tails of that size are stored. The overhead of managing suballocation block chains is usually less than the amount of block overhead saved by being able to increase the block size but the process is less efficient if there is not much free disk space.
Note 43: This restriction might be lifted in newer versions.
Note 44: Full block journaling for ReiserFS was added to Linux 2.6.8.
Note 45: Other block:fragment size ratios supported; 8:1 is typical and recommended by most implementations.
Note 46: Depends on UDF implementation.
Note 47: Fragments were planned, but never actually implemented on ext2 and ext3.
Note 48: Metadata-only journaling was introduced in the Mac OS 10.2.2 HFS Plus driver; journaling is enabled by default on Mac OS 10.3 and later.
Note 49: e2compr, a set of patches providing block-based compression for ext2, has been available since 1997, but has never been merged into the mainline Linux kernel.
Note 50: Reiser4 supports transparent compression and encryption with the cryptcompress plugin which is the default file handler in version 4.1.
Note 51: DoubleSpace in DOS 6, and DriveSpace in Windows 95 and Windows 98 were data compression schemes for FAT, but are no longer supported by Microsoft.
Note 52: Some namespaces had lower name length limits. "LONG" had an 80-byte limit, "NWFS" 80 bytes, "NFS" 40 bytes and "DOS" imposed 8.3-style names.
Note 53: Available only in the "NFS" namespace.
Note 54: Metacomco released a so called "evolution" version of original file system that was previously designed by engineers of Amiga Corporation (Formerly Hi-Toro) in 1982-83/85. Unfortunately, Metacomco made a mess of the early FS ruining its simple and easy structure. Originally OFS was simply Amiga File System. Name changed since the release of the "new" Fast File System, born in 1987 for the same platform.
Note 55: This is the limit of the on-disk structures. The NTFS driver for Windows NT limits the volume size that it can handle to 256TiB and the file size to 16TiB respectively.
Note 56: ZFS is a transactional filesystem using copy-on-write semantics, guaranteeing an always-consistent on-disk state without the use of a traditional journal. However, it does also implement an intent log to provide better performance when synchronous writes are requested.
Note 57: The actual maximum was 8,847,360 bytes, with 7 singly-indirect blocks and 1 doubly-indirect block; PWB/UNIX 1.0's variant had 8 singly-indirect blocks, making the maximum 524,288 bytes or half a MiB.
Note 58: The actual maximum was 1,082,201,088 bytes, with 10 direct blocks, 1 singly-indirect block, 1 doubly-indirect block, and 1 triply-indirect block. The 4.0BSD and 4.1BSD versions, and the System V version, used 1024-byte blocks rather than 512-byte blocks, making the maximum 4,311,812,608 bytes or approximately 4 GiB.
Note 59: System V Release 4, and some other Unix systems, retrofitted symbolic links to their versions of the Version 7 Unix file system, although the original version didn't support them.
Note 60: Solaris "extended attributes" are really full-blown alternate data streams, in both the Solaris UFS and ZFS.
Note 61: File permission in 9P are a variation of the traditional Unix permissions with some minor changes, eg. the suid bit is replaced by a new 'exclusive access' bit.
Note 62: Off by default.
Note 63: Depends on kernel version and arch. For 2.4 kernels the max is 2TB. For 32-bit 2.6 kernels it is 16TB. For 64-bit 2.6 kernels it is 8EB.
Note 64: Mac OS Tiger (10.4) and late versions of Panther (10.3) provide file change logging (it's a feature of the file system software, not of the volume format, actually). See fslogger.
Note 65: Linux kernel versions 2.6.12 and newer.
Note 66: "Soft dependencies" (softdep) in NetBSD, called "soft updates" in FreeBSD provide meta-data consistency at all times without double writes (journaling).
Note 67: Due to its use of copy on write, ZFS uses delayed allocation for all writes.
Note 68: When enabled, ZFS's logical-block based compression behaves much like tail-packing for the last block of a file.
Note 69: MAC/Sensitivity labels in the file system are not out of the question as a future compatible change but aren't part of any available version of ZFS.
Note 70: VxFS provides an optional feature called "Storage Checkpoints" which allows for advanced file system snapshots.
Note 71: While the volume size of HFS+ is almost unlimited, the Mac OS has those limitations: Mac OS 8 & 9: 2 TiB; Mac OS X 10 & 10.1: 2 TiB; Mac OS X 10.2: 8 TiB; Mac OS X 10.3 & 10.4: 16 TiB. Max. file size is slightly smaller than max. volume size (Mac OS 8: max. file size: 2 GiB). Max. number of files (or folders) within a folder: Mac OS 8 & 9: 2^15 (32767), Mac OS X: 2^31, but naturally limited by the max. volume size divided by the block size.
Note 72: QFS allows files to exceed the size of disk when used with its integrated HSM, as only part of the file need reside on disk at any one time.
Note 73: Tail packing is technically a special case of block suballocation where the suballocation unit size is always 1 byte.
Note 74: Maximum file size on a VMFS volume depends on the block size for that VMFS volume. The figures here are obtained by using the maximum block size.
Note 76: VMFS transactions are atomic across the entire distributed cluster.
Note 77: HFS does not actually encrypt files: to implement FileVault, OS X creates an HFS filesystem in a sparse, encrypted disk image that is automatically mounted over the home directory when the user logs in.

  1. ^ a b c Some FAT implementations, such as in Linux, show file modification timestamp (mtime) in the metadata change timestamp (ctime) field. This timestamp is however, not updated on file metadata change.


Download 355 Kb.

Share with your friends:
1   2   3   4   5   6




The database is protected by copyright ©ininet.org 2024
send message

    Main page