Skip to main content
Deutsch  •  English  •  Español  •  Français  •  Italiano  •  Polska  •  Portuguese  •  Български  •  Русский  •  Українська  •  やまと  •  中国  •  فارsi

Architecture Overview: La separazione tra Mente e Braccio

L'architettura moderna di penguins-eggs adotta rigorosamente la filosofia Unix, suddividendo le responsabilità in compartimenti stagni. Il flusso di lavoro si sposta dalla generazione procedurale di script a una vera e propria delega di esecuzione basata sul modello Master-Worker.

L'intero ecosistema si regge su tre ruoli logici, implementati fisicamente in due soli eseguibili principali (coa e oa):


1. I Tre Ruoli Logici​

  1. La Mente (coa in Go): L'orchestratore intelligente. Legge i profili e le configurazioni, analizza il sistema ospite, compila il piano di volo formale (oa-plan.json) e coordina l'intero processo di remastering senza compiere direttamente alterazioni brutali sul sistema.
  2. Il Braccio (oa in C): Il capocantiere vicino al metallo. Riceve il piano dalla Mente ed esegue fisicamente le system calls, gestisce i mount point, i file system OverlayFS e le operazioni a basso livello con la massima stabilità e zero dipendenze esterne.
  3. Il Tecnico Specializzato (ell, integrato come coa ell): Il worker in Go che affianca il Braccio, incaricato di gestire task complessi e strutturati (come la compressione SquashFS o la generazione della struttura ISO) garantendo sicurezza di tipizzazione e tracciabilità rigorosa degli errori.

2. Il Flusso di Esecuzione (Master-Worker)​

Il rapporto tra la Mente (coa) e il Braccio (oa) segue una precisa coreografia di sicurezza ed efficienza:

  • Fase di Pianificazione: L'utente invoca sudo eggs remaster. Il codice in Go (coa) analizza la distribuzione, legge la struttura dei pacchetti e definisce le tappe della cova.
  • Delegazione ed Esecuzione: Quando occorre interagire direttamente con il kernel o manipolare i file system di basso livello, il controllo passa a oa (C), il quale esegue le operazioni in un ambiente sicuro e isolato.
  • Feedback e Chiusura: I sotto-processi specializzati (coa ell) restituiscono l'esito delle lavorazioni pesanti (compressione e assemblaggio finale dell'immagine ibrida), completando il ciclo che trasforma l'habitat in un uovo portatile.

Questa rigida separazione dei poteri garantisce che la logica di controllo rimanga pulita, manutenibile e indipendente dalle specificità del kernel sottostante.