[redhat.com] sources.redhat.com
EL/IX Home
EL/IX White Paper (PDF)
EL/IX Base API Specification (PDF or PS)
EL/IX presentation given at ESC West '99 (PPT)
EL/IX FAQs
EL/IX Registration form

 

Get Elix announcements:
Join Elix Discussions:

EL/IX Frequently Asked Questions

  1. What is EL/IX?
  2. How does this solution help the embedded marketplace?
  3. What is an API/Application Programming Interface?
  4. Why has Red Hat created the EL/IX API?
  5. How does Red Hat expect to reach consensus for EL/IX and create a standard?
  6. With whom did Red Hat partner in developing EL/IX?
  7. What is driving the embedded Linux market?
  8. What are the business benefits of Red Hat's introduction of the EL/IX API?
  9. What, if any, business model will Red Hat use to realize a revenue stream from EL/IX?
  10. Are there other embedded Linux solutions and if so, what's wrong with them?
  11. Is embedded Linux outside the scope of the Linux development model for Linux itself?
  12. How much does EL/IX cost?
  13. Is there a developer program and how do people contribute?
  14. How does eCos play in the solution?
  15. Are other operating systems compatible?
  16. How do Red Hat's other products, Red Hat Linux, Red Hat Embedded Dev Kit, Source-Navigator, Code Fusion and GNUPro Dev Kit, fit in with EL/IX?
  17. Can other RTOS vendors adopt the EL/IX API?
  18. What does the API consist of?


1. What is EL/IX?
EL/IX is an application programming interface that allows software developers to deploy applications on embedded products running Linux or operating systems compatible with Linux. EL/IX provides an interface that ensures application portability for any EL/IX compliant operating systems, such as the various flavors of Linux or eCos ™. With EL/IX, developers have the tools and framework that ensure applications maintain compatibility between different underlying implementations of the operating system.

Using EL/IX, developers can write, test, debug, analyze, and even simulate their applications on desktop systems running Linux. EL/IX, combined with Red Hat's GNUPro ® tools, lets developers recompile their applications and deploy them on any EL/IX compliant system running x86, ARM, MIPS, Motorola PPC, SPARC, and other microprocessors.

2. How does this solution help the embedded marketplace?

  1. EL/IX pre-empts fragmentation in the Linux marketplace as developers and product companies develop non-standard Linux implementations for specific embedded devices.

  2. EL/IX maintains a clean migration path for existing technologies developed on Linux to be deployed on embedded computing platforms. EL/IX enables development on Linux workstations and then deployment in production embedded devices. EL/IX also enables software to migrate across hardware product lines through application code compatibility. Since EL/IX is a POSIX compliant API, migrating POSIX applications to support EL/IX is a straightforward proposition.

  3. EL/IX allows other embedded OS and RTOS (real-time operating system) environments to adopt a similar compatibility strategy. eCos, Red Hat's open source embedded real time operating system, will support EL/IX. This allows a migration path from a more sophisticated embedded Linux operating system to a small, optimized embedded RTOS.

3. What is an API/Application Programming Interface?
An API is a set of conventions and rules that provide a documented way for software, such as an application, to interface to other software, such as an operating system. An API will be required to create an industry-standard embedded Linux. Red Hat expects the EL/IX API to meet the needs of embedded Linux, because it is based on POSIX 1003.1, the most widely accepted API for portable operating systems.

4. Why has Red Hat created the EL/IX API?

  1. Red Hat is committed to ensuring the portability of Linux and preserving freedom of choice. Existing customers have been seeking our guidance in delivering embedded Linux solutions.

    Today's offerings (vs. current) in embedded Linux are manually adapted to specific applications. These offerings are leading to the fragmentation of embedded Linux (as happened to Unix), because manually adapted offerings cannot keep pace with the latest versions of Linux or development tools. To pre-empt the fragmentation of embedded Linux, Red Hat is offering an open source, POSIX-based approach that supports all Linux distributions. Establishing, supporting, and using this standard software infrastructure is necessary for the growth and viability of Linux in the embedded market.

  2. Embedded systems fall into general categories: high end embedded (routers, switches, personal digital assistants, set top boxes) and deeply embedded (automotive controls, digital cameras, cell phones, pagers). Today Linux is not well suited for deeply embedded targets, because it does not currently deliver the footprint size and real-time performance required by deeply embedded systems. Red Hat's approach makes it possible to use the EL/IX API with any major Linux distribution to build properly configured versions of Linux for high end embedded requirements and which can scale down to deeply embedded requirements using operating systems like eCos.

5. How does Red Hat expect to reach consensus for EL/IX and create a standard?
The industry is looking for an embedded Linux solution, and our partners in the embedded industry have requested one from us. Red Hat is renowned for leading the market in embracing and supporting open source standards with its Red Hat Linux product. The incorporation of Cygnus Solutions has brought Red Hat over ten years of leadership experience in open source technologies, including a record of successfully supporting open source standards, such as GCC, while maintaining and involving the community at large. By making EL/IX open source and creating a consortium that uses an open source, community approach (similar to the GCC distribution from the Free Software Foundation), Red Hat is ensuring that the development of EL/IX is an inclusive process that encourages participation at both the corporate and individual level.

6. With whom did Red Hat partner in developing EL/IX?
Red Hat has initiated the development of EL/IX as an open source software project, and will work with other companies and developers to incorporate their contributions. EL/IX has already received industry endorsements for its embedded Linux approach from leading analysts, embedded companies (Intel, MIPS, Toshiba, Pacific Softworks), Linux leaders (Ulrich Drepper and GNOME's Miguel de Icaza), and others to be announced soon.

7. What is driving the embedded Linux market?
The momentum behind Linux on the workstation, the talented development community, and the availability of software components and content are motivating the adoption of Linux in the embedded market. In the same way that Linux is growing rapidly in the workstation/server market, embedded Linux is poised to offer the same benefits in certain segments of the embedded arena.

8. What are the business benefits of Red Hat's introduction of the EL/IX API?
EL/IX enables software portability across native Linux, embedded Linux, and real-time systems. EL/IX leverages the expertise of the Linux development community and enables a common software platform as well as common software components and tools.

EL/IX also benefits other RTOS vendors. The EL/IX API provides a migration path for existing vendors of real time software to embrace Linux. By supporting EL/IX, current RTOS vendors can ensure that their application content is compatible as the target device OS evolves towards Linux.

9. What, if any, business model will Red Hat use to realize a revenue stream from EL/IX?
At this time, Red Hat is focusing on the successful deployment of EL/IX. However, similar to our established business model in the embedded marketplace, Red Hat is prepared to offer the software, support and engineering services for companies seeking embedded Linux solutions.

10. Are there other embedded Linux solutions and if so, what's wrong with them?
Embedded Linux is in its infancy. Early entrants into the market are taking an approach that is too limited and liable to further the fragmentation that already exists in the embedded market today. Moreover, as multiple companies and vendors adapt Linux to their embedded product requirements, Linux itself runs the risk of fragmenting. To a greater extent than the Unix market, the embedded market's heterogeneous nature means that it lacks the required standardization that enables application growth. EL/IX preempts fragmentation of the embedded Linux market.

11. Is embedded Linux outside the scope of the Linux development model for Linux itself?
Not necessarily. The development model for the EL/IX API is consistent with the Linux development methodology, and Red Hat hopes that our embedded Linux efforts are folded into the main Linux source tree. Ultimately, it depends upon the willingness of the workstation community to embrace a horizontal solution. This will enable Linux to cover the broad sweep of 21st century embedded computing devices.

12. How much does EL/IX cost?
The EL/IX API will be freely available as open source software at http://sources.redhat.com/elix. EL/IX offers software developers the opportunity to address a larger market, because the API spans the spectrum of post-PC devices.

The eCos implementation of the EL/IX API will be available as open source software under the terms of the Red Hat eCos Public License (RHEPL) and will be made available at http://sources.redhat.com/ecos. An initial early development version is already available there.

13. Is there a developer program and how do people contribute?
Interested developers can register with the EL/IX project. They will have access to the API documentation and newsgroups. Over time, the EL/IX community will grow. Red Hat will lead the software contributions within EL/IX, and will dedicate sufficient resources to ensure success of the platform. Over time, we expect to formalize EL/IX developer and partner programs.

Red Hat is hosting the EL/IX consortium on http://sources.redhat.com/elix, a collection of free software infrastructure technologies that provide a common level of functionality to benefit developers, commercial entities, and end users worldwide. Developers can review the API and contribute to its development by registering to join the EL/IX API consortium at http://sources.redhat.com/elix/form.html.

14. How does eCos play in the solution?
eCos is a highly configurable embedded RTOS targeted at deeply embedded applications with minimal resource footprint or strict real-time behavior requirements. Embedded Linux provides a more sophisticated powerful platform for high-end embedded applications at the expense of higher resource requirements, complexity, and determinism. The EL/IX API enables applications and middleware to migrate between embedded Linux and eCos as product requirements warrant, preserving investments in software development and developer knowledge. Middleware companies also benefit as they can reach a broader market by building configurable EL/IX conformant software that covers both embedded Linux and eCos.

15. Are other operating systems compatible?
The EL/IX API is based upon POSIX standards and is operating system neutral. Any operating system that conforms to POSIX should in principle already be largely compatible with EL/IX, or be easy to adapt.

16. How do Red Hat's other products, Red Hat Linux, Red Hat Embedded Dev Kit, Source-Navigator, Code Fusion and GNUPro Dev Kit, fit in with EL/IX?
Red Hat has plans to extend our product line to support the EL/IX API.

17. Can other RTOS vendors adopt the EL/IX API?
Yes, and they are encouraged to do so. Linux, with its open source foundation and range of processor support, is ideal as a higher-end embedded operating system. Supporting EL/IX means that current RTOS vendors can promise long term viability for applications written on current, proprietary RTOSs.

18. What does the API consist of?
The API will have different levels, with different numbers of interfaces. The lowest level interfaces (e.g., for deeply embedded applications) might only have a few dozen interfaces, while the high end of the scale, formed by the full Linux API, has more than 2000 interfaces.