10:24 AM in linux
In April 1991, Linus Torvalds , a 21-year-old student at the University of Helsinki , Finland started working on some
simple ideas for an operating
system. He started with a task switcher in Intel 80386 assembly language and a terminal driver . On 26 August 1991, Torvalds posted the
following to comp.os.minix, a newsgroup on Usenet: 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 [...] 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 :-(. [...] It's mostly in C, but
most people wouldn't
call what I write C. It
uses every conceivable
feature of the 386 I
could find, as it was also a project to teach me
about the 386. As
already mentioned, it
uses a MMU, for both paging (not to disk yet)
and segmentation. It's
the segmentation that
makes it REALLY 386
dependent (every task
has a 64Mb segment for code & data - max 64
tasks in 4Gb. Anybody
who needs more than
64Mb/task - tough
cookies). [...] Some of
my "C"-files (specifically mm.c) are almost as
much assembler as C. [...]
Unlike minix, I also
happen to LIKE
interrupts, so interrupts
are handled without trying to hide the reason behind them.[11] After that, many people
contributed code to the
project. Early on, the MINIX community contributed code
and ideas to the Linux kernel.
At the time, the GNU Project had created many of the
components required for a
free operating system, but its
own kernel, GNU Hurd, was incomplete and unavailable.
The BSD operating system had not yet freed itself from legal encumbrances. Despite the limited functionality of the
early versions, Linux rapidly
accumulated developers and
users. By September 1991, Linux
version 0.01 was released,
uploading it to the FTP server
(ftp.funet.fi) of the Helsinki
University of Technology
(HUT). It had 10,239 lines of code. In October 1991, Linux version 0.02 was released. [12] In December 1991, Linux 0.11
was released. This version was
the first to be self-hosted - Linux 0.11 could be compiled
by a computer running Linux
0.11. When he released version
0.12 in February 1992, Torvalds
adopted the GNU General Public License (GPL) over his previous self-drafted license,
which had not permitted commercial redistribution.[13] A newsgroup known as
alt.os.linux was started, and
on 19 January 1992, the first
post to alt.os.linux was made. [14] On 31 March 1992, alt.os.linux became comp.os.linux. [15] The X Window System was soon ported to Linux. In
March 1992, Linux version 0.95
was the first to be capable of
running X. This large version
number jump (from 0.1x to
0.9x) was due to a feeling that a version 1.0 with no major
missing pieces was imminent.
However, this proved to be
somewhat overoptimistic,
and from 1993 to early 1994,
15 development versions of version 0.99 appeared. On 14 March 1994, Linux 1.0.0
was released, with 176,250
lines of code. In March 1995,
Linux 1.2.0 was released
(310,950 lines of code). Version 2 of Linux, released on
9 June 1996, was followed by
additional major versions
under the version 2 header: 25 January 1999 - Linux
2.2.0 was released
(1,800,847 lines of code). 18 December 1999 - IBM mainframe patches for 2.2.13 were published,
allowing Linux to be used
on enterprise-class
machines. 4 January 2001 - Linux 2.4.0
was released (3,377,902
lines of code). 17 December 2003 - Linux
2.6.0 was released
(5,929,913 lines of code). 14 March 2011 - Linux 2.6.38
was released (14,294,439 lines of code).[16] In July 2009 Microsoft submitted Hyper-V drivers to the kernel, which improve the
performance of virtual Linux
guest systems in a Windows hosted environment.
Microsoft was forced to
submit the code when it was
discovered that Microsoft had
incorporated a Hyper-V
network driver with GPL- licensed components statically
linked to closed-source binaries.
Read more