Linux Guide | Part 1

Linux Guide | Part 1

Linux Guide

Linux is a core operating system used by the family GNU / Linux Unix-like operating systems. He is one of the most prominent examples of free software.

Linux is distributed under the GNU General Public License version 2 (GPLv2), most proprietary licenses to some binaries blots (in English: binary blobs) controversial, and is developed by developers around the world. The daily development occurs from the Linux kernel mailing list.

Linux was originally conceived and created by the student in the Department of Computer Science, University of Helsinki in Finland, Linus Torvalds with the assistance of several volunteer programmers through Usenet in 1991. Linux developers and users quickly amassed who adopted code from other Free Software projects. Linux have received contributions from thousands of programmers and many GNU / Linux have been released based on it.

Linux History

In March 1991, Linus Torvalds, a college students back to 21 years old at the University of Helsinki, Finland began to work on some simple ideas for developing the nucleus, as a particular design, inspired by his interest in Minix, a small UNIX system developed by Andrew S. Tanenbaum. His steps can be followed by thread comp.os.minix, where messages can be viewed at / group / comp.os.minix / topics. He started with an alternator assembly language in the context of the Intel 80386 controller and a terminal. On June 3, 1991 he tried to get the POSIX specification, then, on 26 August 1991, Torvalds posted the following message to comp.os.minix, a newsgroup on Usenet:

He said:
“I’m doing an operating system (free) (just a hobby, will not be big and professional like gnu) for AT clones 386 (486). He has matured since April and is getting ready. I’d like any feedback on things people like / dislike in minix, as my OS reminds you somewhat (same physical layout of the file system (due to practical reasons) among other things).

I 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 Yes – it’s free of any minix code, and it has a file system with multiple threads of execution. It is NOT portable (uses 386 of the context switching etc), and he probably never will support anything other than AT hard disks, since that is all that I have :-(.

It is written mainly in C, but most people would not call what I write C. He uses every conceivable feature of the 386 that I could find, and he was also a project to teach me about the 386. As already mentioned, it uses a memory management unit, for both paging (not to disk yet) and segmentation. The segmentation that REALLY makes depending on 386 (each task has a 64Mb segment for code & data – up to 64 tasks in 4Gb. Anyone who needs more than 64Mb/tarefa – is tough). Some of my files “C” (specifically MM.C) are almost as assembly language and C. Unlike minix, I also happen to LIKE interrupts, so interrupts are handled without the attempt to hide the reason behind them.”

After that, many people have contributed code to the project. Earlier, the MINIX community contributed code and ideas to Linux. At the time, the GNU Project had created many of the components required for a free operating system, but its very core, GNU Hurd, was incomplete and unavailable. The BSD operating system had not yet freed from legal encumbrances. Despite the reduced functionality of the early versions, Linux rapidly accumulated developers and users.

By September 1991, 00:01 Linux version was released, and envianda to the FTP server ( from Helsinki University of Technology (in English: HUT), he had 10,239 lines of code. In September 1991, the Linux version 0.02 was released.

In December 1991, Linux 0.11 was released. This version was the first to be self-hosted – 00:11 Linux could be compiled by a computer running Linux 0.11. As he released Version 0.12 in February 1992, Torvalds adopted the GNU General Public License (GPL) instead of the previous license, written by himself and did not allow commercial redistribution.

A newsgroup called alt.os.linux began, and January 19, 1992, the first message was sent alt.os.linux. On 31 March 1992 alt.os.linux Became m.. linux.

The X Window System was soon ported to Linux. In March 1992, the 0.95 version of Linux was the first to be able to run X. This long version number jump from 0.1x to 0.9x, was due to the impression that a 1.0 version with no feature missing was imminent. However, this ended up tasting a little overoptimistic, and from 1993 until early 1994, 15 development versions of version 0.99 appeared.

On March 14, 1994, Linux 1.0.0 was released, with 176,250 lines of code. In March 1995, Linux 1.2.0 was released, with 310,950 lines of code.

The second version of Linux, released on 09 June 1996, was succeeded by versions more important under the header for version 2:

  • January 25, 1999 – Linux 2.2.0 is released (1,800,847 lines of code).
  • December 18, 1999 – IBM mainframe patches for 2.2.13 are published, allowing Linux to be used in enterprise-class machines.
  • January 4, 2001 – Linux 2.4.0 is released (3,377,902 lines of code).
  • December 17, 2003 – Linux 2.6.0 is released (5,929,913 lines of code).
  • February 24, 2010 – Linux 2.6.33 is released (12,990,041 lines of code).

Contributions of Microsoft

In June 2009, Microsoft contributed 20,000 lines of code to Linux. The contributions consisted of drivers (in English: drivers) for Hyper-V, which improved the performance of virtual systems in a Linux guest environment hosted on Windows. Microsoft licensed its controllers Hyper-V Linux under the GPL. Microsoft was forced to make the code contribution when the chief engineer and contributor to Linux Vyatta Stephen Hemminger found that Microsoft had built a network controllers Hyper-V, with free components under the GPL, and statically linked binaries closed source in violation of the GPL license.

Microsoft contributed the drivers to correct the violation of the license, though the company has tried to describe it as a charitable act, rather than just to avoid legal action against him …

The device drivers contributed by Microsoft were not supported by Microsoft and it left them at risk of being abandoned in version 2.6.33 kernel. The probability of removal of device drivers work resulted in an abrupt Microsoft developers in maintaining them, but their efforts did not last, and the code is proposed for removal in 2.6.35 kernel version.