In this chapter, we look at the history and development of Linux, and cover the user and programmer interfaces that Linux presents interfaces that owe a great deal to the UNIX tradition. We also discuss the internal methods by which Linux implements these interfaces. However, since Linux has been designed to run as many standard UNIX applications as possible, it has much in common with existing UNIX implementations. We do not duplicate the basic description of UNIX given in the previous chapter. | Module 20: The Linux System I History I Design Principles I Kernel Modules I Process Management I Scheduling I Memory Management I File Systems I Input and Output I Interprocess Communication I Network Structure I Security Operating System Concepts Silberschatz, Galvin and Gagne 2002 History I Linux is a modem, free operating system based on UNIX standards. I First developed as a small but self-contained kernel in 1991 by Linus Torvalds, with the major design goal of UNIX compatibility. I Its history has been one of collaboration by many users from all around the world, corresponding almost exclusively over the Internet. I It has been designed to run efficiently and reliably on common PC hardware, but also runs on a variety of other platforms. I The core Linux operating system kernel is entirely original, but it can run much existing free UNIX software, resulting in an entire UNIX-compatible operating system free from proprietary code. Operating System Concepts Silberschatz, Galvin and Gagne 2002 The Linux Kernel I Version (May 1991) had no networking, ran only on 80386-compatible Intel processors and on PC hardware, had extremely limited device-drive support, and supported only the Minix file system. I Linux (March 1994) included these new features: ✦ Support for UNIX’s standard TCP/IP networking protocols ✦ BSD-compatible socket interface for networking programming ✦ Device-driver support for running IP over an Ethernet ✦ Enhanced file system ✦ Support for a range of SCSI controllers for high-performance disk access ✦ Extra hardware support I Version (March 1995) was the final PC-only Linux kernel. Operating System Concepts Silberschatz, Galvin and Gagne 2002 Linux I Released in June 1996, added two major new capabilities: ✦ Support for multiple architectures, including a fully 64-bit native Alpha port. ✦ Support for multiprocessor architectures I Other new features included: ✦ Improved .