The Linux Programming Interface

(nextflipdebug5) #1

HISTORY AND STANDARDS


Linux is a member of the UNIX family of operating systems. In computing terms,
UNIX has a long history. The first part of this chapter provides a brief outline of
that history. We begin with a description of the origins of the UNIX system and the
C programming language, and then consider the two key currents that led to the
Linux system as it exists today: the GNU project and the development of the Linux
kernel.
One of the notable features of the UNIX system is that its development was not
controlled by a single vendor or organization. Rather, many groups, both commer-
cial and noncommercial, contributed to its evolution. This history resulted in many
innovative features being added to UNIX, but also had the negative consequence
that UNIX implementations diverged over time, so that writing applications that
worked on all UNIX implementations became increasingly difficult. This led to a
drive for standardization of UNIX implementations, which we discuss in the sec-
ond part of this chapter.


Two definitions of the term UNIX are in common use. One of these denotes
operating systems that have passed the official conformance tests for the Sin-
gle UNIX Specification and thus are officially granted the right to be branded
as “UNIX” by The Open Group (the holders of the UNIX trademark). At the
time of writing, none of the free UNIX implementations (e.g., Linux and
FreeBSD) has obtained this branding.
Free download pdf