Industrial Computing with Linux: Keeping an Eye on the Cost-Benefit Ratio
06 April 2010
An increasing number of industrial computing packages, particularly in embedded applications in the OEM machine building sector, are turning towards open source software as a means to lower costs and provide high performance specialised solutions. The appeal of Linux is that it is genuinely open source, can be freely modified, and commercially redistributed by any vendor under relatively mild licensing restrictions.
There are basically two ways a vendor can acquire Linux. First, and the most common way, is through commercial distributions such as Red Hat and SUSE. These Linux distributors are allowed to charge for distributing their software, and for the accompanying support for it. This distribution is relatively low-cost, almost for free, so the vendors make their money on providing support. Most of them charge a single fee for providing the software via download or on physical media along with a minimum of one year of service. Prices can range anywhere from 60 euros for a single workstation with a year of basic web service up to several thousand euros for an advanced server with a year of 24/7 premium technical support.
A second way to follow the Linux path is solely through the GNU General Public Licence (GNU GPL or simply GPL). This is a type of software licence published by the GNU Project (http://www.gnu.org) under which all Linux distributions are covered, including the previously mentioned commercial solutions. It is a ‘free’ licence, in the sense that it allows any works covered under it to be run, copied, distributed, studied, and modified. It gives the users a complete, royalty-free access to their operating system’s source code. Additionally, any works derived from the original GPL-licensed software must be made available publically, in both source and compiled code.
The two approaches may be summarised as, ‘buying or building.’ With a commercial Linux distribution, the customer buys the expertise to support his application. He pays the price, but he does not concern himself so much with the underlying operating system. He concentrates on his application and gets to the market quickly.
The second approach is the ‘builder approach.’ He gets the operating system for free, but may have to spend considerable time adapting it to his needs. But it may prove to be, in the long run, the lowest cost method.
Up until now, if a Linux developer wanted complete, royalty-free access to the operating system’s source code, the only alternative to commercial Linux distributions was to independently adapt a free GPL Linux distribution. However, this ‘roll your own’ approach can be both time consuming and costly.
Kontron is now offering a second alternative to commercial Linux distributions: its own Linux GPL distribution, one that is tailor-made to suit the needs of its automation platforms.
Is Linux cost-free?
Open source is often regarded as a cost-free solution. At first glance, it is a land of plenty for software developers with a never-ending pool of modules and source code that can be adapted to meet any requirements and be built into one’s own applications. Predominantly, it is Linux users who benefit from open source modules, but they are also seen in other operating systems and even in board firmware (where open source has made its first appearance with EFI, the successor to BIOS).
There is a catch though—in most cases the source code has to be adapted, which means development costs must be budgeted. The high costs of individual open source operating system adaptations only pay off if the quantity of units produced is large enough to allow the initial development costs to be offset by the number of units sold. If such a ‘break even’ is attainable, then the in-house development of GPL installations is definitely worth looking into, as it would lower the cost per unit, ensure long-term availability, and allow for a great deal of customisation, from the kernel, to the root file system, to the toolchain.
However, users who prefer to concentrate on the development of the application without concerning themselves with the stability and functionality of the underlying Linux environment are recommended to use a commercial Linux distribution that offers the necessary support. With commercial Linux, a faster time-to-market can be achieved because developers have access to experts who know the operating system inside and out and a dedicated team is constantly rolling out updates, bug fixes, and security patches.
Kontron, for example, offers support for all Linux distributions that are relevant to the embedded market including WindRiver Linux, Redhat Enterprise, and SUSE Linux Enterprise. While vendor support of commercial distributions does help to ease development efforts, much of the work of tailoring the OS to fit the entire hardware platform and the application still falls to the developer.
Distributions from hardware vendors
An alternative to the two solutions of ‘building or buying’ in the open source or royalty-free realms is through the use of distributions offered by hardware manufacturers. With this option, much of the OS development work is handled by the manufacturer, so developers can concentrate their efforts on designing their application.
As an example, Kontron offers its own embedded Linux distribution, which is compiled exclusively using open source modules. It can therefore be used with all supported hardware and is royalty free. This embedded Linux distribution is available, for example, for the Kontron ThinkIO-Duo DIN rail PC and for the PowerPC- and Arm/XScale-based boards.
It is based on the OSADL Linux kernel, which is real-time capable and contains a Linux file system, a cross-compiler toolchain, a board driver, libraries for Kontron-specific hardware features, a wealth of additional downloadable tools, along with extensive user manuals.
Additionally, Kontron provides support for open source virtualisation solutions such as KVM/Qemu, which offers excellent performance and features on Intel® Core™2 Duo boards. This is rounded out with a range of services that includes tools for BIOS version updates and other board firmware updates available under the GPL, for example. Thus, Kontron is able to offer an increasing number of completely royalty-free solution platforms to its customers.
To be able to provide such bundles of hardware and software, an extensive amount of work is performed by board development engineers and this is then fed back to the community. For instance, they contribute regularly to the further development and improvement of open source products.
A sampling of reference contributions includes the system monitor (MAX6650) for the Linux kernel (kernel.org), an IPMI tool (sourceforge.net), and work carried out on the Flash-ROM project (coreboot.org).
Additionally, with continual support for the latest board and systems components, bugs in open source device drivers and kernel implementations are often discovered. The fixes are passed directly to the chip manufacturers. This results in intensive contact with the developers of component manufacturers such as Intel®, AMD, Freescale, Silicon Motion, and Hilscher.
As these examples demonstrate, open source development is not necessarily an inexpensive matter. OEMs have to carefully consider such issues when pairing a Linux solution with their own dedicated hardware. Even if an OEM customer concentrates primarily on software applications, he must nevertheless ensure that he can provide solutions for his GPL installation on a long-term basis.
For example, there is no guarantee that all hardware will be supported by any particular Linux distribution, and some devices which are currently supported may not necessarily be included with upcoming kernels. These would then need to be implemented manually. For independently-developed projects, this adds additional time and expense. A GPL installation from the hardware manufacturer provides a possible alternative, which would serve to avoid such unwanted expenses and time delays.
Kontron will continue to support open source so customers can be certain that development efforts will always be ongoing. Every new integration of a customer project means the development of new solutions from which other customers and members of the open source community can take advantage. A comparably high number of customers thus support the basic development of individual platforms without forcing them to pay for each adaptation. Consequently, the current solution developed around the ThinkIO-Duo is scheduled to be available in other form factors in the future, as the distribution does not have to undergo massive changes, and the work done on the kernel and chipset, for example, can be reused.
However, it is not Kontron’s aim to compete with professional Linux and RTOS (real-time operating system) distributions. Their Linux is offered purely as an alternative for use in mainstream applications. In no way will all the functions of a commercial distribution be covered or fulfilled. For example, there is no comprehensive setup and configuration tool such as YaST. This approach does, however, show a way in which open source can be increasingly brought to the OEM customer via the hardware supplier, which in turn means that system maintenance can be carried out more efficiently in the long term.
Distributions from hardware manufacturers can also alleviate implementation work if, for example, licence management under the GPL is used. For instance, to protect its customers from infringing on licence regulations and being penalised by the Free Software Foundation when applying open source software, Kontron makes Board Support Package libraries available with details of its board hardware functionality for user applications, for example, via the LGPL (Library- or Lesser-GPL).
The LGPL allows the application engineer to link up to the library while still protecting their application. Furthermore, Kontron informs its customers at a very early stage about the pitfalls of open source licences and offers, for example, approaches to circumnavigating problematic issues in cooperation with the OSADL solution.
It can be concluded, therefore, that next to the actual development work to be carried out, extensive open source and GPL expertise is crucial. Manufacturers such as Kontron have a vast knowledge base to which customers can refer and platforms which offer mature software support. GPL distributions from hardware manufacturers are gaining significance within open source projects as an alternative to in-house development and commercial distribution.
— Claus Gindhart is the leader of the Linux development team at Kontron Modular Computers
Virtualisation is a technology that is growing in popularity in the market and can act as an isolation layer between open source and proprietary software. In an open source operating system, a type of virtualisation technology called a hypervisor allows a proprietary operating system (e.g., Windows) to run as a guest on the virtual machine. In this guest operating system, any number of proprietary programs can be run. Communication between the proprietary guest OS and the open source host is carried out via virtual networks. Kontron has already carried out a great deal of research and development work in this field and will offer such a solution in the open source Linux BSP for the ThinkIO-Duo. The hypervisor can be activated when the BSP runs on a system with a multi-core CPU. This is, however, but one of many possibilities.
Checklist for BSPs with open source
All BSPs that contain open source packages should observe the following points, as the supplier of the BSP must actively ensure that the user does not run into problems with the open source licence:
• The applied open source licence should be documented in all SW manuals.
• Every software package that contains open source modules should be delivered with the complete source code.
• Even in the sources, the licences should be documented in the headers.
• Modifications, improvements, and bug fixes in open source packages should be made available to the community and should comply with open source coding conventions.
Pampered with choices
‘Each operating system has its own specific advantages, which in turn means there are overlapping boundaries when choosing the right system. In the case of Windows, Linux, and RTOS, at the moment the boundaries look like this: if you are dependent on the latest technology from hardware component manufacturers who see the majority of their products in the Windows environment, and time-to-market is of great importance, then you’re better off in the Windows world. That’s the situation with the latest graphic solutions. But things are happening in this area too. For example, with the Intel® Atom™ processors, Intel® puts Linux on par with Microsoft. In the real-time arena, Linux simply cannot match all the features of an RTOS like VxWorks. This argument is valid for real-time requirements and also concerning the footprint of the operating system. If, however, you don’t want to do without open source, there are also alternatives in this area.’ —Norbert Hauser, Vice President Marketing, Kontron AG
Most Viewed Articles...