strawberryhacker / chaos

Bare metal multicore ARM® Cortex®-A5/7/17 operating system based on a microkernel architecture, with bare metal TFTP network bootloader.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Summary

The Chaos OS is a bare metal microkernel targeting embedded systems. It will include various bare metal example in several languages and of course several server examples. Network stack and file systems are just implied. I might also make a USB stack, graphics subsystem and a custom compiler for a new language.

Support

I plan on developing the kernel in parallel on these targets

  • SAMA5D27 (single-core Cortex-A5)
  • SAMA5D4 (single-core Cortex-A5)
  • Orange Pi PC (quad-core Cortex-A7)
  • Orange Pi (quad-core Cortex-A7 virtualized on QEMU)
  • FireFly RK3288 (quad-core Cortex-A17)

Structure

The Chaos kernel will be loaded by u-boot into external memory. I do not intend to write any board spesific bootloader. The kernel will have a relocatable PIC stage for relocating itself to the beginning of DDR. This opens the possibilities for soft reboot, in which we can replace a running kernel. This will definitely outperform a u-boot reset. The kernel will have a TFTP component embedded into the kernel which will take care of the soft reboot.

About

Bare metal multicore ARM® Cortex®-A5/7/17 operating system based on a microkernel architecture, with bare metal TFTP network bootloader.

License:Other


Languages

Language:C 77.8%Language:Assembly 7.7%Language:Makefile 7.4%Language:Python 7.1%Language:GDB 0.1%