Linux and the Unix Philosophy
Overview
The philosophy of one century is the common sense of the next
Chinese fortune cookie
Many people credit Ken Thompson of AT&T with inventing the Unix operating system and, in a sense, they're right. Thompson wrote the first Unix version in 1969 at AT&T's Research Division of Bell Laboratories in Murray Hill, New Jersey. It ran on a Digital PDP-7 minicomputer as a platform for the program Space Travel. Space Travel originally ran on the Multics system, developed at the Massachusetts Institute of Technology.
Unix is based on Multics, one of the first timesharing operating systems. Before the development of Multics, most computer operating systems operated in batch mode, forcing programmers to edit large stacks of punched cards or paper tape. Programming in those days was a very time-consuming process. It was a period when the saying "Heaven help the twit who drops his box of punch cards" was readily understood by all.
Thompson borrowed many features of Multics and included them in his early versions of Unix, the principal characteristic being that of timesharing. Without this capability, most of the features taken for granted in today's Unix systems-and in most other operating systems for that matter-would lack real power.
By borrowing ideas from Multics, Thompson embarked upon a course of action that has become a well-worn path (no pun intended) for Unix developers: Good programmers write great software; great programmers "steal" great software. No, we're not implying that Thompson was a thief. But his willingness to avoid the "not invented here" (NIH) syndrome in some respects and yet add creative value in some others helped launch possibly the most ingenious operating system in history. We'll explore the significance of "stealing" software later. For now, bear in mind that an idea shared is worth two kept in the brain.