Upload
suganya-selvaraj
View
215
Download
0
Embed Size (px)
Citation preview
Introduction
• A Real time operating system• An operating system which is open source to
develop embedded applications• Real time scheduling• Designed to avoid fragmentation
Featureso Real-Time Performanceo Low Interrupt Latencyo Low Task Switching Latencyo Small Memory Footprinto Deterministic Behaviouro Highly Configurableo Full Feature Seto Open Source Kernelo No Runtime Licensing, Fees or Royaltieso Open Source GNU Development Tools
Core components
o Hardware Abstraction Layero Real-time kernel.o ISO C and math librarieso Device driverso GNU Debugger (GDB) support
Hardware Abstraction Layer (HAL)
o The HAL is a software layer.
o It provides a platform independent API for platform specific functionality.
o Enhances portability of code.
HAL contd..• Architecture HAL
– Abstracts the basic CPU and includes interrupt delivery, context switching , CPU startup and etc.
• Platform HAL– Abstracts the properties of the current platform
and includes startup, timer devised, I/O register access and interrupt controllers
• Implementation HAL– Abstracts properties that lie between these two,
such as architecture variants and on-chip devices
The Kernel
o The Kernel is the core to the eCos system.
o Provides standard functionality likeo interrupt and exception handlingo schedulingo threadso synchronization
Kernel internals• Scheduler options
– Bitmap scheduler– Multi-level scheduler– Experimental “lottery” scheduler (under
development)• Interrupt handling• ISR• DSR
Kernel internals
• Exception handling is configurable
• Thread synchronization– Available thread synchronization primitives
• Semaphores, Mutex, Condition variables, Flags
ISO C and Math libraries
o There are three aspects o ISO C library o Math libraryo environment in which applications run when they
use the standard C library.
eCos API
o eCos supports the following standard APIo µitrono POSIXo Embedded Linux API compatible with EL/IX.o It’s own native API.
PROCEDURE
• 1. Install VirtualBox• 2. Install Ubuntu in VirtualBox• 3. Install the eCos package• 4. Install the eCos configuration tool• 5. Modify the program in "examples" directory• 6. Run the program