Linux: Lean, clean, and green
How GNU/Linux is becoming more eco-friendly
The explosive growth in the number of computers used by individuals and organizations over the past two decades has had a tremendous effect on the environment in both positive and negative ways. Environmental benefits can be seen as computers have helped many organizations go "paperless," relying on electronic delivery of content rather than printed materials. Advances in networking have also made it easier for many to work remotely, reducing the need to travel or commute.
Although there are many positive ecological benefits to the use of computers, technology has left a large, harmful footprint on the environment, as well.
Forrester Research estimates that as of 2008, more than one billion computers were in use worldwide. Thanks to emerging markets in Brazil, Russia, India, and China, it is expected that the number of computers in use by 2015 will reach over two billion. With a computer lasting three years on average, the number of computers disposed of annually exceeds 300 million.
Although 4.6 million tons of e-waste wind up in U.S. landfills, 50 to 80 percent of this waste is exported overseas to landfills in China, India, and Mexico. Despite efforts such as the Basel Convention and various laws to stop the trafficking of e-waste, we have not made a significant dent in the massive piles of electronic waste that release toxins into soil and groundwater all over the world.
Just what are these toxins? The Basel Action Network (see Related topics) identifies the following items as significant contributors to hazardous e-waste:
- Cadmium-, lead- or beryllium-containing circuit boards
- Cathode ray tubes (CRTs)
- CRT glass (processed and unprocessed)
- Batteries containing lead, mercury, and/or cadmium that may or may not be flammable
- Mercury-, beryllium- and polychlorinated biphenyl-containing materials, components, lamps, and devices
- Non-working parts and whole equipment or devices exported for repair or reuse unless assurances exist that hazardous electronic waste (such as CRTs, batteries, mercury lamps, or circuit boards) will not be disposed of in the importing country as a result
In addition to the towering e-waste problem, there is the power consumption issue of idle computers. As many users still leave their machines turned on during extended periods of inactivity, the energy these computers consume can be equated to letting the faucet run all day while you are at work. According to the Reduce Your CO2 site, idle computers worldwide generate 45 million metric tons of carbon dioxide (CO2) annually as a result of the 60,000 megawatts that they consume. Just to provide some perspective, the output of a nuclear power plant is around 1000 megawatts.
To complement the waste that stems from idling, computers—unlike most other products—use 10 times their weight in fossil fuels when they are manufactured and a significant amount of water. Automobiles and refrigerators use approximately their own weight in fossil fuels during the manufacturing process.
GNU/Linux as part of the solution
Although many state governments in the U.S. have stepped in to create laws to help "green up" the computer industry, these laws are difficult to enforce. Instead, some of the most promising solutions to curtailing e-waste and the overuse of resources come from the GNU/Linux community and the corporations that are partnering with that community in this cause.
Limiting disposal with GNU/Linux
Limiting the disposal of computers seems like an easy solution to the problem of e-waste. After all, although most organizations refresh computers every three years or so, many families, schools, and non-profit organizations benefit from recycled computers. Companies like Free Geek (see Related topics) have recycled roughly 500 tons of computer-related scrap by refurbishing old computers and donating them to schools and charities. To run these computers, Free Geek installs GNU/Linux as the operating system. This choice not only stems from the organization's philosophical view to support Free, Libre, Open Source Software (FLOSS) programs but also out of necessity. GNU/Linux can theoretically be installed on computers running the bare minimum when it comes to hardware, as Table 1 shows.
Table 1. Minimum hardware requirements for GNU/Linux distributions
|Distribution||Minimum hardware requirements|
|Damn Small Linux (DSL) running the X Window System|
|Fedora 10 (graphical mode)|
Although the minimal requirements to run GNU/Linux make it tempting to recycle any old computer, there are times when hardware just isn't accepted for refurbishing programs. Free Linux PC (see Related topics) follows a similar model to Free Geek, providing recycled computers to those in need, but Free Linux PC puts requirements on their donations to make sure that all the computers donated meet specific standards. Free Geek accepts older computers and components that do not meet their standards and makes sure that this e-waste is sent to recyclers that will safely dispose of the components instead of sending them to a landfill in the U.S. or abroad.
Preparing old computers for donation
Organizations that are looking to donate computers for recycling programs using GNU/Linux can benefit greatly from taking part in these programs. In addition to the tax benefits, companies that recycle their old computers can use the positive press they stand to receive as a result of their eco-friendly efforts.
However, if the process is not handled correctly, computer donations can be disastrous. Care must be taken to delete all data from the hard disks of any computers bound for disposal, regardless of whether they are to be sent to a company for recycling or slated to be refurbished and donated. Simply deleting data merely hides it from view and does nothing to remove the data from the hard disk. Formatting—even a low-level format—will not erase data from a disk, either. When something is deleted from a computer's disk, it simply tells the operating system that the space that the data once held is now available and can be written over. Many programs are available at no cost that allow you or any other person to retrieve data from a computer's hard disk that has been erased, formatted, even overwritten.
Although there are programs that people use to retrieve data from an old disk, there are just as many that will safely ensure that these programs cannot extract data. The Center for Magnetic Recording Research provides Secure Erase, which sanitizes data to the standards of the U.S. National Institute for Standards and Technology (NIST) and is freely available for download at their site (see Related topics).
Darik's Boot and Nuke (DBAN) is a project funded by Global Electric Electronic Processing (GEEP) Inc. (see Related topics). DBAN sanitizes hard disks of sensitive data and is available for download at no cost. For larger enterprises, EBAN (see Related topics) is available, with warranty and indemnity, for a cost.
Researchers expect that the year 2010 will mark the time when the cost of powering a server will overtake the cost of purchasing it. According to the U.S. Environmental Protection Agency (EPA), data centers in the U.S. alone consume 4.5 billion kilowatt hours (KWH) each year, and they expect this figure to double by 2012. With GNU/Linux servers making up between 27 and 35 percent of the server market share by many estimates (more so if you include UNIX®), the greening of GNU/Linux can make a huge dent in the amount of energy consumed and carbon emissions as a result of its use.
To ease data center sprawl, many organizations began seriously investigating an older IBM technology used on mainframes called virtualization as a way to cut back on ever-growing server farms. The EPA discovered that some servers lie idle up to 85% of the time, but the processor was still running. In other words, the processor was always looking for something to do—sometimes up to 1,000 times per second. Because the processor was already active, performance wouldn't be affected too much. As a result, virtualization became a necessity in the design of modern data centers.
Virtualization to reduce power consumption
As a result of embracing virtualization, servers running GNU/Linux in this capacity are able to drastically reduce the amount of power wasted as a result of the server sitting idle. Combining multiple virtual servers on one physical machine can reduce the power usage an estimated 7000 kWh annually per virtual machine (VM). Carbon emissions are also reduced by up to four tons each year for every server that runs virtually. Take into consideration that some physical servers house up to 30 virtual servers, and the reduction in energy usage and carbon emission output is outstanding.
Think this is impossible? Look no further than IBM's "Big Green Linux" initiative, where it is expected that 3,900 servers will be consolidated onto 30 IBM System z® mainframes running GNU/Linux, saving an estimated 80% in their annual energy usage. This effort leads by example, as IBM is also encouraging its clients to incorporate Linux into their information technology (IT) offerings as a way to reduce energy requirements through consolidation and more efficient use of resources.
Virtualization to reduce e-waste
Not only does GNU/Linux's virtualization strategy help servers reduce power use, but it also helps reduce the amount of computers manufactured. By reducing the need to manufacture more servers, the amount of fossil fuel and water used in the process is reduced, as well. Going one step further, with less need for physical computers, virtualization helps reduce e-waste. Fewer servers housed in the data center means less hardware disposed of.
To complement the trend of virtualization in the data center, many companies have designed software specific to the power management of VMs. VMware Distributed Power Management (VMware DPM; see Related topics) further reduces power consumption by turning off servers when they are not needed. As the need for resources increases, so does the number of available servers in the pool. Power management is all done in real time, so there is no negative effect on the service level.
Green GNU/Linux and the community
The major allure of GNU/Linux has always been the community that supports it. To coincide with work done by corporate partners such as IBM and Red Hat, the GNU/Linux community has made tremendous strides in the greening of its operating system through the Green Linux Workgroup (see Related topics).
The tickless kernel
One of the key developments of the Green Linux Workgroup and its partners is the tickless kernel. As previously mentioned, when idle, the GNU/Linux kernel continuously searches for something to do. Typically, a kernel sets off a timer interrupt about every 4ms to check whether or not new tasks need to be scheduled. Kernel 2.6.21 introduced the tickless kernel, which computes when new tasks will need to be scheduled and sets a timer interrupt for that time, allowing the processor to stay in its lowest power state for much longer periods of time (multiple seconds), thereby consuming less power.
Although the tickless kernel is often enabled by default, you can check to see if you have it enabled with the following command:
cat /boot/config-$(uname -r) | grep CONFIG_NO_HZ
If the output is
CONFIG_NO_HZ=y, the tickless
kernel is enabled.
CONFIG_NO_HZ=n means that it
Being power aware
The tickless kernel makes great strides in extending the sleep state of the processor, but certain events still unnecessarily wake the processor out of its sleep state. To search for the culprits, Intel's foray into the green GNU/Linux world—LessWatts.org—promotes PowerTOP, a utility designed by Intel to identify what is waking up the processor (see Related topics).
PowerTOP is available for download at no cost and, much in the spirit of FLOSS, works with the Linux kernel. It is not specific to Intel processors, so AMD users can benefit from the utility, as well. Once installed, you run PowerTOP from the terminal to provide information about how long the processor remains in the highest C state (sleep state) and P state (the frequency of the processor) as well as the top causes for wake-ups. After analyzing the wake-ups, PowerTOP provides suggestions to achieve even greater efficiency.
Many power-saving techniques employed by GNU/Linux are geared more toward the server market—partly because it is the largest market share GNU/Linux has and partly because the results from trimming excess power consumption from a server are often more noticeable than those from a desktop. But even though greening the server has a far greater return on investment, the greener side of the GNU/Linux community is not ignoring the desktop.
The tickless kernel and PowerTOP are both available for the desktop distributions of GNU/Linux, but users can also trim power consumption by setting their computers to hibernate after periods of inactivity. Most distributions have hibernation utilities built into the kernel; however, those using graphical user interface (GUI) desktop environments such as GNOME or the K Desktop Environment (KDE) may find it easier to use applications built specifically for power management in a graphical environment.
GNOME users can install GNOME Power Manager (if it isn't already bundled as part of their distribution) to configure options that reduce power consumption. Tasks such as turning off the hard disk when not in use, dimming the monitor when the computer is idle, hibernating the computer, or turning the display blank are done through a simple GUI rather than configured through the terminal. For those in the KDE camp, KPowersave handles the same tasks for its environment in a manner that is as easy as GNOME's.
The advances that the GNU/Linux and FLOSS communities and their corporate partners have made continue in green computing practices. Although I was able to touch on some of the more important projects that contribute to green GNU/Linux, it is only a start to what is being done to create a more sustainable workplace.
- Check out the Green Linux Workgroup for more on their activities.
- Learn more about the Basel Action Network and their work to stop the trade in toxic waste.
- Looking to donate a computer? Check out Free Geek.
- For more information about computer standards, check out the NIST site.
- Download DBAN or EBAN to sanitize your data before donating a computer.
- In the developerWorks Linux zone, find more resources for Linux developers, and scan our most popular articles and tutorials.
- See all Linux tips and Linux tutorials on developerWorks.