Linux Installation and Getting Started part 1

Introduction to Linux


Linux is quite possibly the most important free software achievement since the original
Space War, or, more recently, Emacs. It has developed into an operating system for busi-
ness, education, and personal productivity. Linux is no longer only for UNIX wizards who
sit for hours in front of a glowing console (although we assure you that many users fall into
this category). This book will help you get the most from Linux.
Linux (pronounced with a short i,asin LIH-nucks ) is a UNIX operating system clone
which runs on a variety of platforms, especially personal computers with Intel 80386 or
better processors.
It supports a wide range of software, from T EX, to the XWindow System,
to the GNU C/C++ compiler, to TCP/IP. It’s a versatile, bona fide implementation of UNIX,
freely distributed under the terms of the GNU General Public License (see Appendix C).
Linux can turn any 80386 or better personal computer into a workstation that puts the
full power of UNIX at your fingertips. Businesses install Linux on entire networks of ma-
chines, and use the operating system to manage financial and hospital records, distributed
computing environments, and telecommunications. Universities worldwide use Linux to
teach courses on operating system programming and design. Computing enthusiasts every-
where use Linux at home for programming, productivity, and all-around hacking.
What makes Linux so different is that it is a free implementation of UNIX. It was and
still is developed cooperatively by a group of volunteers, primarily on the Internet, who
exchange code, report bugs, and fix problems in an open-ended environment. Anyone is
welcome to join the Linux development effort. All it takes is interest in hacking a free
UNIX clone, and some programming know-how. The book in your hands is your tour
guide.
UNIX is one of the most popular operating systems worldwide because of its large sup-
port base and distribution. It was originally developed at AT&T as a multitasking system
for minicomputers and mainframes in the 1970’s, but has since grown to become one of the
most widely-used operating systems anywhere, despite its sometimes confusing interface
and lack of central standardization.
Many hackers feel that UNIX is the Right Thing—the One True Operating System.
Hence, the development of Linux by an expanding group of UNIX hackers who want to
get their hands dirty with their own system.
Versions of UNIX exist for many systems, from personal computers to supercomputers
like the Cray Y-MP. Most versions of UNIX for personal computers are expensive and
cumbersome. At the time of this writing, a one-machine version of UNIX System V for the
386 runs about US$1500.
Linux is a free version of UNIX developed primarily by Linus Torvalds at the University
of Helsinki in Finland, with the help of many UNIX programmers and wizards across
the Internet. Anyone with enough know-how and gumption can develop and change the
system. The Linux kernel uses no code from AT&T or any other proprietary source, and
much of the software available for Linux was developed by the GNU project of the Free
Software Foundation in Cambridge, Massachusetts, U.S.A. However, programmers from
all over the world have contributed to the growing pool of Linux software.
Linux was originally developed as a hobby project by Linus Torvalds. It was inspired
by Minix, a small UNIX system developed by Andy Tanenbaum. The first discussions
about Linux were on the Usenet newsgroup, comp.os.minix. These discussions were
concerned mostly with the development of a small, academic UNIX system forMinix users
who wanted more.
The very early development of Linux mostly dealt with the task-switching features of
the 80386 protected-mode interface, all written in assembly code. Linus writes,
“After that it was plain sailing: hairy coding still, but I had some devices,
and debugging was easier. I started using C at this stage, and it certainly speeds
up development. This is also when I started to get serious about my megalo-
maniac ideas to make ‘a better Minix than Minix.’ I was hoping I’d be able to
recompile gcc under Linux someday. . .
“Two months for basic setup, but then only slightly longer until I had a disk
driver (seriously buggy, but it happened to work on my machine) and a small
file system. That was about when I made 0.01 available (around late Augustof 1991): it wasn’t pretty, it had no floppy driver, and it couldn’t do much of
anything. I don’t think anybody ever compiled that version. But by then I was
hooked, and didn’t want to stop until I could chuck out Minix.”
No announcement was ever made for Linux version 0.01. The 0.01 sources weren’t
even executable. They contained only the bare rudiments of the kernel source and assumed
that you had access to a Minix machine to compile and experiment with them.
On October 5, 1991, Linus announced the first “official” version of Linux, which was
version 0.02. At that point, Linus was able to run bash (the GNU Bourne Again Shell)
and gcc (the GNU C compiler), but not much else. Again, this was intended as a hacker’s
system. The primary focus was kernel development—user support, documentation, and
distribution had not yet been addressed. Today, the Linux community still seems to treat
these issues as secondary to “real programming”—kernel development.
As Linus wrote in comp.os.minix,
“Do you pine for the nice days of Minix-1.1, when men were men and
wrote their own device drivers? Are you without a nice project and just dying
to cut your teeth on an OS you can try to modify for your needs? Are you
finding it frustrating when everything works on Minix? No more all-nighters
to get a nifty program working? Then this post might be just for you.
“As I mentioned a month ago, I’m working on a free version of a Minix-
look-alike for AT-386 computers. It has finally reached the stage where it’s
even usable (though may not be, depending on what you want), and I am will-
ing to put out the sources for wider distribution. It is just version 0.02...but
I’ve successfully run bash, gcc, gnu-make, gnu-sed, compress,etc.
under it.”
After version 0.03, Linus bumped up the version number to 0.10, as more people started
to work on the system. After several further revisions, Linus increased the version number
to 0.95 in March, 1992, to reflect his expectation that the system was ready for an “offi-
cial” release soon. (Generally, software is not assigned the version number 1.0 until it is
theoretically complete or bug-free.). Almost a year and a half later, in late December of
1993, the Linux kernel was still at version 0.99.pl14—asymptotically approaching 1.0. At
the time of this writing, the current stable kernel version is 2.0 patch level 33, and version
2.1 is under development.
Most of the major, free UNIX software packages have been ported to Linux, and com-
mercial software is also available. More hardware is supported than in the original kernel
versions. Many people have executed benchmarks on 80486 Linux systems and found them comparable with mid-range workstations from Sun Micro systems and Digital Equipment
Corporation. Who would have ever guessed that this “little” UNIX clone would have grown
up to take on the entire world of personal computing?

No comments:

Post a Comment