The project is no longer available

Improve a unikernel operating system

IncludeOS is a unikernel operating system developed at University of Oslo and OsloMet. In IncludeOS, the operating system itself is a library that you can link with your application, producing a VM that just contains the operating system components you need. For example, if you develop a network application that will run in the cloud, you may not need a full file system or the ability to run other applications. This produces a very resource efficient and small virtual machine that is only a few megabytes in size and can boot in nanoseconds.

We have several topics available in this area and you may also propose your own ideas.

Potential topics this year:

  • Add support for ML acceleration
  • Share Unix sockets between the unikernel VM and the host (vsock support)
  • Implement support for a new runtime (e.g. rust)
  • Support 10GB/s networks
  • Prototype support for secure enclaves

Some earlier topics (not currently available):

  • Create an efficient memory allocator
  • Implement virtiofs (file system sharing) support
  • Port to ARM
  • Power efficiency of unikernels

Learning outcome

Experience

  • deep understanding of operating system internals and virtual machines
  • experience in operating system development
  • contribute to an open source project
  • conducting, evaluating and interpreting research results

Conditions

We expect that you:

  • have been admitted to a master's program at MatNat@UiO
  • take this as a long thesis
  • have completed IN3000 or a similar course
  • are interested in and have some knowledge of C/C++ programming and low level systems programming
Published Sep. 15, 2025 1:53 PM - Last modified Nov. 19, 2025 1:27 PM

Supervisor(s)

Scope (credits)

60