opensillicon is an experimental unix-like operating system with a modular monolithic kernel and a native userspace.
- ring 3 processes, elf loading,
fork/exec/wait, preemptive scheduling, virtual mem, shared mem, signals, pipes, and file descriptors. - vfs with ramfs, initramfs, devfs, procfs, and the native SilliconFS.
- f/b terminal, ps/2 keyboard, shell, and core utilities.
- native
libosruntime. - tinyx session with
twm,xterm, andxeyes. - network stack components for ethernet, arp, ipv4, icmp, udp, and tcp.
on a linux x86_64 host, install gcc, gnu binutils, gnu make, py3, qemu-x86 and xorriso, then run:
make
make run # serial console
make run-gui # graphical displaykernel/- kernel, architecture code, drivers, filesystems, and networking.user/- init, shell, utilities,libos, and xorg components.include/- kernel and userspace abi headers.tests/- host and qemu test harnesses.tools/- image and filesystem build tools.
project code is available under the BSD 2-Clause License. Vendored and third-party components retain their respective licenses.