the gnu/linux operating system
TRANSCRIPT
-
8/8/2019 The GNU/Linux Operating System
1/54
-
8/8/2019 The GNU/Linux Operating System
2/54
-
8/8/2019 The GNU/Linux Operating System
3/54
-
8/8/2019 The GNU/Linux Operating System
4/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
The Making of GNU/Linux Includes
The development of GNU applications
Failure of the GNU micro kernel project Integration of Linux kernel to the GNU
applications
The GNU Logo >>
-
8/8/2019 The GNU/Linux Operating System
5/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
History of GNU In late 1970's, the computers were very
large, rare and can been seen only in large
Labs. Each of such computers had their own OS
and researchers worked on improving it as
a community. Richard Mathew Stallman was one of the
workers in the MIT Artificial Intelligence lab.
-
8/8/2019 The GNU/Linux Operating System
6/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
The community was enhancing thefunctioning of the Time Sharing OS (ITS)
used in PDP-10 manufactured by DEC
His words follows...
History of GNU
-
8/8/2019 The GNU/Linux Operating System
7/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
We did not call our software free software,
because that term did not yet exist; but thatis what it was. Whenever people fromanother university or a company wanted toport and use a program, we gladly let them.If you saw someone using an unfamiliar andinteresting program, you could always askto see the source code, so that you couldread it, change it, or cannibalize parts of itto make a new program.
-
8/8/2019 The GNU/Linux Operating System
8/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
PDP-10
-
8/8/2019 The GNU/Linux Operating System
9/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
The AI lab hacker community collapsed, as in1981, the company Symbolics had hired away
nearly all of the hackers from the AI lab Also, when the AI lab bought a new PDP-10 in
1982, its administrators decided to use
Digital's non-free timesharing system insteadof ITS.
Stallman resigned from MIT and started
writing codes for the GNU project to build anentire free Operating System. GNU stands for GNU is Not UNIX
-
8/8/2019 The GNU/Linux Operating System
10/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
The Contributions The GNU project started of with the GCC
compiler
Later came GNU Emacs a text editor BASH The Shell
GNOME The graphical user environment HURD The Micro Kernel
And many more from the supporters
-
8/8/2019 The GNU/Linux Operating System
11/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
The GNU softwares became popular and
was widely used in UNIX systems By 1990, the GNU system was almost
complete; the only major missing
component was the kernel. GNU HURD; the project for kernel
development started in 1990, but due to the
complex architecture and message passingfeatures, it was not completed in time. HURD developments still continues...
-
8/8/2019 The GNU/Linux Operating System
12/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
History of Linux Almost the same time, when GNU started,
DOS was the most used OS in PC's.
The other one; UNIX was more expensive. The source code of Unix, once taught in
universities courtesy of Bell Labs, was now
cautiously guarded and not publishedpublicly.
-
8/8/2019 The GNU/Linux Operating System
13/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
The history of Linux really start with MINIX MINIX was written from scratch by Andrew S
Tanenbaum, a professor who wanted to teach hisstudents the inner working of OS
Around 12,000 lines of code
Written in C and assembly language Had the advantage that the source code was
available
In 1991, in Helsinki, Linus Torvalds; secondyear student of Computer Science began aproject based on MINIX that later became theLinux kernel
-
8/8/2019 The GNU/Linux Operating System
14/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
The early Linux project (Freax)
Was initially a terminal emulator, which wasused to access the large UNIX servers of theHelsinki university.
Written as OS independent and for a PC withan 80386 processor.
Used GCC for compiling
The Linux Logo (TUX) >>
-
8/8/2019 The GNU/Linux Operating System
15/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
In August 25, 1991 the historic post was
sent to the MINIX news group by Linus,regarding his project. Linux version 0.01 was released by mid of
September 1991. The development gathered momentum
really fast.
By December 1991, came version 0.10.
-
8/8/2019 The GNU/Linux Operating System
16/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
17/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
The GNU/Linux Time line
1992: The Linux kernel is relicensed underthe GNU GPL. 1993:
Over 100 developers work on the Linux kernel.With their assistance the kernel is adapted tothe GNU environment
The oldest currently existing Linux distribution,Slackware, is released for the first time.
The Debian project is established. Today it isthe largest community distribution.
-
8/8/2019 The GNU/Linux Operating System
18/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
1994: In March, Torvalds judges all components of the
kernel to be fully matured: he releases version1.0 of Linux.
The XFree86 project contributes a graphic userinterface (GUI).
Red Hat and SUSE publish version 1.0 of theirLinux distributions.
1995: Linux is ported to the DEC Alpha and to the Sun
SPARC.Over the following years it is ported toan ever greater number of platforms.
-
8/8/2019 The GNU/Linux Operating System
19/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
1996: Version 2.0 of the Linux kernel is released. The
kernel can now serve several processors at thesame time, and thereby becomes a seriousalternative for many companies.
1998: Many major companies such as IBM, Compaq
and Oracle announce their support for Linux.
A group of programmers begins developing thegraphic user interface KDE, which dependedon the then proprietary Qt toolkit.
-
8/8/2019 The GNU/Linux Operating System
20/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
1999: A group of developers begin work on the
graphic environment GNOME, which shouldbecome a free replacement for KDE.
During the year IBM announces an extensive
project for the support of Linux. 2004:
The XFree86 team splits up and joins with theexisting X Window standards body to form theX.Org Foundation, which results in asubstantially faster development of the XWindow Server for Linux.
-
8/8/2019 The GNU/Linux Operating System
21/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
The detailed time line can be obtained from
http://lwn.net/Articles/Timeline200 X / Replace X by 2 to 8
Older Time lines
2001: http://lwn.net/2001/features/Timeline/ 2000: http://lwn.net/2000/features/Timeline/ 1999: http://lwn.net/1999/features/Timeline/
1998: http://lwn.net/1999/features/1998timeline/
-
8/8/2019 The GNU/Linux Operating System
22/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
23/54>> 0 >> 1 >> 2 >> 3 >> 4 >>
GNU/Linux Distros
Since GNU and Linux are two separateprojects, companies and communitiescombined these with few other softwares,
and made packages, which could work as acomplete Operating System Slackware, RedHat, etc were among the
first GNU/Linux distributions(Distros) Today, 1000's of GNU/Linux distros are
available
-
8/8/2019 The GNU/Linux Operating System
24/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Community Backed
Debian Fedora Puppy
Commercially Backed RedHat Suse
Ubuntu
-
8/8/2019 The GNU/Linux Operating System
25/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
26/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
27/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
GNU/Linux Architecture Similar to the UNIX structure Entirely different from UNIX code
-
8/8/2019 The GNU/Linux Operating System
28/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
29/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
GNU/Linux
Architecture
-
8/8/2019 The GNU/Linux Operating System
30/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
GNU/Linux
-
8/8/2019 The GNU/Linux Operating System
31/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
32/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
33/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Booting
Boot Loaders: GRUB LILO
-
8/8/2019 The GNU/Linux Operating System
34/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Ownership of Files and Processes
Each file has an owner and group owner Owner has all privilages over the file and
can set the privilages for other users
GNU/Linux keeps tracks of files using UID'sand GID's
-
8/8/2019 The GNU/Linux Operating System
35/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
File Permissions
Uses traditional UNIX model CHMOD
0 : --- 1 : --X 2 : -W- 3 : -WX 4 : R--
5 : R-W 6 : RW- 7 : RWX
-
8/8/2019 The GNU/Linux Operating System
36/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Processes
The Kernel's internal data structures recordvarious pieces of information about eachprocess
Address space map Current status Priority
Resources used
Files and ports used Owner
-
8/8/2019 The GNU/Linux Operating System
37/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Kernel assigns a unique ID number to eachprocess PID Assignesd in the order in which processes are
created System processes have low PID
-
8/8/2019 The GNU/Linux Operating System
38/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Process is created by a fork system call as
in UNIX Creates a copy of process with unique PID Uses exec system calls to begin execution of
new process Clone Calls set of processes that share
memory, I/O or both. INIT Automatically started process during
booting; PID=1 INIT executes startup scripts
-
8/8/2019 The GNU/Linux Operating System
39/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
INIT
Represents a particular complement ofservices that the system should be running O completely Shutdown 1 Single User Mode 2 to 5 Multiuser Levels 6 Reboot
-
8/8/2019 The GNU/Linux Operating System
40/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Process States
Four execution states Running Process can be executed Sleeping Waiting for some resource
Zombie Trying to die Stopped Suspended (Not allowed to execute)
-
8/8/2019 The GNU/Linux Operating System
41/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Desktop Environments Variety of desktop environments are
available
KDE GNOME XFCE LXDE
-
8/8/2019 The GNU/Linux Operating System
42/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
KDE
-
8/8/2019 The GNU/Linux Operating System
43/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
GNOME
-
8/8/2019 The GNU/Linux Operating System
44/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
45/54
-
8/8/2019 The GNU/Linux Operating System
46/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Desktop Managers There were many recent advancements in
the GNU/Linux Desktop managers Compiz OpenBox
-
8/8/2019 The GNU/Linux Operating System
47/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
48/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
-
8/8/2019 The GNU/Linux Operating System
49/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
GNU HURD The original Kernel project for GNU A Micro Kernel
Initially decided to use Mach micro kernel In 2004, decided to port to L4
GNU HURD Logo >>
-
8/8/2019 The GNU/Linux Operating System
50/54
-
8/8/2019 The GNU/Linux Operating System
51/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
According to the Debian documentationthere are 24 servers (18 core servers and 6file system servers)
Core servers auth (authentication server) crash (crash server) exec (execution server) Fifo (FIFO translator) new-fifo (new FIFO server) firmlink (the firmlink translator)
-
8/8/2019 The GNU/Linux Operating System
52/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
fwd (forward server) hostmux (host multiplexer server) ifsock (server for sockets interface) init (init server) magic (magic server) Null (null server) pfinet (pfinet server) Pflocal (pflocal server) proc (process server) symlink (symbolic link translator)
-
8/8/2019 The GNU/Linux Operating System
53/54
>> 0 >> 1 >> 2 >> 3 >> 4 >>
term (terminal server) usermux (user multiplexer server)
Filesystem servers The ext2fs server "ext2fs" The iso filesystem server "isofs" The nfs server "nfs" The ufs server "ufs" The ftp filesystem translator "ftpfs" "storeio"; The storage translator
-
8/8/2019 The GNU/Linux Operating System
54/54
Thats all for now
Thanks for your patience....