104
GitHub - arjun024/mkernel: A minimalist kernel
source link: https://github.com/arjun024/mkernel
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
mkernel
This is a minimalist kernel which prints "my first kernel
" on the screen and then hangs.
- The kernel is multi-boot compliant and loads with GRUB.
Blog post
Kernel 101 – Let’s write a Kernel
Build commands
nasm -f elf32 kernel.asm -o kasm.o
gcc -m32 -c kernel.c -o kc.o
ld -m elf_i386 -T link.ld -o kernel kasm.o kc.o
Test on emulator
qemu-system-i386 -kernel kernel
Get to boot
GRUB requires your kernel executable to be of the pattern kernel-<version>
.
So, rename the kernel:
mv kernel kernel-701
Copy it to your boot partition (assuming you are superuser):
cp kernel-701 /boot/kernel-701
Configure your grub/grub2 similar to what is given in _grub_grub2_config
folder.
Reboot.
Voila!
The next step
See mkeykernel repo
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK