Problem:
As our kernel grows we need more complex datastructures and functions these would come from
the standard C/C++ library with normal programs.
The kernel is a freestanding programme and has no access to standard libraries.
Solution:
We build a mini version of the standard C/C++ library which will contain the
datastructures and functions we want. This library can then be statically linked
into our kernel binary.
Making it a statically linked library also gives more structure to the project.
Keeping these random functions and datastructures in the kernel just clutters the
kernel source code with less relevant source code.
- Updated gdt assembly
- Updated Interrupt service request handlers
- Improved virtual memory manager
- NOTE: we're dependent on identity mappings for the heap to work
Folders now are alll lower case
Started working on the implementation of the Virtual memory manager. Implemented allocate and free page funtionality for as far as I can atm.
Implemented the