This article discusses Linux which is an emerging technology that will affect many mechanical engineers. Linux is a freely distributed, open-source Unix-like operating system, originally for PCs, but now available on other platforms. The Internet facilitated the collaborative effort that produced Linux—and so it is not surprising that the explosive growth of the Internet was also made possible by Linux. Linux would be a fantastic operating system for building automation systems and direct digital controls. One area where Linux really shines is Local Area Networking, using a program called Samba (which is included in almost all Linux distributions). The technical support for Linux is very good. Chances are very good that no matter where you are, there is a local Linux users group nearby where you can turn for help. These groups often have mailing lists that you can subscribe to, and post queries. Linux resources on the Internet are outstanding. Local users groups will occasionally have “install fests,” where you can get help installing Linux on your PC.
Aquiet rebellion is under way in the world of computer operating systems and software. The rebels refer to themselves as the Open Source Movement. Their doctrine is called the “GNU Manifesto,” a document available from the Free Software Foundation in Boston; their standard is the Linux operating system.
So, you are probably asking yourself, what is the significance of this? Why do I need to know about this? You need to know about it because Linux is an emerging technology that will affect us. We are going to see it used on our desktops, on our network servers, as a platform for industrial process controls, building automation systems, and HVAC controls. We will also see it used in embedded systems in all sorts of engineering applications, such as machine controls, industrial automation, process controllers, communication devices, data acquisition systems, and information storage and retrieval systems. It is the operating system of the future.
Linux is a freely distributed, open-source Unix-like operating system, originally for PCs, but now available on other platforms. Next question: What is Unix? It is a very mature multitasking, multi-user operating system that was originally developed by both AT&T and the University of California at Berkeley. Unix was designed when computer hardware was expensive and had to be shared with multiple users. It was designed from the ground up for networking. It is a very powerful, robust operating system. Philosophically, it might be hard to argue that Unix was ever intended to serve as an OS for a personal computer.
So why is it that a brilliant young computer scientist from Finland, Linus Torvalds (along with hundreds of volunteers from all over the world), developed Linux? That brings us to our next question.
Why would anybody develop this operating system— and give it away? Well, there are computer scientists and programmers from all over the world who developed this operating system out of frustration with the products that dominate the market. Many of these programmers were captivated by the idea of an open-source operating system where they could participate in the development. If something didn’t work properly, they could fix it themselves, post the fix on a Usenet newsgroup for peer review and approval, and have the change incorporated into the next official release. Many of these programmers realized that giving away the software could create a much bigger user base—and a big market for technical support. This seems to be happening.
Linux and the Internet
The Internet facilitated the collaborative effort that produced Linux—and so it is not surprising that the explosive growth of the Internet was also made possible by Linux. The two have derived great strength and energy from each other—like a good marriage. According to The Internet Operating System Counter, an Internet-based survey of almost 1.5 million Web servers in April 1999 found that 28.5 percent of providers were using Linux as their operating system. In second place was Windows, at 24.4 percent. In June of this year, Dell Computer Corp. posted an estimate that as many as 33 percent of Internet service providers were using Linux on their servers.
I am using Linux on my server (which is collocated at an Internet service provider facility 80 miles from my home). In the two years that this machine has been online, only once did I have to drive the 80 miles to tend to it—and that was to replace a tape drive that failed. I have never had a critical application crash. I am running the typical suite of applications that you would need for commercial Web hosting (the Apache Web server, Sendmail mail server, BIND Domain Name Server, etc.). I am able to administer the server remotely using encrypted Telnet transactions. I have never had the operating system crash.
I’ve had some minor applications crash (mostly beta release X-Windows applications), but this never brought down the OS. If the power goes out, the machine and all of the applications will automatically restart when power is restored. My server has never produced a “Blue Screen of Death”—so common with some of the less capable network operating systems.
First of all, Linux would be a fantastic operating system for building automation systems and direct digital controls. Indeed, I know of at least one company that is writing DDC software in the Java programming language, a cross-platform language that will operate under any OS. Using Java, this DDC software could be hosted on any Unix, Linux, Mac, or NT box.
Linux is also being incorporated into the design of application-specific integrated circuits, where a chip is designed specifically for a certain function and the operating system is embedded in the chip. I think it won’t be long before we see Linux in the devices that control our chillers, air handlers, pumping systems, and variable air-volume boxes.
The heating, ventilation, and air conditioning industry could benefit greatly by an Open-Source model for building automation systems that take advantage of low-cost standardized hardware, Internet connectivity, and free software. Years ago, technology was more expensive than labor, but now the reverse is true, except in the HVAC industry where both technology and labor are expensive. This is hindering the growth of our DDC technologies.
The desktop applications alone are enough to convince me that this OS has a bright future. Linux has a graphical user interface called X-Windows. There are several desktops to choose from. The two most popular are the KDE and Gnome desktops. These interfaces are very user- friendly and have a familiar look and feel. The more recent releases of Linux have also included (compliments of Sun Microsystems) the Star Office Suite, which is a full-featured package of business applications, including a word processor, spreadsheet, presentation graphics, e-mail, graphics, and database program. These programs are just as good as some that cost hundreds of dollars—and they are free.
Recent releases of Linux also include all sorts of multimedia goodies, such as CD players, image viewers, MPEG players, MIDI players, etc. You will also find Internet applications like Netscape, PPP dialers, IRC clients, mail clients, news clients, etc. Some of the releases also include a program that allows nondestructive repartitioning of your hard drive, so that you can install multiple operating systems on a single PC without having to completely reformat the drive. This really makes it easy to set up a dual boot machine.
You will also find C, C++, and Fortran compilers for those who are inclined to write their own software. There is a lively emerging software market for Linux systems. You will find some software products for mechanical engineers, including CAD and 3-D modeling programs. Sooner or later, I suppose we will see some of the more popular CAD programs ported to Linux, as well as FEA and CFD applications.
One area where Linux really shines is Local Area Networking, using a program called Samba (which is included in almost all Linux distributions). Imagine being able to n etwork all of your office computers (Macs, PCs, Windows, NT, and Unix boxes) without the big expense of a commercial n etwork operating system. This could save thousands of dollars on the cost of your network.
There are some problems with Linux, though. The learning curve is steep in areas such as system administration, networking, network file systems, customized kernels, and e-mail configurations. There are some graphical user interfaces that make this a little easier, but more often than not, you have to edit configuration files manually to make everything work properly.
Another problem is the lack of compatibility with library files. New releases of Linux don’t always use the same set of standard library files, so if you develop software for a particular release of Linux, there is no guarantee that the software will be backward-compatible (with older versions of Linux) or forward-compatible (with future releases of Linux). There are work-arounds for this problem, but they can be daunting even for a real Linux guru.
A lot of hardware won’t work with Linux. I have had problems with SCSI cards, ethernet cards, and video cards. Newer 32-bit PCI modems will not work under Linux. If you have one, you will have to replace it with an older-style, 16-bit ISA modem. These ISA modems are becoming more expensive—and harder to find.
Hardware compatibility lists are available for Linux. If you are considering installing Linux on one of your PCs, take a good look at your hardware, and the compatibility list (which you can find on the Internet). You may have to replace a couple of things to make it work. I have been using Linux since 1995 and, I have to admit, the hardware incompatibility problem doesn't seem to be getting better, even as the Lil1lDC user base continues to expand.
There are those who hesitate to build their critical information systems with free software and free operating systems. All I can say to these people is this: Take a look at some of the big corporations and government agencies that are using it—NASA, the U.S. Air Force, U.S. Navy, IBM, and Dell Computers, to name just a few. They wouldn’t be using Linux if they didn’t trust it. As a matter of fact, NASA scientists developed an open-source Linux application called Beowulf, where Linux boxes are clustered for parallel processing. In certain applications, Beowulf clusters can approach the power and performance of supercomputers—at a fraction of the cost.
As I said, Linux is freely distributed over the Internet and you can download all of the files necessary—but this could take all day. You are almost always better off buying a commercial distribution by a company like Red Hat, Mandrake, Slackware, Caldera, Suse, or Debian. These companies add a lot of value by packaging everything you need on a single CD-ROM with documentation, instructions, and some limited technical support. Usually, these distributions will also include a lot of extra applications and free software. You can also buy PCs with Linux already installed. There are numerous reputable vendors that are offering reasonably priced Linux boxes.
Linux is being incorporated into the design of application-specific integrated circuits.
The technical support for Linux is very good. Go to any bookstore and look at all the books being written about Linux. Chances are very good that no matter where you are, there is a local Linux users group nearby where you can turn for help. These groups often have mailing lists that you can subscribe to, and post queries. Linux resources on the Internet are outstanding. Local users groups will occasionally have “install fests,” where you can get help installing Linux on your PC.
As your exposure to Linux increases, you may notice that Linux users have a “do-it-yourself” mentality. You will also find that it is the operating system preferred by the “technically elite” users. I think that, in some respects, this has intimidated many potential users.
You will also notice this OS has not been vigorously marketed. At least one vendor, Tiger Direct, is offering inexpensive (under $600) Linux desktop computers. That is a great way to introduce this technology to the general public—preinstalled, all the bugs worked out.
Take a closer look at Linux. Don’t be afraid to experiment with it. Recycle one of your older PCs and install Linux on it, or buy a new PC with it already installed. I’m sure you’ll like what you see.