A Brief History of Operating Systems
Many operating systems have been released. This is a timeline of a few of the milestone events leading to some of the most prominent operating systems used today:
-
Before the mid-1960s: A number of different manufacturers produced various computers for business. Since these machines were expensive, and because there were many different manufacturers, a relatively small number of machines of each model were produced. Very little was standardized, and data was rarely interchanged between computers. Consequently, there were many different operating systems, each with a fairly small market.
-
1964/1965 - MIT and partners begin the Multics Project. This project introduced many concepts that became common in later operating systems, including a heirarchical filesystem, multitasking, and interactive operation. This project continued through 2000. However, Multics was a fairly resource-intensive operating system and ran only on very specific hardare.
-
1969 - Bell Labs decided to end their participation in the Multics project. Dennis Ritchie and Ken Thompson, Bell Labs employees who were familiar with the Multics project, decided to implement some of its features in a much lighter-weight operating system, which they called Unix. Unix was soon rewritten in the C language, and could be fairly easily ported to other types of computers.
-
1970s - Unix continued to grow in popularity. Many computer vendors licensed it and adapted it to work with their computers; some of these variants included Xenix (Microsoft), AIX (IBM), Ultrix (Digital Equipment Corporation), HP/UX (HP), and many others.
-
1976 - Microcomputers, 8-bit computers inexpensive enough to be purchased by individuals or small businesses, became widely available. Digital Research's CP/M operating system became popular on Intel- and Zilog-based microcomputers.
-
1981 - IBM decided to enter the microcomputer market with the IBM PC. Needing an operating system, IBM contacted Microsoft - but their only operating system at the time was Xenix, and the IBM PC was not powerful enough to run Xenix well, so Microsoft licensed (and later purchased) a CP/M clone named 86/DOS (also known as QDOS) from a local computer company named Seattle Computer Products. This operating system was used as the basis for Microsoft's DOS (disk operating system) product, named PC/DOS when marketed by IBM or MS/DOS when marketed by Microsoft.
-
1983 - The IBM PC was successful in the market, due to both IBM's marketing and the fact that IBM published the technical specifications which enabled other companies to sell compatible accessories, so IBM produced more powerful models including the IBM PC/XT (1983) and PC/AT (1984). These models had much larger amounts of RAM as well as hard disks, so Microsoft needed to update DOS with new features; they did this by incorporating some features from Xenix (their Unix version), including a heirarchical filesystem.
-
1984 - Richard Stallman created GNU Project and the Free Software Foundation to promote the concept of Free Software ("free" in the sense of freedom, not free of cost). The GNU project developed its own version of most of the Unix tools and utilities, and in many cases the GNU versions of the software were better than the versions distributed with Unix. However, the GNU project did not create a kernel for a long time, so the GNU software was usually used in conjunction with a commercial Unix system.
-
1984 - The X Window System is first developed at MIT to provide a cross-platform foundation for graphical user interfaces. It becomes widely used on Unix systems sold by many different vendors.
-
1985 - Microsoft introduced Windows 1.0, which was used in conjuction with DOS (users had to purchase both products). Windows provided a graphical user interface and multitasking (though both were initially very limited).
-
1991 - Linus Torvalds, a computer science student from Finland, wrote and released the Linux kernel. The Linux kernel, combined with software from the GNU project and other free software projects such as the X Window System, made a useful operating system (often referred to as "GNU/Linux" or just "Linux"). Many other software developers contributed to the project.
-
1992 - IBM and Microsoft ended their collaboration on OS/2, an advanced operating system with a graphical user interface. IBM continued independent development of OS/2, and Microsoft incorporpated a number of OS/2 concepts into Windows.
-
1993 - Microsoft introduced Windows/NT (for "New Technology"), incorporating some concepts from OS/2. Unlike previous versions of Windows which required DOS, Windows/NT provided a complete (and more advanced) operating system with a GUI and did not require DOS. All future versions of Windows were based on Windows/NT.
-
2001 - Apple released MacOS, a Unix-like operating system based on the "Darwin" kernel and incorporating some software from the GNU project.
-
2007 - A consortium of developers called the Open Handset Alliance, led by Google, released the Android operating system for mobile devices (Android was originally written as for cameras!). The Android platform is based on the Linux kernel.
The Impact of Operating System History
The impact of this lineage of operating systems is reflected in various conventions and design decisions present in the current versions of Linux and Windows.
For example, you will find many Windows commands that are completely different from Unix commands, because they were adopted from CP/M (via QDOS via DOS). You will also find some Windows commands that are identical to Unix commands, because they were directly incorporated from Xenix, such as mkdir and rmdir.
On the other hand, you'll find that Linux (and MacOS) commands are more closely related to Unix commands, because Linux and modern MacOS take their structure directly from Unix.