LilyYucarp

the lav kit

A brief history of Linux

Emergence of operating systems and Unics (UNIX)

The PDP-11 computer Before starting to learn about Linux, I want to mention the history of Linux and how it came to the way it is now. When electronic computers actually started to gain prominence, programmers had main tasks other than writing and debugging code, such as loading programs manually and doing operations in order to manage the program running. Programmers were spending their times loading programs after programs and it was really inefficient, especially when executing multiple programs in a row. That's when first operating systems were begun to be programmed. That type of programs enabled programmers to load programs automatically and improved efficiency significantly, according to an important engineer of that time, Robert L. Patrick. These type of programs continued to develop with the computers of that time. Computers were getting more powerful and operating systems started to become more complex. As the operating systems got widespread problems began to be more visible. Most operating systems weren't portable, meaning that an operating system could only run on a specific computer. This meant that people needed to learn how to operate another system every time they saw another type of computer. Also the operating systems of the time had complex and unique architectures, causing the operating system to be more hard to understand. Seeing these problems, a team of people in Bell Labs, including Dennis Ritchie and Ken Thompson started to work on UNIX.

UNIX

The PDP-11 computer UNIX differed from its contemporaries with some aspects. Firstly, UNIX was structurally different. While many operating systems treated files in a complex way and seperated types of files, UNIX treated files as simple byte arrays and grouped a lot of things such as devices, directories and classic files into only an object, files. Not only that, the structure of UNIX was modular, enabling changes and additions on the main operating system. Besides the structure of UNIX, another feature that seperated UNIX from its counterparts was its portability. While other operating systems was written in the machine-specific assembly code, UNIX was written in C, which was invented by Dennis Ritchie. That meant UNIX could run on any machine with minimal changes to the source code. Soon UNIX became popular and was used in a lot of workplaces. UNIX unified the operating system field and made it possible to change between different types of computers without spending time to figure out how to operate them. The availability of UNIX standard also helped the idea of the free software to be born. Most of the software written in those times was proprietary, meaning that only the people paid for a license could actually use the software. Richard Stallman announced the GNU project to make a free UNIX variant at the time, but it didn't became popular as the project couldn't produce a working kernel.

Linus Torvalds and Linux

While UNIX was popular among people using mainframes, UNIX wasn't used on home computers as it was too heavy to run efficiently. Many home computers had a small amount of computing power to use and the ones which were strong enough didn't have well-made versions of UNIX. But as the home computers became stronger, variants of UNIX was started to be used by a group of people. At those times Linus Torvalds asked for a readable format of POSIX standards, in order to write a free version of UNIX for academic use. Here is a post from Linus Torvalds, asking for a readable format of POSIX standards:
				
From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: Gcc-1.40 and a posix-question
Message-ID: <1991Jul3.100050.9886@klaava.Helsinki.FI>
Date: 3 Jul 91 10:00:50 GMT
Hello netlanders,
Due to a project I'm working on (in minix), I'm interested in the posix
standard definition. Could somebody please point me to a (preferably)
machine-readable format of the latest posix rules? Ftp-sites would be
nice.
					
Linux was a simple project when it began. It didn't support any architecture other than x86 and required another operating system to be compiled. But at that time it gained a lot of attraction. Although Linux is a big project, Linux isn't an operating system at it's own. When Linux was released first time GNU project had a lot of classic UNIX utilities rewritten, but it still lacked a functioning kernel. That's when it was decided to use the Linux kernel in the GNU project. Today (GNU/)Linux runs on a lot of computers, including mainframe computers, desktop computers, supercomputers, mobile phones and embedded systems. The free nature of Linux enabled it to be widespread and improved to the state that Linux is on today.
Before: Why this guide? Next: Properties of (GNU/)Linux