Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Ulix, the Literate Unix

Ulix (Literate Unix) is a Unix-like operating system that was developed at University of Erlangen-Nuremberg. We used Donald E. Knuth's concept of Literate Programming for the implementation and documentation. The intention was to create a fully working system which can be used in operating system courses to show students how OS concepts (such as paging and scheduling) can be implemented. Literate programs are very accessible because they can be read like a book; the order of presentation is not enforced by program logic or compiler restrictions, but instead is guided by the implementer's creative process.

Ulix was written in C and Assembler for the Intel x86 architecture; for literate programming we used Norman Ramsey's noweb tool.

Ulix has already been used twice in operating system courses at TH Nürnberg (Nuremberg Institute of Technology); lecture slides and videos in German language are online (see below).

Your options are ...

  • Ulix Development Blog
  • Ulix Source Code (released under the GPL, version 3, on this GitHub page)
  • The Wiki (here on GitHub)
  • The Ulix Book (Hans-Georg Eßer and Felix Freiling: The Design and Implementation of the Ulix Operating System, 708 pages, September 2015)
  • Development VM (OVA format, tested with VirtualBox, Debian-based, 1 GByte, expands to ca. 3 GByte)
  • the full list of publications about Ulix (on the page)
  • lecture notes of Ulix-based courses (on the page)

Note: ulix-book.nw is the literate document.


Ulix, the Literate Unix







No packages published

Contributors 4