Primary goals:
- Provide better support for parallel and high-performance applications
- Enable more predictable performance
- Scale the operating system to a large number of cores
Akaros is based on a few related ideas:
- Allow processes to have control of their resources and “peer through” layers of virtualization
- Provision and guarantee resources to applications
- Treat parallel processes as a single native entity, which we call a many-core process (MCP)
- Structure the OS asymmetrically, where some cores specialize in management and system tasks
- Enable fast, cross-network data transfers by providing a specialized block abstraction to applications
Akaros currently runs on x86 and SPARC V8 hardware with a port of glibc for user space. For more information about the design of Akaros and up-to-date documentation on many of our research ideas, check out our website.