This repository has been archived by the owner on May 20, 2023. It is now read-only.
Releases: egkoppel/popcorn-1
Releases · egkoppel/popcorn-1
v0.2.0-alpha
What's Changed
Core kernel changelog:
- Remove rust completely from the codebase
- Switch away from STLPort to custom C++20 semi-compatible STL
- Switch to CMake
- Add the beginnings of documentation
- Try and reduce arch specific dependency
- Add C++ exceptions
- Add proper error handling and type-safety
- Massivley overhaul memory management and paging
- Add RAII based memory handles
- Add refcounting of allocated frames to allow for shared memory in future
- Add RAII based page tables
- Add support for
.tbss
for CPU local variables - Add proper logging system
- Add support for compiling with UBSan
- Improve ACPI and APIC support
- Scheduler overhaul
amd64 changelog:
- Fix the TSS to make it actually be loaded
- Overhaul IDT
Full Changelog: v0.0.1-alpha...v0.2.0-alpha
Known bugs
- Crashes during boot if UBSan is disabled
First release
First release
It boots!
Other than that it's completely useless
But it doesn't crash anymore
Current abilities:
- Boot into long mode
- Parse APIC tables and boot other cores
- Preemptive round-robin scheduling on a single core
- Switches to userspace and starts unfinished core services
System requirements:
- x86_64 processor
- Some amount of memory
- At least a 480p screen or something
- 0GiB of disk space (hugOS does not yet support the disk)