feature article
Subscribe Now

Modular Linux

A lot of press releases that drop into my email in-box are often, to be totally objective, pretty run of the mill. Naturally, I know that, for the guys building it, selling it and using it, the new release of software, the smallest widget, the fastest gizmo, or whatever, is important. But unless you are running product pages, as a journalist you just make a mental note and then consign the release to the delete file. But occasionally a release comes along that causes you to stop in your tracks. A little earlier this year there was a real show stopper. Due, in part, to sloppy reading, I thought it said that Enea was announcing a Linux commercial distribution. Now Enea is tightly aligned in my mind with their OSE RTOS, and for them to undertake and support a Linux distribution was almost as unlikely as Wind River or Green Hills suddenly embracing Linux. (Oh, I forgot; Wind River has done just that, hasn’t it?) However, when I read further and more carefully it was something more subtle than a commercial distribution — and much more interesting.

What Enea was announcing is what the company is calling the Embedded Linux Project Framework (ELPF). Before going into detail on this and its related Enea Linux Competence Center, a few words about Enea. The company is over 40 years old. Operating from Sweden, it has always been active in the real-time arena. It launched OSE nearly 25 years ago, and today it has a range of OS, middleware, and development tools. But a strong part of the company’s activities is selling its expertise as services, to the point where the majority of their staff are always either available for or working on customer projects.

The services are not limited to working only with Enea products, and, I discovered, the company has developed considerable expertise in embedded Linux. From this, the development teams have developed strong views on Linux and feel that the system developer is ill-served by today’s market.

Their reservations start at a developer’s initial choice of distribution. In their view, commercial distributions, where companies take the open source, free Linux core and package it up with a bundle of things and then charge a license fee, are overloaded with options. Options include many things that the company developing the distribution knows will be useful on some applications but that are not relevant to all of them. These options have to be edited out to create a core that is appropriate for the application being developed, yet have to be paid for in the license fee.

And the alternative, using a base, open-source Linux kernel, normally requires the reverse process of adding libraries, drivers, and system utilities, etc. These have to be assembled from different sources or developed specially, obviously requiring testing and verification. All this is time consuming. In both cases, the application development team is not doing its main job – getting on with creating the application.

What Enea has done with the ELPF is create a pick-and-mix approach, a package of modules of what the service team have found from experience to be the most heavily used components. The bundle includes a configuration database, engine and GUIs; a tool chain and board support package (BSP) for CPUs, including ARM, Power PC and x86 architectures; and a boot loader. Also included are the BusyBox utilities, an SDL-based graphics function, and a selection of libraries, including zlib, libxml and libpng.

(Notes for any non-Linux readers still with us: BusyBox describes itself as the “Swiss Army Knife of Embedded Unix” and is a modular collection (nested modules here – very clever) of implementations of common UNIX utilities that, by restricting size and functionality, are optimised for embedded use. SDL (Single DirectMedia Layer) is a multimedia library, originally intended for the games environment, which makes a great starting point for creating graphics.)

Oh, and there is the Linux kernel.

All the elements in the package you could go out and assemble yourself, with a bit of time and patience. But, while it is nice to have them all in one place, Enea then goes one step further and adds its own special sauce to the recipe. They put all the elements in what they call “a flexible modular configuration and build environment,” which quickly and simply creates the right OS package for the application. And you — or Enea — can add further modules to the bundle.

The ELPF is a good starting point, but there will be projects that require more. And for this, Enea has the Enea Linux Competence Center (ELCC) to back up the platform. The ELCC has over 50 experienced Linux developers and can be used to do anything from customising a BSP through to complete application development.

More specifically, the sort of thing a company using the ELPF might call on ELCC to do could be developing custom drivers or integrating a tool chain for a new processor target. The team includes experienced trainers and offers a range of courses, from introductory to advanced, both publicly and in-house to a specific customer.

Since most of the elements in the ELPF are open source, there can be licensing issues, and Enea’s team has the links with appropriate legal eagles to provide guidance. They even have a trouble-shooting service, which will help you if you come up with an intractable problem. And of course they will hire people for you to add to your team for specific skills or meet team overloads.

So, all in all, a neat package for someone looking to move into Linux in embedded or to improve their development process.

Enea is not alone in this area: for example, Embedded Alley has recently announced a development system for embedded Linux, and many of the commercial distributions come packaged with other development tools, often within an Eclipse IDE. As an example, MontaVista has recently released its Linux 6, which the company is talking up as “a new approach to embedded Linux development.” The release includes Market Specific Distributions or, perhaps more accurately, target-specific distributions with drivers, etc., packaged for a particular manufacturer’s processor. Additionally there is a wave of other recent announcements.

Now there are still some standouts against the tide of Linux flowing into the embedded arena. Most notable is Green Hills, whose web site is uncompromising about the need for an RTOS to be designed as an RTOS and takes no prisoners when highlighting the failings of Windows, UNIX, Linux and MacOS. But the Enea approach is not aiming at the real-time and safety-critical area — the company still has OSE for that — and it has a simplicity that is appealing.

Leave a Reply

featured blogs
Oct 5, 2022
The newest version of Fine Marine - Cadence's CFD software specifically designed for Marine Engineers and Naval Architects - is out now. Discover re-conceptualized wave generation, drastically expanding the range of waves and the accuracy of the modeling and advanced pos...
Oct 4, 2022
We share 6 key advantages of cloud-based IC hardware design tools, including enhanced scalability, security, and access to AI-enabled EDA tools. The post 6 Reasons to Leverage IC Hardware Development in the Cloud appeared first on From Silicon To Software....
Sep 30, 2022
When I wrote my book 'Bebop to the Boolean Boogie,' it was certainly not my intention to lead 6-year-old boys astray....

featured video

PCIe Gen5 x16 Running on the Achronix VectorPath Accelerator Card

Sponsored by Achronix

In this demo, Achronix engineers show the VectorPath Accelerator Card successfully linking up to a PCIe Gen5 x16 host and write data to and read data from GDDR6 memory. The VectorPath accelerator card featuring the Speedster7t FPGA is one of the first FPGAs that can natively support this interface within its PCIe subsystem. Speedster7t FPGAs offer a revolutionary new architecture that Achronix developed to address the highest performance data acceleration challenges.

Click here for more information about the VectorPath Accelerator Card

featured paper

Algorithm Verification with FPGAs and ASICs

Sponsored by MathWorks

Developing new FPGA and ASIC designs involves implementing new algorithms, which presents challenges for verification for algorithm developers, hardware designers, and verification engineers. This eBook explores different aspects of hardware design verification and how you can use MATLAB and Simulink to reduce development effort and improve the quality of end products.

Click here to read more

featured chalk talk

NEUTRIK® FIBERFOX

Sponsored by Mouser Electronics and Neutrik

Fiber optic technology has seen exponential growth over the last couple years. Today, fiber optic technology is finding a place in more and more diverse applications worldwide. In this episode of Chalk Talk, Amelia Dalton and David Kuklinski from NEUTRIK® explore a revolutionary new kind of fiber optic technology called FIBERFOX. We take a closer look at the benefits that FIBERFOX brings to the table, why FIBERFOX's expanded beam technology makes it unlike any other fiber optic technology on the market today and how you can use FIBERFOX in your next design.

Click here for more information about NEUTRIK FIBERFOX Expanded Beam Fiber Optic Connectors