Long filename

Long filename

Long filenames (LFN), are Microsoft's way of implementing filenames longer than the 8.3 filename, or short-filename, naming scheme used in Microsoft DOS in their modern FAT and NTFS filesystems. Because these filenames can be longer than an 8.3 filename, they can be more descriptive. Another advantage of this scheme is that it allows for longer extensions common on other operating systems (e.g. .jpeg, .tiff, .html, and .xhtml) rather than specialized shortened names (e.g. .jpg, .tif, .htm, .xht). The first Microsoft Windows operating system to implement long filenames on FAT was Windows NT 3.5 in 1994.

The long filename system allows a maximum length of 255 UTF-16 characters[1][2][3], including spaces and non-alphanumeric characters (excluding the following characters, which have special meaning within the command interpreter or the operating system kernel: \ / : * ? " < > |). This is achieved by chaining up to 20 directory entries of 13 2-byte unicode characters each.[3]

To maintain compatibility with older operating systems, Microsoft formulated a method of generating an 8.3 filename from the long filename (for example, "Microsoft.txt" to "MICROS~1.TXT") and associating it with the file.

For technical details of the implementation, please refer to the File Allocation Table article.

Contents

Compatibility issues

Microsoft implemented support for LFNs in the FAT filesystem by using hidden directory entries—of the "volume label" type—to store the longer names. This scheme was chosen for compatibility; volume labels are generally ignored by programs and operating system components. Programs running on older operating systems could still access the files' short names, while newer, LFN-aware operating systems and programs could use the longer ones.

When LFNs were first introduced into an MS-DOS-based operating system with Windows 95, they caused some problems for older programs. For example, a DOS program performing sector-level directory operations while Windows was in DOS mode could destroy long filename information so, by default, sector-level access to hard disks was disallowed in this mode.

Upon booting into plain DOS the long filenames would not be visible unless an LFN driver had been installed (see below). Microsoft did not add LFN support to many of its older programs, including File Manager, the Windows for Workgroups file manager that was made obsolete by the new operating system shell, Explorer). Windows NT supported LFNs on NTFS file systems beginning with the release of NT 3.1, and all of its utilities, including File Manager, were updated to support LFNs. NT 3.5 added FAT LFN support in preparation for Windows 95. However, the Windows 95 version of File Manager came from Windows for Workgroups 3.11.

OS/2 stored LFNs for FAT filesystems in .LONGNAME extended attributes that were incompatible with Microsoft's implementation and only visible to tools supporting the new standard. Many APIs providing access to files by pathname could not see the new, longer names, although this shortcoming could be rectified by installing a driver.

Limitations

Because FAT LFN implementation is layered on top of an older more limited naming system, there are inevitable complications, such as if an attempt is made to create too many files with the same first six letters.[4] In addition, one is more likely to encounter issues creating files or folders in the root directory, since FAT16 only allocates space for 512 root directory entries. Since long filenames can use more than one directory entry, this problem may occur with fewer than 512 files or folders in the root directory.[5] In fact there is space only for 25 long filenames of maximum length (512/20).

The maximum length of file name will be reduced if it's in a folder or deep hierarchy of folders under the root folder of any drive. For example, file named "ABCDEFGHIJ" inside absolute folder location "C:\1234567890\1234567890" (Total of 21 characters excluding "C:\") can be renamed to a maximum of 234 characters.

LFN drivers

The following is a list of drivers that can be used to provide support for long file names used in Windows 95:

OS Driver Name Provider
OS/2 VFAT OS2 3rd party
DOS DOSLFN 3rd party
DR-DOS LFNDOS Provided

Similar implementations

Prior to the release of OS/2 and Windows NT, one of the first file systems to support long names and spaces was the Macintosh File System, written for the original version of Mac OS on the Macintosh 128K released in January 1984. Although the Macintosh File System supported file names up to 255 characters in length, at the time Finder only allowed up to 63 characters. With the release of the Hierarchical File System (HFS) in September 1985, the maximum file name length allowed by the file system was reduced to 31 characters.[6] When the Finder was re-written for System 7, the maximum file name length was dropped to 31, matching the maximum allowed by the file system.[6] In January 1998, Apple released Mac OS 8.1 with HFS Plus, which included support for 255 character file names; however, Finder continued to limit names to 31 characters until Mac OS X.[7]

AmigaOS in 1985 allowed up to 30 characters in a filename.

Novell NetWare versions 3.x and 4.x volumes can also support Microsoft-compatible long filenames, by loading an additional NetWare Loadable Module (NLM).[8]

See also

References

  1. ^ 255-character mixed-case long filename is possible only for files and/or folders with no sub-folders at the root folder of any drive.
  2. ^ Making Room for Long Filenames
  3. ^ a b Long Filename Specification
  4. ^ CocoaDev: MSDOSFileSystem
  5. ^ Errors Creating Files or Folders in the Root Directory
  6. ^ a b Apple Computer (July 15, 1992). "Technical Note FL515: File Manager File Handling Q&As". Apple Developer Connection. Apple Computer. http://developer.apple.com/technotes/fl/fl_515.html. Retrieved 2006-12-20. 
  7. ^ Apple Computer (January 30, 1998). "Technical Note TN1121: Mac OS 8.1". Apple Developer Connection. Apple Computer. http://developer.apple.com/technotes/tn/tn1121.html. Retrieved 2006-12-20. 
  8. ^ Novell (February 11, 1999). "TID1002030 Windows NT, Long File Names on Netware". http://www.novell.com/support/search.do?cmd=displayKC&docType=kc&externalId=1002030&sliceId=&dialogID=52309057&stateId=0%200%2052303960. 

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • long filename —    Any filename longer than the eight character plus three character filename extension allowed by MS DOS.    In many of today s operating systems, including Unix, Microsoft Windows, and the Macintosh, filenames can be more than 200 characters… …   Dictionary of networking

  • Filename — Screenshot of a Windows command shell showing filenames in a directory The filename is metadata about a file; a string used to uniquely identify a file stored on the file system. Different file systems impose different restrictions on length and… …   Wikipedia

  • Filename mangling — dablink|This article discusses the mangling of filenames for operating system compatibility.For the concept of name mangling within compilers, see name mangling.The process of name mangling, in computing, involves a re writing of the file name… …   Wikipedia

  • Filename extension — A filename extension is a suffix (separated from the basefilename by a dot) to the name of a computer file applied to indicate the encoding (file format) of its contents or usage. Some filesystems limit the length of the extension (such as the… …   Wikipedia

  • Long Way to Heaven — Infobox Album Name = Long Way to Heaven Type = Studio Album Artist = Helix Released = November 9,1985 Recorded = Genre = Heavy metal Glam Metal Length = 36:25 Label = Capitol Records Producer = Tom Treumuth Reviews = Last album = Walkin the Razor …   Wikipedia

  • 8.3 filename — An 8.3 filename [cite web |url=http://msdn2.microsoft.com/en us/library/aa365247.aspx |title=Naming a File |publisher=Microsoft Developer Network ] (also called a short filename or SFN) is a filename convention used by old versions of DOS and… …   Wikipedia

  • File Allocation Table — For other uses, see Fat (disambiguation). FAT Developer Microsoft Full Name File Allocation Table FAT12 (12‑bit version) FAT16/FAT16B (16‑bit versions) FAT32 (32‑bit version with 28 bits used) Introduced …   Wikipedia

  • List of MS-DOS commands — Contents 1 Resident and transient commands 2 Command line arguments 3 Windows command prompt …   Wikipedia

  • Edlin — Infobox Software name = Edlin author = Tim Paterson developer = Microsoft operating system = DOS, MS DOS, OS/2, Microsoft Windows genre = Line editor website = [http://technet2.microsoft.com/windowsserver/en/library/720e8e05 72bd 4331 be76… …   Wikipedia

  • 4DOS — A colored directory listing in 4DOS. Developer(s) JP Software …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”