voron

experimental ARM OS
git clone git://git.2f30.org/voron.git
Log | Files | Refs | LICENSE

commit 0d5500bc2cfc9e1a8191b9348c5dcf0ff51998fe
parent 3e1347d41814f786e5ab34096a7369bdfdf23755
Author: oblique <psyberbits@gmail.com>
Date:   Sat May 25 05:06:47 +0300

Rename `README' to `README.md' and add more details.

Diffstat:
README | 1-
README.md | 54++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 54 insertions(+), 1 deletion(-)
diff --git a/README b/README @@ -1 +0,0 @@ -Voron is an experimental ARM based operating system for PandaBoard. diff --git a/README.md b/README.md @@ -0,0 +1,54 @@ +Voron is an experimental ARM based operating system for PandaBoard. + +## Features (until now) + +* Uniprocessor support only (for now) +* Interrupt handling +* Memory management +* Simple kernel heap allocator (I will implement SLAB in the future) +* Round-robin scheduler +* Kernel threading +* Locking primitives +* Sleep/wakeup mechanism for processes + + +## Compile + +If you are not using an ARM architecture processor then you will need +an ARM architecture toolchain, you can use `arm-none-eabi` from +Sourcery CodeBench Lite. You will also need `uboot-mkimage` +package. To compile it, run + + make + +If you have another toolchain, for example `arm-unknown-eabi`, run + + make CROSS_COMPILE=arm-unknown-eabi- + +If you are using an ARM architecture processor, run + + make CROSS_COMPILE= + + +## Boot via SD card + +First you must create a Fat32 or Fat16 partition in your SD card and +mark it as boot. Then run (use `CROSS_COMPILE` if needed) + + make bootloader + +After this you must copy `uImage`, `boot/boot.scr`, +`boot/u-boot-linaro-stable/u-boot.bin` and `boot/u-boot-linaro-stable/MLO` +in your SD card. + + +## Boot via USB cable + +Plug a USB cable at your PandaBoard and run + + ./scripts/panda_usbboot.sh + + +## Output + +I only use RS-232 Serial port for text output, so you will need `minicom`.