-
Notifications
You must be signed in to change notification settings - Fork 1
Baremetal kernel for testing purposes
tehplague/baremetal
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Multiboot Kernel
==================
This is a small test kernel for 32- and 64-bit code. It started as an
experiment for Multiboot (see README.multiboot), but evolved around r555
(2011-09-01) into a vehicle for low level system benchmarks supporting multiple
CPUs (as of 2011-09-19, r589, see README.smp).
Architecture (as of r578, 2011-09-11):
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
start32.asm start64.asm [32-bit early boot code]
start.asm [32-bit early boot code for both architectures]
boot32.c [32-bit machine check in real-mode]
jump64.asm [64 bit set-up]
start_smp.inc [16 bit bootstrap code into 32 bit protected mode]
...................................................................................
main.c [actual kernel]
start32.asm - Multiboot/a.out start code, set-up of GDT+Interrupts for 32-bit kernel
start64.asm - Multiboot/elf32 start code, continue in jump64.asm
start.asm - common initialization code for both
boot32.c - 32-bit real-mode C code for bootstrap (hardware analyzation)
jump64.asm - set-up of GDT+Interrupts for 64-bit kernel
start_smp.inc - bootstap code for Application processors (included in start32.asm and jump64.asm)
lib.c - service functions for 32-bit start code and both kernels
scrn.c - screen output for 32-bit start code and both kernels
main.c - start routine of actual kernel in protected mode
*.c - other helper functions and subsystems
About
Baremetal kernel for testing purposes
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published