[REFRACTOR] Transform OpenOS into Modular Research Kernel Architecture (OpenOS-RK)#7
Open
orgito1015 wants to merge 67 commits intoCybersecurity-Enthusiasts-from-42:mainfrom
Open
[REFRACTOR] Transform OpenOS into Modular Research Kernel Architecture (OpenOS-RK)#7orgito1015 wants to merge 67 commits intoCybersecurity-Enthusiasts-from-42:mainfrom
orgito1015 wants to merge 67 commits intoCybersecurity-Enthusiasts-from-42:mainfrom
Conversation
- Create new directory structure (arch/x86, kernel, memory, drivers, include) - Move architecture-specific code to arch/x86/ - Extract console driver from kernel.c - Create common headers (types.h, multiboot.h, ports.h) - Update all header guards to reflect new paths - Create placeholder headers for future modules (heap, vfs, process) - Update Makefile to build from new structure - Kernel successfully builds and links Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
- Add ARCHITECTURE.md with complete architecture documentation - Add REFACTORING.md with migration guide - Update README.md with architecture section and new stats - Document module dependencies and design patterns - Add naming conventions and build system docs - Include benefits analysis and future extensions Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
- Add KERNEL_REFACTORING_SUMMARY.md with executive summary - Document key metrics and verification results - Include benefits achieved and future extensions - Provide comprehensive reference for the refactoring Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Refactor kernel to modular monolithic architecture
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Refactor docs into structured hierarchy with learning materials
[WIP] Implement 5-stage pipelined CPU simulator
…us, performance counters) Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
…cpu-again Add CPU architecture simulator with 5-stage pipeline and performance analysis framework
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Rebrand README from educational to research-oriented focus
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Fix QEMU boot order and unused parameter warning
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Add shell command system with 10 built-in commands
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
… quality Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Implement VFS layer with ramfs and filesystem commands
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
…arsing, MAC formatting Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
…-networking-shell Implement IPC, SMP, GUI, networking, and shell scripting subsystems
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Suppress unused parameter warning in net_socket_recv stub
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
…ion-rust Add Rust driver configuration system (no_std, bare-metal FFI)
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
Add QEMU/GDB debug workflow: `make debug`, `make gdb`, `make qemu-log`
Co-authored-by: orgito1015 <86354243+orgito1015@users.noreply.github.com>
…-binaries Add enhanced ls, cat, and stat coreutils-style shell commands
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refactor: Transform OpenOS into Modular Research-Oriented Kernel Architecture (OpenOS-RK)
Summary
This pull request performs a full architectural refactor of OpenOS,
transitioning it from an educational monolithic kernel prototype into a
structured, research-oriented modular kernel architecture (OpenOS-RK).
The purpose of this refactor is not feature expansion but architectural
formalization. The changes introduce strict layering, a formal memory
stack, kernel object abstraction, scheduler skeleton integration,
slab-based allocation, and research instrumentation hooks. The kernel
remains monolithic, but now follows clear dependency boundaries and
modular separation principles.
This refactor establishes a clean foundation for future experimentation
in scheduling, memory management, isolation models, tracing, and
kernel-level research.
Motivation
The previous architecture of OpenOS had structural limitations including
mixed layers, lack of object abstraction, informal memory
initialization, and no instrumentation capability. This refactor
resolves these issues to establish a research-grade kernel foundation.
Architectural Goals
New Directory Structure
Dependency Rules
Memory Stack Formalization
No dynamic allocation occurs before heap initialization. Slab becomes
the primary object allocation layer.
Slab Allocator Integration
New files:
Purpose:
Kernel Object Model
Benefits:
Scheduler Skeleton Integration
Timer IRQ routes through:
Establishes deterministic execution control and preemption foundation.
Instrumentation and Research Hooks
Used for latency measurement, profiling, and research experiments.
Backward Compatibility
Future Research Roadmap
Conclusion
This refactor establishes a clean architectural baseline and positions
OpenOS as a structured research kernel platform suitable for advanced
systems experimentation and long-term evolution.