EMB 94
EMBEDDED 94 • NOVEMBRE • 2024 37 SERIE OPEN SOURCE: PRIMA PARTE | HARDWARE significa che garantiscano la completa proprietà. In modo analogo, per i prodotti proprietari (closed sour- ce) non bisogna necessariamente sostenere dei costi, mentre è utile sottolineare che esistono differenze fon- damentali tra freeware, open source e proprietario, ol- tre a distinzioni specifiche che variano a seconda che si faccia riferimento a sistemi hardware o software. La differenza principale, che spesso viene ignorata, è relativa alle licenze. Mentre il freeware non dovreb- be avere diritti d’uso o licenze, tutte le soluzioni open source sono soggette a licenza, ed esistono definizioni rigorose sia per il software che per l’hardware. Definizione di software open source La Open Source Initiative (OSI) è un’organizzazio- ne no-profit fondata in California alla fine degli anni 90 che, nell’ambito dell’industria del software, svolge il ruolo di “custode” delle applicazioni open source. L’obiettivo di questa associazione è sviluppare la cul- tura dell’open source e promuovere la consapevolezza dell’importanza del software non proprietario. Per quanto concerne le soluzioni software, che spazia- no dalle applicazioni per personal computer ai proto- colli wireless e ai sistemi operativi real-time, per poter essere classificato come open source il software deve soddisfare 10 requisiti, delineati in maniera rigorosa. In uno di questi requisiti, OSI afferma che il software open source deve essere distribuito liberamente ma, a differenza del software freeware, è soggetto a licenza. In base a quest’ultima, l’intero codice sorgente deve essere disponibile, compilato e consentire un’ulteriore ridistribuzione. Un codice sorgente deliberatamente offuscato (ovvero difficilmente comprensibile) non è ammesso, così come non lo sono le forme intermedie come l’output di un preprocessore (o precompilatore) o di un interprete. Una licenza open source dovrebbe consentire agli sviluppatori di modificare il codice per creare i propri software derivati e di ridistribuire que- ste licenze rispettando gli stessi termini del software originale. Il software open source non può essere de- stinato a un prodotto o a una soluzione hardware spe- cifici e non vi deve essere alcuna discriminazione verso persone, gruppi o campi di applicazione. La tecnologia, inoltre, deve essere neutrale e non imporre limitazioni o restrizioni nei confronti di altri software. Pertanto, anche se provvisto di licenza, tutto il software open source deve essere prontamente disponibile per lo studio, la modifica, la distribuzione o la vendita da parte di chiunque. Sistemi come Apache Web server, l’RTOS Zephyr, Matter e Linux sono tutte soluzioni open source il cui sviluppo è frutto di una combinazio- ne tra utenti e mondo industriale. Definizione di hardware open source La definizione di hardware open source è stata stabilita dalla Open Source Hardware Association (OSHWA) , un’organizzazione che ha visto la luce nel 2012. Essa si basa sulla definizione di OSI per la parte software, alla quale sono stati aggiunti ulteriori requisiti che devono essere soddisfatti per ottenere la certificazione open source. In linea con i requisiti delineati da OSI per il software open source, la Definizione 1.0 [1] di Open Source Hardware (OSHW) richiede che i dati di pro- gettazione CAD siano resi disponibili in formati di file comuni. La definizione di OSHWA delinea condizioni rigorose per tutte le soluzioni hardware il cui funzionamento dipende dal software, come ad esempio i microcontrol- lori (MCU). Per queste soluzioni hardware, che siano o meno embedded, qualsiasi software necessario deve anch’esso essere open source. Oppure, se viene fornito solo software proprietario, l’architettura hardware e le interfacce devono essere documentate in modo che gli sviluppatori possano generare facilmente un software in grado di eseguire tutte le funzionalità essenziali. Qualsiasi hardware conforme a questa definizione deve anche essere reso pubblicamente disponibile, in modo da permettere a chiunque di studiare, modificare o di- stribuire le soluzioni. Esso dovrebbe consentire a tutti di riprodurre l’hardware sulla base degli schemi cir- cuitali del progetto, nonché di ridistribuire il progetto stesso con il medesimo contratto di licenza. La maggior parte delle soluzioni hardware open source è rappresentata dai microcontrollori, dove il valore ag- giunto è rappresentato dagli sviluppi degli utilizzatori. Tra i numerosi esempi si possono annoverare Arduino UNO REV 4 Minima , l’SBC Raspberry Pi5 e la scheda di sviluppo Feather M0 Bluefruit LE di Adafruit . Hardware certificato Per aiutare i progettisti nell’operazione di ricerca di soluzioni open source, OSHWA ha introdotto il pro- gramma di certificazione dell’hardware open source. Obiettivo di questa certificazione è verificare che la de- finizione di hardware open source del progetto sia in linea con quella di open source stabilita dalla OSHWA. Con la certificazione si ottiene il diritto legale di uti- lizzare il logo di certificazione OSHWA, semplificando
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzg4NjYz