Skip to content
Home

UNIX: history, design, and influence

UNIX is a family of multitasking, multiuser operating system concepts originating at Bell Labs. This article covers its origins, architecture, interfaces, variants, standards, and lasting influence.

Overview

UNIX refers to an influential family of operating system designs and implementations that emphasize simple composable tools, a hierarchical file system, clear abstractions for processes and input/output, and a terse but powerful command environment. The word is used for the original systems developed at Bell Labs and for later systems that follow the same interfaces and behavior. At the technical level, UNIX was created as an operating system intended for multiuser, multitasking use, with early and strong support for networking and text-based utilities.

Image gallery

9 Images

Origins and early development

Work that produced the earliest UNIX systems began in 1969 at Bell Labs. A small team including Ken Thompson, Dennis Ritchie and Douglas McIlroy developed the initial system. The first implementations were produced in assembly language (assembly), but a major turning point came when the code was rewritten in the C programming language in the early 1970s. Rewriting the system in C improved portability, making it practical to run the same source on different hardware and accelerating the system's spread into universities, research labs and industry. For basic chronology and milestones, see summaries of the project's origins and dates.

Design principles and key characteristics

UNIX was designed as a multiprocessing and multiuser system that can run many application processes concurrently. The system encouraged writing small, single-purpose programs that could be combined using simple mechanisms such as pipes. Resources, including hardware devices, are represented in a unified namespace rooted in a hierarchical file system. User isolation and access control are provided through a standard account model and file permissions that help each user account protect personal files.

Kernel, userland and interfaces

Architecturally, UNIX separates core operating system services (the kernel) from the user-level tools and libraries (often called the userland). The kernel manages processes, scheduling, memory, devices and low-level file access; userland supplies shells, utilities, compilers and system daemons. Interaction is commonly via a command interpreter called a shell, which accepts typed commands and scripts. Shells and scripting remain powerful ways to automate administration and to glue programs together in pipelines.

Files, processes and interprocess communication

The UNIX process model treats running programs as processes with parent/child relationships and well-defined signals and exit statuses. Interprocess communication uses pipes, file-based sockets and other primitives to pass data and coordinate work. The file system does double duty as storage and namespace; devices, sockets and FIFOs can appear in the same tree as ordinary files, a design that simplifies programming and administration.

Graphical environments and desktop systems

While command-line use is central, UNIX systems also support graphical user interfaces. A common windowing layer historically is the X Window System, which provides network-transparent drawing primitives and input handling but not desktop behavior. Desktop usability is provided by window managers and full desktop environments; examples include GNOME, KDE, WindowMaker and Xfce. These environments supply windows, panels, menus and mouse support (mouse) and make the system accessible to users accustomed to point-and-click workflows.

Variants, standardization and the name UNIX

Several families of UNIX and UNIX-like systems evolved. Important historical branches include the original AT&T releases and the Berkeley Software Distribution (BSD) line developed at the University of California. Commercial vendors produced their own derivatives, and academic projects contributed many tools and networking advances. To improve compatibility, formal standards such as POSIX were developed; the UNIX name itself is a registered trademark managed by standards organizations, and some systems seek certification to demonstrate compliance with the Single UNIX Specification.

Influence and ecosystem

Many modern systems adopt UNIX ideas without reusing the original source code. For example, Linux is widely described as Unix-like: it shares the design philosophy, command names and interfaces without being derived from AT&T code. A large ecosystem of free and proprietary software is available for UNIX and Unix-like systems; much of it is published as open-source software. The cultural set of preferences and technical patterns often called the Unix philosophy—small composable tools, text-based interfaces, and scripting—remains influential in modern software development and system administration.

Networking, security and administration

Networking was a primary concern early in UNIX history, and many standard networking tools and daemons originated in this environment. Because multiple people can access a system directly or via a network, attention to computer security—proper user permissions, authentication methods and isolation of services—is essential. System administration tasks typically include user account management, service configuration, package or software installation, monitoring and backup; many administrators perform these tasks using shells, scripts and configuration files.

Use cases and legacy

UNIX and its descendants are widely used in servers, scientific computing, development platforms and embedded devices. Its emphasis on modular tools, stable abstractions and portability made it well suited to varied hardware and long-lived software projects. The lessons of UNIX continue to inform operating system design, programming practices and system management in contemporary computing.

For further reading and specialized topics, consult historical retrospectives, archives and technical collections that document the early work at Bell Labs and the later development of standards and distributions. See also related topics on origins and dates, graphical user interfaces, and community repositories that catalog software for the X ecosystem and desktop environments.

Variant typology

Since the term "UNIX" in capital letters or "UNIX" in small caps is a registered trademark of the Open Group, only certified systems may use the name UNIX. Accordingly, "UNIX" is commonly used in technical literature to denote certified systems, while "Unix" is used to denote all Unix-like systems.

Unix-like systems can be divided into UNIX derivatives and unixoid systems. UNIX derivatives include, for example, the BSD systems, HP-UX (Hewlett-Packard), DG/UX (Data General), AIX (IBM), IRIX (Silicon Graphics), UnixWare (SCO Group), 386/ix (first Eastman Kodak, later SunSoft), Solaris (Oracle), AMIX (Commodore), and macOS (Apple).

Other systems such as Linux or QNX, on the other hand, are not based on the original Unix source code, but were developed separately. They are called "unixoid systems" because they also implement a part of the operating system functions (POSIX) defined in a standardized way for Unix. A special case is BSD, which was originally based on Bell Labs source code, but since the mid-1990s has been completely rewritten by a loose community of programmers, so that it is now free of the original, proprietary program code.

Distribution

Originally mainly used in the university sector, from the 1980s and 1990s it was mainly used in professional workstations and on servers. With Linux, macOS (until 2016 OS X and originally, until 2012, Mac OS X) and as the basis of several widespread operating systems for mobile devices, it also reached the mass market for home users from around the 2000s. The two most widely used operating systems for smartphones and tablet computers, iOS and Android, are based on unixoid operating systems with BSD (iOS) and Linux (Android), respectively. As of September 2013, over one billion Android devices alone were activated worldwide. For 2013, the market research company Gartner Group predicted that, for the first time, more Android-based systems would be sold than PCs with Windows. In addition, Linux gained greater importance as an open source operating system for corporate applications and as an embedded system for electronic devices such as WLAN routers or consumer electronics devices.

Since the Unix-like Linux can be very flexibly adapted and optimized, it has also become widespread in data centers, where specially adapted versions run on mainframes, computer clusters (see Beowulf) or supercomputers. The systems listed in the TOP500 list of fastest computer systems are currently (as of November 2018) run exclusively on Linux. Windows, the biggest competitor in the desktop sector, does not play a role in the supercomputers.

Questions and answers

Q: What is UNIX?

A: UNIX is a computer operating system that was first developed in 1969 at Bell Labs.

Q: Who created UNIX?

A: Ken Thompson, Dennis Ritchie, Douglas McIlroy, and others created it.

Q: How was UNIX written?

A: It was written using assembly language.

Q: What does the Unix operating system allow for?

A: The Unix operating system allows for multiple users and processes to run simultaneously on the same machine or network of computers.

Q: What is the "Unix philosophy"?

A: The "Unix philosophy" refers to the idea that many other operating systems have copied ideas from Unix, leading to its influence being seen across many different types of systems.

Q: Is Linux a type of UNIX?

A: No, Linux does not use code from UNIX but instead shares some of the ideas and commands which makes it a "Unix-like" system rather than an actual UNIX system.

Q: What are two ways to use a Unix system?

A: Two ways to use a Unix system are with the command line interface or with a graphical user interface (GUI).

Related articles

Author

AlegsaOnline.com UNIX: history, design, and influence

URL: https://en.alegsaonline.com/art/103399

Share

Sources