Is Linux the best EOS?

Madison Technologies
By Victor Yu, Software Manager, Moxa Technologies
Tuesday, 14 March, 2006


Although embedded systems come in many shapes and sizes, we can divide all systems into three main categories: Linux, Windows CE, and customised or proprietary operating systems. This article looks at the advantages of Linux as an embedded operating system (EOS).

Due to the rapid advancement in computational ability of computer hardware and software, embedded equipment will soon become a very important area of technological development. For embedded systems, the operating system is the most important piece of software, since the operating system decides what types of applications you will be able to develop on your embedded platform. The choice of operating system also determines the kinds of functions you will be able to add or modify, and can have a profound effect on your system's overall performance and stability. In addition, all future embedded systems must provide both basic and advanced networking functions, and consequently, system security will be a major factor that manufacturers of these systems need to consider.

Security

Customised or proprietary operating systems are usually tailored for a particular application or hardware. The advantage of using a customised operating system is that system performance can be maximised and the size of the software can be minimised. One of the disadvantages of using customised or proprietary operating systems is that users cannot add new functions easily. A more serious problem, however, is that software engineers who are familiar with this type of OS are hard to find, and the company must provide all of the engineers' training after they report for duty. The result is a heavy burden on both the user and the company. Another big disadvantage is that development partners are hard to find, creating a major obstacle to the growth of the company's product.

Microsoft's Windows CE operating system is currently a popular choice of embedded operating system, particularly for consumer products. Undoubtedly, Windows CE's popularity is due in part to the huge amount of effort Microsoft puts into promoting its products. A major consideration is the strong user interface functions available with Windows CE, not to mention its great advantage for connecting embedded devices to a PC.

On the downside, as an operating system Windows CE's performance is not particularly stable, and it lacks versatility for networking applications. Windows CE also takes up a large amount of memory space and its expensive price tag is a major turn-off for smaller companies that can't afford to make such a large investment.

In addition, Microsoft has not released the source code for Windows CE, so that when problems with the operating system arise, users are often unable to resolve the problems themselves. Getting frequent support from Microsoft's own support team is not a particularly appealing option, since doing so can introduce unwanted delays and unexpected security breaches. Since the source code is not available, developers are hard pressed to resolve issues, making the security problem even more serious.

As far as security is concerned, an even bigger problem is that Windows is an easy target for hackers and others who may want to harm your system. In fact, we will never know precisely how many potential security leaks exist, particularly in light of the fact that Microsoft itself does not know about all of the problems. When you experience a problem, about the only thing you can do is wait for Microsoft to solve it for you.

The advantages of Linux

Linux is the benchmark when it comes to system performance, especially in the area of networking protocols. In addition, since Linux is completely open source, anyone can obtain Linux source code. What this means is that when problems occur, developers can solve the problems themselves, or seek assistance from the many online, global communities that are eager to help. Moreover, the members of those communities are experts, so that problems can be resolved very quickly.

Concerning applications developed for Linux, since it is a highly standardised operating system, the application's source code can be compiled to run on any type of hardware or version of Linux. Linux is developed and maintained as a group effort, with people working on it essentially every day. As you can imagine, application software for Linux is very diverse, both for client and server, and offers more choices than the Windows platform.

Performance

When choosing an operating system for an embedded system, two major considerations are performance and stability. These days, people want to execute as much software as possible on hardware that is as simple as possible, and consequently, the performance of your software and operating system must be reliable. In addition, system security has to be tight, and when a security breach occurs, you must be able to solve the problem quickly, and you must be able to solve it on your own. The operating system should be secure and allow the developer to establish multiple types of security.

Concerning the cost of software, a lower cost is certainly better. Ideally, software would be free and recruiting R&D personnel easy. In fact, the best situation is that companies do not need to invest a large amount of time training their R&D personnel.

Gain immediate benefit from using Linux

With the above considerations in mind, let's look at what other people are saying about Linux.

According to tests conducted by PC Magazine, printing services using Linux experience 60% more throughput than comparable services using Windows. From a performance perspective, the average reply time in Linux is twice as fast as that in Windows. According to test reports released by IT Week, Samba files on a Linux server are twice as fast as those on Windows 2000, and 2.5 times as fast as those on Windows 2003. According to a four-year research project conducted by Stanford University, five professors who analysed 5.7 million lines of Linux source code concluded that the Linux kernel software code is more secure and better than other patented operating system software. Currently more than 1.2 million software engineers worldwide are able to develop Linux applications. Taken together, these facts all point to Linux as the best choice of operating system for embedded applications.

Related Articles

Edge computing for mining and metals applications

Digitalisation through edge computing can unearth new value in mining and metals processing.

COTS hardware in oil well production and monitoring

No longer is a laptop with a four-port switch a viable engineering toolset for compliance and...

The evolution of mobile field tools

The use of mobile tools to facilitate ease in accessing field device information and plant...


  • All content Copyright © 2024 Westwick-Farrow Pty Ltd