System-on-Chip (SoC)
Embedded OS
Embedded displays (LCD)
Embedded Ethernet
Wireless
Eclipse platform
FPGA Design
JTAG
Planar transformer
Imaging and video processing
Voice recognition
Home / Technologies / Embedded Operating systems

Embedded Operating Systems

Today, when software is getting more complex and more functional, it becomes timely to apply in contract development different variants of operating systems - from simple task schedulers to real-time operating systems (RTOS) and embedded operating systems.

Embedded Linux

Embedded Linux is an operating system, the basis of which is a Linux kernel, configured for a certain hardware platform, and also GNU freeware - gcc compiler, GNU C library (libc) and other program components, available under open licenses. Our company actively uses Embedded Linux in projects connected with development of debugging boards and board support packages (BSP), hardware-software complexes based on modern processors (SoC's) such as ARM, Blackfin, AVR32, MIPS, PowerPC.

Windows CE

Popular embedded operating system from Microsoft, used for 32-bit processors with Memory Management Unit (MMU). Often, it is used in mobile and portable devices with graphical user interface. One of the advantages is availability of a great number of third-party commercial applications and libraries developed for this platform, and also ported popular applications like MS Word, MS Excel, Macromedia Flash Player.

eCos

Open real-time operating system from RedHat - world-known developer of Linux distributions. It supports 32-bit processors with Memory Management Unit (MMU) of different architectures: ARM, PowerPC, MIPS, x86. It is distinguished by a high level of configurability (more than 300 parameters), it has embedded support for TCP/IP stack, file system for NOR and NAND flash memory. eCos doesn't have runtime royalty fees, it has paid technical support, which includes adapted variants of eCos for modern processors.

RTAI

Real-time extension based on Linux kernel, developed in freeware traditions. This real-time operating system is placed inside usual Linux environment and is characterized by low delay level and high predictability. All common Linux functions are available on RTAI (access to TCP/IP services, graphical systems, database systems), with additional functions of industrial real-time operating system. The use of hardware abstraction layer minimizes dependence on core, which allows easily porting RTAI to new versions of Linux. RTAI represents Linux as background task launched during absence of real-time activities. The use of RTAI gives a possibility to get characteristics of hard real time not worse than those of popular commercial RTOSes like QNX and VxWorks.

ThreadX

Real-time operating system from GreenHills. It supports TCP/IP, graphics and file systems. The kernel of this operating system has very low requirements to memory: in minimal configuration it requires less than 4 kBytes. This operating system provides embedded ARM-applications with very fast program timers and mechanisms for decreasing number of context switching. It fully supports GHS-optimizing compilers and development environment called MULTI. This operating system is specially optimized for working on 32-bit ARM processors.

FreeRTOS

Easily portable, free (GPL) real-time operating system for embedded devices. It is a smaller and simpler alternative for applications requiring real-time operating system in cases when eCos or Embedded Linux (or Real-Time Linux) are too big to fit into memory, mismatch or are not available on this hardware. FreeRTOS works on such architectures as ARM7, ARM9, HCS12, MSP430, AVR32. It supports TCP/IP either via stack from uIP software or via usage of Wiznet TCP/IP hardware co-processor.

VxWorks

One of the best realizations of commercial real-time operating systems from Wind River Systems. It belongs to the class of hard real-time operating systems and provides a wider list of possibilities: multitasking kernel with pre-emptive scheduler, fast interrupt response, inter-process communication and synchronization API, file sub-system and TCP/IP stack. It is necessary to mention that this operating system is used in the Spirit and Opportunity Exploration Rovers, the Mars Reconnaissance Orbiter, Boeing 787 airliners, and also it is used in BMW iDrive interface system.

DSP/BIOS

DSP/BIOS is a scalable multitasking kernel, created by Texas Instruments only for the TMS320 family of DSP. It's working in real-time mode and is one of the most widely used real-time operating systems. DSP/BIOS doesn't require runtime royalty fees. This kernel is available both standalone and as constituent part of the Code Composer StudioT interactive development environment and includes graphical Kernel Object Viewer and real-time analysis tools, specially designed for debugging and tuning multitasking applications.

OSEK/VDX

Industrial standard of open architecture for distributed control units in automotive industry. High expenses of the same type and incompatibility of control units because of different interfaces and protocols were the reasons of accepting this standard. Operating system was created by efforts of European manufacturers like BMW, Bosch, Siemens, Volkswagen and DaimlerChrysler. OSEK operating system handles such objects like tasks, events and resources. The peculiar feature of this operating system is the concept of conformity class determined by two task types, and two levels of interrupt handling. The operating system conforms to the specifications for embedded operating systems, it supports communications stack and network control protocol for automotive systems. Many manufacturers, like Metrowerks and GreenHills included this operating system incorporated this OS into their debugging tools. OSEK operating system supports the following types of embedded microcontrollers: HC08, HC12, 683XX, MCore, Motorolla PowerPC.

VisualDSP++ Kernel (VDK)

VDK real-time kernel with its small footprint is used for effective management of system resources in an environment of a multitasking application. It includes possibilities of resource managing and planning, specific to memory addressing and time constraints when programming signal processor. A peculiar feature of this operating system is scalability. If an application does not use some parameter, then implementation of this parameter is excluded. The VDK is a link library and it is integrated into the VisualDSP++ development environment, which supports a wide range of digital signal processors from Analog Devices: Blackfin, SHARC and Tiger SHARC.

Embedded operating systems, schedulers, interfaces and real-time extensions used in company projects

The following projects from our portfolio are examples of application of Embedded Linux operating system: