Skip to content

zhiayang/nx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
zhiayang
Feb 19, 2021
0d9da88 · Feb 19, 2021
May 7, 2020
Apr 28, 2020
Feb 19, 2021
Sep 27, 2020
Feb 19, 2021
Oct 12, 2020
Feb 19, 2021
Feb 19, 2021
Jan 9, 2020
Oct 12, 2020
Oct 2, 2019
Jan 24, 2020
Feb 19, 2021
Apr 21, 2020
Oct 12, 2020
Sep 23, 2020
Mar 9, 2020
Jan 24, 2020

Repository files navigation

[nx]

The sixth rewrite of what never was, OrionOS. x86_64 kernel.

Current Features

  • EFI loader (efxloader) and BIOS loader (bfxloader, running on top of BOOTBOOT)
  • Higher-half 64-bit kernel
  • tarfs initrd, basic VFS
  • Some level of userspace, with basic asynchronous (polling + signalling) IPC

Trying out [nx]

Required Software

  • C++ compiler (that targets your own platform)
  • pv, mtools, parted, fdisk, mkfs.vfat (typically packaged as dosfstools), unzip
  • On OS X, use Homebrew to install gptfdisk (the included fdisk only works for MBR disks, which is so 1990s)
  • A Unix system -- OS X and Linux will work, Windows Subsystem for Linux will work as well. Unlikely to work on things like mingw/cygwin.
  • About 150 MB of free space.

Building the toolchain

  • Run the ./bootstrap.sh script
  • Everything will be done automatically

Building the kernel

  • Once the bootstrap script is done, you should be able to run 'make' in the root directory and have it run, using QEMU.
  • It currently does nothing spectacular. Possible epilepsy warning.

License

The licenses for the various components of [nx] can be found in LICENSE.md, including those of libraries and external dependencies.