sbutz / burritos

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

burritos

An i386 kernel. Built for self educational purposes (to compensate for the disappointing operating system course at OTH).

Build Requirements

  • make
  • gcc
  • xorriso
  • grub-mkrescue
  • qemu (for running)

Features

  • VGA output
  • Interrupts
  • Charwise serial i/o
  • Task switching
  • Usermode
  • Paging

TODO

  • Programs as mutliboot modules
  • Higher half kernel (for vm86 mode)
  • Register irqs in modules
  • Implement assert
  • Implement kmalloc
  • Implement memory allocation syscall
  • Implement userspace heap
  • Basic shell: read input, react to input
  • Better kprintf implementation
  • Test: successful boot, userspace has no privileges, memory virtualization
  • Test: Boot-Test
  • Test: Syscall while interrupt? Prevent Timer Interrupt with Syscall?
  • Test: Memory access of user process (kernel mem, other task mem)
  • Test: Mutliboot-Compliance (gnu mbchk)
  • Test: Posix-Compliance

Debugging

Qemu Monitor:

telnet localhost 55555

About


Languages

Language:C 88.7%Language:Makefile 6.4%Language:Assembly 4.9%