MansOS
Introduction
MansOS is an operating system for wireless sensor networks.
MansOS = Mobile agent netted sensor Operating System
MansOS is a branch from LiteOS operating system, initially made to support TI Msp430 based platforms. Both OS share several defining characteristics. MansOS like LiteOS is designed to be easily adopted by the system designers and IT community familiar with C and C++ languages and Unix operating system concepts. The goal is to avoid the steep learning curve present in some other specialized operating systems.
Key concepts common with [LiteOS]:
- MansOS is adopting programming in C (and eventually C++), known to many developers
- MansOS is managing a sensor network using Unix-like concepts, command tools and resources
- MansOS has a Unix-like file system (in development)
- MansOS enables thread-like programming environment (in development)
Some key aspects specific to MansOS:
- MansOS is designed to be easily portable to new platforms
- Debugging support is integral part of MansOS: for example, Simple Sensor Management Protocol and Print Anywhere (over the serial or radio link) techniques help with debugging tasks.
- MansOS has PC as one of the supported platforms, enabling rapid development and high-level simulation and debugging on PC and Mac class computers.
- MansOS enforces the hardware abstraction in three layers: HPL, HAL, and HIL at a mote level, ensuring clear interface for ease of portability to other platforms
- MansOS introduces a device concept similar to Unix systems. Access to most resources and sensors can be done through the device interface, using standard API including open, close, read, write and configure functions.
- Future goal: The focus during the development should be the whole system - a collection of mote entities rather than a single mote
General information
Access (Download)
- MansOS SVN repository is open to public for reading. For example, to get the whole MansOS tree in the current-directory/mansos do this:
svn co http://mansos.net/svn/mansos/ mansos
- Authenticated developers may access the MansOS_SVN repository via svn+ssh.
svn co svn+ssh://yourloginname@mansos.net/svn/mansos mansos
http://mansos.net/trac
Development with MansOS - tools and techniques
- MansOS Reference Guide and API (pdf)
- Application examples
- Setting up and using Makefiles
- Eclipse setup
- Debugging and testing
- FAQ
Developing the MansOS - notes
- MansOS_Platforms - make syntax and platform specific notes, e.g. where the particular executable is built and what options are available
- API
- Source directory structure
- Coding standard
- Adapting a new hardware platform
Internals
Hardware notes
Chips
Platforms
Related publications and papers
- Flexible Hardware abstraction describing the HPL - HAL - HIL notion
- LiteOS paper, the original OS from which MansOS branched