ecoz presentation
TRANSCRIPT
EMBEDDED CONFIGURABLE OPERATING SYSTEM (eCOS)
ByMisheal AyazShehla Afzal
What is an Embedded OS
• An "embedded system" is any computer system or computing device that performs a dedicated function or is designed for use with a specific embedded software application.
• Often, embedded systems are part of a larger system or product, e.g., antilock braking system in a car
Embedded Configurable Operating System
ECOS is an open-source, royalty-free (http://en.wikipedia.org/wiki/Royalty-free), highly configurable, application-specific operating system ideal for embedded systems development. eCos is targeted at high-volume applications in consumer electronics, telecommunications, automotive, and other deeply embedded applications.
The eCos Layered Software Architecture
Diagram
Kernel DesignThe eCos kernel was designed to satisfy four main objectives
1)Low interrupt latency The time it takes to respond to an interrupt
2)Low task switching latency The time it takes from when a thread becomes available to when actual execution
begins
3)Small memory footprintMemory resources for both program and data are kept to a minimum by allowing all components to configure memory as needed
4)Deterministic behaviorThroughout all aspect of execution, the kernels performance must be predictable
and bounded to meet real-time application requirements
Kernel Features
The following is a partial list of kernel features:• eCos kernel provides the core functionality needed for developing multi-threaded applications
- create and control threads- scheduling, e.g., multilevel queue- synchronization, e.g., semaphores
• Some not included to make for a small kernel - memory allocation (in separate package)- device drivers (in separate packages)• interrupt handling• exception handling• cache control• trace buffers•infrastructure and instrumentation
Good Embedded OS
• Small footprint• Configurable• Open Source• Hardware Supported• Device drivers
Interrupts
Create InterruptsDelete InterruptsAttach/Detach InterruptsConfigure InterruptsAcknowledge InterruptsEnable ?disable Interrupts
I/O
Packages for all generic hardware independent I/O system support
•Ethernet •Flash•serial which is basic for system device drivers.
Memory ManagementeCos is a single process, multiple thread operating environment. As such, memory management is not required. Memory management hardware may be used on some platforms where it exists and is required for optimum performance. For example, on PowerPC based platforms, memory management is used in order to enable cache operations.
Multitasking Two threads with simple print statements after random delays
File System
Including FAT File system in a ConfigurationThe FAT file system is contained in a single eCos package,
CYGPKG_FS_FAT. However, it depends on the services of a collection of other packages for complete functionality
• CYGPKG_IO_FILEIO• CYGPKG_IO• CYGPKG_IO_DISK• CYGPKG_LINUX_COMPAT• CYGPKG_LIBC_STRING• CYGPKG_MEMALLOC
http://www.ecoscentric.com/ecospro/doc/html/ref/fatfs-config.html
Networking
TCP/IP (Transmission Control Protocol / Internet Protocol) Stack Support for eCos
The Common Networking for eCos package provides support for a complete TCP/IP networking stack. The design allows for the actual stack to be modular and at the current time two different implementations, one based on Open BSD from 2000 and a new version based on FreeBSD, are available.
Maximum security against data theft and data manipulation.
ECOS Technology has specialized in the development of high-security solutions for mobile and remote access to data - Remote Access.
The system ecos secure is designed for the secure management of keys in critical and security relevant company sectors.
Security
User Interface
User Interface task mainly provides two functionalities
1)Display receiving information to User2) Accept action request from User/Keyboard.
Comparison with other OSs
FrequentInfrequentCommunication Frequency
SmallLargeMemory Requirement
SmallLargeCommunication Overhead
Target event driven systemsGeneralGenerality
Communicating EFSMsMulti-taskingMOC
Event-driven OSGeneral purpose OS
FrequentInfrequentCommunication Frequency
SmallLargeMemory Requirement
SmallLargeCommunication Overhead
Target event driven systemsGeneralGenerality
Communicating EFSMsMulti-taskingMOC
Event-driven OSGeneral purpose OS
General comparison
709317627408 bit RISCEvent-driven
280080005312ARM7 thumbEvent-driven
549882232410,096ARM7 thumbGeneral Purpose
Data memTotal instruction mem ApplicationProcessorOS type
709317627408 bit RISCEvent-driven
280080005312ARM7 thumbEvent-driven
549882232410,096ARM7 thumbGeneral Purpose
Data memTotal instruction mem ApplicationProcessorOS type
Memory requirements comparison.
The End
Thank you