1 Linux Distributions
Total Page:16
File Type:pdf, Size:1020Kb
1 Linux Distributions: A History and its Modern-Day Applications Caswell Hennig Department of Information Science, Marymount University IT 315: Operating Systems and Virtualization Mr. Hossein Beyzavi May 7, 2020 2 Abstract Linux distributions are very important in today’s world to utilize the power of the operating system effectively by having everything you need to get up and running in one package. Linux began in 1991 as a personal project by Finnish student Linus Torvalds, to create a new free operating system kernel for personal computers based on the Intel x86 architecture. The resulting Linux kernel has had large constant growth throughout its history and has since been ported to more platforms than any other operating system. Since the initial release of its source code in 1991, it has grown from a small number of C files to 23.3 million lines of source code. Linux is now also used not only for personal computing but is the leading operating system on servers and other systems such as mainframe computers. Linux also runs on embedded systems, such as routers, automation controls, televisions, digital video recorders, video game consoles, and smartwatches. Linux is one of the most prominent examples of free and open-source software collaboration, which means that the source code may be freely used, modified, and distributed. Keywords: Linux, distribution, Ubuntu, Debian, KNOPPIX, kernel, Live CD, Live USB, Linux Mint, Fedora, Gentoo, Slackware, openSUSE, UNIX 3 Linux: The Beginnings By its modern definition, Linux refers to a group of operating system distributions built around the Linux kernel. In the strictest sense, though, Linux refers only to the presence of the kernel itself. To build out a full operating system, Linux distributions often include tooling and libraries from the GNU project, as well as other sources (Juell, 2017). Linux has its roots in UNIX and Multics, two projects that shared the goal of developing a robust operating system that could accommodate multiple users. UNIX and Multics UNIX developed out of the Multics, or Multiplexed Information and Computing Service, project iteration at the Bell Laboratories’ Computer Sciences Research Center. Multics, which is a mainframe time-sharing operating system that was developed during 1963 through 1969 period through the collaboration of the aforementioned Bell Labs, along with the Massachusetts Institute of Technology (MIT), and General Electric (GE), was one of the first operating systems that used page-segmented storage (Rouse, 2005). Bell Labs stopped funding the Multics project in 1969, as they were disappointed with the progress that had been made, but a group of computer scientists, including Ken Thompson and Dennis Ritchie, continued working with the project’s core principles, which ended up culminating in the development of UNIX. Thompson and Ritchie first led a team of Bell Labs researchers to develop a hierarchical file system, a command-line interpreter, some small utility programs, and the concepts of computer processes and device files, which were a very big improvement for the time. A month later, Thompson and his coworkers had deployed a full self-hosting operating system with an assembler, an editor, and a shell, which ended up being UNIX (Rouse, 2017). 4 Ever since the team at Bell Labs developed UNIX, it has seen tremendous growth over the years, especially after the fourth version was released, which translated the code from assembly language into C, a high-level programming language, which increased its portability to other computing platforms. Due to this popularity, many universities and research institutions adopted UNIX as an emerging technological advancement that showed promise, and as a result, many students during that era were introduced to it, such as a Linus Torvalds, a graduate student at the Helsinki University of Technology in Finland. The Creation of Linux In 1991, while studying computer science at the University of Helsinki, graduate student Linus Torvalds began a personal project to create a new free operating system kernel for personal computers, which later became what we know as the Linux kernel. He wrote the program specifically for the hardware he was using, independent of an operating system because he wanted to make the program so that it would be universally compatible with his Intel 80386 processor. According to Torvalds, during a TED Talk in 2016: I did not start Linux as a collaborative project. I started it as one in a series of many projects I had done at the time for myself, partly because I needed the end result, but even more because I just enjoyed programming. Also, he mentioned that the main reason for him embarking on his project was his gripe about the fact that there was no true, open-source operating system available. At this point in his project, though, he had created a functional kernel, however, he didn’t have the necessary expertise and tools to turn the kernel into a functional operating system. A kernel is a necessary component of an operating system, but it can’t achieve any tasks without programs such as a 5 shell, a library, and compilers. Richard Stallman, a researcher at the Massachusetts Institute of Technology, or MIT, as well as the founder of the GNU Project, an organization whose goal is to offer 100% free UNIX-compatible software, meanwhile, had programs but lacked a functional kernel. A technological marriage of sorts was arranged between the GNU Project, located in Cambridge, Massachusetts, and the Linux kernel, located in Helsinki, Finland. The code was transmitted through the Internet to allow the union between the two developers’ systems. In other words, Linux was born on the Internet (Roberts, 2014). After this development had been finalized, Torvalds (at age 21), announced the system in a Usenet posting to the newsgroup comp.os.minix on August 25th, 1991. A screenshot of the post is shown below: As shown, Torvalds was very eager to get his new operating system out to the masses and was willing to hear suggestions from all, which is a hallmark of his operating system being open 6 source. Regarding people contributing to his code to expand on his idea, Torvalds goes on to say that: It didn't even start by people contributing code, it was more that people started contributing ideas. And just the fact that somebody else takes a look at your project – and I'm sure it's true of other things, too, but it's definitely true in code – is that somebody else takes an interest in your code, looks at it enough to actually give you feedback and give you ideas. That was a huge thing for me. (2016) Torvalds went on to have a huge amount of success with Linux, however, as the operating system grew bigger and more files were added to it, there needed to be a way for users to get their hands on the operating system without having to rely on their slow and antiquated Internet connections of the time. This gave rise to the distribution, or “distro”, as it’s more commonly known. The Rise of the Distribution The very earliest versions of Linux, in 1991, consisted of two versions, one that could be downloaded from the Internet, as mentioned previously, and another physical version which contained two floppy disks, a boot disk that contained the kernel, and a root disk that set up the file system and came with some of the basic GNU tools. Copies of these disks and the Linux source were downloadable from a server hosted by Helsinki University. As more software became available, though, this method was no longer enough, and Linux distributions came into existence. A distribution is a package containing a ready-to-run selection of available software plus installation utilities, configuration tools, and documentation, as well as the Linux kernel itself (Berlich, 2001). Most Linux distributions were created by enthusiasts who wanted to 7 spread the word and increase the availability of Linux, especially due to the original Linux source code and kernel being notoriously difficult to set up for all but the most tech-savvy users due to its lack of technical documentation. According to an article by Ruediger Berlich: The first Linux distribution was created by Owen Le Blanc at the Manchester Computing Centre (MCC) in the northwest of England. The first MCC Interim release, as it was known, was released in February 1992. This was followed shortly after by the Softlanding Linux System (SLS), founded by Peter McDonald, which was the first comprehensive distribution to contain elements such as X and TCP/IP, and the Slackware distribution maintained by Patrick Volkerding (initially based in large parts on SLS). (2001) After these three distributions were created, more and more distributions started popping up, each attempting to either fix or improve issues present in another distribution or to customize their distribution to fill a particular need in the computing market, which is still the case with Linux distributions today. Some of these distributions have matured into sophisticated enterprises, generating income from commercial support services. Some examples of these are SuSE Linux, which was founded in late 1992 which was originally based on Slackware, and Red Hat (now known as Fedora, with Red Hat being the company itself), which was founded in 1993, absorbing aspects of the BOGUS distribution, which was also created in 1993. In addition to commercial companies creating Linux distributions, there were and are purely community-driven distros, such as Debian, which was started as an independent project by Ian Murdock in late 1993 to provide a free alternative to the commercial Linux distributions, Slackware, which was mentioned previously, Gentoo, first released on July 26th, 2000, and Arch Linux, first released on March 11th, 2002.