Nemesis

An operating system with principles

 ContentsNetOS 
Publications
Download the Nemesis distribution pre-release.
 IntroductionNetOS 
Nemesis is an entirely new operating system, whose design is geared to the support of time-sensitive applications requiring a consistent Quality of Service (QoS), such as those which use multimedia. Nemesis provides fine-grained guaranteed levels of all system resources including CPU, memory, network bandwidth and disk bandwidth.

Moreover, Nemesis has been designed such that these Quality of Service guarantees are meaningful: In a microkernel environment, an application is typically implemented by a number of processes, most of which are servers performing work on behalf of more than one client. This leads to enormous difficulty in accounting for resource usage. In a kernel-based system, multimedia applications spend most of their time in the kernel, leading to similar problems.

The guiding principle in the design of Nemesis was to structure the operating system in such a way that the majority of code could execute in the application process itself. Nemesis therefore has an extremely small lightweight kernel, and performs most operating system functions in shared libraries which execute in the user's process. This leads to a vertically-structured operating system.

Providing QoS to time-sensitive applications necessarily requires more frequent context-switches. By use of a single address space, Nemesis greatly reduces memory-system related context-switch penalties. The single address space also removes the need to copy high-bandwidth multimedia data. Despite the fact that there is a single system-wide page table mapping virtual addresses to physical addresses, memory protection is still performed on a per-process basis.

Nemesis currently runs on a large number of platforms including Intel 486, Pentium, PPro and PII based PCs, DEC Alpha workstations and evaluation boards (21064 and 21164) and StrongARM SA-110 based network computers.
 Nemesis PartnersNetOS 
Nemesis has been developed over the last few years as part of the Pegasus I and Pegasus II projects. It has been worked on at a number of sites outside of Cambridge as part of these projects:
University of Twente, Netherlands
University of Glasgow, UK
Swedish Institute of Computer Science, Sweden
Citrix Systems (Cambridge), Ltd

Autogenerated by xmltophys on Sat Feb 5 18:17:49 2000 from file nemesis.xml dated Sat Feb 5 18:17:27 2000