Skip to content

werner-matthias/aihPOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

aihPOS - another incompatible and hackneyed Pi Operating System

aihPOS is (better: shell be in the future 😏) the operating system used in the undergraded course "Operating Systems" at the TU Chemnitz.

Directories:

  • bin/: tools for building; currently cargo-kernel only
  • jtag/: small kernel to allow development with use of JTAG
  • kernel/: micro kernel for aihPOS

How to build the kernel

Prerequisites:

  • Nightly Rust
  • Cargo
  • Xargo
  • GCC Arm Cross tools

Put cargo-kernel in your path. Then run

cargo kernel --target=arm-none-eabihf 

Status

  • Tools and Booting
  • Debug LED interface
  • Interrupt routines
  • Console ouput (framebuffer, for debug)
  • Keyboard input
  • Heap (allocator)
  • Paging
  • Context switch
  • IPC
  • Geräte (BMC2835)
    • GPIO
    • Interrupt controller
    • ARM timer
    • System timer
    • Mini Uart
    • Uart
    • DMA controller
  • User land
    • Loader
    • Shell

Remark

Since aihPOS should support an undergraduate course at a German university, all source comments are in German. Possibly, I will create a branch with translations once the code is stable.