overview of linux dr. michael l. collard [email protected] 1
TRANSCRIPT
Overview of Linux
Dr. Michael L. Collardwww.sdml.info/collard
1
Linux
• A Unix-like operating system that uses the Linux kernel
• A premiere example of “open source”• Center of the world’s largest collaborative
software effort
2
Parts of “Linux”
• Linux kernel - manage hardware, run program, provide security
• GNU Project – utilities: bash, gcc, emacs, etc.• X.org – X Window system• GNOME & KDE – desktop environments• Many other sources
3
Where Linux Comes From
• 1970: Unix Operating System – Thomson & Ritchie
• 1978: BSD (Berkeley Standard Distribution)• 1983: GNU Project – Richard Stallman, goal of
a free Unix-like operating system, GPL (General Public License) written in 1989
• 1987: MINIX – Unix-like operating system for education by Andrew Tannenbaum
4
Problems with Unix-like O.S.’s for x86
• GNU Project had many utilities, but no kernel (GNU Hurd)
• BSD based on 6th edition of AT&T Unix, and lawsuits limited development
• MINIX development was lacking, and limited distribution
• No good solution for running a Unix-like system on a PC
5
Linus Torvalds
• Computer Science student at University of Helsinki, Finland in 1991
• Started to write a terminal emulator (independent of the operating system) for his PC
• Developed using MINIX and the GNU C Compiler• Grew into the Linux kernel• Announced what he had started in the
newsgroup comp.os.minix in August, 1991
6
Linux kernel Timeline• 1991: Linux kernel 0.11 – self-hosted • 1992: “Linux is Obsolete” – Tannenbaum• 1992: Linux kernel 0.12– released under GNU GPL license
• 1992: Linux kernel 0.95– capable of running X Windows
• 1994: Linux kernel 1.0 – i386 only– 176,250 LOC
• 1995: Linux kernel 1.2 – additional CPU’s– 310,950 LOC
7
Linux Timeline (cont)
• 1996: Linux kernel 2.0• 1999: Linux kernel 2.2.0– 1,800,147 LOC
• 2001: Linux kernel 2.4.0– 3,377,902 LOC
• 2003: Linux kernel 2.6.0 – 5,929,913 LOC
• 2008: Linux kernel 2.6.26-3
8
Development Model
9
Current Development
• Average of 2.6.11 – 2.6.24:– 2.7 months between releases– 2.83 patches per hour– 3,621 LOC added, 1,550 LOC removed, and 1,425
LOC changed per day
• Total of 2.6.11 – 2.6.24:– 3,678 developers– 271 companies, e.g., RedHat, Novell, IBM, Intel
10
Why do companies support Linux?
• Make sure it runs on their hardware, e.g., Intel• Distributors of Linux, e.g., RedHat, Novell• Embedded devices, e.g., Sony• Platform for technical development, e.g.,
Volkswagen
11
GNU Project
• “GNU’s Not Unix”• Started by Richard Stallman (rms) in 1983• Start of the Free Software Movement, and the
corresponding FSF (Free Software Foundation)
12
GNU Four Freedoms
• 0: The freedom to run the program for any purpose
• 1: The freedom to study how the program works, and adapt it to your needs
• 2: The freedom to redistribute copies so you can help your neighbor
• 3: The freedom to improve the program, and release your improvements to the public, so that the whole community benefits
13
GNU GPL
• General Public License• “CopyLeft”• Copyright retained by the author• GPL Software must be available for free• Source code must be made available• If other developers make changes, they must
distribute it with the original source
14
GPL Issues
• Cannot directly use in proprietary code• What about programs developed using GPL
editors, compilers, o.s.?– Not a problem
• What about programs that call a function library, e.g., GNU C library?– LGPL (Lesser General Public License)
15
Open Source Licenses
• Variety including BSD license, Apache License, Mozilla Public License
• GPL Version 2 in 1991• GPL Version 3 in 2008• Linux (GPL v2) - individuals hold copyright– All indications are that Linux will stick with v2
• GNU Project – individuals assign copyright to FSF
16
GNU/Linux Distribution
• Installation program• General configuration• Packages of compatible software• Handles dependencies• Support (technical and legal)• Updates• Security fixes
17
Differences between Distributions• Community-based versus commercial• Hardware and device support• Number of packages (different software)
available• Use of proprietary packages• Package management• Size, software typically installed• Security• Frequency of updates/releases• Support
18
Debian
• Non-commercial, holding to strict free software guidelines
• 26,000 packages for 11 architectures• APT package management• Basis for other distributions MEPIS, Damn
Small Linux, Xandros, Knoppix, etc.• Debian GNU/Linux 4.0 (Etch)
19
Ubuntu
• Most popular desktop distribution (~30%)• Canonical Ltd.• Based on Debian unstable packages• APT package management• New versions every 6 months, • Ubuntu 8.04 LTS (Hardy Heron)• Best desktop Linux installation program (?)
20
RedHat
• A major commercial server and desktop Linux distributor
• RedHat Linux 1.0 (Mother’s Day) (1994) – Linux 1.2.8
• RPM Package Manager• RedHat Enterprise Linux 5 (Tikanga) (2007)• Community-Based Distribution:– Fedora 9 (Sulphur) (2008)– Basis for commercial edition
21
SUSE
• A major commercial server Linux distributor• “Software and System Development” (German)• S.u.S.E. Linux 1.0 (1994) – based on Slackware• Novell, Inc.• SUSE Linux Enterprise Server 10 (2006)• Community-based distribution: – openSUSE Linux 11.0 (2008)– Basis for commercial edition
22
Other Distributions:
• Slackware – one of the first in 1993• Gentoo – typically built from source• CentOS – based on Red Hat Enterprise Linux
23