Toystar is a 64 bits operating system made with the sole purpose of learning and having fun. It is currently in early development and still lacks a lot of features.
- GDT/IDT
- PMM/VMM
- kmalloc/kfree (Buddy allocator)
- Apic (xapic)
- SMP support (multicore)
- Keyboard and HPET
- Scheduler
- Syscalls
- Vfs
- Tmpfs
- RTC driver
- PCI
- AHCI driver
- Ext2 or FAT32 filesystem
- Elf loader
- Have fun
- Be POSIX compliant
- Port several programs, like bash, gcc and python
In order to build Toystar, you will need:
- A x86_64 cross compiler and NASM
- Git
- Xorriso
- WSL or a linux VM (if you are on windows, like me)
Clone this repository and replace the variables in the makefiles containing the name of the tools to be used. After that just type make
. This will download Limine and create an iso file, which then can be run using QEMU.