|
A computer file is a piece of arbitrary information, or resource for storing information, that is available to a computer program and is usually based on some kind of durable storage. A file is durable in the sense that it remains available for programs to use after the current program has finished. Computer files can be considered as the modern counterpart of the files of printed documents that traditionally existed in offices and libraries, which are the source of the term.
File contents As far as the operating system is concerned, a file is in most cases just a sequence of binary digits. At a higher level, where the content of the file is being considered, these binary digits may represent integer values or text characters, or anything else; Turing completeness shows that the bits might represent anything. It is up to the program using the file to understand the meaning and internal layout of information in the file and present it to a user as a document, image, song, or program. At any instant in time, a file has might have a size, normally expressed in bytes, that indicates how much storage is associated with the file. In most modern operating systems the size can be any whole number up to a system limit. However, the general definition of a file does not contstain its instant size as having any real meaning, unless the data within the file happens to correspond to data within a pool of persistent storage. For example, the file to which the link /bin/ls points in a typical Unix-like system probably has a defined size that seldom changed. Compare this with /dev/null. This is a file, but its size may be open to question. Information in a computer file can consist of smaller packets of information (often called records or lines) that are individually different but share some trait in common. For example, a payroll file might contain information concerning all the employees in a company and their payroll details; each record in the payroll file concerns just one employee, and all the records have the common trait of being related to payroll—this is very similar to placing all payroll information into a specific filing cabinet in an office that does not have a computer. A text file may contain lines of text, corresponding to printed lines on a piece of paper. Alternatively, a file may contain an arbitrary binary image (a BLOB) or it may contain an executable. The way information is grouped into a file is entirely up to the person designing the file. This has led to a plethora of more or less standardized file structures for all imaginable purposes, from the simplest to the most complex. Most computer files are used by computer programs. These programs create, modify and delete files for their own use on an as-needed basis. The programmers who create the programs decide what files are needed, how they are to be used and (often) their names. In some cases, computer programs manipulate files that are made visible to the computer user. For example, in a word-processing program, the user manipulates document files that she names herself. The content of the document file is arranged in a way that the word-processing program understands, but the user chooses the name and location of the file, and she provides the bulk of the information (such as words and text) that will be stored in the file. Many applications pack all their data files into a single file, using internal markers to discern the different types of information contained within. The data files used by games such as Doom and Quake are examples of this. Files on a computer can be created, moved, modified, grown, shrunk and deleted. In most cases, computer programs that are executed on the computer handle these operations, but the user of a computer can also manipulate files if necessary. For instance, Microsoft Word files are normally created and modified by the Microsoft Word program in response to user commands, but the user can also move, rename, or delete these files directly by using a file manager program such as Windows Explorer (on Windows computers). In Unix-like systems, user-space processes do not normally deal with files at all; the operating system provides a level of abstraction which means that almost all interaction with files from user-space is through hard links. Hard links allow a name to be associated with a file (or they can be anonymous - and therefore temporary); files do not have names in the OS. For example, a user-space program cannot delete a file; it can delete a link to a file (for example, using the shell commands rm or mv or, in the anonymous case, simply by exiting), and if the kernel determines that there are no more existing links to the file, it may then delete the file. In fact, it really is only the kernel that deals with files, but it serves to handle all user-space interaction which (virtual) files in a manner that is transparent to the user-space programs. Semantics Although the way programs manipulate files varies according to the operating system and file system involved, the following operations are typical: Identifying and organizing files
Protecting files Many modern computer systems provide methods for protecting files against accidental and deliberate damage. Computers that allow for multiple users implement file permissions to control who may or may not modify, delete, or create files and folders. A given user may be granted only permission to modify a file or folder, but not to delete it; or a user may be given permission to create files or folders, but not to delete them. Permissions may also be used to allow only certain users to see the contents of a file or folder. Permissions protect against unauthorized tampering or destruction of information in files, and keep private information confidential by preventing unauthorized users from seeing certain files. Another protection mechanism implemented in many computers is a read-only flag. When this flag is turned on for a file (which can be accomplished by a computer program or by a human user), the file can be examined, but it cannot be modified. This flag is useful for critical information that must not be modified or erased, such as special files that are used only by internal parts of the computer system. Some systems also include a hidden flag to make certain files invisible; this flag is used by the computer system to hide essential system files that users must never modify Storing files In physical terms, most computer files are stored on hard disks—spinning magnetic disks inside a computer that can record information indefinitely. Hard disks allow almost instant access to computer files. On large computers, some computer files may be stored on magnetic tape. Files can also be stored on other media in some cases, such as writeable compact discs, Zip drives, etc. Backing up files When computer files contain information that is extremely important, a back-up process is used to protect against disasters that might destroy the files. Backing up files simply means making copies of the files in a separate location so that they can be restored if something happens to the computer, or if they are deleted accidentally. There are many ways to back up files. Most computer systems provide utility programs to assist in the back-up process, which can become very time-consuming if there are many files to safeguard. Files are often copied to removable media such as writeable CDs or cartridge tapes. Copying files to another hard disk in the same computer protects against failure of one disk, but if it is necessary to protect against failure or destruction of the entire computer, then copies of the files must be made on other media that can be taken away from the computer and stored in a safe, distant location. File systems and file managers The way a computer organizes, names, stores and manipulates files is globally referred to as its file system. All computers have at least one file system; some computers allow the use of several different file systems. For instance, on newer MS Windows computers, the older FAT-type file systems of MS-DOS and old versions of Windows are supported, in addition to the NTFS file system that is the normal file system for recent versions of Windows. Each system has its own advantages and disadvantages. Standard FAT allow only eight-character file names (plus a three-character extension) with no spaces, for example, whereas NTFS allows much longer names that can contain spaces. You can call a file Payroll records in NTFS, but in FAT you would be restricted to something like payroll.dat (unless you were using VFAT, a FAT extension allowing long file names). File-manager programs are utility programs that allow you to manipulate files directly. They allow you to move, create, delete and rename files and folders, although they do not actually allow you to read the contents of a file or store information in it. Every computer system provides at least one file-manager program for its native file system. Under Windows, the most commonly used file manager program is Windows Explorer. History
Notes See also | ||||||||||||
|
| |||||||||||||
![]() |
|
| |