Progress
Features
Kernel
-
Higher Half Kernel
-
Keyboard, mouse, ATA, PCI and BGA drivers
-
VFS with Dev and Ext2 FileSystem support
-
Paging, physical and virtual memory managers
-
Userspace processes and threads
Userspace
-
Libc - At this moment contains Posix syscalls and malloc
-
Libsystem - Custom MacaronOS syscalls, logging and EventLoop
-
Libipc - Low level one to many connections sending bytes to each other
-
Tools/protocol_generator.py - Genrates a complex serializable messages what works on top of Libipc
-
System/WindowServer - Compositing window server for applications
-
Libgraphics - Android-like library for graphcis primitives
-
Libui - Android-like GUI library
-
Macaronlib - A library that's shared beetween userspace and kernel. Declares the system's ABI and contains STL-like templates
Build instructions
MacOS
The building process is described here. Just follow the top answer.
Linux
apt install fuseext2
MacOS
brew install e2fsprogs
Linux
apt install e2fsprogs
Get qemu
MacOS
brew install qemu
But the best option for mac is to build it yourself. More info here.
Linux
apt install qemu-system-i386 qemu-utils
Get a crosscompiler:
MacOS
brew install i686-elf-gcc
Linux
./Scripts/i686-elf-tools.sh
Get NASM
MacOS
brew install nasm
Linux
apt install nasm
Macabuilder is a build system developed to simplify Macaron OS building process.
You can find build instructions here.
Run Macaron OS
After everything's set up, just launch Macabuilder executable from the root project directory. It will find MacaronOS.maca file, build and run MacaronOS.
Open Source Agenda is not affiliated with "MacaronOS Macaron" Project. README Source:
MacaronOS/Macaron