CoMOS: An Operating System for Heterogeneous Multi-Processor Sensor Devices

Chih‐Chieh Han, Michel Goraczko, Johannes Helander, Jie Liu, Nissanka B. Priyantha, Feng Zhao · 2006

This paper presents the architectural design and implementation of CoMOS, a component messaging based operating system for mobile sensing and communication devices with multiple, heterogeneous processors. Potential applications of these devices include personal voice or video services, health monitoring, and environmental sensing. To enable timely processing of environmental or user events and energy-efficient operations, the system uses a stack-based preemption mechanism and supports task migration and fine-grained resource scheduling. At the center of the architecture is a processor-agnostic programming abstraction in which applications are specified as sets of asynchronous tasks interacting with messages. Tasks respond to messages, or events, and may produce new messages. Message handling can be preempted on stack enabling timely response to high priority events with a very small memory overhead. The tasks are mapped to processors at compile time and can be migrated from one processor to another at runtime, allowing dynamic power optimization and load balance. CoMOS has been implemented on mPlatform, a modular multi-board sensing device with multiple MSP430 and ARM7 processors and radios, and has been used to support the development of a real-time 4-channel sound source location (SSL) application on the mPlatform. We describe the experimental results quantifying the overhead of the messaging, migration, and other critical components of CoMOS, and the end-to-end performance evaluation of the SSL application.

Read the paper · More papers on PaperTik