An Introduction to the History, Status, Usability, and Future

advertisement
An Introduction to the History, Status, Usability, and Future
of the GNU/Linux Operating System
Version 1.3, February 2002. First Released: May 2001.
Deepak, VI Semester BE (CSE), Bangalore INDIA
Linux is lee-noohks or ly-nuhks or lee-nuhks. Your wish!
• History of Linux
• Features Supported Under Linux
• A Few Myths About Linux
• Unresolved Issues in Linux
• Major Supporters of Linux
• The Future of Linux
• Acknowledgments and Resources on the Internet
Linus now works for Transmeta Corp. in California
The Beginning
The Linux operating system was first
coded by a Finnish computer programmer
called Linus Benedict Torvalds in 1991,
when he was just 21! He had got a new
386, and he found the existing DOS and
UNIX too expensive and inadequate.
In those days, a UNIX-like tiny, free OS called Minix was
extensively used for academic purposes. Since its source code
was available, Linus decided to take Minix as a model. In his
own words, ‘I wanted to write a better Minix than Minix’.
If you run Linux, add your machine at Linux Counter
Growing and Growing...
In order to encourage wide
dissemination of his OS, Linus
made the source code open to
public. At the end of 1992 there
were about a hundred Linux
developers. Next year there
were 1000. And the numbers
multiplied every year.
Linux: No of Users
Source: The Linux Counter
Recent estimates say about 18 million people use Linux
worldwide. The effects of the dot-com bust, IT slowdown
and global economic recession can be clearly seen.
The number of hits for a Linux search typically runs into millions!
Linux Today
Though Linus never imagined it, Linux quickly became a
general tool for computing. People stopped looking at Linux
as a toy, and began to think about it seriously. Today there are
thousands of applications that can be run on Linux, from
Office Suites to 3D games. Hundreds of Linux User Groups
the world over discuss ways to make Linux work better.
Umpteen number of web sites, and thousands of newsgroups
and mailing lists talk about Linux. Bangalore hosts a Linux
convention every year, called Bang!inux.
Red Hat 7.2 and Mandrake 8.1 are very popular as of now
Distributions of Linux
In tune with the power-of-choice tradition
of Linux, many companies now offer it
along with lots of applications. Though the
OS is the same, the bundled software do
vary from one distribution to another. Red
Hat, SuSE, Mandrake, and many other
firms sell Linux this way, and their CDs are
called distributions. Usually the distributors
charge a nominal fee for the media and for
technical support in the future. Currently
Red Hat and Mandrake seem to be the most
popular distributions of Linux.
Sidewalk I
• Linux is the fastest growing server operating system, with an
annual growth rate of 166% in 2000 Source: IDC
• In April 2000 29% of embedded
application developers decided to use
Linux as their host OS in 2001 Source:
Electronic Market Forecasters
• The top 100
the US spent
applications in
to touch $200
financial companies in
$50 million on Linux
1998. This is expected
million by 2003 Source:
Evans Marketing Services
Linux is
is poised
poised to
to compete
compete with
with MS
MS
Linux
• 49% of IT professionals think Linux is essential or important
for their corporate strategies Source: MERIT
The Human Genome Project was completed early with a UNIX system
Why Linux is Built Upon UNIX
• UNIX has a long history as an
operating system
• The basic design of UNIX is elegant,
highly documented and used
• A lot of software is available for UNIX
• Linus was very familiar with UNIX
Thompson and Ritchie, the
creators of UNIX, working
on a PDP-11 machine.
• The GNU Project, which was (and is) a set of programs
written for UNIX-like OSes and are freely available with
source code, helped a lot. Once Linux was marginally
functional, these applications helped in testing the OS and its
subsequent usage by many people
Both Jurassic Park and Titanic used UNIX systems for the special effects
Features Supported in Linux: True Multitasking
• All applications in Linux are preemptively
multitasked. The OS handles all scheduling
of processes (and kernel threads). No
application can hog the resources unless the
system administrator specifically defines it as Multitasking under Linux:
The number of apps you
high-priority. This leads to smoother can
run is limited only by
the memory you have.
performance and better load-balancing
• All applications in Linux run in their own private memory
space. This means that a poorly-written application cannot
tamper with the memory of another application (or the kernel).
If an application does try to access memory it doesn't own, it is
immediately halted by the operating system, without disturbing
any other process on the system
Even a single user can have multiple sessions through virtual terminals!
Multi-User and Customizable
UNIX was designed with the notion that multiple people
would be sharing use of the system at the same time. Several
people can log into a Linux machine and each of them can run
whatever programs they like. UNIX applications are written
from scratch with the idea that multiple people will be using
them, and each may have entirely different preferences. Many
people can use the same application at the same time according to
their liking!
Linux Machine
USER 1
Compile a program
USER 2
Talk with another user
USER 3
Run a script
Amazon, CNN, Google, Hotmail and Yahoo! run on UNIX. Think of the traffic!
Easy Remote Administration and DLL Handling
• Because of the fundamental design of UNIX, every
application can run on one machine and display its interface on
another. This is extremely useful for remote administration
• Windows allows the use of DLLs (Dynamic Linker
Libraries) to modularize applications and reuse code. But
version conflicts often arise, which might make some applications
or the whole OS useless. Linux also
handles DLLs (called shared objects), but
it checks the version of DLL each app
is asking, and then links the correct
version. In Windows, the program may
A DLL Goof-up in Windows
simply crash
Using Linux, you can do wonders with a 486
Efficient Memory Management
• Linux is outstanding in the area of memory
management. It will use every scrap of
memory in a system to its full potential. The
Linux kernel occupies just 2 MB, whereas NT How shall I get 64 MB
AGAIN for Win 2000?
takes 16 MB!
• Linux uses a copy-on-write scheme. If two or more
programs are using the same block of memory, only one
copy is actually in RAM, and all the programs read the same
block. If one program writes to that block, then a copy is
made for just that program. All other programs still share the
same memory. When loading DLLs, this is a major memory
saver
Linux/Netscape ran 30-40% faster than NT/IE: Memo, Microsoft Corporation
Efficient Memory Management (Contd.)
Demand-loading is very useful as well. Linux only loads
into RAM the portions of a program that are actually being
used, which reduces overall RAM requirements significantly.
At the same time, when swapping is necessary, only portions of
programs are swapped out to disk, not entire processes. This
helps to greatly enhance multiprocessing performance.
Finally, any RAM not being used by the kernel
or applications is automatically used as a disk
cache. This speeds access to the disk so long as
there is unused memory. On the other hand,
memory management is poorest in Windows!
Why waste money on
upgrades when you
can use it with Linux?
Sidewalk II
Richard Stallman is the founding father of the Free
Software Foundation, which aims to code software
and give them away for free. One of the pilot
projects of the Free Software Foundation is GNU, This goat is the
logo of GNU
which, admirably, stands for “GNU’s Not UNIX”.
Stallman liked UNIX so much that he thought it should be
given away for free. The GNU project, started in 1984, has
developed thousands of software which do all that the original
UNIX tools did, but with a difference: they are much better,
cost nothing, and come with the source code.
GNU and Linux share a symbiotic relationship.
Even today, you can find GNU utilities in any
Linux distribution. Stallman, in fact, wants us to call
the Linux system as GNU/Linux!
Images: gnu.org
The Linux ext2 file-system supports up to 4000 GB of data
Powerful File System
• Linux normally uses its own high-performance file
system, which uses disk space much more efficiently,
optimizes for speed on reading and writing, and automatically
prevents fragmentation. The Linux file-system literally does
not need a defragmenter, though one is available. It also sees
when programs make errors writing to the disk and
automatically prevents them, so there is usually no need to
run a disk checker unless you notice a problem
• Linux can also read and write all FAT variants
(FAT12, FAT32), Windows NT's NTFS,
OS/2's HPFS, and many others you've never
heard of. Often it can use them faster than their Linux can use your
hard disk better
native operating system can!
Wherever 24x7 uptime and reliability is needed, go for a UNIX system
Linux has the Unmatched Stability of UNIX
• Linux enforces a strict separation between the kernel and
other applications. Most services like mail, file and print
serving, web serving and so on are applications, and can
usually be changed dynamically. At worst, a specific
application may need to be restarted, and not the whole
system. Reboots are only for kernel updates and hardware
changes.UNIX systems have uptimes in terms of years!
• Linux also provides the ability to
dynamically increase swap space and then
reduce it later without a reboot, unlike
Windows, where it grows and grows
until a restart
MS Word has frozen
Most ISPs, Web sites, FTP servers, and mail servers run on UNIX/Linux
Inbuilt Networking Support
TCP/IP networking and the Internet was
originally developed on UNIX systems, and most
of the high-power networking in the world is
done on UNIX. About 75% of the web servers
on the Net run a version of UNIX.
Linux is network ready
In fact, Linux has the largest market share for the entire Internet,
running 25.7% of the news servers, 26.9% of the web
servers, and 33.7% of the FTP servers in the world. Apart
from extremely fast and reliable networking, dozens of major
and minor network services are usually provided when you get
Linux. Web servers, file and print servers, ftp servers, NIS servers, IRC
servers, news servers, and more are available for free or very little
cost.
Windows NT borrows many security features from UNIX
High Level of Security
Linux is a very secure operating system, much more so than
Windows 9x, and at least the equal of Windows NT.
• Since each application runs in its
own protected memory space, it is
not possible for a virus to infect
another application running in
memory. Linux also has file
permission structure which greatly Oh, was that you? I thought it was a virus and
I deleted the mail.
limits the damage a virus can do
• Linux is less prone to hacker attacks than most OSes. This is
partly because of its design and its open-source nature.
Security bugs are fixed very quickly, often within hours!
Source: toonshome.com
Sidewalk III
Linux is emerging as a strong competitor to NT. It has given
enough scare to Microsoft, that it circulated a memo on the
damaging effects of Open-Source revolution! This table, built by
a Microsoft certified NT professional, shows a feature by feature
comparison of Linux and Windows NT.
Component
Operating System
Kernel Source Code
Web Server
Telnet Server
POP3 / SMTP Server
X-Window Server
C / C++ Compilers
No. of file systems supported
Disk quotas support
No. of GUIs
Free Online Technical Support
Platforms
SMP Support
Linux 2.x
Free, about $49 for a CDROM
Yes
Apache
Yes
Yes
Yes
Yes
32
Yes
4
Yes
x86, SPARC, PowerPC, StrongARM
Upto 16. Beowulf supported
Windows NT Server 4.0
Depends on no. of users: $899 to $3999
No
IIS
No
No
No
No
4
No
1
No
Intel x86, Alpha
2 in Workstation, 4 in Server. No Beowulf
It would have cost a firm over $1 billion to develop Red Hat 7.1
⊗ Linux is open, so insecure
√ This might be a valid argument, but
thankfully, our world is still a very good
place. When programmers find a piece of
bug in the source, they quickly try to fix it,
rather than capitalize on it. If you hack
into a system based on a bug you found in
Linux, it is only so long as another guy
finds out the bug and fixes it
⊗ Linux is not as nice as Windows
√ GUIs like GNOME and KDE make a
Linux desktop enviable. Hang on…
Sidewalk IV
KWord: Part of
KOffice, and free
File/Web Browser:
Just like in Windows
A fully-loaded
Start Menu
Yahoo!
Messenger
X Multimedia System
to play media
Screenshot of Red Hat Linux 7.1 under KDE 2.1 taken with GIMP. www.kde.org
Why do you want to pay for software when you can get them for free?
⊗ There are not many applications for Linux
√ As of today, there are about 15,000
applications built for the Linux platform.
You can code in C, C++, Java etc.; listen
to music; browse the Web; play an action
game; watch a movie; and even modify
this slideshow with StarOffice!
You can do everything in
Linux as in Windows
⊗ Linux does not have a centralized authority
√ Linux might be coded by programmers around the world,
but there is a group of people headed by Linus who have
the ultimate say on it. They decide on the next version of
Linux
Sidewalk V
• XMMS, MP3 Player
• Nedit, Text Editor for X
Source
See
Seethe
thehuge
hugevariety
variety for
for yourself.
yourself.
• X-Chat, Chat Client
• ApplixWare, Office Suite
• XFCE, a GUI for Linux
• abcde, CD Encoder
• Pan, Robust Newsreader
• Gaim, AOL Messenger
• Bluefish, HTML Editor
• BlueJ, a Java IDE
• Gnapster, Napster for Linux
• MidGard, a PHP Dev. Suite
• Kdevelop, C/C++ IDE
• Corel WordPerfect Free!!
• StarOffice, from Sun, Free!!
• LinuxCAD, CAD for Linux
• SciLab, Scientific Package
• mtv, MPEG Player
• Xplns, See Today’s Stars on PC
• Unreal Tournament, Shoot!
• VMWare, Run Win apps in Linux!
• XShipWars, 3D Space Game
The 13 root servers of the Internet all run UNIX
⊗ The various UNIXes are fragmenting into a
plethora of incompatible versions
√ This was the trend sometime back, but since
the past ten years, they all are converging. UNIX
systems now broadly adhere to ANSI and
POSIX standards, that allow software to be
source-compatible across different platforms,
ranging from embedded micro-controllers to
supercomputers. The X/OPEN standard allows
a common desktop across all platforms. On the
Intel X86 platform, for example, Linux can run
SCO UNIX binaries, and FreeBSD can run
Linux binaries. In a nutshell, there is as little a
difference as among, say, Windows 3.1, Windows
9X, and Windows NT.
Some
UNIXes
DEC Digital
UNIX
FreeBSD
HP-UX
IBM AIX
Linux
SCO
UnixWare
SGI IRIX
Sun Solaris
Linux is the No. 1 threat to Windows: Steve Ballmer, CEO, MS Corp.
Linux is not very beginner-friendly
Linux can be overwhelming for a new user from Windows.
Stop comparing Linux with Windows every once in a while,
and you will gradually appreciate Linux.
Installing Linux is difficult
Installing Linux is really a hard task for a newbie. It is better to
keep a guru at hand, since it needs a lot of technical stuff.
Coordination lacks among apps in Linux
Since so many people have contributed to the operating
system, there are instances where an application behaves
strangely, or crashes. A bug-report window quickly pops up!
Red Hat 7.1 has over 30 million lines of source code, mostly in C
There is a lack of online help in Linux
Help in Linux is in the form of long technical manuals, and
user-friendly documentation has only recently been taken up.
Linux is still heavily command-dependent
Graphical environments like KDE are
under constant development and testing,
so commands are the best way to work.
Linux does not work on many hardware
Most hardware work well in Linux, but a few can be
notoriously uncooperative. Motorola SM56 Win-Modem, for
example, got Linux drivers only recently. As more firms
realise the power of Linux, this won’t be a problem.
The complete list can be found here: www.m-tech.ab.ca/linux-biz/
In spite of all these setbacks, Linux has found a large following,
from behemoth companies to tech geeks. Here is a short list of
major supporters and users of Linux.
Click on any logo to visit the company’s Web-site.
Final Sidewalk
• A Linux distribution has software worth thousands of dollars, for
virtually no cost
• Linux operating system is reliable, stable, and very powerful
• Linux comes with a complete development environment, including
compilers, toolkits, and scripting languages
• Linux comes with networking facilities, allowing you to share hardware
• A wide variety of commercial software is also available
• Linux is very easily upgradeable
• Supports multiple processors as standard
• True multitasking. So many apps, all at once
• The GUIs are more powerful than Mac!
ac!
Mac!
beats M
Lin beats
and Lin
Win, and
beats Win,
Mac beats
Mac
• Linux utilizes your memory, CPU, and other hardware to the fullest
Linux: Best Desktop Computer OS: InfoWorld, 1996
Gates
bites Gates
Linux bites
Linux
The past few minutes have talked a lot about Linux. Given all
this information, we now have a question before us: Where is
Tux the penguin heading, and what is in the future?
The world has just begun to understand the
freedom inherent in Linux. That is why the uses
to which Linux has been put so far are only as a
desktop and as a server. But many exciting
developments are headed our way.
Linux-based routers are a very cost-effective alternative to Cisco
routers. Other innovative products that have already arrived
are the TV set-top box and the MP3 music player for cars, hardly
anyone's mental model of a computer.
Linux is all set to make its mark in the future
computing industry.
Source: NY Times
Thanks for your interest. Also read the appendices.
http://www.linux.org
A definitive Linux portal for all kinds of information
http://www.linuxdoc.org
The Linux documentation project
http://www.unix-vs-nt.org/kirch/
An impartial comparison of UNIX / NT
http://www.tir.com/~sorceror/mdlug/mdlug.zip
A HTML slideshow on Linux
http://www.oreilly.com/catalog/opensources/book/toc.html Open-source essays
http://www.cuug.ab.ca/~leblancj/nt_to_unix.html It’s good to migrate to Linux
http://www.linuxmall.com/resources/nlm
Newbies Linux manual
http://www.cs.helsinki.fi/~torvalds/
Linus Torvalds’ home page
http://www.ssc.com/lj/index.html
Linux Journal is a nice Linux periodical
http://www.gnu.org/
Official GNU web-site
news://comp.os.linux
The Linux USENET newsgroup
http://www.geocities.com/netmaniac00/ My Web-site: to check for updates
netmaniac00@yahoo.com
My e-mail address: comments/feedback
Download