5. Prehistory of Linux
• The Unix operating system was developed by
Ken Thompson and Dennis Ritchie of AT&T
Bell Laboratories in 1969 and first released in
1970.
6. Prehistory of Linux
• In 1977 the University of California, Berkeley
released a free UNIX-like system, Berkeley
Software Distribution (BSD). But BSD
contained Unix code, so AT&T sued.
7. Prehistory of Linux
• In 1983, Richard Stallman started the GNU
project to create a free UNIX-like operating
system. Hurd (the GNU kernel) failed to attract
enough developers, leaving GNU incomplete.
8. Prehistory of Linux
• In 1987 Andrew S.
Tanenbaum released
MINIX, a Unix-like
system intended for
academic use. While
source code for the
system was available,
modification and
redistribution were
restricted.
9.
10. Linus Benedict Torvalds
• Born: December 28,
1969 (age 45)
• Born in Helsinki, Finland
• Chief developer on the
Linux kernel
• Created the revision
control system Git
• 2014 IEEE Computer
Society Computer
Pioneer Award
11. Linux
• Torvalds made the code of Linux freely
available to everyone on the internet, and
therefore lots of people created their own
versions of Linux.
12. Linux
• Linux is therefore an example of Open-source
software, in which the copyright holder
provides the rights to study, change and
distribute the software to anyone and for any
purpose. Open-source software is often
developed in a public, collaborative manner.
22. V0.01
• Not a mature product at the time
• Minix-like kernel for i386(+) based AT-
machines
September
1991
Efficiently using the 386
chip, use of system calls
rather than message
passing, a fully multi-
threaded FS, minimal
task switching, and
visible interrupts
23. V1.0
• Allowed Multi-programming – multiple
programs run at the same time.
• Virtual Memory management supported
March
1994
Linux is highly backwards
compatible, so if a program
worked in any version of
Linux it will work on all
versions of Linux.
24. V2.0
• Restructured memory management and
improvements in task scheduling
• Improved SCSI support
June
1996
Increased networking
protocols. Filesystem
support for NCP (Novell)
and SMB (MS Lan
Manager, etc.) network
filesystems added.
25. V3.0
• Better handling of virtualization systems
• Btrfs data scrubbing and automatic
defragmentation
July
2011
Not a major change in
kernel concept, but
started a new version
number to mark the 20th
anniversary of Linux
26. V4.0
• A *fairly* small release, some VM clean-ups
• The unification of the PROTNONE and NUMA
handling for page tables.
12th April
2015
Some people advocated
the 4.0 version number, to
eventually see 4.1.15 -
because "that was the
version of Linux SkyNet
used for the T-800
Terminator".
27. V4.10
• A small release by Linus Torvalds, on device
drivers, some architecture work, some file
systems fixes and some network issues.
15th January,
2017
28. V4.0
Version
Original release
date
Current Version Support Model
4.0 12 April 2015 4.0.9 Maintained from April
2015 to July 2015
4.1 22 June 2015 4.1.38
Maintained from July
2015 to September
2017
4.2 30 August 2015 4.2.8 Maintained from August
2015 to December 2015
4.3 1 November 2015 4.3.6
Maintained from
November 2015 to
February 2016
4.4 10 January 2016 4.4.44
Maintained from
January 2016 to
February 2018
4.5 13 March 2016 4.5.7 Maintained from March
2016 to June 2016
29. V4.0
Version
Original release
date
Current Version Support Model
4.6 15 May 2016 4.6.7 Maintained from May
2016 to August 2016
4.7 24 July 2016 4.7.10 Maintained from July
2016 to October 2016
4.8 25 September 2016 4.8.17
Maintained from
September 2016 to
January 2017
4.9 11 December 2016 4.9.5 Latest mainline release
4.10 15 January 2017 4.10-rc4 Latest unstable release
30. Design Goals of Linux
• The three design goals of Linux are:
– Modularity
– Simplicity
– Portability
31. Design Goals of Linux
• Linux supports:
– Multiple processes
– Multiple platforms
– Multiple users
– Inter-process communications
– Terminal management
– Peripheral devices
– Buffer cache
– Demand paging memory management
– Dynamic and Shared libraries
– Disk partitions
– Network protocol (TCP/IP and others)