|[Home] [Credit Search] [Category Browser] [Staff Roll Call]||The LINUX.COM Article Archive|
|Originally Published: Monday, 21 June 1999||Author: Matthew Trent|
|Published to: featured_articles/Featured Articles||Page: 1/1 - [Std View]|
Linux: Computing at Its Finest
This paper is designed to promote the Linux computer operating system. Information from journal articles, the Internet, an interview, and books seem to show Linux's superiority or inevitable future superiority in a variety of areas. This paper will contrast Linux with Windows and show that, in fact, Linux does come out on top....
"A fatal exception has occurred, the current application will be terminated. Press any key to continue." Nearly every user of Microsoft's popular Windows operating system has learned to fear that message, often called the "Blue Screen of Death" (BSoD), and could probably recite the above error message from memory. Most people assume such computer "crashes" are simply an inherent and unavoidable element of computing. Likewise, anyone who has ever installed new hardware or software on a Windows-based computer can attest to the number of forced reboots required to get the hardware or software working. This too is shrugged off as an irritating but necessary responsibility of computer usage. These unpleasantries, however, are not a "feature" of the computer as a whole but of the operating system, Windows, running on it.
An operating system is:
The foundation software of a machine; that which schedules tasks, allocates storage, and presents a default interface to the user between applications. The facilities an operating system provides and its general design philosophy exert an extremely strong influence on programming style and on the technical cultures that grow up around its host machines. (Raymond)Fortunately for computer users, there is an alternative. It provides not only speed and excellent reliability but costs absolutely nothing! Already famous for server applications, Linux has recently made advances which position it as a rival to Windows in the desktop operating system market.
Linux was created in 1991 by a Finnish college student, and today is a POSIX compliant, 64-bit, multiprocessing, multitasking, multi-user operating system that runs on almost any kind of computer, from low end IBM compatible 386 computers to high end SGI workstations. It is one of the most recent members of the Unix family of operating systems and builds on almost 30 years of prior Unix development experience. However, the most significant difference between Linux and other operating systems is its development and distribution models (Welsh 4).
Linux is developed exclusively over the Internet by countless occasional contributors and a smaller group of highly dedicated programmers, including Linus Torvalds, who programmed Linux originally (and for whom the system is named). Linus coordinates the plethora of daily "patches" for the Linux kernel--the very core of the operating system--and decides which are incorporated; he is also a kind of deity to several million self-proclaimed geeks worldwide. The most interesting part, though, is that all of these programmers are volunteers, and consequently Linux itself is completely free for any kind of use, commercial or personal. Additionally, Linux's source code is freely available for anyone to modify, which provides unparalleled flexibility. It also contributes to quality, because when one programmer discovers a bit of shoddy code, he or she may simply rewrite it and send the new code to Linus for inspection (getting one's code into the kernel is a great honor). Source code is like the "recipe" for computer software, and it is the only form in which a program can be modified. There are some rules that must be followed when modifying Linux software, however.
A document called the GNU (a recursive acronym for "GNU's Not Unix") General Public License, under which Linux is distributed, guarantees the code will remain free. The GNU General Public License, most often called the GPL, and sometimes the "copyleft," states modifications to software published under the GPL must be made available to anyone who wants it, and the new code must be distributed under the GPL as well. This prevents people and companies from taking GPL-covered code as their own and taking advantage of the free software community, rather than aiding it (Prasad). There are thousands of software programs published under the GPL, many of them every bit as good as their commercial counterparts, just much less expensive. The GPL has spawned an entire software movement of which Linux is only a part. This movement is generally referred to as the Open Source Software movement. Other open source software participants include FreeBSD and NetBSD, which are yet more Unix variants similar in many ways to Linux.
Together with many hundreds of such programs, the Linux kernel combines to form a Linux "distribution." Many distributions exist, each with its strengths. Some of the popular ones are Debian GNU/Linux, Red Hat Linux, and Slackware Linux. Debian is aimed at the experienced user and is extremely easy to keep up-to-date, Red Hat is good for beginning Linux users, and Slackware is for advanced users who like to do things by themselves.
Not everyone is euphoric about the Linux phenomenon though, James Coates, a columnist for the Chicago Tribune, remarks:
Microsoft Windows 2000, which made its debut in Chicago at last week's Comdex computer show, is a much more useful personal computer operating system than the dinky feature-weak, application-starved flavor of home-brewed Unix known as Linux. (Coates)Coates makes one valid point here: Linux lacks some important types of software, namely in the personal finance (such as Quicken) and desktop publishing (such as Print Shop) area. The main reason for this software deficiency stems from the relative infancy of Unix as a desktop computing platform and the fact that programs written for Windows will not run on Linux. If a Windows program is to function on Linux, it must be "ported," that is, the source code must be altered so it can "compile" on Linux. Compiling is the act in which source code is converted into a functioning program.
Porting an application takes much time and money, and until recently there was no real Linux market to speak of, so no companies were willing to port their products to Linux. But now the Linux-using population is growing rapidly, and Linux users need personal finance, desktop publishing, word processing, and other productivity-type software just as much as any other group. One estimate puts the Linux user base at at 3.5 million in 1996 and 7.5 million in March 1998. Assuming that trend has continued, there are probably well over 10 million Linux users by now. Since no one entity is in charge of Linux distribution, and it is freely obtainable from the Internet, it is impossible to make an exact count (Young). Subsequently, companies such as Corel and Star Division have ported their office suites; there are even rumors of a Quicken port, which would be a huge victory for the Linux community (Quicken is one of the biggest reasons people stick to Windows or Macintosh). Other products that have been ported, such as Oracle, a powerful database program, continue to validate Linux's viability as a serious operating system for business and home users; it is not just a toy for hackers anymore.
Not to be forgotten, however, are some of the "killer apps" the open source community has created itself. First, there is Apache, a web server package. Web server software does what the name sounds like, enables a computer to serve up web sites. When an end-user "surfs" the web, web servers are what send the data making up web pages. Apache is distributed under a license very similar to the GPL and it runs on well over fifty percent of the world's web servers. It is also the fastest growing in the number of sites running it; in fact every other web server package except Apache is actually decreasing in market share (Interestingly, Linux is a very popular operating system for running Apache.). A second well known "killer app" is the GNU Image Manipulation Program, or GIMP. The GIMP is a graphics editing program rivaling even Adobe Photoshop, the more or less accepted leader in graphics applications, and costs a total of zero percent of Photoshop's over $500 retail price!
It is important to note the Linux community as a whole is in no way opposed to commercial software. In fact, Linux users rejoice when commercial applications are ported to or developed for Linux. Commercial software gives Linux and other open source operating systems credibility. It also facilitates an easy switch to Linux, since the same application being used on the commercial platform is available for Linux as well.
The Linux community is not anti-capitalistic either. Simply because Linux itself is available for free does not mean goods and services produced on it must be. Goods and services produced on and running on Linux can actually generate more revenue since software overhead is drastically reduced. Internet Service Providers (ISP's) are an excellent example of this. ISP's may base their whole business on Linux, from the servers to the workstations, pay less for the software, and provide the same quality of service to their customers as with Windows NT or commercial Unices (Prasad).
Aside from application scarcity, the user interface itself has been a stumbling block for Linux and Unix for quite some time. Unix was built with the highly experienced and skillful user in mind; it was not originally aimed at desktops at all--only servers and mainframes. Thus, one of the most important steps to bringing Linux onto the desktop is making it easier to use. It is one of Mr. Coates' arguments against Linux, and it is also the subject of some of the heaviest development in the open source community.
Mr. Coates and other Linux opponents have probably never seen the highly integrated, intuitive, and user-friendly desktops provided by the KDE and GNOME projects. The goal of both these projects is the same: make Linux a viable desktop platform. A platform is the combination of hardware and software making up a computer. Linux on an Intel based machine is one platform, while Linux on a Macintosh is another, and Windows on an Intel based machine is yet another.
First, the K Desktop Environment, or KDE (the K does not stand for anything in particular), which is free like most everything else on Linux. Of the two projects, KDE and GNOME, KDE is far more mature. It consists of a window manager (a facility for controlling windows, moving and re-sizing them, minimizing, putting the title bar on every one, etc.), an integrated file manager/web browser/help agent, a customizable button bar (analogous to the Windows "Start" button), and numerous integrated applications, all with the same look and feel. A consistent look and feel is essential in order for the user to learn the environment quickly and not become confused, just what Linux lacks without KDE. KDE presents the user with a display not unlike Windows', which is important for Windows converts. Although the look can be changed for those who feel Windows is somewhat unsightly. In fact, customization runs almost rampant throughout KDE, every imaginable aspect can be changed to suit the user, and as with all open source software, the user can even program customizations himself into the source code.
One of the most exciting aspects of KDE is the forthcoming KOffice suite of productivity applications. KOffice will include a presentation application, a spreadsheet, a word processor, a vector-based drawing package, a formula editor, a small image editor, a chart program, and a personal organizer. These applications are under heavy development but already display some functionality. They are very highly integrated: charts and graphics can be "embedded" in spreadsheets, formulas can be inserted in documents, and more. KOffice may prove to be yet another open source "killer app" that eliminates the need for its commercial alternative all together (Dalheimer).
Second, the GNU Network Object Model Environment, or GNOME. While not nearly as far along as KDE to reaching its goal, GNOME shows a good deal of promise and is in a state of rapid development. Unlike KDE, GNOME emphasizes on letting the user to choose which window manager he or she wishes. While somewhat of a more difficult process during installation, the emphasis on window manager independence offers a great deal of user customization, such as title bars on sides other than the top of windows or with rounded edges. This is one major thing Windows lacks: customization. In Windows, window managers cannot be chosen as easily as with GNOME, and the user interface cannot be modified to the user's liking as with KDE (Cooper).
Like KDE, GNOME has an office suite in the works. It is not nearly as developed as KDE's, and it does not include as many applications yet, but it shows promise to become a useful tool in the future.
Unlike KDE, GNOME has a corporate sponsor, Red Hat, who created the Red Hat Advanced Development Labs (RHAD), the initial purpose of which is to contribute to the GNOME project. RHAD possesses a small team of talented programmers which has and continues to expedite the GNOME development process considerably (de Icaza).
In addition to the recent advances in user interface, Linux rarely crashes, unlike Microsoft Windows. Even the editor of Windows Magazine, Mike Elgan claims "Windows has become a bloated, unwieldy product only experts can use without confusion, crashes and endless compatibility problems." Beginning around 1981, Windows has evolved from MS-DOS to Windows 3.1 to Windows 95 and Windows NT 3.5, and finally to Windows 98 and Windows NT 4.0, each new version simply built on top of the previous one. MS-DOS did not even have a graphical user interface, yet it was the basis for all future Windows versions. Each subsequent version was visibly larger, slower, and less stable than the previous one. This means the Windows "codebase" has become stale and prone to frequent crashes.
Linux, on the other hand, builds on several decades of proven Unix stability, but it still possesses a fairly young codebase, since it was conceived in 1991, which means less of the "bloat" that accumulates with age in most software. Additionally, unlike Windows, the Linux kernel was never intended to provide a graphical interface, so as new versions of Linux are released, the source code is refined rather than cobbled together. This is illustrated in the fact that Windows requires much more memory on average to operate than Linux, which means Linux's code is more lean. Graphical interfaces on Linux are separate from the kernel, so in the unlikely event the graphical interface crashes, it will not bring down the entire system with it, as with Windows (Prasad).
Linux programmers also seem to have a higher coding standard, since everything they write is reviewed and revised by their peers. Microsoft's source code is not available for such scrutiny, so they are free to code poorly without fear of criticism. Additionally, Microsoft is always under pressure to provide new features and new products, and quickly. The size, speed, and stability of competing products versus Microsoft ones is testimony Microsoft does not always take the time to optimize their code.
When asked what Linux needs to be a contender in the desktop market, Dan Cox, systems administrator for Linux.com said:
Linux has made a lot of headway on the desktop this last year, KDE and GNOME desktop environments are coming along quite nicely. Unfortunately there are not a lot of end-user applications (commercial ones that people are used to) on the desktop yet, as more companies jump on the Linux bandwagon, Linux's desktop strength will increase. (Cox)Linux is in the position to be a desktop alternative very soon, but it cannot quite yet provide the level of ease required by most users. So people who say Windows is easier to set up, easier to use, and more uniform are right--for now. Linux is already faster, much more stable, and obviously cheaper than Windows. Desktop supremacy is the next logical step (Siever). As Linux users chanted at a recent computer exposition, they want "world domination, and fast" (Coates). They are well on the way to realizing that lofty goal.
Works CitedCoates, James. "A Rebellious Reaction to the Linux Revolution." Chicago Tribune. Apr. 25, 1999: 29 pars. 25 Apr. 1999.
Cooper, Paul Gregory. "X Windows versus Windows 95/98/NT: No contest." Linux Gazette. Jan. 1999: 27 pars. 25 Apr. 1999.
Cox, Dan. Personal Inteview. 7 May 1999.
Dalheimer, Kalle. "KDE: The Highway Ahead." Linux Journal. 58.6 (1999): 60-63.
de Icaza, Miguel. "The GNOME Project." Linux Journal. 58.6 (1999): 64-71.
Elgan, Mike. "An Open Letter to Bill Gates." Windows Magazine. May 1998: 13 pars. 5 May 1999.
Prasad, Ganesh C. "The Practical Manager's Guide to Linux." osOpinion. N.d.: 196 pars. 5 May 1999.
Raymond, Eric S. "The Jargon File, version 4.1.2." 28 Apr. 1999. 25 May 1999.
Siever, Ellen and the Staff of O'Reilly & Associates. Linux in a Nutshell. 2nd ed. Sebastopol: O'Reilly & Associates, 1999.
Welsh, Matt, and Lar Kaufman. Running Linux. 2nd ed. Sebastopol: O'Reilly & Associates, 1996.
Young, Robert. "Sizing the Linux Market." March 5, 1999: 38 Pars. 25 Apr.1999.
Note: this paper was written to be as easy to understand as possible, for the less-technical audience. Experienced readers: please excuse any oversimplification.