Projects

Stardust OS

Stardust is a library operating system that enables an application or a service to run in a light-weight and secure execution environment for the Cloud. It has a minimal kernel that manages the virtual hardware resources which may be presented by an underlying hypervisor. Stardust features a pre-emptive thread scheduler and supports multiple processors. It provides a number of basic device drivers and in-memory file system storage facilities and relies on standard libraries to support computer programming languages such as C, C++ and Java. It also provides a specialised library that supports POSIX threads.

Orchestra

During my doctoral studies, I designed a high-level, functional, and strongly-typed data coordination language called Orchestra for composing service interactions as a workflow application. This language aims to express a workflow application in a simple and intuitive manner. It relies on a specialised compiler to produce highly scalable, distributed form of the workflow application by partitioning the workflow logic into smaller computational fragments that can be distributed across the network, and may be executed at different sites using a decentralised orchestration system.