Processes in KaffeOS:
Isolation, Resource Management, and Sharing in Java

Motivation

What is KaffeOS

Current Options

Java Operating System

KaffeOS Design Principles

Process Separation

Heap Structure (user heaps)

Full Reclamation

Heap Structure (user heaps)

Enforcing Heap Structure

Memory and CPU Accounting

Heap Structure (separate GC)

Heap Structure (resolving cycles)

Direct Sharing

Heap Structure (shared heaps)

Performance Results

SpecJVM Performance of KaffeOS

MemHog DoS Scenario

Service Under DoS Attack

Related Work

Ongoing Work & Open Issues

Summary