Commit Graph

104 Commits

Author SHA1 Message Date
9f848934d8 Merge pull request #20 from johndoe6345789/copilot/add-support-for-64gb-ram
Increase physical memory support from 128MB to 64GB with UEFI memory map parsing
2025-12-28 23:24:25 +00:00
copilot-swe-agent[bot]
90ccd7c4db Address code review feedback
- Define EFI_MEMORY_DESCRIPTOR struct for better code clarity
- Use PAGE_SIZE constant instead of magic number 4096
- Add check in freePage() to prevent usedPages underflow

Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 23:22:08 +00:00
copilot-swe-agent[bot]
4051edd198 Parse UEFI memory map to detect actual available RAM
- Implement proper memory detection by parsing UEFI memory map
- Mark only usable memory regions as free (EfiConventionalMemory, Boot/Loader services)
- Initialize bitmap with all pages marked as used, then free only available regions
- Calculate totalPages based on highest usable address from memory map
- Add 128MB fallback if memory map is unavailable
- Now works correctly with any RAM amount from 0 to 64GB

Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 23:20:46 +00:00
copilot-swe-agent[bot]
0093b10138 Add bounds checking to prevent buffer overflow in bitmap access
- Add safety check in allocPage() before accessing pageBitmap
- Add safety check in freePage() before accessing pageBitmap
- Prevents potential buffer overflow when bitmap size limits are reached

Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 23:09:23 +00:00
copilot-swe-agent[bot]
c81d08c2a8 Add support for 64GB of RAM
- Update BITMAP_SIZE from 32768 to 2097152 bytes (2MB bitmap)
- Update totalPages calculation to support 64GB (16M pages)
- Update documentation to reflect 64GB memory support
- Memory manager now supports any amount up to 64GB

Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 23:07:55 +00:00
copilot-swe-agent[bot]
5afd174af1 Initial plan 2025-12-28 23:03:52 +00:00
0e0531bd05 Merge pull request #19 from johndoe6345789/copilot/add-detailed-docstrings
Add comprehensive docstrings for kernel subsystems
2025-12-28 23:00:19 +00:00
copilot-swe-agent[bot]
80f64d151d Fix consistency issues identified in code review
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 22:56:58 +00:00
copilot-swe-agent[bot]
8f1c71311d Add detailed docstrings to all kernel implementation files
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 22:54:05 +00:00
copilot-swe-agent[bot]
2b2dafef02 Add detailed docstrings to bootloader and kernel header files
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 22:48:09 +00:00
copilot-swe-agent[bot]
d0ada8628b Initial plan 2025-12-28 22:40:29 +00:00
51dfa3c471 Merge pull request #18 from johndoe6345789/copilot/add-root-level-functions
Convert MetalOS kernel from C to C++ with class-based architecture and Clang as default compiler
2025-12-28 22:39:55 +00:00
copilot-swe-agent[bot]
2d536b0853 Switch to Clang as default compiler in CI/CD and Docker
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 22:09:59 +00:00
copilot-swe-agent[bot]
a9d2cba0c5 Add Clang compiler support alongside GCC
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 21:59:29 +00:00
copilot-swe-agent[bot]
a0683c0722 Complete C++ conversion - all files now use classes
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 21:45:50 +00:00
copilot-swe-agent[bot]
7bf2b3a059 Convert MetalOS from C to C++ with class-based design
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 21:43:30 +00:00
copilot-swe-agent[bot]
663eaa0f0a Initial plan 2025-12-28 21:27:15 +00:00
b47621bb09 Merge pull request #17 from johndoe6345789/copilot/integrate-conan-in-build-system
Integrate Conan package manager into build systems
2025-12-28 21:26:45 +00:00
copilot-swe-agent[bot]
4a904e8e56 Fix build type handling in Conan integration
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 21:22:58 +00:00
copilot-swe-agent[bot]
69ff1ea819 Add Conan integration test script and enhanced documentation
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 21:19:45 +00:00
copilot-swe-agent[bot]
7ff22dcc57 Integrate Conan into build systems
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 21:16:58 +00:00
copilot-swe-agent[bot]
a26e61b318 Initial plan 2025-12-28 21:10:08 +00:00
8981486787 Merge pull request #16 from johndoe6345789/copilot/remove-makefile-support
Migrate to pure CMake build system by removing all Makefiles
2025-12-28 21:09:30 +00:00
copilot-swe-agent[bot]
0a8ba00c2a Fix documentation issues found in code review
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:59:28 +00:00
copilot-swe-agent[bot]
f4a0b32998 Update BUILD.md and BUILD_SYSTEMS.md to remove Makefile references
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:57:33 +00:00
copilot-swe-agent[bot]
408053665d Remove Makefiles and update documentation for pure CMake build system
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:54:40 +00:00
copilot-swe-agent[bot]
be0439448e Fix CMake build system to work properly
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:51:52 +00:00
copilot-swe-agent[bot]
19f66b8e6b Initial plan 2025-12-28 20:45:41 +00:00
c4095ad9fe Merge pull request #15 from johndoe6345789/copilot/check-build-system-integration
Fix critical GitHub workflow bugs and CMake build configuration
2025-12-28 20:44:44 +00:00
copilot-swe-agent[bot]
08fc016b8b Address code review feedback
- Add comment about GLOB usage in kernel/CMakeLists.txt
- Improve clarity of optional screenshot capture in qemu-test.yml
- All code review comments addressed
- Security scan passed with 0 alerts

Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:42:52 +00:00
copilot-swe-agent[bot]
1d0537c57a Fix CMake kernel build and clarify SMP support in ROADMAP
- Fix kernel/CMakeLists.txt to find source files in src/ directory
- Add NASM support to CMake for assembling .asm files
- Update ROADMAP.md to reflect that SMP is intentionally included
- CMake and Makefile now consistent in handling kernel sources

Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:40:49 +00:00
copilot-swe-agent[bot]
c00732bb18 Fix critical GitHub workflow bugs and update ROADMAP.md
- Fix qemu-test.yml: Remove dd command that was overwriting the disk image
- Fix all workflows: Remove build failure suppressions (|| echo) since Phase 2 is complete
- Add 'set -e' to all multi-line bash scripts to ensure failures stop execution
- Make release workflow fail if required files (metalos.img, bootx64.efi, metalos.bin) are missing
- Update ROADMAP.md to reflect Phase 2 completion and Phase 3 progress
- Update timeline and design decisions to match current implementation

Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:38:05 +00:00
copilot-swe-agent[bot]
7384cf523b Initial plan 2025-12-28 20:30:04 +00:00
403f69c8f1 Merge pull request #14 from johndoe6345789/copilot/update-kernel-folder-files
Implement core kernel modules with multicore/SMP support and CMake/Ninja/Conan build system
2025-12-28 20:28:32 +00:00
2434d078a5 Merge branch 'main' into copilot/update-kernel-folder-files 2025-12-28 20:28:01 +00:00
copilot-swe-agent[bot]
3613efb642 Add basic multicore/SMP support for 6-core/12-thread systems
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:21:54 +00:00
2487989de2 Merge pull request #13 from johndoe6345789/copilot/implement-bootloader
Implement UEFI bootloader with CMake, Ninja, and Conan build support
2025-12-28 20:15:35 +00:00
copilot-swe-agent[bot]
77752e790d Update .gitignore to exclude CodeQL build directory
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:12:17 +00:00
copilot-swe-agent[bot]
6e4a8201c0 Add implementation summary documentation
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:11:54 +00:00
copilot-swe-agent[bot]
193a9786ba Fix code review issues: heap allocation, I/O consistency, PCI scan optimization
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:09:39 +00:00
copilot-swe-agent[bot]
d73713a1bc Add comprehensive implementation summary for Phase 2
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:08:00 +00:00
copilot-swe-agent[bot]
13a0783533 Add memory, PCI, and timer modules to kernel
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:06:55 +00:00
copilot-swe-agent[bot]
aca8afb238 Address code review feedback - improve memory handling and error checking
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:06:18 +00:00
copilot-swe-agent[bot]
05027725c7 Add CMake, Ninja, and Conan build system support
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:03:54 +00:00
copilot-swe-agent[bot]
5c8cf64442 Add CMake, Ninja, and Conan support with kernel modules (GDT, interrupts)
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 20:03:46 +00:00
copilot-swe-agent[bot]
6684776a90 Implement UEFI bootloader with all core functionality
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 19:54:54 +00:00
copilot-swe-agent[bot]
025e58f391 Initial plan 2025-12-28 19:53:25 +00:00
copilot-swe-agent[bot]
82ddea1aa0 Initial plan 2025-12-28 19:48:50 +00:00
86622a5515 Merge pull request #12 from johndoe6345789/copilot/fix-font-8x8-warning
Remove console module entirely
2025-12-28 19:48:08 +00:00
copilot-swe-agent[bot]
bfa3d5b033 Remove console module entirely
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
2025-12-28 19:46:18 +00:00