Mark c3f23032f0 boot: yboot protocol change: memory map
Memory map is now a part of boot protocol structure.
The change was caused by UEFI placing this boot structure
(as part of yboot's data section) very high in physical memory,
above kernel's mapped 4GiB range, so kernel had no way of
accessing it. It's not the best solution, but will work for sure.
2020-09-05 02:08:52 +03:00
2020-09-04 01:36:04 +03:00
2020-08-11 17:00:14 +03:00
2020-09-04 01:36:04 +03:00
2020-08-07 13:02:29 +03:00
2020-07-28 15:52:23 +03:00
2020-08-07 13:02:29 +03:00
2020-08-07 13:01:24 +03:00
2020-07-05 14:10:23 +03:00

Yggdrasil x86-64 kernel

(I still need refactoring, huh.)

Yggdrasil is the name for my kernel development project which tries to follow the Unix principles (yet another POSIX OS?) and is loosely inspired by stuff like Linux, BSD and other *nixes I've laid my hands on so far.

alt text

Building

See Building Guide

What works

  • Preemptive multitasking (kernel/user)
  • VFS implementation with non-resident ("mapper") filesystem support
  • ext2 driver supporting both read/write (pending rewrite though), directories and symlinks
  • VT100 basic control sequences for color/cursor control in tty.
  • tar-based initrd with programs and other files for userspace
  • Over 50 system calls for POSIX-like interface: fork()/execve()/read()/write()/...

What works: devices

  • RTL8139 Network Controller - both Tx/Rx
  • AHCI SATA controllers (Read/Write)

Credits

  • Linux for default8x16 font
S
Description
x86-64 operating system kernel
Readme 2.5 MiB
Languages
C 99.4%
Assembly 0.4%
Objective-C 0.2%