Computing: Free Open Source Software: Linux

A 684Kb PDF of this article as it appeared in the magazine—complete with images—is available by clicking HERE

In the first article of this three-part series on desktop software ("Current Problems in Desktop Computer Usage," June 2006), I concentrated largely on the issue of open data standards and why I believe that it is desirable to move toward open standards. A formidable problem was noted–that of viruses, spyware, and other malicious software found running on our computers without our prior knowledge or approval. In this issue and the next, I will describe some "new" software which has great potential to mitigate some of the computational problems we face.

"New" Software Solution
Interesting new software trends in personal computing technology continue to develop. One type of software that is getting a lot of attention is an operating system which is called Linux. Linux provides an alternative to the Intel/Microsoft Windows computer platform, which has found widespread acceptance in the surveying industry. Linux is being used with increasing frequency by IT departments and computer end users alike.

An operating system is special software that provides fundamental operational capabilities that all other running programs require. and it runs constantly in order to provide these services. Additionally, modern operating systems such as Linux and Microsoft Windows XP provide various programs and software tools that are useful to the user. Linux, and application software that runs on Linux, are now in the spotlight because it is being used to mitigate the problems previously mentioned, and because it provides additional computational tools which can be useful for a wide variety of data processing chores. This brings to mind a couple of questions: Is Linux an operating system which is useful to surveyors? If so, will Linux-based computers fare any better than (for example) Apple’s line of personal computers, which are infrequently seen in surveying practices? Will new choices in computer software help us cope with some of the technology problems we’re experiencing? I beleive the answer to all these questions is yes. My purpose therefore is to describe key traits of Linux to help the reader judge the potential of Linux for himself.

History of Linux
The roots of Linux go back to the first multiple-platform operating system devised. In 1969, AT&T/Bell Labs started the development of an operating system called UNIX. After 1975, the U N IX operating system was made available to entities outside of Bell Labs, eventually resulting in UNIX being made available on a commercial basis for several different brands and types of computers. While versions of UNIX were developed for the Intel/PC-compatible line of computers during the 1980s, UNIX was, for quite some time, predominantly confined for use in large mainframe computers and minicomputers. UNIX was seldom used on desktop personal computers, probably due to the inability of early, primitive PC hardware to take full advantage of the UNIX design, and because of the extra expense incurred buying a UNIX operating system. However, there are a few surveyors who actually used UNIX on their PCs.

In 1991, a Finnish graduate student named Linus Torvalds began work on the kernel of a new UNIX-like operating system. The "kernel" is that part of U N IX and Linux which does several fundamental tasks, like managing storage devices and regulating other programs running on the computer. His kernel has been combined with additional supporting programs to produce a freely available complete operating system which collectively called "Linux.". The additional supporting software, whose development predates that of the Linux kernel, is produced by the Free Software Foundation and is called "GNU." Therefore, some refer to the entire operating system as the "G N U / Linux" operating system. In any event, because UNIX is a registered trademark, Linux cannot accurately be called UNIX, however Linux operates in essentially the same fashion as the UNIX operating systems.

There are other freely available UNIX-like operating systems, such as FreeB S D and OpenBSD. The result of this is that there are now several operating system alternatives to Microsoft Windows which run on Intel-compatible and other hardware. While I’ll continue to discuss Linux exclusively (as well as software that is available for Linux) for the remainder of this article, most of what will be stated also applies to the other UNIX-like operating systems.

Permitted Uses/"Free" Availability
Note the phrase "freely available" above. A lengthy article could be written about copyright law with respect to computer software, but as is well known, there are usually strict constraints placed on the permitted uses of the commercial software which we are licensed to use. For purposes of this discussion, by "freely available" I mean that very few restrictions are placed on your use of Linux. You are not restrained from installing it on as many computers as you wish. The source code is available for your use, and you are allowed to modify the software (assuming you have the skill). You may provide the software to others (either the original software or the software after you have modified it), so long as you also make the source code available. If you provide the software to others, you are forbidden from imposing any new restrictions upon its use, so that people who get the software from you are entitled to the same rights of usage that you have. The software can be used for commercial and non-commercial purposes. Sometimes the phrases "open source software," "free software," and "free open source software" (abbreviated as "FOSS") are used to denote software having those general traits. For those interested in learning the finer points of FOSS, the Free Software Foundation and the Open Source Initiative web sites are good starting points. (See the accompanying sidebar of Internet resources for further reading.)

In the context of FOSS, the word "free" connotes having freedom to use the software in ways that are typically prohibited by commercially available software. However, much open source software can also be obtained free of cost, and many groups have created Linux "distributions" that can be downloaded from the Internet without cost. A distribution is a particular collection of Linux and other software that has been bundled together and offered to others. Each distribution is maintained by a pool of programmers who are typically volunteers of this effort. (Despite the fact that many of the participating programmers are perceived as being seriously underpaid for their work, FOS S development has been healthy and growing steadily for over two decades, and shows no sign of slowing down.) Some groups have formed companies which sell Linux distributions. So why buy something that’s available for free elsewhere? Those who sell Linux attempt to add value to the software by providing formal technical support, printed documentation, or perhaps other software refinements that they hope the customer will find valuable. Numerous books have been written about installing and running Linux, and Linux software is included with them. These books are an excellent way to be introduced to Linux, particularly if you have an old, spare computer on which to install the software.

Applications and Uses
If you want to decide whether or not to run a Linux computer starting, say, tomorrow, an old method of choosing software could be applied: Decide what you want your computer to do for you, then decide what software you’ll use for that pur
pose, and last find the hardware and operating system which runs that software. If the only thing you want from a computer is to run your favorite Windows-based surveying software, it would be difficult to recommend Linux. Good progress is being made in finding ways of actually running Windows applications under Linux, but I am reluctant to recommend such a solution to most users at this time. There are a few native Linux programs that are relevant to surveying and mapping, including at least one CAD program, software for laser scanners, and GIS software, but most surveying programs currently running under Windows are not available for Linux.

However, even in the absence of a Linux version of your favorite surveying program, some of the current work needs of surveyors are well addressed by Linux and the currently available crop of application software written for Linux. For example, OpenOffice is a freely available, highly regarded "office suite" which includes a sophisticated word processor, spreadsheet, presentation software, drawing software (not CAD), a web document editor, and other programs. Many people use OpenOffice instead of comparable commercially available alternatives. OpenOffice saves user data in an open standard data format, and OpenOffice and KOffice (another popular opensource integrated office software suite) will both be moving to another open standard data format. As was noted in the June article, I expect that the use of open data standards will help users to share data more easily and to provide greater assurances of having access to old data in the future. (Incidentally, OpenOffice does a very good job, though not always perfect, of directly reading and writing Microsoft Office documents, despite the secret, proprietary nature of the Microsoft Office native file formats.)

Networking applications like e-mail and Web browsers are a routine part of Linux systems, and if you make use of these types of networking programs, Linux is ready for you. It is significant that users of open source operating systems and application software have seldom been victimized by the viruses and "spyware" that are transmitted by networks and that have blighted so many Windows systems. While open source software may not be totally immune to future attacks, certain design characteristics of Linux make it significantly more difficult for nefarious programmers to create programs which successfully attack Linux machines. Additionally, the very open development process of FOSS is credited by many as being a key factor in making better, more secure software, because the availability of the source code allows for large numbers of programmers to find and fix potential problems. It is for these reasons that the use of Linux is a good way to help avoid the epidemic of viruses and other "malware" which exists today.

Another prominent reason that Linux use is rapidly growing is due to its strength for server applications. If you have a workplace which is large enough to have file or database servers for a network of users, Linux and open source server software are up to the task. Linux already has a well established presence on Internet servers and in the Information Technology departments of numerous large and small corporations around the world. Linux has a fine reputation for this application because of its performance, reliability, and low occurrence of down time.

Take a Test Drive
The sidebars to this article contain Web references for additional reading and a short summary of how you can "test drive" a Linux distribution called KNOP P IX. KNOPPIX allows you to temporarily run Linux on your computer without installing any software or removing any existing software. In the September issue, I will present some additional details of Linux and free open source software, including a few more comments on open data standards in open source software, additional traits of Linux which distinguish it from Microsoft Windows, and some possible drawbacks I see to using Linux at this time.

Loren Gibson is a Project Surveyor at Keith and Schnars, P.A., Fort Lauderdale, Florida, and is licensed in the states of Florida and New York. He received his MS degree in Computational Science from the State University of New York College at Brockport.

Sidebars:
For Further Reading

The following resources are good starting places for obtaining more information about UNIX, Linux, and free open source software:
www.linux.org (Lots of Linux information, including a list of Linux user groups, tutorials, etc.)
www.distrowatch.com (List of popular Linux distributions and BSD operating system software, together with links to various related websites)
www.tldp.org (The Linux Documentation Project. Contains the formal, official documentation about Linux.)
www.linux-laptop.net (A collection of users’ experiences in getting Linux to work on many brands and models of laptop computers.)
www.fsf.org (The Free Software Foundation, which creates the supporting software for the Linux kernel to make a complete operating system. Some open source application software is also available here. This site has background material about free software issues.)
www.opensource.org (The website for the Open Source Initiative.)

The following websites offer information about a few of the distributions of Linux or other UNIX-like operating systems, as well as some of the software available (not all of which is FOSS):
www.suse.com (SUSE Linux)
www.redhat.com (Red Hat Linux)
www.mandrakelinux.com (Mandrake Linux)
www.xandros.com (Xandros Linux)
• fedora.redhat.com (Fedora Core Linux)
www.freebsd.org (FreeBSD operating system)
www.openoffice.org (Word processing, spreadsheet, etc.)
www.ribbonsoft.com/qcad.html (QCad CAD program)
• grass.baylor.edu/ (GRASS GIS software)
www.mozilla.org/ (Web browsers, email clients, etc.)
www.gimp.org/ (Digital photograph retouching, image manipulation, etc.)
www.novell.com/products/desktop/features/evolution.html (E-mail, calendar, collaboration software)
• ganttproject.sourceforge.net/ (Project management software)

KNOPPIX
There’s an easy way to experiment with Linux on your PC on a temporary basis which does not require you to modify the software on your hard drive, so long as you can boot from your computer’s CD drive. There are numerous "live CD" distributions of Linux which contain the operating system and an assortment of applications all on one bootable CD.

One very popular live CD distribution of Linux is called KNOPPIX. KNOPPIX happens to be made only for Intel-compatible computers, and requires a 80486 or later CPU, at least 96 MB of RAM (with 128 MB recommended), a standard SVGAcompatible graphics adapter, and a mouse. If you have high-speed Internet access and the ability to burn CDs, you can download the 700 MB CD image of the most recent version of KNOPPIX at www.knoppix.org. (Click on the U.S./Great Britain flag at the top of the page to get the English language version of the website.) After you burn the KNOPPIX CD, place it into your CD drive and reboot your computer. (If your compu
ter will not boot off your CD, find out how to check your BIOS setup and make sure that booting from CD is enabled.) When you’ve finished using KNOPPIX, log out of KNOPPIX (you will be given the opportunity to remove the CD prior to powering down), and the next time you reboot without the CD, you’ll be back to your normal system.

Important note:
While I’m confident that KNOPPIX is safe to use, I nonetheless recommend that you back up all important data on your computer before running KNOPPIX. Never take risks with your data. If you have not recently backed up your data, then I particularly urge you to back up the data stored on your computer’s hard drive, even if you have decided not to run KNOPPIX!

A 684Kb PDF of this article as it appeared in the magazine—complete with images—is available by clicking HERE