Introduction to Linux

1.1 History 

1.1.1 UNIX 

In order to understand the popularity of Linux, we need to travel back intime, about 30 years ago... 

Imagine computers as big as houses, even stadiums. While the sizes ofthose computers posed substantial problems, there was one thing that made thiseven worse: every computer had a different operating system. Software wasalways customized to serve a specific purpose, and software for one givensystem didn't run on another system. Being able to work with one system didn'tautomatically mean that you could work with another. It was difficult, both forthe users and the system administrators. 

Computers were extremely expensive then, and sacrifices had to be madeeven after the original purchase just to get the users to understand how theyworked. The total cost of IT was enormous. 

Technologically the world was not quite that advanced, so they had tolive with the size for another decade. In 1969, a team of developers in the BellLabs laboratories started working on a solution for the software problem, toaddress 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 "UNIX." 

The code recycling features were very important. Until then, allcommercially available computer systems were written in a code specificallydeveloped for one system. UNIX on the other hand needed only a small piece ofthat special code, which is now commonly named the kernel. This kernel is theonly piece of code that needs to be adapted for every specific system and formsthe base of the UNIX system. The operating system and all other functions werebuilt around this kernel and written in a higher programming language, C. Thislanguage was especially developed for creating the UNIX system. Using this newtechnique, it was much easier to develop an operating system that could run onmany different types of hardware. 

The software vendors were quick to adapt, since they could sell ten timesmore software almost effortlessly. Weird new situations came in existence:imagine for instance computers from different vendors communicating in the samenetwork, or users working on different systems without the need for extraeducation to use another computer. UNIX did a great deal to help users becomecompatible with different systems. 

Throughout the next couple of decades the development of UNIX continued.More things became possible to do and more hardware and software vendors addedsupport for UNIX to their products. 

UNIX was initially found only in very large environments with mainframesand minicomputers (note that a PC is a "micro" computer). You had towork at a university, for the government or for large financial corporations inorder to get your hands on a UNIX system.But smaller computers were beingdeveloped, and by the end of the 80's, many people had home computers. By that time,there were several versions of UNIX available for the PC architecture, but noneof them were truly free. 

 

1.1.2 Current application of Linuxsystems 

Today Linux has joined the desktop market. Linux developers concentratedon networking and services in the beginning, and office applications have beenthe last barrier to be taken down. We don't like to admit that Microsoft isruling this market, so plenty of alternatives have been started over the lastcouple of years to make Linux an acceptable choice as a workstation, providingan easy user interface and MS compatible office applications like wordprocessors, spreadsheets, presentations and the like. 

On the server side, Linux is well-known as a stable and reliableplatform, providing database and trading services for companies like Amazon,the well-known online bookshop, US Post Office, the German army and such.Especially Internet providers and Internet service providers have grown fond ofLinux as firewall, proxy- and web server, and you will find a Linux box withinreach of every UNIX system administrator who appreciates a comfortablemanagement station. Clusters of Linux machines are used in the creation ofmovies such as "Titanic" , "Shrek" and others. In postoffices, they are the nerve centers that route mail and in large search engine,clusters are used to perform internet searches.These are only a few of thethousands of heavy-duty jobs that Linux is performing day-to-day across theworld. 

It is also worth to note that modern Linux not only runs on workstations,mid- and high-end servers, but also on "gadgets" like PDA's, mobiles,a shipload of embedded applications and even on experimental wristwatches. Thismakes Linux the only operating system in the world covering such a wide rangeof 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.Experienced UNIX users will say no, because Linux is an ideal operating systemfor power-users and programmers, because it has been and is being developed bysuch people. 

Everything a good programmer can wish for is available: compilers,libraries, development and debugging tools. These packages come with everystandard Linux distribution. The C-compiler is included for free, all thedocumentation and manuals are there, and examples are often included to helpyou get started in no time. It feels like UNIX and switching between UNIX andLinux is a natural thing. 

In the early days of Linux, being an expert was kind of required to startusing the system. . It was common practice to tell a beginning user to"RTFM" (read the manuals). While the manuals were on every system, itwas difficult to find the documentation, and even if someone did, explanationswere in such technical terms that the new user became easily discouraged fromlearning the system. 

The Linux-using community started to realize that if Linux was ever to bean important player on the operating system market, there had to be someserious changes in the accessibility of the system.

 

1.2.2 Linux for non-experiencedusers 

Companies such as RedHat, SuSE and Mandrake have sprung up, providingpackaged Linux distributions suitable for mass consumption. They integrated agreat deal of graphical user interfaces (GUIs), developed by the community, inorder to ease management of programs and services. As a Linux user today youhave all the means of getting to know your system inside out, but it is nolonger necessary to have that knowledge in order to make the system comply toyour requests. 

Nowadays you can log in graphically and start all required applicationswithout even having to type a single character, while you still have theability 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 andexperienced users. New users are not forced to do difficult things, whileexperienced users are not forced to work in the same way they did when theyfirst started learning Linux. 

While development in the service area continues, great things are beingdone for desktop users, generally considered as the group least likely to knowhow a system works. Developers of desktop applications are making incredibleefforts to make the most beautiful desktops you've ever seen, or to make yourLinux machine look just like your former MS Windows or MacIntosh workstation.The latest developments also include 3D acceleration support and support forUSB devices, single-click updates of system and packages, and so on. Linux hasthese, and tries to present all available services in a logical form thatordinary 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 programmerscan read, distribute and change code, the code will mature. People can adaptit, fix it, debug it, and they can do it at a speed that dwarfs the performanceof software developers at conventional companies. This software will be moreflexible and of a better quality than software that has been developed usingthe conventional channels, because more people have tested it in more differentconditions than the closed software developer ever can. 

The Open Source initiative started to make this clear to the commercialworld, and very slowly, commercial vendors are starting to see the point. Whilelots of academics and technical people have already been convinced for 20 yearsnow that this is the way to go, commercial vendors needed applications like theInternet to make them realize they can profit from Open Source. Now Linux hasgrown past the stage where it was almost exclusively an academic system, usefulonly to a handful of people with a technical background. Now Linux providesmore than the operating system: there is an entire infrastructure supportingthe chain of effort of creating an operating system, of making and testingprograms for it, of bringing everything to the users, of supplying maintenance,updates and support and customizations, etcetera. Today, Linux is ready toaccept the challenge of a fast-changing world. 

 

1.3.2 Ten years of experience at yourservice

While Linux is probably the most well-known Open Source initiative, thereis another project that contributed enormously to the popularity of the Linuxoperating system. This project is called SAMBA, and its achievement is thereverse engineering of the Server Message Block (SMB)/Common Internet FileSystem (CIFS) protocol used for file- and print-serving on PC-related machines,natively supported by MS Windows NT and OS/2, and Linux. Packages are nowavailable for almost every system and provide interconnection solutions inmixed environments using MS Windows protocols: Windows-compatible (up to andincluding Win2K) file- and print-servers. 

Maybe even more successful than the SAMBA project is the Apache HTTPserver project. The server runs on UNIX, Windows NT and many other operatingsystems. Originally known as "A PAtCHy server" , based on existingcode and a series of "patch files" , the name for the matured codedeserves to be connoted with the native American tribe of the Apache,well-known for their superior skills in warfare strategy and inexhaustibleendurance. Apache has been shown to be substantially faster, more stable andmore feature-full than many other web servers. Apache is run on sites that getmillions of visitors per day, and while no official support is provided by thedevelopers, the Apache user community provides answers to all your questions.Commercial support is now being provided by a number of third parties. 

In the category of office applications, a choice of MS Office suiteclones is available, ranging from partial to full implementations of theapplications available on MS Windows workstations. These initiatives helped agreat deal to make Linux acceptable for the desktop market, because the usersdon't need extra training to learn how to work with new systems. With thedesktop comes the praise of the common users, and not only their praise, butalso their specific requirements, which are growing more intricate anddemanding by the day. 

The Open Source community, consisting largely of people who have beencontributing for over half a decade, assures Linux' position as an importantplayer on the desktop market as well as in general IT application. Paidemployees and volunteers alike are working diligently so that Linux canmaintain a position in the market. The more users, the more questions. The OpenSource community makes sure answers keep coming, and watches the quality of theanswers with a suspicious eye, resulting in ever more stability andaccessibility.     

 

1.4 Properties of Linux 

1.4.1 Linux Pros 

A lot of the advantages of Linux are a consequence of Linux' origins,deeply rooted 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, youdon't even have to pay the price of a CD. Linux can be downloaded for free fromthe internet.No registration fees, no costs per user, free updates, and freelyavailable source code in case you want to change the behavior of yoursystem. 

Most of all, Linux is free as in free speech:

The license commonly used is the GNU Public License (GPL). The licensesays that anybody who may want to do so, has the right to change Linux andeventually to redistribute a changed version, on the one condition that thecode is still available after redistribution. In practice, you are free to graba kernel image, for instance to add support for teletransportation machines ortime travel and sell your new code, as long as your customers can still have acopy of that code.  Linux is portable toany hardware platform:  A vendor whowants to sell a new type of computer and who doesn't know what kind of OS hisnew machine will run (say the CPU in your car or washing machine), can take aLinux kernel and make it work on his hardware, because documentation related tothis activity is freely available.  Linuxwas made to keep on running:  As withUNIX, a Linux system expects to run without rebooting all the time. That is whya lot of tasks are being executed at night or scheduled automatically for othercalm moments, resulting in higher availability during busier periods and a morebalanced use of the hardware. This property allows for Linux to be applicablealso in environments where people don't have the time or the possibility tocontrol their systems night and day. Linux is secure and versatile: The security model used in Linux is based on the UNIX idea of security,which is known to be robust and of proven quality. But Linux is not only fitfor use as a fort against enemy attacks from the Internet: it will adaptequally to other situations, utilizing the same high standards for security.Your development machine or control station will be as secure as yourfirewall.  Linux is scalable:  From a Palmtop with 2 MB of memory to apetabyte storage cluster with hundreds of nodes: add or remove the appropriatepackages and Linux fits all. You don't need a supercomputer anymore, becauseyou can use Linux to do big things using the building blocks provided with thesystem. If you want to do little things, such as making an operating system foran embedded processor or just recycling your old 486, Linux will do that as well.  The Linux OS and Linux applications have veryshort debug-times:  Because Linux hasbeen developed and tested by thousands of people, both errors and people to fixthem are found very quickly. It often happens that there are only a couple ofhours between discovery and fixing of a bug. 

 

1.4.2 Linux Cons 

There are far too many differentdistributions: 

"Quot capites, tot rationes", as the Romans already said: themore people, the more opinions. At first glance, the amount of Linuxdistributions can be frightening, or ridiculous, depending on your point ofview. But it also means that everyone will find what he or she needs. You don'tneed to be an expert to find a suitable release. 

When asked, generally every Linux user will say that the best distributionis the specific version he is using. So which one should you choose? Don'tworry too much about that: all releases contain more or less the same set ofbasic packages. On top of the basics, special third party software is addedmaking,or example, TurboLinux more suitable for the small and mediumenterprise, RedHat for servers and SuSE for workstations. However, thedifferences are likely to be very superficial. The best strategy is to test acouple of distributions; unfortunately not everybody has the time for this.Luckily, there is plenty of advice on the subject of choosing your Linux. Oneplace is LinuxJournal , which discusses hardware and support, among many othersubjects. The Installation HOWTO also discusses choosing your distribution.  Linux is not very user friendly and confusingfor beginners:  In light of itspopularity, considerable effort has been made to make Linux even easier to use,especially for new users. More information is being released daily, such asthis guide, to help fill the gap for documentation available to users at alllevels.  Is an Open Source producttrustworthy? 

How can something that is free also be reliable? Linux users have thechoice whether to use Linux or not, which gives them an enormous advantagecompared to users of proprietary software, who don't have that kind of freedom.After long periods of testing, most Linux users come to the conclusion thatLinux is not only as good, but in many cases better and faster that thetraditional solutions. If Linux were not trustworthy, it would have been longgone, never knowing the popularity it has now, with millions of users. Nowusers can influence their systems and share their remarks with the community,so the system gets better and better every day. It is a project that is neverfinished, that is true, but in an ever changing environment, Linux is also aproject that continues to strive for perfection.The gratifying one is,somefarsighted dometic corporations have begun to try hard to change this kind ofcurrent situation already.Stone Co. not long ago is it invest a hugug sum ofmoney to claim,regard Linux as platform develop a Internet/Intranetsolution,regard this as the core and launch Stone’s system integrationbusiness,plan to set up nationwide Linux technical support organization at thesame time,take the lead to promote the freedom software application anddevelopment in China.In addition domestic computer Company,person who win ofChina,devoted to Linux relevant software and hardware application of system popularizetoo.Is it to intensification that Linux know,will hanve more and moreenterprises accede to the ranks that Linux will be used with domestic everyenterprise to believe,more software will be planted in Linuxplatform.Meanwhile,the domestic university should regard Linux as the originalversion and upgrade already existing Unix content of courses,start withanalyzing the source code and revising the kernel and train a large number ofsenior Linux talents,improve our country’s own operation system .Having onlyreally grasped the operating system,the software industry of our country couldbe got rid of and aped sedulously at present,the passive state led by the noseby others,create conditions for revitalizing the software industry of ourcountry fundamentally.   

 

你可能感兴趣的:(Linux)