fbpx
Wikipedia

Long filename

Long filename (LFN) support is Microsoft's backward-compatible extension of the 8.3 filename (short filename) naming scheme used in DOS. Long filenames can be more descriptive, including longer filename extensions such as .jpeg, .tiff, .html, and .xhtml that are common on other operating systems, rather than specialized shortened names such as .jpg, .tif, .htm, or .xht. The standard has been common with File Allocation Table (FAT) filesystems since its first implementation in Windows NT 3.5 of 1994.

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.

Compatibility issues edit

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 is known as VFAT, and was chosen for compatibility, as volume labels are generally ignored by programs and operating system (OS) components. Programs running on older OSs could still access the files' short names, while newer, LFN-aware OSs and programs could use the longer ones.

When LFN support was first introduced into a DOS-based operating system in the form of Windows 95, it 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 are not visible unless a VFAT LFN driver is installed. Microsoft did not add LFN support to many of its older programs, including File Manager, the Windows 3.1x (Windows for Workgroups) file manager that was made obsolete by the new operating system shell, Windows Explorer. Windows NT supported LFNs on NTFS file systems starting 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 stores LFNs for FAT filesystems in .LONGNAME extended attributes that are incompatible with Microsoft's implementation and only visible to tools supporting OS/2's standard. Many APIs providing access to files by pathname cannot see the new, longer names without a supporting driver.

Limits edit

Because the FAT LFN implementation is layered atop 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.[1] Also, one is more likely to encounter issues creating files or folders in the root directory, since FAT12 and FAT16 only allocate space for 512 root directory entries on hard disks. Since long filenames use more than one directory entry, this problem may occur with fewer than 512 files or folders in the root directory.[2] There is space only for 24 long filenames of maximum length (512/(1+20)). This problem does not exist for FAT32 volumes.

The long filename system allows a maximum length of 255 UCS-2 characters[3][4] including spaces and non-alphanumeric characters (excluding the following characters, which have special meaning within the COMMAND.COM command interpreter or the operating system kernel: \ / : * ? " < > |). This is achieved by chaining up to 20 directory entries of 13 2-byte Unicode characters each.[4] The maximum length of a pathname is 256 characters, which includes all parent directories and the filename. 255-character mixed-case long filename is possible only for files, or folders with no sub-folders, at the root folder of any drive.

While long filename support allows for longer file and directory names, under DOS-based systems, the absolute file path constructed from the associated short file and directory name equivalents is still represented in an internal data structure called the Current Directory Structure (CDS),[5][6][7][8] which imposes a limit of 66 characters on the (short) path name and thereby indirectly limits also the path depth to a maximum of 33 levels (counting in the root directory and assuming only single-letter names). (This design limitation was not present in older versions of DR DOS (prior to DR DOS 6.0 November 1991 updates) which still utilized a relative path representation internally,[7][8][9] however, due to their internal differences these versions are not compatible with existing LFN add-on drivers.) Non-DOS-based operating systems without a CDS are not restricted to this path depth limitation.

VFAT LFN drivers edit

The following is a list of drivers that can be used to provide support for VFAT long file names as used in Windows 95. Although drivers such as DOSLFN can be loaded in almost any versions of DOS, it works best on DOS versions that have support for LFN themselves, such as MS-DOS 7.10 or DR-DOS 7.02, so that DOS commands such as DIR would show long file names as well.

OS Driver name Provider
any plain DOS DOSLFN, LFNDOS third-party
DR-DOS LONGNAME included
RxDOS built-in included
OS/2 VFAT-OS2.IFS third-party
Windows NT 4.0 NTLFN third-party

Driver-less Real Mode Dos LFN commands edit

Some small real mode Dos programs have also been written over the years, although many have been lost over time. One notable collection of programs that still exists is LFN Tools, which is open source and comprises seven useful LFN commands written in C++ and assembly language, with documentation included in English and German, and is available at LFNTOOLS on Sourceforge.net.

Other implementations edit

Before LFN support was implemented into the FAT family of file systems, various file managers provided their own methods to attach and maintain longer file descriptions. Among the first to do so are the alternative command line processors 4DOS and NDOS with their internal DESCRIBE command and corresponding DESCRIPT.ION files. The latter are optional hidden files located in each directory storing a line-based list of file names located in the directory together with their textual description and optional metadata entries—for example, extended attributes and configuration data for other programs.[10] The descriptions can be up to 511 characters long and are displayed along the file names in much the same way as long file names are listed alongside their short filename aliases in DIR listings. If an entry exists for a file, it will be copied and moved with the file for as long as these command line processors are used to perform the operation.[9] This scheme is still maintained by successors such as 4OS2, 4NT / Take Command. It was adopted also by various other programs like Volkov Commander (VC), DOS Navigator (DN), Open DOS Navigator (ODN), Necromancer's DOS Navigator (NDN), Windows Commander, Total Commander, Double Commander, 7-Zip, XnView, ACDSee, Newsbin Pro, V, FreeCOM[11] and some CUI_LIB[12]-based applications.

Human68K, the operating system of the Sharp X68000 computers since 1986, is based on an extended FAT file system. It allows up to 18.3 characters in a filename (instead of the 8.3 in FAT) and allows also upper and lower case characters (as well as Kanji in Shift JIS code) that are all treated as distinctive. If restricted to the use of 8.3-format filenames with upper case characters only, the Human68K floppies are fully compatible with the Japanese 1232 KiB standard FAT floppy format (77 cylinders, 2 heads, 8 sectors, 1024 bytes/sector). This format is used by the NEC PC-9800, Fujitsu FMR and FM Towns series computers.[citation needed]

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

In order to support Java applications without implementing a VFAT-compatible scheme, the FlexOS-based IBM 4690 OS version 2 introduced its own virtual file system (VFS) architecture to store long filenames in the FAT file system in a backwards compatible fashion. If enabled, the virtual filenames (VFN) are available under separate logical drive letters, whereas the real filenames (RFN) remain available under the original drive letters.[14]

See also edit

References edit

  1. ^ . CocoaDev. 2005-09-12. Archived from the original on 2006-10-18.
  2. ^ "Errors Creating Files or Folders in the Root Directory". Microsoft. 120138.
  3. ^ Winnick Cluts, Nancy (August 1996) [January 1995]. . Files and I/0 Technical Articles. Microsoft Corporation. 810456. Archived from the original on 2008-04-23. Retrieved 2007-04-19.
  4. ^ a b Dobiash, Jack "vinDaci", ed. (1998-01-06) [1996-11-18]. (4 ed.). Grand Ronde, Oregon, USA. Archived from the original on 2015-10-25. Retrieved 2013-05-22.
  5. ^ Schulman, Andrew; Brown, Ralf D.; Maxey, David; Michels, Raymond J.; Kyle, Jim (1994) [November 1993]. Undocumented DOS: A programmer's guide to reserved MS-DOS functions and data structures - expanded to include MS-DOS 6, Novell DOS and Windows 3.1 (2 ed.). Reading, Massachusetts: Addison Wesley. ISBN 0-201-63287-X. ISBN 978-0-201-63287-3. (xviii+856+vi pages, 3.5-inch floppy) Errata:
  6. ^ Brown, Ralf D.; et al., eds. (2000-07-16). "Ralf Brown's Interrupt List" (61 ed.). INTER61.
  7. ^ a b Paul, Matthias R. (1997-07-30) [1994-05-01]. NWDOS-TIPs — Tips & Tricks rund um Novell DOS 7, mit Blick auf undokumentierte Details, Bugs und Workarounds. MPDOSTIP (in German) (3 ed.). from the original on 2017-09-10. Retrieved 2014-08-06. (NB. NWDOSTIP.TXT is a comprehensive work on Novell DOS 7 and OpenDOS 7.01, including the description of many undocumented features and internals. It is part of the author's yet larger MPDOSTIP.ZIP collection maintained up to 2001 and distributed on many sites at the time. The provided link points to a HTML-converted older version of the NWDOSTIP.TXT file.)
  8. ^ a b Paul, Matthias R. (1997-06-07) [April 1994]. "Chapter 1.3.xi: Überlange Pfade". NWDOS7UN.TXT — Zusammenfassung der dokumentierten und undokumentierten Fähigkeiten von Novell DOS 7. MPDOSTIP (in German). from the original on 2016-11-07. Retrieved 2016-11-07.
  9. ^ a b Brothers, Hardin; Rawson, Tom; Conn, Rex C.; Paul, Matthias R.; Dye, Charles E.; Georgiev, Luchezar I. (2002-02-27). 4DOS 8.00 online help.
  10. ^ . Chestertown, Maryland, USA: JP Software Inc. 1989. Archived from the original on 2016-03-18. (NB. Known IDs include 0x23 ('#') as used by various utilities written by Matthias R. Paul for space-separated lists of text key=value pairs holding file properties as extended attributes like CP (codepages), PC (language codes), CW (bit-width), XS (page width), YS (page length), XO (print x-offset), YO (print y-offset), CR (copyright), URL (source link), etc., 0x25 ('%') being used by programs using CUI_LIB to store pseudo-environment variables, 0xED being reserved for Digital Research/Novell/Caldera and 0xFD for FreeDOS.)
  11. ^ Davis, Jeremy. "FreeCom and 4DOS DESCRIPT.ION files" (FreeDOS tech note). FreeDOS. from the original on 2016-11-11. Retrieved 2016-11-11.
  12. ^ Paul, Matthias R. (1997-05-01) [1995-03-01]. "Hinweise zu JPSofts 4DOS 5.5b/c, 5.51, 5.52a und NDOS". MPDOSTIP (in German). from the original on 2016-11-04. Retrieved 2015-05-08. (NB. The provided link points to a HTML-converted version of the 4DOS5TIP.TXT file, which is part of the MPDOSTIP.ZIP collection.)
  13. ^ Novell (1999-02-11). . Archived from the original on 2011-06-06. Retrieved 2007-12-03.
  14. ^ (PDF). IBM. 2007-12-06. IBM document SC30-4137-01. Archived from the original (PDF) on 2022-01-25. Retrieved 2018-09-03.

External links edit

  • The filesystems howto
  • Current version of DOSLFN
  • Original Author of DOSLFN 2013-05-28 at the Wayback Machine
  • VFAT OS2 Provides LFN support under OS2

long, filename, this, article, needs, additional, citations, verification, please, help, improve, this, article, adding, citations, reliable, sources, unsourced, material, challenged, removed, find, sources, news, newspapers, books, scholar, jstor, february, 2. This article needs additional citations for verification Please help improve this article by adding citations to reliable sources Unsourced material may be challenged and removed Find sources Long filename news newspapers books scholar JSTOR February 2015 Learn how and when to remove this template message Long filename LFN support is Microsoft s backward compatible extension of the 8 3 filename short filename naming scheme used in DOS Long filenames can be more descriptive including longer filename extensions such as a href jpeg html class mw redirect title jpeg jpeg a a href tiff html class mw redirect title tiff tiff a a href html html class mw redirect title html html a and a href xhtml html class mw redirect title xhtml xhtml a that are common on other operating systems rather than specialized shortened names such as jpg tif htm or xht The standard has been common with File Allocation Table FAT filesystems since its first implementation in Windows NT 3 5 of 1994 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 Further information Design of the FAT file system VFAT long file names Contents 1 Compatibility issues 1 1 Limits 2 VFAT LFN drivers 3 Driver less Real Mode Dos LFN commands 4 Other implementations 5 See also 6 References 7 External linksCompatibility issues editMicrosoft 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 is known as VFAT and was chosen for compatibility as volume labels are generally ignored by programs and operating system OS components Programs running on older OSs could still access the files short names while newer LFN aware OSs and programs could use the longer ones When LFN support was first introduced into a DOS based operating system in the form of Windows 95 it 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 are not visible unless a VFAT LFN driver is installed Microsoft did not add LFN support to many of its older programs including File Manager the Windows 3 1x Windows for Workgroups file manager that was made obsolete by the new operating system shell Windows Explorer Windows NT supported LFNs on NTFS file systems starting 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 stores LFNs for FAT filesystems in LONGNAME extended attributes that are incompatible with Microsoft s implementation and only visible to tools supporting OS 2 s standard Many APIs providing access to files by pathname cannot see the new longer names without a supporting driver Limits edit Because the FAT LFN implementation is layered atop 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 1 Also one is more likely to encounter issues creating files or folders in the root directory since FAT12 and FAT16 only allocate space for 512 root directory entries on hard disks Since long filenames use more than one directory entry this problem may occur with fewer than 512 files or folders in the root directory 2 There is space only for 24 long filenames of maximum length 512 1 20 This problem does not exist for FAT32 volumes The long filename system allows a maximum length of 255 UCS 2 characters 3 4 including spaces and non alphanumeric characters excluding the following characters which have special meaning within the COMMAND COM command interpreter or the operating system kernel lt gt This is achieved by chaining up to 20 directory entries of 13 2 byte Unicode characters each 4 The maximum length of a pathname is 256 characters which includes all parent directories and the filename 255 character mixed case long filename is possible only for files or folders with no sub folders at the root folder of any drive While long filename support allows for longer file and directory names under DOS based systems the absolute file path constructed from the associated short file and directory name equivalents is still represented in an internal data structure called the Current Directory Structure CDS 5 6 7 8 which imposes a limit of 66 characters on the short path name and thereby indirectly limits also the path depth to a maximum of 33 levels counting in the root directory and assuming only single letter names This design limitation was not present in older versions of DR DOS prior to DR DOS 6 0 November 1991 updates which still utilized a relative path representation internally 7 8 9 however due to their internal differences these versions are not compatible with existing LFN add on drivers Non DOS based operating systems without a CDS are not restricted to this path depth limitation VFAT LFN drivers editThe following is a list of drivers that can be used to provide support for VFAT long file names as used in Windows 95 Although drivers such as DOSLFN can be loaded in almost any versions of DOS it works best on DOS versions that have support for LFN themselves such as MS DOS 7 10 or DR DOS 7 02 so that DOS commands such as DIR would show long file names as well OS Driver name Provider any plain DOS DOSLFN LFNDOS third party DR DOS LONGNAME included RxDOS built in included OS 2 VFAT OS2 IFS third party Windows NT 4 0 NTLFN third partyDriver less Real Mode Dos LFN commands editSome small real mode Dos programs have also been written over the years although many have been lost over time One notable collection of programs that still exists is LFN Tools which is open source and comprises seven useful LFN commands written in C and assembly language with documentation included in English and German and is available at LFNTOOLS on Sourceforge net Other implementations editBefore LFN support was implemented into the FAT family of file systems various file managers provided their own methods to attach and maintain longer file descriptions Among the first to do so are the alternative command line processors 4DOS and NDOS with their internal DESCRIBE command and corresponding a href DESCRIPT ION html class mw redirect title DESCRIPT ION DESCRIPT ION a files The latter are optional hidden files located in each directory storing a line based list of file names located in the directory together with their textual description and optional metadata entries for example extended attributes and configuration data for other programs 10 The descriptions can be up to 511 characters long and are displayed along the file names in much the same way as long file names are listed alongside their short filename aliases in DIR listings If an entry exists for a file it will be copied and moved with the file for as long as these command line processors are used to perform the operation 9 This scheme is still maintained by successors such as 4OS2 4NT Take Command It was adopted also by various other programs like Volkov Commander VC DOS Navigator DN Open DOS Navigator ODN Necromancer s DOS Navigator NDN Windows Commander Total Commander Double Commander 7 Zip XnView ACDSee Newsbin Pro V FreeCOM 11 and some CUI LIB 12 based applications Human68K the operating system of the Sharp X68000 computers since 1986 is based on an extended FAT file system It allows up to 18 3 characters in a filename instead of the 8 3 in FAT and allows also upper and lower case characters as well as Kanji in Shift JIS code that are all treated as distinctive If restricted to the use of 8 3 format filenames with upper case characters only the Human68K floppies are fully compatible with the Japanese 1232 KiB standard FAT floppy format 77 cylinders 2 heads 8 sectors 1024 bytes sector This format is used by the NEC PC 9800 Fujitsu FMR and FM Towns series computers citation needed Novell NetWare versions 3 x and 4 x volumes can also support Microsoft compatible long filenames by loading an additional NetWare Loadable Module NLM 13 In order to support Java applications without implementing a VFAT compatible scheme the FlexOS based IBM 4690 OS version 2 introduced its own virtual file system VFS architecture to store long filenames in the FAT file system in a backwards compatible fashion If enabled the virtual filenames VFN are available under separate logical drive letters whereas the real filenames RFN remain available under the original drive letters 14 See also editTRANS TBL Rock Ridge Joliet file system Romeo file system 8 3 filename 6 3 filename Filename VFAT patent issues Design of the FAT file system File system Large file support LFS References edit MSDOSFileSystem CocoaDev 2005 09 12 Archived from the original on 2006 10 18 Errors Creating Files or Folders in the Root Directory Microsoft 120138 Winnick Cluts Nancy August 1996 January 1995 Making Room for Long Filenames Files and I 0 Technical Articles Microsoft Corporation 810456 Archived from the original on 2008 04 23 Retrieved 2007 04 19 a b Dobiash Jack vinDaci ed 1998 01 06 1996 11 18 Long Filename Specification 4 ed Grand Ronde Oregon USA Archived from the original on 2015 10 25 Retrieved 2013 05 22 Schulman Andrew Brown Ralf D Maxey David Michels Raymond J Kyle Jim 1994 November 1993 Undocumented DOS A programmer s guide to reserved MS DOS functions and data structures expanded to include MS DOS 6 Novell DOS and Windows 3 1 2 ed Reading Massachusetts Addison Wesley ISBN 0 201 63287 X ISBN 978 0 201 63287 3 xviii 856 vi pages 3 5 inch floppy Errata 1 2 Brown Ralf D et al eds 2000 07 16 Ralf Brown s Interrupt List 61 ed INTER61 a b Paul Matthias R 1997 07 30 1994 05 01 NWDOS TIPs Tips amp Tricks rund um Novell DOS 7 mit Blick auf undokumentierte Details Bugs und Workarounds MPDOSTIP in German 3 ed Archived from the original on 2017 09 10 Retrieved 2014 08 06 NB NWDOSTIP TXT is a comprehensive work on Novell DOS 7 and OpenDOS 7 01 including the description of many undocumented features and internals It is part of the author s yet larger MPDOSTIP ZIP collection maintained up to 2001 and distributed on many sites at the time The provided link points to a HTML converted older version of the NWDOSTIP TXT file 3 a b Paul Matthias R 1997 06 07 April 1994 Chapter 1 3 xi Uberlange Pfade NWDOS7UN TXT Zusammenfassung der dokumentierten und undokumentierten Fahigkeiten von Novell DOS 7 MPDOSTIP in German Archived from the original on 2016 11 07 Retrieved 2016 11 07 a b Brothers Hardin Rawson Tom Conn Rex C Paul Matthias R Dye Charles E Georgiev Luchezar I 2002 02 27 4DOS 8 00 online help Technical Note Using DESCRIPT ION Chestertown Maryland USA JP Software Inc 1989 Archived from the original on 2016 03 18 NB Known IDs include 0x23 as used by various utilities written by Matthias R Paul for space separated lists of text key value pairs holding file properties as extended attributes like CP codepages PC language codes CW bit width XS page width YS page length XO print x offset YO print y offset CR copyright URL source link etc 0x25 being used by programs using CUI LIB to store pseudo environment variables 0xED being reserved for Digital Research Novell Caldera and 0xFD for FreeDOS Davis Jeremy FreeCom and 4DOS DESCRIPT ION files FreeDOS tech note FreeDOS Archived from the original on 2016 11 11 Retrieved 2016 11 11 Paul Matthias R 1997 05 01 1995 03 01 Hinweise zu JPSofts 4DOS 5 5b c 5 51 5 52a und NDOS MPDOSTIP in German Archived from the original on 2016 11 04 Retrieved 2015 05 08 NB The provided link points to a HTML converted version of the 4DOS5TIP TXT file which is part of the MPDOSTIP ZIP collection 4 Novell 1999 02 11 TID1002030 Windows NT Long File Names on NetWare Archived from the original on 2011 06 06 Retrieved 2007 12 03 4690 OS Programming Guide Version 5 2 PDF IBM 2007 12 06 IBM document SC30 4137 01 Archived from the original PDF on 2022 01 25 Retrieved 2018 09 03 External links editThe filesystems howto Current version of DOSLFN Original Author of DOSLFN Archived 2013 05 28 at the Wayback Machine VFAT OS2 Provides LFN support under OS2 Retrieved from https en wikipedia org w index php title Long filename amp oldid 1197815355, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.