Computer file

related topics
{system, computer, user}
{math, number, function}
{theory, work, human}
{law, state, case}
{god, call, give}

A computer file is a block of arbitrary information, or resource for storing information, which 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 paper documents which traditionally are kept in offices' and libraries' files, and this is the source of the term.

Contents

History

The word "file" appeared in the context of computer storage as early as 1952, referring to information stored on punched cards.[1] In early usage people regarded the underlying hardware (rather than the contents) as a file. For example, the IBM 350 disk drives were called "disk files".[2] Systems like the 1962 Compatible Time-Sharing System featured file systems, which gave the appearance of several "files" on one storage device, leading to the modern usage of the term. File names in CTSS had two parts, a user-readable "primary name" and a "secondary name" indicating the file type.[3][4] This convention remains in use by several operating systems today, including Microsoft Windows. Although the current term "register file" shows the early concept of files, it has largely disappeared.

File contents

On most modern operating systems, files are organized into one-dimensional arrays of bytes. The format of a file, usually indicated by its file extension, specifies the rules for how the bytes of a file must be organized and interpreted meaningfully. For example, the bytes of a plain text file (*.txt in Windows) are associated with either ASCII or UTF-8 characters, while the bytes of image, video, and audio files are interpreted otherwise. Most files also allocate a few bytes for metadata which allows a file to remember some basic information about itself.

Full article ▸

related documents
Microkernel
MAME
IBM System i
Hypertext Transfer Protocol
MVS
Digital Imaging and Communications in Medicine
Bulletin board system
DEC Alpha
Device driver
Intel 80486
Video compression
Magnetic core memory
NAPLPS
Screensaver
SECAM
Router
Xerox Star
High-Level Data Link Control
Insulated-gate bipolar transistor
Graphical Environment Manager
Windows Media Audio
Software performance testing
Trillian (software)
Public land mobile network
Blitter
Vector processor
OpenGL
Lossless data compression
SIMD
Frequency-hopping spread spectrum