-
毕业设计说明书
英文文献及中文翻译
学生姓名:
学号:
1021040330
学
院:
软件工程
专
业:
指导教师:
2014
年
6
月
Introduction to Linux
1.1 History
1.1.1 UNIX
In order to
understand the popularity of Linux, we need to
travel back in time, ab
out 30 years
ago...
Imagine computers as big as
houses, even stadiums. While the sizes of those
com
puters posed substantial problems,
there was one thing that made this even worse:
eve
ry computer had a different
operating system. Software was always customized
to ser
ve a specific purpose, and
software for one given system didn't run on
another system.
Being able to work with
one system didn't automatically mean that you
could work w
ith another. It was
difficult, both for the users and the system
administrators.
Computers were
extremely expensive then, and sacrifices had to be
made even after th
e original purchase
just to get the users to understand how they
worked. The total cost
of IT was
enormous.
Technologically the world
was not quite that advanced, so they had to live
with t
he size for another decade. In
1969, a team of developers in the Bell Labs
laboratories
started working on a
solution for the software problem, to address
these compatibility
issues. They
developed a new operating system, which was
simple and elegant
written
in the C programming language instead of in
assembly code
able to recycle code.
The Bell Labs developers named their
project
The code recycling features
were very important. Until then, all commercially
av
ailable computer systems were written
in a code specifically developed for one
system
. UNIX on the other hand needed
only a small piece of that special code, which is
now
commonly named the kernel. This
kernel is the only piece of code that needs to be
ad
apted for every specific system and
forms the base of the UNIX system. The
operating
system and all other
functions were built around this kernel and
written in a higher pr
ogramming
language, C. This language was especially
developed for creating the UNI
X system.
Using this new technique, it was much easier to
develop an operating syste
m that could
run on many different types of hardware.
The software vendors were quick to
adapt, since they could sell ten times more
s
oftware almost effortlessly. Weird new
situations came in existence: imagine for
insta
nce computers from different
vendors communicating in the same network, or
users w
orking on different systems
without the need for extra education to use
another compu
ter. UNIX did a great deal
to help users become compatible with different
systems.
Throughout the next couple
of decades the development of UNIX continued.
Mo
re things became possible to do and
more hardware and software vendors added
suppo
rt for UNIX to their products.
UNIX was initially found only in very
large environments with mainframes and
minicomputers (note that a PC is a
, for the government or for large
financial corporations in order to get your hands
on a
UNIX smaller computers were being
developed, and by the end of the 80'
s,
many people had home computers. By that time,
there were several versions of UNI
X
available for the PC architecture, but none of
them were truly free.
1.1.2 Current application of Linux
systems
Today Linux has joined the
desktop market. Linux developers concentrated on
ne
tworking and services in the
beginning, and office applications have been the
last barr
ier to be taken down. We don't
like to admit that Microsoft is ruling this
market, so ple
nty of alternatives have
been started over the last couple of years to make
Linux an ac
ceptable choice as a
workstation, providing an easy user interface and
MS compatible
office applications like
word processors, spreadsheets, presentations and
the like.
On the server side, Linux
is well-known as a stable and reliable platform,
providi
ng database and trading services
for companies like Amazon, the well-known online
b
ookshop, US Post Office, the German
army and such. Especially Internet providers
an
d Internet service providers have
grown fond of Linux as firewall, proxy- and web
ser
ver, and you will find a Linux box
within reach of every UNIX system administrator
who appreciates a comfortable
management station. Clusters of Linux machines are
u
sed in the creation of movies such as
ey are the nerve centers that route
mail and in large search engine, clusters are used
to
perform internet are only a few of
the thousands of heavy-duty jobs th
at
Linux is performing day-to-day across the world.
It is also worth to note that modern
Linux not only runs on workstations, mid-
an
d high-end servers, but also on
d applications and even on experimental
wristwatches. This makes Linux the only
ope
rating system in the world covering
such a wide range of hardware.
1.2 The user interface
1.2.1 Is Linux difficult?
Whether Linux is difficult to learn
depends on the person you're asking.
Experien
ced UNIX users will say no,
because Linux is an ideal operating system for
power-use
rs and programmers, because it
has been and is being developed by such people.
Everything a good programmer can wish
for is available: compilers, libraries,
develop
ment and debugging tools. These
packages come with every standard Linux
distributi
on. The C-compiler is
included for free, all the documentation and
manuals are there,
and examples are
often included to help you get started in no time.
It feels like UNIX
and switching
between UNIX and Linux is a natural thing.
In the early days of Linux, being an
expert was kind of required to start using
the
system. . It was common practice to
tell a beginning user to
ls). While the
manuals were on every system, it was difficult to
find the documentatio
n, and even if
someone did, explanations were in such technical
terms that the new us
er became easily
discouraged from learning the system.
The Linux-using community started to
realize that if Linux was ever to be an
imp
ortant player on the operating
system market, there had to be some serious
changes in
the accessibility of the
system.
1.2.2 Linux for
non-experienced users
Companies such
as RedHat, SuSE and Mandrake have sprung up,
providing pack
aged Linux distributions
suitable for mass consumption. They integrated a
great deal o
f graphical user interfaces
(GUIs), developed by the community, in order to
ease mana
gement of programs and
services. As a Linux user today you have all the
means of get
ting to know your system
inside out, but it is no longer necessary to have
that knowle
dge in order to make the
system comply to your requests.
Nowadays you can log in graphically and
start all required applications without
e
ven having to type a single character,
while you still have the ability to access the
core
of the system if needed. Because
of its structure, Linux allows a user to grow into
the
system: it equally fits new and
experienced users. New users are not forced to do
diffi
cult things, while experienced
users are not forced to work in the same way they
did w
hen they first started learning
Linux.
While development in the
service area continues, great things are being
done for
desktop users, generally
considered as the group least likely to know how a
system wo
rks. Developers of desktop
applications are making incredible efforts to make
the mos
t beautiful desktops you've ever
seen, or to make your Linux machine look just like
yo
ur former MS Windows or MacIntosh
workstation. The latest developments also
inclu
de 3D acceleration support and
support for USB devices, single-click updates of
syste
m and packages, and so on. Linux
has these, and tries to present all available
services
in a logical form that
ordinary people can understand.
1.3 Does Linux have a
future?
1.3.1 Open Source
The idea behind Open Source software is
rather simple: when programmers can
r
ead, distribute and change code, the
code will mature. People can adapt it, fix it,
debu
g it, and they can do it at a speed
that dwarfs the performance of software developers
at conventional companies. This
software will be more flexible and of a better
quality
than software that has been
developed using the conventional channels, because
more
people have tested it in more
different conditions than the closed software
developer e
ver can.
The
Open Source initiative started to make this clear
to the commercial world, an
d very
slowly, commercial vendors are starting to see the
point. While lots of academi
cs and
technical people have already been convinced for
20 years now that this is the
way to
go, commercial vendors needed applications like
the Internet to make them rea
lize they
can profit from Open Source. Now Linux has grown
past the stage where it
was almost
exclusively an academic system, useful only to a
handful of people with a
technical
background. Now Linux provides more than the
operating system: there is a
n entire
infrastructure supporting the chain of effort of
creating an operating system, o
f making
and testing programs for it, of bringing
everything to the users, of supplying
maintenance, updates and support and
customizations, etcetera. Today, Linux is ready
to accept the challenge of a fast-
changing world.
1.3.2 Ten
years of experience at your service
While Linux is probably the most well-
known Open Source initiative, there is
an
other project that contributed
enormously to the popularity of the Linux
operating syst
em. This project is
called SAMBA, and its achievement is the reverse
engineering of t
he Server Message Block
(SMB)/Common Internet (CIFS) protocol used for
file- and
print-serving on PC-related
machines, natively supported by MS Windows NT and
O
S/2, and Linux. Packages are now
available for almost every system and provide
inter
connection solutions in mixed
environments using MS Windows protocols:
Windows-
compatible (up to and including
Win2K) file- and print-servers.
Maybe
even more successful than the SAMBA project is the
Apache HTTP serve
r project. The server
runs on UNIX, Windows NT and many other operating
systems.
Originally known as
h files
can tribe of the
Apache, well-known for their superior skills in
warfare strategy and in
exhaustible
endurance. Apache has been shown to be
substantially faster, more stable
and
more feature-full than many other web servers.
Apache is run on sites that get
mill
ions of visitors per day, and while
no official support is provided by the developers,
th
e Apache user community provides
answers to all your questions. Commercial
suppor
t is now being provided by a
number of third parties.
In the
category of office applications, a choice of MS
Office suite clones is availa
ble,
ranging from partial to full implementations of
the applications available on MS
Windows workstations. These initiatives
helped a great deal to make Linux
acceptable
for the desktop market,
because the users don't need extra training to
learn how to wo
rk with new systems.
With the desktop comes the praise of the common
users, and not
only their praise, but
also their specific requirements, which are
growing more intrica
te and demanding by
the day.
The Open Source community,
consisting largely of people who have been
contrib
uting for over half a decade,
assures Linux' position as an important player on
the des
ktop market as well as in
general IT application. Paid employees and
volunteers alike
are working diligently
so that Linux can maintain a position in the
market. The more u
sers, the more
questions. The Open Source community makes sure
answers keep comi
ng, and watches the
quality of the answers with a suspicious eye,
resulting in ever mor
e stability and
accessibility.
1.4
Properties of Linux
1.4.1 Linux Pros
A lot of the advantages of Linux are a
consequence of Linux' origins, deeply
root
ed in UNIX, except for the first
advantage, of course:
Linux is free:
As in free beer, they say. If you want
to spend absolutely nothing, you don't even
have to pay the price of a CD. Linux
can
be
downloaded
for
free
from
the
registration fees, no
costs per user, free updates, and freely available
sourc
e code in case you want to change
the behavior of your system.
Most of
all, Linux is free as in free speech:
The license commonly used is the GNU
Public License (GPL). The license says
t
hat anybody who may want to do so, has
the right to change Linux and eventually to
r
edistribute a changed version, on the
one condition that the code is still available
after
redistribution. In practice, you
are free to grab a kernel image, for instance to
add sup
port for teletransportation
machines or time travel and sell your new code, as
long as y
our customers can still have a
copy of that code. Linux is portable to any
hardware pl