GeOS is a Linux-based operating system distribution and control layer implemented primarily in Python, designed for energy-efficient, intelligent agriculture systems running on Raspberry Pi and other embedded Linux devices.
Rather than replacing the Linux kernel, GeOS functions as a Python-based embedded OS extension layer that operates in user space, integrating tightly with Linux scheduling, telemetry, and process control mechanisms.
Unlike traditional embedded Linux systems with static policies, GeOS introduces a machine-learning-driven control framework that dynamically adapts system behavior based on:
- Agricultural sensor workloads
- System-level telemetry (CPU, memory, load)
- Energy and power constraints
- Environmental and operational context
- Design an energy-aware OS control layer for smart farming systems
- Apply machine learning for adaptive OS-level decision-making
- Simulate realistic agricultural workloads without physical hardware
- Develop a touch-friendly GUI suitable for non-technical users (farmers)
- Prepare the system for future deployment on Raspberry Pi embedded hardware
- Python-based ML control layer integrated with Linux user-space mechanisms
- LightGBM-based policy optimization for energy management
- Realistic workload simulation (sensors, irrigation, analytics, surveillance)
- Telemetry-driven dataset generation for continuous learning
- Modular Linux-based architecture with the kernel left untouched
GeOS
├── core_os # Energy controller, policies, OS state (Python)
├── ml_engine # Policy models, evaluation, and training (Python)
├── workloads # Simulated agricultural workloads
├── telemetry # System and sensor data collection
├── gui # Touch-friendly Qt-based GUI
├── sensors # Sensor simulation layer
├── control # Actuator and override logic
├── datasets # Generated training datasets (git-ignored)
└── logs # Runtime logs (git-ignored)
- Linux OS (tested on Ubuntu via WSL; target: Raspberry Pi OS)
- Python 3.10 or higher
- PySide6 (GUI framework)
- scikit-learn
- lightgbm
- psutil
python3 -m core_os.energy_controllerpython3 workloads/workload_manager.pypython3 telemetry/collector.pypython3 -m gui.appGeOS is primarily targeting embedded Linux deployments (Raspberry Pi-class devices). Current packaging work is split into:
- Short-term demo path (laptop USB boot): a Debian live ISO is produced for faculty/demo boot sessions on x86_64 laptops. This is treated as a demo artifact, not the long-term distro strategy.
- Long-term production path (embedded): a Yocto-based image pipeline targeting Raspberry Pi and other embedded boards.
- The demo ISO should be published as a GitHub Release asset (do not commit ISOs into git).
- After downloading, verify integrity:
sha256sum binary.iso- Yocto will become the canonical way to generate reproducible embedded images and board-specific artifacts (BSP layers, image recipes, update strategy).
- Raspberry Pi is the first target board for end-to-end embedded validation.
GeOS now uses a LightGBM-based policy model with rolling telemetry features.
python3 -m ml_engine.dataset_builderpython3 -m ml_engine.train_policy_modelThis refreshes the active LightGBM artifact, writes calibrated-confidence metadata, and stores a versioned copy under ml_engine/model_registry/.
python3 -m ml_engine.tune_lightgbmThis writes the best found parameters to ml_engine/lightgbm_params.json. Subsequent training and benchmarking reuse that parameter file automatically.
python3 -m ml_engine.evaluate_policiespython3 -m ml_engine.rolling_backtestThis evaluates the current LightGBM parameter set across multiple expanding time windows.
python3 -m ml_engine.benchmark_modelspython3 -m ml_engine.feature_importancepython3 -m ml_engine.explainability_reportThis writes class-level and example local LightGBM contribution summaries to ml_engine/explainability_report.json.
GEOS_DISABLE_AUTO_TRAINER=1 python3 -m core_os.energy_controller- Approximately 70% implementation complete
- Core OS logic and ML pipeline implemented; GUI is in-progress
- Kernel-level integration planned for a future phase
- Yocto + Raspberry Pi deployment scheduled in the next development phase
MIT License (temporary)
Ari
Computer Science and Engineering
Focus: Systems Engineering, Embedded Linux, ML-Driven OS Design