Alessandro Rubini

Intervista sul Software Libero e i sistemi embedded Linux

Chi auspica la conquista del mondo (informatico) da parte del Software Libero forse non sa che il suo sogno è diventato realtà già da diverso tempo. Merito del cosiddetto mercato industriale, dove il kernel Linux la fa letteralmente da padrone, offrendosi come la soluzione ideale per lo sfruttamento dei processori a 32 bit che danno vita a molti degli apparecchi elettronici che ci troviamo a utilizzare ogni giorno.

Diversi tipi di lettori mp3, cellulari, palmari, navigatori satellitari, videocitofoni funzionano grazie al Software Libero scritto e poi installato direttamente dai dipendenti delle singole aziende. La scelta può sorprendere chi non bazzica gli ambienti della grande produzione, ma risulta perfettamente logica agli occhi di Alessandro Rubini.

Grande competenza nello sviluppo del Software Libero per l’ambito industriale

Grazie alla sua attività di consulente riguardante il kernel Linux, i driver dei dispositivi hardware e i sistemi embedded, l’ingegnere elettronico mantovano – di stanza all’Università Pavia come professore a contratto di sistemi real time presso il corso di laurea in ingegneria informatica – vanta una grande competenza nello studio e nello sviluppo di Software Libero per l’ambito industriale. Competenza che ama condividere con i curiosi e gli appassionati che seguono le sue conferenze in giro per l’Italia. E spesso questi incontri offrono particolari inediti per chi è abituato a sentire parlare di GNU/Linux nell’ambito domestico.

Galeotta fu la scheda di espansione dell’Apple II

“I rapporti interpersonali che si celano dietro alla progettazione delle macchine, e dei sistemi che le fanno funzionare, sono affascinanti. Il mio primo computer è stato un Apple II per il quale, oltre a tanti programmi, avevo anche realizzato una scheda di espansione. Questo primo lavoro mi ha permesso di prendere confidenza con il mondo dell’elettronica. L’incontro con il Software Libero è avvenuto all’inizio degli anni 90. Ero all’ultimo anno dell’Università. Per preparare la tesi, avevo letto alcuni scritti di Richard Stallman e iniziato a utilizzare applicativi GNU come Emacs. Fin da subito mi colpirono la disponibilità e il desiderio di condividere la maggior quantità di informazioni possibile. Attraverso certi modi e strumenti, si intravvedeva l’intelligenza delle persone che li utilizzavano. La prima volta che, tramite la messaggistica delle news, mi trovai a passare un mio programma a un utente americano alle prese con un problema che io avevo già risolto, fu una bella soddisfazione. Capii che Internet e il mondo dell’informatica libera sarebbero stati il mio futuro, insieme alle ricerche su kernel, sistemi operativi e basso livello in generale.”

Chi produce apparecchi elettronici ha bisogno di programmi liberamente utilizzabili e modificabili

Come si spiega il predominio del Software Libero in campo industriale, a fronte delle ancora poco significative percentuali di utilizzo dei sistemi GNU/Linux nell’ambito dei personal computer? “Si spiega in termini estremamente pratici, quelli che garantiscono al Software Libero un futuro roseo anche nel contesto casalingo. Ogni azienda che produce apparecchi elettronici ha bisogno di farli funzionare con programmi liberamente utilizzabili e modificabili. Questo per evitare forti dipendenze dai fornitori, eliminare i costi diretti di licenza e accrescere la propria conoscenza. Inoltre il Software Libero garantisce l’indipendenza negli aspetti tecnici e la manutenibilità di lungo periodo.”

È per questo che spesso gli sviluppatori di Software Libero sono finanziati dalle aziende? “Visti i tempi rapidissimi con cui le tecnologie progrediscono, sarebbe complicato e dispendioso per una singola società sviluppare un codice proprio che stia al passo con l’evolversi delle apparecchiature che deve produrre. Meglio quindi affidarsi al Software Libero, sostenendo il lavoro degli sviluppatori. Da questo si capisce anche quanto sia importante, per chi produce i processori adottati in campo industriale, avere qualcuno che realizzi i driver necessari a renderli utilizzabili.”

Per ogni famiglia ci sono almeno sette processori con sistemi GNU/Linux

Puoi fare un rapido elenco degli ambienti in cui viene usato oggi il Software Libero? “Tra semplici apparecchiature e più complesse infrastrutture elettroniche, il kernel Linux (o anche BSD) si trova davvero in numerosi campi della produzione industriale. I più noti sono quelli legati alle telecomunicazioni, all’intrattenimento, al funzionamento di macchine industriali, al monitoraggio veicolare, alla sensoristica e alla diagnostica. Dai centralini aziendali ai flussi satellitari, dai videocitofoni ai navigatori satellitari, dai registratori di cassa agli scanner a raggi x degli aeroporti, dagli elettrocardiografi alle linee ferroviarie, i campi di utilizzo del Software Libero sono tanti. Si calcola che ogni famiglia, oltre a due computer, abbia in media quattro cellulari, due palmari e un televisore. per cui anche se ha installato Windows sul PC, ha almeno altri sette processori che invece adottano sistemi GNU/Linux.”

I nuovi obiettivi degli sviluppatori: adattabilità e compatibilità

Sembra però che la ricerca di adattabilità e compatibilità del kernel Linux stia andando a discapito della sua proverbiale efficienza e stabilità, pregiudicandone le prestazioni. “Siamo nel 2009 ed è ovvio che ci sia più interesse a sviluppare un kernel che vada bene sulle macchine più potenti piuttosto che sui 386 di vent’anni fa. Devo dire però che, scorrendo il codice, si capisce subito che è di qualità estremamente alta e non dovrebbe dare problemi di prestazioni, per lo meno sulle macchine di un certo peso. È chiaro che una distro di oggi non può funzionare su un 486 perché è troppo pesante, ma la pesantezza secondo me più che dal kernel viene dagli applicativi grafici. Gli effetti visivi aggiunti a OpenOffice, Gimp, KDE sono bellissimi, ma in termini di prestazioni e richiesta di calcolo costano parecchio. Questo rende complicato installare una postazione utente nella stessa macchinetta in cui magari un server web funzionerebbe senza problemi.”

E la tua idea di realizzare un manuale sui driver delle periferiche come è nata? “Era la metà degli anni 90 e da qualche tempo scrivevo articoli sull’argomento sul Linux Journal di Michael Johnson. Un giorno per scherzo gli dissi che avrei potuto farci un libro e lui passò il mio nome a un editore che cercava un autore per quel tipo di pubblicazione. Firmai il contratto sapendo solo il 10% di quello che dovevo scrivere, ma con la certezza che, studiando il kernel, avrei imparato ciò che mi serviva per fare il libro. Ora il volume è giunto alla terza edizione, gli autori sono diventati tre ed è possibile anche scaricarlo gratuitamente da Internet in pdf, oltre che acquistarlo nel formato cartaceo. Sono infatti convinto che la fruizione di un’opera intellettuale non ne pregiudichi il successo commerciale e finora i fatti mi hanno dato ragione, perché il libro continua a vendere nonostante sia distribuito con licenza Creative Commons senza limitazioni.”

Debian, il sistema operativo universale

Tu personalmente che distribuzione usi e perché? “Utilizzo Debian per vari motivi. Il principale è che gira su ogni piattaforma e quindi mi permette di provare tutti gli applicativi anche su processori diversi dai PC. Non condanno comunque chi usa altre distribuzioni perché ci possono essere validi motivi per utilizzare altri sistemi operativi. Molti usano Windows perché costretti a lavorare con programmi come AutoCAD e quindi non hanno scelta. In ogni caso, la disponibilità di tante distribuzioni deve essere vista come una fonte di ricchezza anziché come un problema. L’importante è che siano basate in (buona) parte sul Software Libero, ferma restando la possibilità di scegliere distribuzioni non completamente libere, se necessario. Tutto questo nella speranza che vinca il migliore!”

Alessandro Rubini

Alessandro Rubini è ingegnere elettronico e lavora da 15 anni a Pavia come libero professionista nell’ambito dell’informatica industriale usando esclusivamente Software Libero. È professore a contratto di sistemi real time presso il corso di laurea in ingegneria informatica dell’università cittadina. Inoltre tiene conferenze e consulenze in tutta Italia sulla importanza dell’utilizzo del Software Libero nella pubblica amministrazione e nell’industria.

Insieme a Jonathan Corbet e Greg Kroah-Hartman è autore del libro Linux Device Drivers pubblicato da O’Reilly Media e disponibile liberamente nel formato pdf su Lwn.net. Suoi articoli sono apparsi su numerose riviste specializzate, a cominciare dal prestigioso Linux Journal di Michael Johnson. L’indirizzo del suo sito è ar.linux.it.

Marco Vallarino