Red Hot Cyber
Sicurezza Informatica, Notizie su Cybercrime, Analisi Vulnerabilità e Intelligenza Artificiale
Il pinguino di linux, Tux, tiene in mano il logo di rust sorridendo. sullo sfondo del codice sorgente.

Linux 0.1 è deprecato da anni, ma perché qualcuno lo sta riscrivendo in Rust?

20 Luglio 2026 13:12
In sintesi

Uno studente cinese, noto con lo pseudonimo Poseidon, ha riscritto il kernel Linux 0.11 in Rust, creando linux-0.11-rs. Il progetto, riproduce le funzionalità del kernel rilasciato nel 1991 e si avvia su un emulatore i386, supportando file system Minix v1 e dischi rigidi ATA.

Uno studente cinese ha riscritto una prima versione di Linux in Rust. Il progetto si chiama linux-0.11-rs e ripete le funzionalità del kernel Linux 0.11, rilasciato alla fine del 1991. Il nuovo sistema si avvia su un emulatore di computer con processore i386, avvia una shell di comandi e consente di lavorare con file e programmi di base.

L’autore del progetto utilizza lo pseudonimo Poseidon e studia all’Università di aviazione e astronautica di Pechino. Non ha tradotto il codice sorgente di Linux dal C riga per riga, ma ha riscritto il sistema, preservando i principi di base del vecchio kernel.

Ecco perché linux-0.11-rs non può essere definito un fork del moderno Linux. Al progetto mancano un kernel attuale, driver per l’hardware attuale e decenni di modifiche accumulate dall’inizio degli anni ’90. Si basa sulla versione 0.11, apparsa pochi mesi dopo il primo rilascio pubblico di Linux.

Advertising

Linus Torvalds pubblicò Linux 0.11 l’8 dicembre 1991. Nel messaggio di accompagnamento, aveva scritto che la versione ha ricevuto molte correzioni e ha funzionato stabilmente, almeno sul suo computer. Il sistema si avviava da floppy disk, supportava dischi rigidi, il file system Minix ed eseguiva una shell di comandi con diritti di superutente.

A quel tempo, Linux era ancora un piccolo progetto sperimentale per computer basati su Intel 386. Non disponeva di interfacce grafiche moderne, servizi di rete o ampio supporto hardware. Tuttavia, la versione 0.11 rendeva già possibile installare il sistema su un disco rigido, creare un file system, montare partizioni ed eseguire programmi utente.

La nuova implementazione conserva molte delle funzionalità dell’originale. Il kernel gestisce processi, memoria virtuale, supporta il file system Minix v1, dischi rigidi ATA, output di testo tramite VGA, tastiera PS/2, console seriale e l’intero set di chiamate di sistema Linux 0.11. L’unico componente importante che l’autore non ha deliberatamente spostato è stato il lavoro con i dischi rigidi.

La versione di Rust si è rivelata notevolmente più grande del kernel originale. L’analizzatore automatico stima che l’intero repository contenga circa 47mila righe di codice. Circa 15mila sono direttamente correlati al kernel e il resto include librerie, strumenti di creazione e programmi eseguiti all’interno del sistema.

Le dimensioni sono cresciute non solo grazie alle funzionalità di Rust. L’autore non si è limitato al kernel stesso e ha aggiunto un ambiente utente completo. Dopo l’avvio, il sistema avvia il processo init, apre una shell di comandi e fornisce dozzine di utilità familiari per lavorare con file, directory e testo.

Advertising

Il repository contiene più di 80 programmi che assomigliano alle utilità Unix standard. Questi includono comandi per sfogliare directory, copiare ed eliminare file, elaborare testo e gestire processi. L’autore ha anche scritto la propria shell con pipeline, variabili, condizioni, loop, funzioni, sostituzione di comandi, cronologia e completamento con schede.

È stata preparata una libreria separata per i programmi utente, strutturata in modo simile alla libreria Rust standard. Grazie ad esso, le applicazioni possono accedere ai file, all’ambiente, ai processi e al tempo attraverso interfacce familiari agli sviluppatori, invece di chiamare direttamente le funzioni del sistema kernel.

Il sistema non è progettato per un vero computer, ma per l’emulatore QEMU. Riproduce il funzionamento del vecchio processore i386 a 32 bit e dell’hardware compatibile. Dopo l’assemblaggio, l’utente riceve un’immagine del disco di avvio che può essere avviata con un comando.

L’autore non nasconde la natura didattica dell’opera. Nella descrizione del repository fa riferimento al codice sorgente di Linux 0.11 e al progetto educativo rCore dedicato alla creazione di sistemi operativi su Rust. In futuro, Poseidon prevede di preparare un manuale dettagliato con il quale il sistema potrà essere assemblato da zero.

Rust non è stato scelto per caso. Il linguaggio consente il controllo della memoria quasi con la stessa precisione del C, ma controlla molte operazioni potenzialmente pericolose in fase di compilazione. Il sistema dei tipi aiuta a prevenire l’accesso alla memoria già liberata, l’uso di riferimenti non validi e la modifica simultanea degli stessi dati.


📢 Resta aggiornatoTi è piaciuto questo articolo? Rimani sempre informato seguendoci su 🔔 Google News.
Ne stiamo anche discutendo sui nostri social: 💼 LinkedIn, 📘 Facebook e 📸 Instagram.
Hai una notizia o un approfondimento da segnalarci? ✉️ Scrivici


Luigi Zullo 300x300
Ricercatore di sicurezza informatica con esperienza nell’analisi delle vulnerabilità, nella mitigazione del rischio cyber, nelle attività di red teaming ed ethical hacking e nella protezione di sistemi complessi. Specializzato in penetration testing e Threat Intelligence, contribuisce al rafforzamento della resilienza digitale di infrastrutture e reti aziendali.
Aree di competenza: Penetration Testing, Threat Intelligence, Red Teaming, Vulnerability Assessment, Incident Response