Chapter 1. Introduction

The move away from proprietary operating systems is causing quite a stir in the corporate boardrooms of many traditional embedded operating system (OS) companies. For many well-founded reasons, Linux is being adopted as the operating system in many products beyond its traditional stronghold in server applications. Examples of these embedded systems include cellular phones, DVD players, video games, digital cameras, network switches, and wireless networking gear. It is quite possible that Linux is already in your home or your automobile.

1.1. Why Linux?

Because of the numerous economic and technical benefits, we are seeing strong growth in the adoption of Linux for embedded devices. This trend has crossed virtually all markets and technologies. Linux has been adopted for embedded products in the worldwide public switched telephone network, global data networks, wireless cellular handsets, and the equipment that operates these networks. Linux has enjoyed success in automobile applications, consumer products such as games and PDAs, printers, enterprise switches and routers, and many other products. The adoption rate of embedded Linux continues to grow, with no end in sight.

Some of the reasons for the growth of embedded Linux are as follows:

• Linux has emerged as a mature, high-performance, stable alternative to traditional proprietary embedded operating systems.

• Linux supports a huge variety of applications and networking protocols.

• Linux is scalable, from small consumer-oriented devices to large, heavy-iron, carrier-class switches and routers.

• Linux can be deployed without the royalties required by traditional proprietary embedded operating systems.

• Linux has attracted a huge number of active developers, enabling rapid support of new hardware architectures, platforms, and devices.

• An increasing number of hardware and software vendors, including virtually all the top-tier manufacturers and ISVs, now support Linux.

For these and other reasons, we are seeing an accelerated adoption rate of Linux in many common household items, ranging from high-definition television sets to cellular handsets.

1.2. Embedded Linux Today

It might come as no surprise that Linux has experienced significant growth in the embedded space. Indeed, the fact that you are reading this book indicates that it has touched your own life. It is difficult to estimate the market size because many companies still build their own embedded Linux distributions.

LinuxDevices.com, the popular news and information portal founded by Rich Lehrbaum, conducts an annual survey of the embedded Linux market. In its latest survey, they report that Linux has emerged as the dominant operating system used in thousands of new designs each year. In fact, nearly half of respondents reported using Linux in an embedded design, while the nearest competing operating system was reportedly used by only about one in every eight respondents. Commercial operating systems that once dominated the embedded market were reportedly used by fewer than one in ten respondents. Even if you find reason to dispute these results, no one can ignore the momentum in the embedded Linux marketplace today.

1.3. Open Source and the GPL

One of the fundamental factors driving the adoption of Linux is the fact that it is open source. The Linux kernel is licensed under the terms of the GNU GPL [1] (General Public License), which leads to the popular myth that Linux is free.[2] In fact, the second paragraph of the GNU GPL declares: 'When we speak of free software, we are referring to freedom, not price.' The GPL license is remarkably short and easy to read. Among the most important key characteristics:

• The license is self-perpetuating.

• The license grants the user freedom to run the program.

• The license grants the user the right to study and modify the source code.

• The license grants the user permission to distribute the original code or his modifications.

• The license grants these same rights to anyone to whom you distribute GPL software.

When a software work is released under the terms of the GPL, it must forever carry that license.[3] Even if the code is highly modified, which is allowed and even encouraged by the license, the GPL mandates that it must be released under the same license. The intent of this feature is to guarantee access to everyone, even of modified versions of the software (or derived works, as they are commonly called).

No matter how the software was obtained, the GPL grants the licensee unlimited distribution rights, without the obligation to pay royalties or per-unit fees. This does not mean that a vendor can't charge for the GPL softwarethis is a very reasonable common business practice. It means that once in possession of GPL software, it is permissible to modify and redistribute it, whether it is a derived (modified) work or not. However, as defined by the GPL license, the author(s) of the modified work are obligated to release the work under the terms of the GPL if they decide to do so. Any distribution of a derived work, such as shipment to a customer, triggers this obligation.

For a fascinating and insightful look at the history and culture of the open source movement, read Eric S. Raymond's book referenced at the end of this chapter.

1.3.1. Free Versus Freedom

Two popular phrases are often repeated in the discussion about the free nature of open source: 'free as in freedom' and 'free as in beer.' (The author is particularly fond of the latter.) The GPL license exists to guarantee 'free as in freedom' of a particular body of software. It guarantees your freedom to use it, study it, and change it. It also guarantees these freedoms for anyone to whom you distribute your modified code. This concept has become fairly widely understood.

One of the misconceptions frequently heard is that Linux is 'free as in beer.' Sure, you can obtain Linux free of cost. You can download a Linux kernel in a few minutes. However, as any professional development manager understands, certain costs are associated with any software to be incorporated into a design. These include the costs of acquisition, integration, modification, maintenance, and support. Add to that the cost of obtaining and maintaining a properly configured toolchain, libraries, application programs, and specialized cross- development tools compatible with your chosen architecture, and you can quickly see that it is a nontrivial exercise

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату