FreeBSD non è una distro Linux
Spesso mi capita di trovare citato in forum, post o commenti, qualche variante BSD, tipo FreeBSD o OpenBSD, descritti come "distro Linux".
In breve: non è così, BSD e Linux non sono parenti, o se lo sono al massimo sono cugini di secondo grado. E a dirla tutta BSD è il cugino anziano mentre Linux è quello più giovane. Vediamo perché.
BSD o Berkley Software Distribution
BSD sta per Berkley Software Distribution, e identifica un insieme di programmi distribuiti gratuitamente già a partire dalla metà degli anni '70 dall'Università di Berkley in California.
Più precisamente nel 1977 l'università di Berkley pubblicò una serie di patch per il sistema operativo Unix della AT&T, che allora veniva distribuito gratuitamente ma non con una licenza open source come la intendiamo oggi. Al contrario la Berkley Software Distribution fu da subito distribuita con una licenza molto aperta che addirittura permetteva (e permette) di sviluppare prodotti commerciali derivati da BSD. Ne sono un fulgido esempio molti prodotti Apple, come Mac osX e iOS, entrambi originariamente basati su BSD, alcune versione dell'ios della Cisco Systems e altri.
In ogni caso l'università di Berkley, aiutata da una non folta ma molto competente schiera di sviluppatori indipendenti,continuò a curare, sviluppare e distribuite queste patch fino a quando, anche a causa di una disputa legale con la AT&T, nel 1990-91 tutta la Berkley Software Distribution venne riorganizzata e ridistribuita con il nome di FreeBSD 1.0,
Oltre a FreeBSD ci sono altre "distribuzioni" basate sull'originale nucleo della BSD. Ecco una breve lista delle principali:
- FreeBSD: l'originale sistema operativo basato sulla BSD dedicato ai processori derivati dall'Intel x86/88
- NetBSD: sistema operativo basato sulla BSD ma orientato alla massima portabilità verso le architetture hardware
- OpenBSD: originariamente derivato da NetBSD, si distingue per la massima cura dedicata alla sicurezza
- DragonflyBSD: caratterizzato da un'ottimizzazione molto spinta nella gestione del symmetric multiprocessing e del multithreading, offre inoltre alcune interessanti innovazioni come il file system HAMMER e Swapcache
- TrueOS: basato su FreeBSD, è orientato all'utilizzo di BSD come Workstation
- FreeNAS: basato su FreeBSD è specializzato per l'utilizzo come server di rete e NAS
Linux
Per quanto riguarda Linux invece, il suo kernel è stato sviluppato inizialmente nel 1991 da Linus Torvalds, un brillante Finlandese allora studente universitario di informatica come progetto personale. Linus iniziò a distribuire gratuitamente i sorgenti del proprio lavoro attraverso la rete Internet riuscendo a catturare l'attenzione di altri appassionati come lui che iniziarono ad usare ed espandere il nucleo da lui sviluppato. La prima versione stabile del kernel di Linux, la 1.0, fu rilasciata nel 1994 e da allora ha continuato a crescere grazie ad un numero sempre crescente supporter e sviluppatori. Ora facciamo un attimo di chiarezza: per Linux normalmente si intende il kernel del sistema più alcune utility di base. Il suo successo e la sua popolarità hanno fatto si che si sviluppassero tante diverse "distribuzioni". Tutte le distribuzioni condividono il medesimo Kernel Linux ma sono poi "confezionate" in modo diverso in funzione delle priorità e del sentire delle comunità che le supportano. Ecco qui una lista di alcune delle più conosciute:
- Debian
- Slack
- Gentoo
- Arch Linux
- Ubuntu
- Linux Mint
- RedHAT
- Suse
Il rapporto di parentela
In conclusione tra FreeBSD e Linux che rapporto di parentela c'è? Da quanto abbiamo detto risulta evidente che non vi sia in pratica alcuna parentela "di sangue", ossia non vi è nei loro kernel alcuna base di codice comune.
Se questo è certamente vero per quanto riguarda il kernel, è altrettanto vero che entrambe si rifanno allo standard Posix, che caratterizza ogni sistema operativo Unix-like, e in virtù di questo condividono tantissime utility e programmi. Ci sono però tante sottili differenze che spesso mettono in difficoltà lo specialista di un sistema operativo che si trovi ad operare sull'altro e le differenze sono molto più spinte rispetto ad esempio a quelle che si possono trovare tra una distribuzione e l'altra di Linux.
Ci asteniamo infine da qualsiasi giudizio riguardo quale sia migliore o peggiore. Sono entrambi sistemi validissimi, lo prova il fatto che entrambi venono usati e sviluppati da migliaia di persone da diverse decine di anni. Ognuno poi ha le sue vicissitudini e preferenze che lo orientano di più da una parte o dall'altra.
Per quanto mi riguarda considero il sistema operativo per quel che è, ossia uno strumento che quindi deve essere scelto in funzione dal problema che si deve affrontare e risolvere e non per ottusa partigianeria. Detto questo, confesso che sul mio Laptop ho da una decina di anni Linux, mentre sui server, quando posso, installo preferibilmente FreeBSD! :-)
Per chi vuole approfondire, ecco i link ufficiali all'ecosistema BSD: