m0 is my experimental hobby kernel and userspace #os #osdev
userspace-linux: add snprintf to lib
userspace: add wip standalone userspace
kernel: remove bootk

heads

tip
browse log

clone

read-only
https://hg.sr.ht/~sheenobu/m0
read/write
ssh://hg@hg.sr.ht/~sheenobu/m0
# m0

m0 is my experimental hobby kernel and userspace.

This is based on https://hg.sr.ht/~sheenobu/xv6-i386-base (itself a
minimally changed fork of https://github.com/mit-pdos/xv6-public.git).

m0 is not meant to be a unix clone.

## building the hosted version

 $ nix-shell
 $ make

now `build/out/hosted/` contains all the binaries.

## building the native version

 $ nix-shell
 $ ./configure.nixos
 $ make native

now `build/out/native/_root` contains the root
of the filesystem containing all the binaries. `build/out/native/obj`
contains all the object files and boot blobs and kernel blobs
required for booting.

## running in qemu

use `utils/qemu-release.sh`. then use `run.sh`

See doc/README.xv6