Product Brief

Building Internet Appliances—How Does Linux Measure Up?

Jason Smith
7/17/2000 12:00 AM EDT

No two technologies are more popular today than the Internet and Linux, so it's natural that cutting-edge developers are building Internet Appliances with Linux, today's hottest operating system. Linux has been around now for nearly a decade, but until recently it has not gained acceptance as an Internet Appliance (IA) platform. Traditionally, the open source nature of Linux gave developers much more control over operating system quality and functionality than its competitors. The same holds true for IA development, where Linux offers a more attractive combination of features than enterprise and embedded operating systems.


Why Choose Linux?
No runtime royalties. Linux distribution vendors charge for the value they add in putting together a packaged product or for an annual subscription to their distribution, but so far most are not charging for runtimes.

Flexibility. Linux provides flexibility through its:

  • Open Source
    If a developer trying to build IAs with Linux encounters a function of the operating system that is inadequate or missing, he/she can either hire someone to extend the operating system, or do it him/herself. In addition, if developers don't like the way Linux implements some part of the operating system, they can change it. Hence, developers are not limited to having the manufacturer reconfigure it, moving it to different processors, or changing the functionality.
  • Portability and APIs
    Linux provides source-code compatibility with other processors, such as Pentiums, Power PCs, and Alphas, to name a few.
  • Configurable Kernel
    With Linux, developers have the ability to configure on the fly by adding or removing services and functions as needed. This requires less memory and less maintenance, which translates into significant time and money savings.

Figure 1: Linux provides functionality that stretches from the enterprise level to embedded systems

Scalability. A wide range of tools, utilities, and applications are available to customize the functionality of a Linux-based system. Embedded Linux vendors offer configuration tools and lightweight utilities suitable for small memory footprints.

Networking. The Linux TCP/IP stack is under constant scrutiny for security and optimal speed. Drivers, utilities, clients, and servers are available for just about every network function or protocol.

Robust. Linux has developed a well-deserved reputation as a stable operating system. Since it is open source, developers worldwide are continuously improving and testing the Linux source code and making the enhancements available to the rest of the Linux community.


Can Linux Hold its Ground Against Other Embedded OSs?
Linux has long since established itself as a popular platform for building enterprise Web servers, but it also offers many features that are desirable for building embedded systems and IAs. According to Booz-Allen & Hamilton, Linux servers are projected to represent 24% of appliance server revenue, or $3.8 billion, by 2003. And based on a current survey, over 70% of enterprises are using Linux for Web/Internet Infrastructure applications.

WinCE VxWorks QNX Linux
Runtime/Deployment Costs High High Low Free
Source Code Availability No $$ $$ Free
Multivendor Availability No No No Yes
Supports Standard API Low Low Medium High
Reliability/Fault Resilience Low Low High High

Table 1: Linux Operating System Advantages for Internet Appliances

It is clear that Linux offers distinct advantages over other embedded OSs for Internet Appliance developers in the area of deployment costs, optimization, and risk reduction. With freely available access to Linux source, developers can quickly change, modify, or extend operating system functionality in order to optimize their applications. With many commercially supported Linux distributions now available, developers don't have to worry about taking on the burden of supporting or configuring the standard Linux distribution. In addition, Linux's adherence to standard APIs like POSIX, SVR4, and BSD and its (well-deserved) reputation for robustness and reliability significantly reduce the implementation, deployment, and support risks that are faced by Internet Appliance vendors.


Distribution Companies—Linux's White Knight?
While some developers see Linux as well-suited for simple Web serving, some believe that Linux does not offer the high availability and monitoring tools required for the more robust Web-based applications such as e-commerce and ASP use. Others say that the key impediment for Linux is that the majority of Linux applications are old, existing apps that have only been ported to a Linux platform; and Linux users are not pushing the envelope to develop new applications and programs. However, Linux's reputation as a software development platform has made it an increasingly popular choice among programmers for thin servers, telecommunications, and data acquisition and control applications. And while options for Linux service and support may be limited today, the situation is changing rapidly.

In terms of its shortcomings in the IA space, Linux is quickly improving its position. As a matter of fact, Linux distribution companies have sprung up to specifically address some of the weaknesses of Linux when it is used beyond a basic Web-server application. These Linux distribution companies, such as MontaVista or Lineo, specifically tailor Linux for embedded systems and IAs. These companies have focused on addressing some of the specific issues of embedded system developers, such as:

  • Tools for configuring the Linux (memory) footprint so that a custom, more compact distribution can be created
  • Developing driver support for typical embedded devices
  • Developing board support for popular embedded computing platforms
  • Optimizing Linux performance.

 
As Computer I/O began creating I/O Appliances, we found that there wasn't an effective way to remotely administer, configure, or access devices that were attached to the Linux appliance—especially when a number of diverse or heterogeneous devices was involved, so we developed an application server, the Easy I/O Streaming Server for Linux-based IAs, which provides uniform, remote access to Linux devices. More…
 
At Laurel, MD-based Computer I/O, developers are leveraging the advantages of Linux in creating IAs for communications and data acquisition applications. After initially building and supporting Linux distributions, it looked at the three primary embedded Linux contenders—MontaVista, Lineo, and Red Hat—for a commercially supported alternative. MontaVista had the most attractive set of features for Computer I/O's requirements with its strict adherence to the "100% pure Linux," open source, and royalty-free models that were the original basis of the Linux movement. Both Lineo and Red Hat have at least some elements of their offerings that are proprietary in nature, and Lineo has moved to a (modest) royalty model. MontaVista also offered a more extensive list of embedded processors and board support, as well as a dedication to improving and measuring the real-time performance of Linux.


How Are Companies Applying Linux for IAs?
At Computer I/O, developers are leveraging the advantages of Linux in creating IAs in telecommunications and test/monitoring applications, such as VoIP. They refer to these specialized streaming input/output (I/O) data Internet Appliances as I/O Appliances.





Please sign in to post comment

Navigate to related information

Jobs sponsored by

Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)
Browse the technical library
Our technical library houses over 4,000 high-quality sponsored white papers, application notes, reference guides, use cases—all organized by company.


Feedback Form