Přeskočit na hlavní obsah

History of Unix/Linux

Origin of Linux Kernel

Following article is a summary of Wikipedia's site History of Linux1.

Linux began in 1991 as a personal project by Finnish student Linus Torvalds to create a new free operating system kernel. The resulting Linux kernel has been marked by constant growth throughout its history. Since the initial release of its source code in 1991, it has grown from a small number of C files under a license prohibiting commercial distribution to the 4.15 version in 2018 with more than 23.3 million lines of source code, not counting comments, under the GNU General Public License v2 with a syscall exception meaning anything that uses the kernel via system calls are not subject to the GNU GPL.

In 1991, while studying computer science at University of Helsinki, Linus Torvalds began a project that later became the Linux kernel. He wrote the program specifically for the hardware he was using and independent of an operating system because he wanted to use the functions of his new PC with an 80386 processor. Development was done on MINIX using the GNU C Compiler.

On July 3, 1991, in an effort to implement Unix system calls in his project, Linus Torvalds attempted to obtain a digital copy of the POSIX standards documentation with a request to the comp.os.minix newsgroup. He was not successful in finding the POSIX documentation, so Torvalds initially resorted to determining system calls from SunOS documentation owned by the university for use in operating its Sun Microsystems server. He also learned some system calls from Tanenbaum's MINIX text that was a part of the Unix course.

As Torvalds wrote in his book Just for Fun, he eventually ended up writing an operating system kernel.

On 25 August 1991, he (at age 21) announced this system in another posting to the comp.os.minix newsgroup:

Hello everybody out there using minix -

I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things).

I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-)

Linus (torvalds@kruuna.helsinki.fi)

PS. Yes - it's free of any minix code, and it has a multi-threaded fs. It is NOT portable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(.

— Linus Torvalds

According to Torvalds, Linux began to gain importance in 1992 after the X Window System was ported to Linux by Orest Zborowski, which allowed Linux to support a GUI for the first time.

Open Source

Study materials

More on this topic can be found in Chapter 1.3 of LPI - Linux Essentials

Following article is a summary of Wikipedia's site Open Source2.

Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized software development model that encourages open collaboration. A main principle of open-source software development is peer production, with products such as source code, blueprints, and documentation freely available to the public. The open-source movement in software began as a response to the limitations of proprietary code.

Generally, open source refers to a computer program in which the source code is available to the general public for use or modification from its original design. Code is released under the terms of a software license.

License

Torvalds first published the Linux kernel under its own licence, which had a restriction on commercial activity.

In 1992, he suggested releasing the kernel under the GNU General Public License. He first announced this decision in the release notes of version 0.12. In the middle of December 1992 he published version 0.99 using the GNU GPL. Linux and GNU developers worked to integrate GNU components with Linux to make a fully functional and free operating system. Torvalds has stated, "making Linux GPLed was definitely the best thing I ever did."

Around 2000, Torvalds clarified that the Linux kernel uses the GPLv2 license, without the common "or later clause".

After years of draft discussions, the GPLv3 was released in 2007; however, Torvalds and the majority of kernel developers decided against adopting the new license.

Here is link to full text of License GNU GPLv2 and GNU GPLv3.

More information about different license models can be found on choosealicense.com.

Footnotes

  1. History of Linux - Wikipedia

  2. Open Source - Wikipedia