Deprecated: Creation of dynamic property Timber\Site::$pingback is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Site.php on line 180

Deprecated: Creation of dynamic property Timber\User::$name is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/User.php on line 118

Deprecated: Creation of dynamic property Timber\Post::$os_meta is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$has_disclaimer is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_edit_lock is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_edit_last is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$tipologia is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_tipologia is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$attributi is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_attributi is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$in_evidenza_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_in_evidenza_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$inviato_in_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_inviato_in_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$fonte is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_fonte is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$fonte_url is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_fonte_url is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_category is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_blz_affiliation_attributes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_content_type is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_attributes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_speciali is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_content_score is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_focuskeywords is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_keywordsynonyms is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_estimated-reading-time-minutes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_focuskw is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_metadesc is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_linkdex is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_thumbnail_id is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$os_previous_publish_date is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$os_notification_id is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_indexnow_last_ping is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_oembed_a3868b382dcaf38488a9fc6d9852dab6 is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_oembed_time_a3868b382dcaf38488a9fc6d9852dab6 is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_date_gmt is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$comment_status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$ping_status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_password is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_name is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$to_ping is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$pinged is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_modified is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_modified_gmt is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_content_filtered is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$guid is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$menu_order is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_mime_type is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$comment_count is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$filter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71
GNU Hurd fa il salto a 64 bit: perché è una notizia storica per il progetto

GNU Hurd fa il salto a 64 bit: perché è una notizia storica per il progetto

GNU Hurd introduce il supporto x86_64 tramite Guix, portando il microkernel GNU Mach sui sistemi a 64 bit. Restano limiti su driver, SMP e compatibilità software.
GNU Hurd fa il salto a 64 bit: perché è una notizia storica per il progetto

Il kernel GNU Hurd ha compiuto un passo che per decenni è sembrato un traguardo quasi irraggiungibile: gli sviluppatori hanno messo a punto l’esecuzione nativa su architettura a 64 bit x86-64. Il risultato arriva dopo oltre 30 anni di sviluppo discontinuo, avviato nei primi anni ’90 con l’obiettivo di costruire un sistema operativo completamente libero basato su un’architettura a microkernel. L’integrazione nel sistema GNU Guix, una distribuzione software libera che gestisce ambienti e pacchetti in modo riproducibile, rende per la prima volta disponibili immagini installabili a 64 bit (cioè versioni del sistema pronte per essere installate su computer moderni con architettura a 64 bit), consentendo finalmente l’esecuzione su hardware recente e ampliando in modo significativo le possibilità di test e di ricerca.

Il progetto Hurd nasce come alternativa al modello monolitico adottato dal kernel Linux, che nel frattempo è diventato la base dominante dei sistemi GNU/Linux.

La scelta di un design a microkernel basato su GNU Mach ha influenzato profondamente la struttura del sistema: i servizi fondamentali non sono integrati nel kernel ma implementati come server in userspace e comunicano attraverso meccanismi di message passing. Questa impostazione, sebbene promettente in termini di modularità e sicurezza, ha comportato complessità tecniche che hanno rallentato l’evoluzione del progetto rispetto ad altre soluzioni.

Architettura Hurd e limiti storici

Hurd si distingue per la presenza di componenti come i translator e i server di sistema (ad esempio pfinet per lo stack di rete, ext2fs per il filesystem e auth per l’autenticazione), che operano come processi separati sopra GNU Mach.

Il kernel si occupa esclusivamente di gestione dei task, memoria e comunicazione interprocesso. Il modello consente di sostituire o estendere i servizi senza intervenire sul kernel, ma introduce overhead e richiede un’infrastruttura di driver e librerie complessa.

Per molti anni la piattaforma è rimasta confinata all’architettura i586 a 32 bit. L’assenza di supporto a x86-64 ha limitato l’utilizzo su hardware contemporaneo, rendendo difficile testare scenari reali o sviluppare nuovi servizi.

Inoltre, l’assenza di supporto stabile per il multiprocessing simmetrico (SMP) ha impedito l’uso efficiente dei sistemi multi-core, una limitazione significativa per qualunque ambiente moderno.

Porting x86-64: componenti e stato attuale

Il porting a 64 bit è reso disponibile attraverso GNU Guix, che fornisce immagini installabili e strumenti di configurazione per avviare il sistema su hardware x86-64. Il lavoro ha comportato la revisione di numerosi componenti: toolchain di compilazione, librerie di base come glibc, e adattamento delle interfacce Mach per la gestione degli indirizzi a 64 bit.

Le build a 64 bit ampliano lo spazio di indirizzamento della memoria e permettono l’utilizzo di configurazioni hardware contemporanee, ma lo stato del software resta limitato. Solo una frazione ridotta dei pacchetti disponibili su Guix è attualmente compilabile per Hurd, con percentuali inferiori all’1% per il nuovo porting.

In parallelo, distribuzioni come Debian GNU/Hurd raggiungono una compatibilità più ampia, con circa il 75% dell’archivio compilabile, ma senza una piena maturità operativa.

Implicazioni tecniche del passaggio ai 64 bit

L’introduzione di x86-64 non rappresenta solo un aggiornamento architetturale. L’estensione degli indirizzi virtuali e la gestione della memoria su larga scala permettono di eseguire carichi di lavoro prima impraticabili su Hurd, inclusi compilazioni complesse e servizi con elevati requisiti di RAM.

Inoltre, il passaggio ai 64 bit facilita l’integrazione con toolchain moderne e linguaggi contemporanei, inclusi LLVM e Rust, già supportati nella toolchain GNU.

Driver, hardware e limitazioni operative

Nonostante il progresso, Hurd rimane un sistema sperimentale. Il supporto hardware è limitato e dipende in larga parte dal layer di driver NetBSD, noto come rump kernel, utilizzato per fornire driver di rete e storage. Componenti fondamentali come accelerazione grafica, supporto USB avanzato e gestione energetica non raggiungono il livello dei kernel mainstream.

Un altro elemento critico è il supporto SMP. Sebbene i lavori siano in corso, il supporto multi-core non è ancora pienamente stabile. Ciò significa che, anche su hardware x86-64, il sistema non sfrutta completamente le CPU moderne, mantenendo prestazioni inferiori rispetto a Linux o BSD.

Conclusioni

Parlare oggi del kernel Hurd significa tornare all’idea originaria di Richard Stallman: costruire un sistema operativo completamente libero, modulare e controllabile dagli utenti, in cui le funzioni tradizionalmente integrate nel kernel sono distribuite tra processi distinti — i cosiddetti translator e server di sistema —.

L’approccio, concettualmente molto avanzato, mirava a offrire maggiore flessibilità, sicurezza e possibilità di personalizzazione, ma ha incontrato nel tempo difficoltà tecniche e di maturazione che ne hanno rallentato la diffusione su larga scala.

Parallelamente, all’inizio degli anni ’90, il kernel Linux sviluppato da Linus Torvalds si è rivelato una soluzione più immediata e pragmatica: pur seguendo un’architettura monolitica, quindi con molte funzionalità integrate direttamente nel kernel, ha garantito stabilità, prestazioni e una rapida adozione da parte della comunità. Proprio a partire dal 1991 si è così consolidata l’unione tra gli strumenti del progetto GNU e il kernel Linux.

Tale convergenza non rappresenta un tradimento dell’idea originaria, ma piuttosto una soluzione pratica che ha permesso di realizzare concretamente l’obiettivo di un sistema operativo libero e utilizzabile. Hurd resta ancora oggi un laboratorio concettuale e tecnologico di grande valore, mentre GNU/Linux ne incarna la realizzazione operativa più diffusa: due percorsi diversi, nati dalla stessa visione, che continuano a testimoniare come l’innovazione nel software libero possa muoversi tra sperimentazione teorica e applicazione concreta.

Ti consigliamo anche

Link copiato negli appunti