[inizio] [indice generale] [precedente] [successivo] [indice analitico] [contributi]
Quali sono le differenze fra FreeBSD e Linux?
Sostanzialmente, le origini. Le BSD (OpenBSD, FreeBSD, BSDI tanto per nominarne qualcuna) derivano da un progetto dell'Università di Berkeley durante il quale l'originale Unix di ATnT, a disposizione in forma di sorgente, era stato completamente riscritto allo scopo di avere a disposizione un prodotto alternativo senza pagare altre licenze (allora l'unico Unix era commerciale, e molto caro). Nel fare questo, scoppiò una battaglia legale tra ATnT e Berkeley, vinta di stretta misura da quest'ultima. Da allora il codice BSD (Berkeley Software Distribution), non essendo GNU/GPL ma quasi, ha circolato più o meno liberamente un pò dappertutto. Per questa ragione attualmente ci sono "molte" BSD per le macchine più disparate tra cui anche i personal computer dal 386 in su. In questo, lo si può considerare molto simile a Linux. In realtà le sue origini sono ben più remote e influenzano in parte l'aspetto intuitivo, allora poco considerato in un prodotto destinato a professori e ingegneri. Linux è stato scritto tentando di fondere alcuni concetti base di Minix (il sistema scritto per scopi didattici da Andrew Tanenbaum, allora docente di Linux Torvalds) attorno a un task scheduler del tutto originale, poi aggiungendo tutte le parti esterne al kernel riadattando parecchio codice già esistente. La 'bash', il 'gcc' e quasi tutto il resto, infatti, erano state scritte in origine per un kernel chiamato prima GNU e poi HURD, che sta faticosamente vedendo la luce soltanto ora. BSD ha una gestione dei dischi fissi un pò particolare e ricalca lo Unix originale molto da vicino, esattamente come oggi FreeDos cerca di rendersi uguale ai Dos di MS, IBM, DR. Linux, invece, è un misto di codice "nuovo", concetti base presi di peso da Minix (senza riutilizzarne il codice) e comandi esterni scritti per HURD. C'è da dire, per essere precisi, che Linux ha ormai superato di parecchio Minix quanto a possibilità (Minix non gestisce file o partizioni di swap, ad esempio). Non è raro, comunque, vedere il gcc usato sotto BSD per ricompilare un applicativo Linux: la portabilità delle applicazioni è da sempre un punto di forza dei sistemi della famiglia Unix. Tale possibilità, infatti, esiste anche per Unix commerciali come Solaris oppure HP/UX e può al massimo richiedere alcune modifiche dei sorgenti. La forza dei sistemi aderenti a un certo standard (System V) è che le chiamate di sistema sono sempre le stesse. Pertanto, qualsiasi software che se ne serva senza usare caratteristiche troppo "locali" può essere ricompilato così com'è su elaboratori tecnicamente molto differenti. |
[inizio] [indice generale] [precedente] [successivo] [indice analitico] [contributi]