Minimalistic Kernel for Learning
- Bootloader
- Real Mode
- Protected Mode
- Long Mode
- Give control to Kernel
- Includes
- Ample
- Printing Utilities (
<arc/print.h>
-printk
)
- Printing Utilities (
- LibC
- Stdio
-
sprintf
- format string
-
- Stdlib
-
intlen
- return length of an integer -
malloc
- allocate memory -
free
- free memory
-
- String
-
strlen
- give length of a string -
memset
- set memory of a buffer to a value
-
- Stdarg
- Variadic Functions (
va_list
,va_start
,va_arg
)
- Variadic Functions (
- Stdio
- Ample
- Kernel
- Interrupts
- Virtual File System (VFS)
- Processes
- Threads
- [ ] Scheduler - Priority Round Robin
- [ ] Memory Allocation (
lib/stdlib.h
)-
malloc
-
free
-
- User Mode
- Switch to user mode
- Stdin
- Stdout
- System Calls
- Shell (
ash
)- Logs
- Initialize keyboard input
- Commands
-
pwd
-
ls
-
cd
-
mkdir
-
touch
-
cat
-
echo
-
Licensed under the MIT License by Kabir Shah