Please Enter Your Search Term Below:
 Websearch   Directory   Dictionary   FactBook 
  Wikipedia: Filename extension

Wikipedia: Filename extension
Filename extension
From Wikipedia, the free encyclopedia.

A filename extension or filename suffix is an extra set of (usually) alphanumeric characterss that is appended to the end of a filename to allow computer users (as well as various pieces of software on the computer system) to quickly determine the type of data stored in the file (the file format).

Filename extensions have been in use for decades, but they have gained common usage because of operating systems like DOS and Windows, which had severe limitations on filenames for many years. They can be considered as a type of metadata, though one of the most visible pieces of such information on modern computer systems.

Generally, filename extensions are one, two, or three characters in length, but they can be much longer if the computer system permits.

Historical limitations

DOS had a limitation that only eleven characters could be used to name files. This 11 character space was divided into two parts separated by a period (.) or dot. The first part, consisting of eight characters, was generally called the filename or the base name. The last three were called the filename extension. Since the word filename is eight letters long and ext is a common abbreviation for extension, this can be simply demonstrated as:

FILENAME.EXT

When doing a file listing, the base name and extension would be separated by spaces, much like this:

 Volume in drive A: is LINUX BOOT \r\n Volume Serial Number is 2410-07EF\r\nDirectory for A:\\\r\n\r\nLDLINUX  SYS      5480 1999-04-19  23:24 \r\nVMLINUZ         530921 1999-04-19  23:24 \r\nBOOT     MSG       559 1999-04-19  23:24 \r\nEXPERT   MSG       668 1999-04-19  23:24 \r\nGENERAL  MSG       986 1999-04-19  23:24 \r\nKICKIT   MSG       979 1999-04-19  23:24 \r\nPARAM    MSG       875 1999-04-19  23:24 \r\nRESCUE   MSG      1020 1999-04-19  23:24 \r\nSYSLINUX CFG       420 1999-04-19  23:24 \r\nINITRD   IMG    878502 1999-04-19  23:24 \r\n       10 files           1,420,410 bytes\r\n                             35,840 bytes free

The use of spaces often led to confusion with novice DOS users.

The need for more

In addition to being generally confusing, the severe restrictions on the number of available characters would lead to difficulty in understanding filenames, and sometimes led to extension naming conflicts between different pieces of software (more on this below).

Other operating systems, such as Unix and MacOS, generally had much more liberal standards for filenames. Many allowed full filename lengths of approximately 32 characters, and ranges up to 255 were not uncommon. These systems generally allowed for variable-length filename extensions, and also tended to allow more than one dot. As the Internet age arrived, it was possible to discern who was using Windows systems to edit their web pages versus who used Macintosh or Unix computers, since the Windows users were generally restricted to ending their web page filenames in .HTM (instead of .html). This also became a problem with programmers experimenting with the Java programming language, since it required source code files to have the four-letter extension .java and compiled object code output files to have the five-letter .class extension.

Eventually, Microsoft introduced long filenames and an extended version of the commonly used FAT file system called VFAT to deal with this issue. (Microsoft and IBM had previously collaborated on the High Performance File System (HPFS), used in OS/2 and later in Windows NT as NTFS, which did not have strict limitations either.) VFAT's long filenames are largely considered to be an ugly kludge, but they removed the important length restriction and allowed files to have a mix of upper case and lower case letters.

As mentioned previously, the filename extension is generally used to easily determine the file's type. Generic examples include using .GFX for graphics files, .TXT for plain text, and .MUS for music. However, because many different software programs have been made that all handle these data types (and others) in a variety of ways, filename extensions started to become closely associated with certain products—even specific product versions. For example, early WordStar files used .WS or .WSn, where n was the program's version number. Also, filename extensions began to conflict between separate files. One example is .rpm, used by both the RPM Package Manager and RealPlayer (for RealPlayer Media files). These issues lead to the need for alternative systems that have lower chances of conflicts.

Alternatives

Other operating systems often use the same filename extensions that were popularized with DOS, but they sometimes have their own methods (usually using hidden metadata) for handling file type information. MacOS used four character codes or FourCCs to store information about the file type as well as the file type's originating author or organization (Apple Computer's own FourCC is AAPL). FourCC data would be stored in a resource fork on the filesystem. Microsoft/IBM's HPFS sometimes used extended attributes to store file type information. On Unix, many files contain magic numberss—special character strings located at the beginnings of files. One well-known magic number is the hexadecimal 0xCAFE, used at the beginning of Java .class files. In the Internet age, MIME types have become popular for file type classification, usually consisting of two words separated by a slash, such as text/plain or image/jpeg.

Security issues

Depending on the settings of the shell/file browser the file extension may not be shown. Malicious users who spread a computer virus or computer worm may use a file name like LOVE-LETTER-FOR-YOU.TXT.vbs which then shows up as LOVE-LETTER-FOR-YOU.TXT. However, it only shows up in this way if the user has file extensions disabled (which is the default behavior of Microsoft's software). Therefore, to a user who has file extensions hidden, this looks like a harmless text file rather than a potentially dangerous computer program written in VBScript.

See also

External links


  

From Wikipedia, the free encyclopedia. 
Modified by Geona