Home Product Details Service Details Corporate Information Contact Details

 
TECHNOLOGIES
  Development Desktop
  Embedded OS
  Open Source
  Processors
  Expertise Summary
Technologies
 

Embedded Operating Systems

Many embedded systems will include an operating system. There are many factors that go into the decision on whether to use an operating system or not. Key reasons for using an operating system include:

  • the implementation requires multiple processes, tasks or threads
  • access to hardened protocol stacks such as TCP/IP
  • access to drivers for standard devices
  • access to software components that require an underlying operating system
  • support for advanced hardware features such as an MMU

Implementations including an operating system will require more system memory than those that do not. Where the amount of memory available is severely restricted, operating systems with smaller footprints are available. There may be support or licensing costs associated with an operating system.

Although we have expertise with a number of operating systems, embedded Linux remains our favourite choice.

Embedded Linux

There are numerous economic and technical benefits in using Linux for embedded devices. Some of the key reasons cited for the dramatic increase in the adoption of Linux include:

  • Linux is high-performance, stable and mature,
  • Linux is royalty free,
  • Linux support is available for a wide range of processor architectures,
  • Open and non-proprietary Linux development tools are available,
  • Large body of open source code is available (drivers, stacks, utilities, ... ) and
  • Growing number of developers who have experience with Linux and open source software.

Some of Our Linux Projects

pSOS to Real-Time Linux Conversion

Our work on this project involved the migration of an existing VMEbus control system from obsolete hardware and pSOS to modern hardware and real-time Linux configured for hard real-time. Our deliverables included:

  • Hardware selection (bus standard, processor board, analog I/O, digital I/O, chassis)
  • Recommendations for the system software: development environment, real-time operating system and tools
  • Redesign of the task-based, flat address space used by pSOS to Linux processes in user space and kernel space
  • Device driver development for analogue and digital I/O hardware
  • Development of a software upgrade strategy
  • Coding, integration and final commissioning
  • Development of a web interface to the control system
  • Documentation and support

The control system represents a system with hard real-time constraints. The investigation into the suitability of Linux for the project included measuring interrupt and context-switch latencies for various possible Linux kernels and sub-kernels. The options considered include using standard Linux distributions (2.4.27 and 2.6.8) as well as using RTAI and LXRT with the Linux 2.4 kernel. The technique used to measure latency and the results are documented in the whitepaper available on our website.

Tool Chain Upgrade

This project involved the upgrade and verification of a tool chain for the PowerPC 405. Our deliverables included:

  • Selection of component versions for: uClibc, BusyBox and binutils
  • Integration with the client's kernel headers and kernel source
  • Demonstration of shared library support for BusyBox
  • Execution of the DejaGnu test suite on the remote target with the updated tool chain based on uClibc. This work required the integration of ssh and scp to support the remote testing
  • Investigation into unexpected test case failures
  • Propagation of client-specific BusyBox modifications to the updated version
  • Documentation and support

 

   

Home | Products | Services| About Us | Contact Us | Sitemap

Copyright © — 2004 - 2008 Akamina Technologies Inc.