IN THIS CHAPTER
Diving into Linux origins and features
Telling Linux apart from the rest of the operating system pack
Depending on GNU and the GPL
Marveling at the Linux Company (or lack thereof)
Checking out popular Linux distributions
Welcome to the world of Linux, the operating system developed by thousands of people around the world! In this chapter, you find out about Linux itself — what it is, where it comes from, and why it gets so much attention. Prepare to have your assumptions challenged about how software must be developed and sold, and your mind opened to new possibilities.
Is Free Really Free?
Understanding Linux requires a radical shift of thought regarding the way that you acquire and use computer software. (Note: By radical, I mean getting to the root of the matter, rather than putting on beads and camping out in the administration building.) Your first step toward shifting your mindset is to alter your general connotation of the word free to represent freedom, rather than free lunch. That’s right; you can sell “free” software for a fee … and you’re encouraged to do so, as long as you relay the same freedom to each recipient of the software.
Don’t scratch your head too hard; these concepts are tough to grasp initially, especially when you consider the conditioning you’ve received from the commercial software industry's marketing departments. Perhaps you don’t know that when you purchase most proprietary software packages, you don’t actually own the software. Rather, you’re granted permission to use the software within the bounds dictated by the licensor.
Linux also has a license. However, the motives and purpose of the license are much different from those of most commercial software. Instead of using a license to restrict use of the software, the GNU General Public License (GPL) that Linux uses ensures that the software will always be open to anyone. No company can ever own Linux or dictate the way in which you use or modify Linux — although they can have their own individual copyrights and trademarks on their various brands of it, such as Red Hat and SUSE. In essence, you already own Linux, and you can use it for anything you like, as long as you propagate the GPL freedoms to any further recipients of the software.
Linux: Revolution or Just Another Operating System?
Before going any farther into Linux, I need to get some terminology out of the way.
Tux is the formal name of the mascot penguin that represents Linux. Rumor has it that Linux’s creator, Linus Torvalds, is rather fond of these well-dressed inhabitants of the Antarctic.
An operating system is the software that runs your computer, handling all interactions between you and the hardware. Whether you’re writing a letter, calculating a budget, or managing your recipes on your computer, the operating system provides the essential air that your computer breathes. Furthermore, an operating system isn’t just one program; it consists of hundreds of smaller programs and utilities that allow us humans to use a computer to do something useful. You then run other programs (such as your word processor) on top of the operating system to get everything done.
In recent technological history, Linux has evolved from a techie playground to a rock-solid solution for the business enterprise. The same software that was once dismissed as rogue is now being adopted and promoted by industry leaders such as IBM, Hewlett-Packard, Motorola, Microsoft, and Intel. Each of these computer manufacturers has determined that Linux provides value for their customers in some way (as well as for their own operations).
Linux has been accused of being “just another operating system.” On the surface, it may appear so, but if you look deeper, you can see that this isn’t so. The Linux project is a flagship leading the current trend toward open source and free (as in freedom, not free lunch) software within the computing industry. A rock-solid operating system because of the model under which it was (and continues to be) developed, Linux represents much that is good in software development.
Two fundamental distinctions separate Linux from the rest of the operating-system pack:
Linux is licensed under the unique and ingenious GNU General Public License, which you can read about in the next section.
Linux is developed and maintained by a worldwide team of volunteer and paid programmers, working together over the Internet.
Linux is great for many reasons, including the fact that the folks who built it from the ground up wanted it to be
Multiuser: More than one user can be logged in to a single computer at one time.
Multiprocess: True preemptive multitasking enables the operating system core to efficiently juggle several programs running at once. This is important for providing multiple services on one computer.
Multiplatform: While Mac OS only runs on Intel CPUs and Windows only runs on Intel and ARM CPUs, Linux currently runs on more than 24 different CPU platforms (hardware types), including 32- and 64-bit Intel-based PCs, Digital/Compaq Alpha, all variants of the Apple Macintosh, Sun SPARC, the Apple iPod, ARM CPUs, and even the Microsoft XBox.
Interoperable: Linux plays nice with most network protocols (languages) and operating systems, allowing you to interact with users and computers running Microsoft Windows, UNIX, Apple Macintosh computers, and other, more niche groups.
Scalable: As your computing needs grow, you can rely on Linux to grow with you. The same Linux operating system can run on a tiny electronic photo frame, a desktop computer, or a very large, industrial-strength server system.
Portable: Linux is mostly written in the C programming language. C is a language created specifically for writing operating system–level software and can be readily ported (translated) to run on new computer hardware.
Flexible: You can configure the Linux operating system as a network host, router, graphical workstation, office productivity PC, home entertainment computer, file server, web server, cluster, or just about any other computing appliance that you can think of.
Stable: The Linux kernel (the core of the operating system) has achieved a level of maturity that makes most software developers envious. It’s not uncommon to hear reports of Linux servers running for years without crashing.
Efficient: The modular design of Linux enables you to include only the components needed to run your desired services. Even older computers can utilize Linux and become useful again.
Free: To most people, the most intriguing aspect of Linux is the fact that it’s often available free of charge. How (the capitalists murmur) can anyone build a better mousetrap with no incentive of direct monetary return?
In this chapter, I intend to answer that last question for you. I also hope to paint a picture of the open source software development model that created Linux.
SO WHERE DID LINUX COME FROM?
The quickest way to understand Linux is to take a peek at its rich heritage. Although programming of the Linux core started in 1991, the design concepts were based on the time-tested UNIX operating