What is a Unikernel?
masterA unikernel is a single-process system designed to run exactly one application. Unlike general-purpose operating systems (like Linux) that support multiple users and programs, a unikernel is optimized for performance, security, and minimal size by stripping away unnecessary abstractions.
Key characteristics include:
- Single Process: The system runs one application, though it supports multiple threads. For interpreted languages (e.g., Ruby, Python), concurrency is achieved by running multiple unikernel VMs behind a load balancer rather than running multiple processes within a single OS.
- No Shell or Users: There is no remote shell to log into and no concept of multiple users. While OPS may include a stubbed/fake user to satisfy
libcrequirements, standard Unix permissions have no practical meaning because only one program is running.