Embedded os


As the complexities in the embedded applications increase, use of an operating system brings in lot of advantages. Most embedded systems also have real-time requirements demanding the use of Real time Operating Systems (RTOS) capable of meeting the embedded system requirements. Real-time Operating System allows realtime applications to be designed and expanded easily. 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 complex real-time operating systems (RTOS).

Our Engineers can implement RTOS as per design requirements of the project and port required operating systems on various controllers. Our expertise includes but not limited to the following RTOS

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.

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.

This RTOS is portable, open source, mini real-time kernel that can be operated in pre-emptive or cooperative. This RTOS is pre emptive, has dynamic scheduling, interprocess communication, blocking and deadlock avoidance, critical section processing etc.

TNKernel is a compact and very fast real-time kernel for the embedded 32/16/8 bits microprocessors. TNKernel was inspired by the μITRON 4.0 specification. The current version of TNKernel includes semaphores, mutexes, data queues, event flags and fixed-sized memory pools.  The system performs a preemptive priority-based scheduling and a round-robin scheduling for the tasks with identical priority. TNKernel is a fully portable (it is written mostly in ANSI C except  the processor-specific parts) and was ported for the 8/16/32bits MCUs.

μC/OS-II is a portable, ROMable, scalable, preemptive, real-time deterministic multitasking kernel for microprocessors, microcontrollers and DSPs. C/OS-II manages up to 250 application tasks. μC/OS-II includes: semaphores; event flags; mutual-exclusion semaphores that eliminate unbounded priority inversions; message mailboxes and queues; task, time and timer management; and fixed sized memory block management.

μC/OS-II’s footprint can be scaled (between 5 Kbytes to 24 Kbytes) to only contain the features required for a specific application. The execution time for most services provided by μC/OS-II is both constant and deterministic; execution times do not depend on the number of tasks running in the application.

CoOS is free and open real-time Operating System specially designed for Cortex-M series. The RTOS is scalable, minimum system kernel is only 974Bytes. This OS uses adaptive Task Scheduling Algorithm and supports preemptive priority and round-robin. Has stack overflow detection option, semaphore, mutex, flag, mailbox and queue for communication & synchronization. The OS supports the platforms of ICCARM, ARMCC, GCC.

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.

Memory usage: real: 28573696, emalloc: 28163200
Code ProfilerTimeCntEmallocRealMem