diff --git a/README.md b/README.md index 878078e..bc249a4 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,26 @@ # OS220 -Research kernel in C++ +Research project aiming to create a modern kernel and operating system in C++ -### Implemented (kernel) -- Global Descriptor Table -- Output via Flanterm by mintsuki -- Memory map scanning -- Kernel-mode heap allocator +![OS220 handling a page fault exception in the kernel](https://i.imgur.com/P0Qz350.png) -### In progress (kernel) -- ISR handling (interrupts) -- Virtual memory paging -- UEFI runtime service support -- ACPI & AML support +### Kernel +- [x] Global Descriptor Table +- [x] Output via Flanterm by mintsuki +- [x] Memory map scanning +- [-] Kernel-mode heap allocator +- [ ] ISR handling (interrupts) +- [ ] Virtual memory paging +- [ ] UEFI runtime service support +- [ ] ACPI & AML support +- [ ] PCI-e +- [ ] HPET timer +- [ ] Object manager +- [ ] Ramdisk +- [ ] Scheduler -### Implemented (kernel C++ library) -- new/delete operators via kernel heap -- String stream (`cstringstream`) -- Console output stream (`kout`, `kerr`) - -### In progress (kernel C++ library) -- Vector/array class -- String class \ No newline at end of file +### Kernel C++ library +- [x] new/delete operators +- [x] String stream (`cstringstream`) +- [x] Console output stream via `operator<<` (`kout`, `kerr`) +- [x] Vector/array class +- [ ] String class \ No newline at end of file diff --git a/images/OS220.png b/images/OS220.png new file mode 100644 index 0000000..fc719d1 Binary files /dev/null and b/images/OS220.png differ diff --git a/kernel/src/Main.cpp b/kernel/src/Main.cpp index 71294ee..f680558 100644 --- a/kernel/src/Main.cpp +++ b/kernel/src/Main.cpp @@ -72,6 +72,8 @@ extern "C" void kmain() { framebuffer->blue_mask_shift ); + kout << "OS220 research kernel project" << "\n" << "Written by Daniel Hammer" << "\n" << "\n"; + #if defined (__x86_64__) Hal::PrepareGDT(); Hal::BridgeLoadGDT();