arc
arc copied to clipboard
:zap: Minimal Hybrid Kernel
Arc
Minimalistic Kernel for Learning
Todo
- [x] Bootloader
- [x] Real Mode
- [x] Protected Mode
- [x] Long Mode
- [x] Give control to Kernel
- [ ] Includes
- [x] Ample
- [x] Printing Utilities (
<arc/print.h>
-printk
)
- [x] Printing Utilities (
- [ ] LibC
- [x] Stdio
- [x]
sprintf
- format string
- [x]
- [ ] Stdlib
- [x]
intlen
- return length of an integer - [ ]
malloc
- allocate memory - [ ]
free
- free memory
- [x]
- [x] String
- [x]
strlen
- give length of a string - [x]
memset
- set memory of a buffer to a value
- [x]
- [x] Stdarg
- [x] Variadic Functions (
va_list
,va_start
,va_arg
)
- [x] Variadic Functions (
- [x] Stdio
- [x] 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
- [ ]
License
Licensed under the MIT License by Kabir Shah