next up previous
Next: Features of MiniRTL Up: MiniRTL Hard real time Previous: Abstract

Introduction

System software used in embedded systems covers a range spreading from micro-kernels starting at a size of 40 KB up to full-wedged operating systems such as Linux with a run time kernel in MB range. In this paper we are concerned with the high end of the embedded systems domain. More precisely, we deal here with embedded systems based on GNU/Linux, referred to as Linux embedded user system, which try to provide an as close to complete user environment on the embedded system as possible.

Expressing the size of such systems in terms of memory is hard. They start somewhere in the range of 2 MB disk and 2 MB RAM requirements for a 1.0.9-ELF kernel (Linux lite) and 2 MB disk with 4 MB RAM for 2.0.x or 2.2.x kernels. If these systems are to do more than the absolute minimum, however, then a 4 MB disk and 4 MB RAM mark the bottom line at which such a system can be identified as Linux embedded user system. In particular, these systems are appropriate for mobile units, a small series of special devices or systems that need extensive maintenance and remote monitoring.

Traditionally, system software for embedded systems has been developed independently of general purpose operating systems. So why take mainstream Linux as a basis and drop it to an embedded system? The answer is actually quite simple: GNU/Linux is a stable desktop system which provides a complete set of development tools. Thus, it makes life very much easier as it offers the possibility of doing development, debugging, optimizing and testing on the desktop system, dropping the results to the embedded platform then. There is no need for any special development environments and no need for proprietary ''tools''. The decision to implement the current kernels, although they are quite large, is based upon:

Sticking with the mainstream kernel makes it easy to ensure compatibility with the standard desktop GNU/Linux system. Real time Linux development is also tightly coupled to the current kernel development in many essential aspects. Notably, full SMP support requires current RTLinux kernel/patches, and support for flash-disk and disk-on-chip are just emerging in 2.4.0, although it might not always be necessary to have the newest version, for a particular application.

RTLinux for embedded platforms is in general intended for high-end projects and for projects that want to utilize the advantage of using commodity-component PCs. Even if a midi-tower equipped with an ''old'' i386/i486 is not recognized as an embedded system by most people, from a functional standpoint this is often a very interesting alternative for low-cost and prototyping systems.


next up previous
Next: Features of MiniRTL Up: MiniRTL Hard real time Previous: Abstract
Der Herr Hofrat
2002-03-08