Skip to content
andrewguy9 edited this page Sep 14, 2010 · 11 revisions

Welcome to the Kernel Panic wiki!

Kernel panic is a small, real-time kernel originally designed as the software for Team Panic’s entry to the IEEE Micromouse competition. The kernel is mainly developed by Andrew Thomson with some bits by Laine Walker-Avina. The kernel is released under the terms of the GPLv2.

The kernel has the following features:

  • Small memory footprint (<2k RAM, <30k flash with kernel and application code)
  • Differed interrupt processing for real-time performance
  • Support for semaphores, mutexs, Dual mode locks, gather scatter locks, and signals
  • Pre-emptive Thread Scheduling
  • Worker threads
  • Programmable Watchdog.
  • Machine independent implementation (all machine specifics are in one file)

It currently supports the following microcontrollers:

  • AVR (ATmega128)
  • ARM7 (soon)

Panic can be run as a user mode Unix Process
Supported Targets Include:

  • Linux
  • Open BSD
  • Mac OSX

Panic v1 in action:

An early test of Panic v2:

Clone this wiki locally