Phantom OS, prenderà le basi di Genode e sarà pronto entro la fine dell'anno

recentemente Le informazioni sul progetto sono state rilasciate per trasferire la macchina virtuale del sistema operativo Fantasma su cui lavorare l'ambiente del sistema operativo del microkernel Genodo.

L'informazione è stata divulgata in un'intervista in cui si sottolinea che la versione principale di Phantom OS è ora pronto per progetti pilotae la versione basata su Genode sarà pronta per l'uso entro la fine dell'anno. Allo stesso tempo, finora sul sito web del progetto è stato annunciato solo un prototipo concettuale praticabile, la cui stabilità e funzionalità non sono state portate a un livello adatto all'uso industriale, e tra i progetti più vicini c'è la formazione di una versione alpha .

Dall'inizio degli anni 2000 è stato sviluppato Phantom OS come progetto personale di Dmitry Zavalishin e dal 2010 viene trasferito sotto l'ala della società Digital Zone creata da Dmitry.

il sistema è noto per la sua attenzione all'elevata affidabilità e all'uso del concetto "tutto è un oggetto". invece di "tutto è un file", che elimina l'uso dei file a causa della conservazione dello stato della memoria e di un ciclo continuo di lavoro.

Le app in Phantom non vengono terminate, solo messe in pausa e riprese da dove stavano. Tutte le variabili e le strutture dati possono essere archiviate per tutto il tempo necessario all'applicazione e il programmatore non deve prestare particolare attenzione per salvare i dati.

Le applicazioni in Phantom sono compilati in bytecode, che viene eseguito in una macchina virtuale basata su stack, simile alla macchina virtuale Java. La macchina virtuale fornisce la persistenza della memoria dell'applicazione: il sistema scarica periodicamente gli snapshot dello stato della macchina virtuale su un supporto persistente.

Dopo uno spegnimento o un arresto anomalo, il lavoro può continuare dall'ultima istantanea di memoria salvata. Gli snapshot vengono creati in modo asincrono e senza sospendere la macchina virtuale, ma uno snapshot cattura un singolo segmento, come se la macchina virtuale fosse stata arrestata, salvata su disco e riavviata.

Tutte le applicazioni vengono eseguite in uno spazio di indirizzi globale comune., che elimina la necessità di cambi di contesto tra il kernel e le applicazioni e semplifica e velocizza notevolmente la comunicazione tra le applicazioni in esecuzione in una macchina virtuale in grado di scambiare oggetti tramite il passaggio di riferimento.

Migrazione di programmi Java su Phantom è considerato un delle principali modalità di sviluppo delle applicazioni, il che è facilitato dalla somiglianza della macchina virtuale Phantom con la JVM. Oltre al compilatore bytecode per il linguaggio Java, il progetto prevede la realizzazione di compilatori per Python e C#, nonché l'implementazione di un traduttore dal codice intermedio di WebAssembly.

Phantom OS tradizionale, più macchina virtuale, include il proprio kernel con implementazione del thread, un gestore della memoria, un garbage collector, meccanismi di sincronizzazione, un sistema di I/O e driver per lavorare con le apparecchiature, che complicano notevolmente la preparazione del progetto per un uso diffuso.

Separatamente, vengono sviluppati componenti con uno stack di rete, un sottosistema grafico e un'interfaccia utente. Vale la pena notare che il sottosistema grafico e il window manager funzionano a livello di kernel.

Per migliorare la stabilità, la portabilità e la sicurezza del progetto, ha tentato di trasferire la macchina virtuale Phantom per funzionare utilizzando i componenti sistema operativo microkernel aperto Genodo, il cui sviluppo è supervisionato dalla società tedesca Genode Labs. Per coloro che vogliono sperimentare Phantom basato su Genode, è stato preparato uno speciale ambiente di costruzione basato su Docker.

L'uso di Genode consentirà di utilizzare microkernel e controller già collaudati, oltre a portare i driver nello spazio utente (nella loro forma attuale, i driver sono scritti in C ed eseguiti a livello di kernel Phantom).

In particolare sarà possibile utilizzare il microkernel seL4, che ha superato il controllo di affidabilità matematica, confermando che l'implementazione è pienamente conforme alle specifiche specificate nel linguaggio formale. Si sta valutando la preparazione di un test di affidabilità simile per la macchina virtuale Phantom, che consentirà di verificare l'intero ambiente del sistema operativo.

L'area di applicazione principale del porto basato su Genode è lo sviluppo di applicazioni per vari dispositivi industriali e embedded.

Attualmente, un changeset è già stato preparato per la macchina virtuale e sono stati aggiunti hook che funzionano su Genode per i componenti di persistenza del kernel e le principali interfacce di basso livello.

Si noti che la Phantom VM può già funzionare in un ambiente Genode a 64 bit, ma la VM non è stata ancora implementata in modalità persistenza, il sottosistema del driver deve essere rielaborato e i componenti con uno stack di rete e un sottosistema grafico devono essere adattato per Genode.

Se vuoi saperne di più sul lavoro del sistema, puoi consultare i dettagli nel seguente link


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile del trattamento: AB Internet Networks 2008 SL
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.