Browse documentation

Linux apps

How existing Linux programs are planned to run on DurgX.

Important

Linux compatibility is planned. It is not available in v0.1-alpha.

DurgX's kernel does not speak Linux. A separate program, the POSIX shim, receives a Linux program's system calls and translates them.

A Linux program asks toThe shim does
read, write or open filesSends the request to the file system server.
map memoryUses the native memory mapping call.
create a process or threadSets up a new task with the right capabilities.
wait on a lock (futex)Uses a native lock.
wait for events (epoll)Uses the ring readiness mechanism.

The first target is statically linked programs built with the musl C library.

Note

Because translation happens outside the kernel, a bug in it cannot crash the kernel.