How tanay473/microkernel-memory-simulator works
This is an interactive Tkinter simulator for microkernel memory and process behavior. The main workflow is launching the enhanced UI, then creating or selecting processes, allocating code/heap/stack frames, and inspecting live memory and process state; the automated simulator can generate similar events. The README documents the UI, simulator, process manager, and memory manager relationships. UI internals and some display wiring are only partially sampled, so the map keeps those connections broad rather than inferring detailed call sequences.
Main entry points: enhanced_ui.py Enhanced UI · memory_manager.py Memory Manager · process.py Process Manager · simulator.py Event Simulator
Components 15
User Interface
- Application Entry
main.py - Enhanced UI
ui/enhanced_ui.py - Memory Map
ui/enhanced_ui.py - Process Monitor
ui/enhanced_ui.py - Page Table Inspector
ui/enhanced_ui.py - Statistics and Graphs
ui/enhanced_ui.py - Event Log
ui/enhanced_ui.py
Simulation Events
- Event Simulator
core/simulator.py
Process Lifecycle
- Process Manager
core/process.py - Process Lifecycle
core/process.py - Segment Allocation
core/process.py
Memory Management
- Memory Manager
core/memory_manager.py - Frame Allocation
core/memory_manager.py - Page Tables
core/memory_manager.py
Other components
- User
Connections 22
- User → Application Entry: launches
- Application Entry → Enhanced UI: starts
- User → Enhanced UI: operates
- Enhanced UI → Event Simulator: controls
- Enhanced UI → Process Manager: requests processes
- Event Simulator → Process Manager: generates requests
- Event Simulator → Enhanced UI: updates and logs
- Process Manager → Process Lifecycle: creates and terminates
- Process Manager → Segment Allocation: routes requests
- Process Lifecycle → Memory Manager: allocates and frees
- Segment Allocation → Memory Manager: requests frames
- Memory Manager → Frame Allocation: manages
- Memory Manager → Page Tables: records mappings
- Enhanced UI → Memory Map: renders memory
- Enhanced UI → Process Monitor: updates process view
- Enhanced UI → Page Table Inspector: opens mapping view
- Enhanced UI → Statistics and Graphs: updates metrics
- Enhanced UI → Event Log: records events
- Memory Map → Memory Manager: reads frame state
- Process Monitor → Process Manager: reads active processes
- Page Table Inspector → Process Lifecycle: reads page mappings
- Statistics and Graphs → Memory Manager: reads memory state