# HOS System Requirements HOS requires: * A 64-bit CPU. * A UEFI system. * 128MB of RAM. # Building HOS From the top level of the repository, run: ./rscons If you get errors about missing packages, install the packages and then re-run the build command. # Running HOS HOS can run on a physical machine, in VirtualBox, or in QEMU. ## Physical Machine To install HOS to an EFI partition, follow these steps: 1. Copy build/hello/HOS.EFI to EFI partition EFI/HOS.EFI. For example, from Linux: sudo cp build/hello/HOS.EFI /boot/efi/EFI/HOS.EFI 2. Register EFI loader for HOS (one time only) with command: efibootmgr -c -d /dev/nvme1n1 -p 2 -l '\EFI\HOS.EFI' -L HOS (Update the -d device parameter and -p partition parameter as appropriate) 3. Set boot order to desired boot order. Exact order will be system dependent. Example: efibootmgr -o 2,0,6,5 At this point you should be able to boot HOS from your EFI boot selection menu. If you use GRUB, you can optionally create a GRUB boot entry to load HOS.EFI with an entry like this: menuentry 'HOS' { insmod part_gpt insmod chain set root='(hd0,gpt1)' chainloader /EFI/HOS.EFI } Just update the root setting for the correction location to your system's EFI partition. ## VirtualBox To create a VM in VirtualBox: 1. Build HOS ("./rscons"). 2. In VirtualBox, select Machine -> New. 3. Set name to HOS. 4. Set Type to Other. 5. Set Version to Other/Unknown (64-bit). 6. Click Next. 7. Set memory size to 512 MB. 8. Click Next. 9. Select Do not add a virtual hard disk. 10. Click Create. 11. From the HOS repository, create a VirtualBox VMDK image with "./rscons mk-vmdk". 12. Move the HOS.vmdk file generated to the HOS VirtualBox folder. 13. In VirtualBox Manager, open HOS VM settings. 14. Under System, check the Enable EFI checkbox. 15. Under Storage, add a hard disk and browse to select the HOS.vmdk file. 16. To run HOS, either start the VM through VirtualBox or with "./rscons run-vb". ## QEMU Make sure QEMU is installed (possibly the `qemu-desktop` package). Then: 1. Build HOS ("./rscons"). 2. Run `./rscons run` to run HOS in QEMU.