Aqua-OS is an operating system specifically designed for underwater embedded systems. This is an on-going project of UWSN Lab. The design goal of Aqua-OS is to provide a robust, efficient and extendable operating system for underwater sensor networks (UWSNs).
Recently underwater systems have become more complicated and diverse. With the increasing complexity, the interaction between the system control logic and physical devices becomes more complicated. In such a complex and usually resource constrained system, it is imperative to introduce an operating system to efficiently manage hardware and provide friendly user interface for applications. This is how TinyOS, embedded Linux and many other operating systems come into play.
Though most of these operating systems claim configurability, they are often designed for a certain type of applications and based on some particular hardware. For example, Tiny-OS is closely coupled with Berkeley Motes, and targeted at radio sensor network applications. With more emerging underwater systems, more operating systems are demanded. However, the development of a new operating system is usually very costly and time-consuming. While it is possible to adapt existing systems, generally without significant design changes they can not provide good system performance. In addition, studying and revising existing operating systems is equivalent tedious and costly if not more. Further, unlike the operating systems for PCs and workstations, an operating system for an underwater system should take both the application requirements and physical constraints into account. In reality, however, there often exits a big gap between the domain experts and the system engineers, which often causes the long cycle of system development. To facilitate the OS development for underwater systems, in this dissertation, we are working on an OS specifically designed for underwater sensor networks, called Aqua-OS, to bridge these gaps.
Still work in progress.
- Jun-Hong Cui Computer Science & Engineering
- Zhijie (Jerry) Shi Computer Science & Engineering
- James Zheng Peng Computer Science & Engineering
- Jun Liu Computer Science & Engineering
- Haining Mo Computer Science & Engineering
Discussions & Talks
May 5, 2010
James gave a presentation on uC/OSII. [slides]
For the next week, Zuofei will give a presentation on OMAP booting sequence. And Son Le will talk about the problem porting TinyOS to Gumstix.
Apr 28, 2010
Dr. Shi pointed out possible short term directions on the OS design. He suggested we can start from existing OS, such as TinyOS and Embedded Linux. The current focuses are:
- Low power
- Power management
- Interrupt handling
- Fault tolerance
He emphasized the reliability issue and said we could utilize some techniques from the research area of computer security. Generally speaking, reliability is easier than security because it is not dealing with deliberately designed attacks, but random errors.
He gave an example of doing sanity checks on system calls and left the following questions for us to think about:
- . What damages can be done via system calls?
- . Does sanity check help?
- . How to do the sanity check?
- . What're the overheads?
Apr 7, 2010
James gave a presentation on eCos operating system. [slides]
After the presentation, we also list other OS to study, including Contiki (Jun'll present), FreeRTOS, uC/OS (James'll present) and VxWorks. Dr. Shi also asked us to study the booting process of Linux. Zuofei will study this based on OMAP platform and see how ARM core and DSP core are booted. Another important issue is benchmarks. We identified mibench and hbench-os to begin with. Haining will do a presentation on this issue.
Due to mid-term exams, next week's meeting is canceled.
Mar 31, 2010
James gave a presentation on MINIX. [slides]
Mar 2, 2010
Had a meeting with Dr. Cui. Son, Haining, Jun and Zuofei did short presentations based on their previous slides. James also summarized the current progress.
Feb 17, 2010
- James discussed the environmental factors that will affect the operating system design, as well as typical user preferences. [slides]
- Haining talked about some issues in operating system design and possible approaches.[slides]
- Son's talk covered memory management, system call and TinyOS threads. [slides]
- Jun and Zuofei presented dynamic power management and current hardware platform (OMAP) [slides]