Le caratteristiche di questo sistema operativo lo rendono adatto ad impieghi
di ogni genere (vedi paragrafo - CHI USA LINUX?). Ecco comunque una lista del-
le principali caratteristiche di Linux (tratta dal Linux Information sheet -
sunsite.unc.edu/pub/Linux/docs/HOWTO/INFO-SHEET ):
multitasking: puo' eseguire piu' programmi nello stesso momento
multiuser: supporta piu' utenti sulla stessa macchina
(senza richiedere licenze aggiuntive!)
multiplatform: e' in grado di girare su differenti piattaforme
(non solo INTEL ma anche Digital Alpha, PowerPC, Sun SPARC, Macintosh e
MIPS)
gira in modalita' protetta su processori 386 o superiori
prevede funzioni di protezione della memoria tra processi in maniera tale da
non consentire ad un solo programma di mandare in crash l'intero sistema
shared copy-on-write pages among executables. Cio' significa che processi
multipli possono utilizzare la stessa memoria per girare. Quando uno di
questi cerca di scrivere nella parte di memoria condivisa, quella pagina
(4KB di memoria) viene copiata da qualche altra parte. Copy-on-write ha due
vantaggi: maggiori prestazioni e riduzione del consumo di memoria.
gestione della memoria virtuale attraverso la paginazione (senza cioe' dover
scaricare l'intero processo) sul disco: su una partizione separata, su un
file all'interno del filesystem, o entrambi, con la possibilita' di
aggiungere al volo - qualora ce ne fosse bisogno - ulteriori aree di swap
(senza dover riavviare la macchina o interrompere il processo).
Un totale di 16 aree di swap da 128MB possono essere utilizzate contem-
poraneamente per un teorico ammontare di 2 GB di spazio di swap
utilizzabile.
un pool di memoria unificato per i programmi e la memoria cache, in maniera
tale che tutta la memoria libera possa essere utilizzata come cache, e
tuttavia la cache possa essere ridotta qualora ci sia bisogno di lanciare un
grosso programma.
possiede librerie statiche e dinamiche (Dynamic Link Libraries - DLL)
esegue il core dump consentendo un analisi dopo il crash. In questo modo e'
possibile utilizzare un debugger non solo quando un programma sta girando,
ma anche dopo che e' andato in crash
compatibile con POSIX, System V e BSD a livello di sorgente
compatibile con SCO, SVR3, SVR4 a livello di eseguibili grazie all'adozione
di un emulatore iBSC2-compatibile.
completa disponibilita' dei sorgenti, compreso l'intero kernel e tutti i
driver, gli strumenti di sviluppo e tutti i programmi utente; inoltre e'
tutto liberamente distribuibile
e' anno-2000 compatibile
POSIX job control
dispone di pseudoterminali (pty's)
emulatore 387 a livello di kernel in maniera tale che nessun programma abbia
bisogno del proprio emulatore... Ogni computer che utilizza Linux appare
come se possedesse un coprocessore matematico. Ovviamente se il vostro
computer possiede gia' una FPU, e' possibile rimuovere l'emulatore dal
kernel guadagnando alcuni Kb di memoria.
supporto per diverse tastiere internazionali (tra cui quella Italiana) ed e'
possibile caricare e scaricare i driver al volo.
consol virtuali multiple: e' possibile effettuare diversi login indipendenti
dalla stessa postazione e passare da una all'altra con una semplice
combinazione di tasti (spesso ALT-F1 - ALT-F2...). E' possibile avere fino a
64 sessioni parallele, contemporanee e indipendenti.
Linux si basa sullo standard POSIX per i sistemi operativi che e' stato
derivato originariamente dalle funzionalita' del mondo UNIX. UNIX e' compatibile
con Linux a livello di chiamate di sistema, il che significa che la maggior
parte dei programmi scritti per altre versioni di UNIX o per Linux possono
essere compilate e funzionare anche sugli altri sistemi con poche o spesso
nessuna modifica. Generalmente Linux gira molto piu' velocemente delle altre
versioni di UNIX sullo stesso hardware. E UNIX presenta l'inconveniente di non
essere gratuito.
Nei paragrafi che seguono cerchero' di mostrare i punti forti e quelli deboli(?)
di Linux paragonandone le caratteristiche con quelle dei principali sistemi
operativi. Il mio intento e' quello di fare un confronto obbiettivo...
tuttavia devo ammettere di essere un fan di Linux... ;)
Invito quindi chiunque abbia serie argomentazioni da portare in difesa di un
sistema operativo (o correzioni su quanto da me scritto) ad inviarmele: prometto
che saranno inserite!
Nota: nelle valutazioni che seguono ho considerato parte dei vari sistemi
operativi tutto cio' che e' scaricabile GRATUITAMENTE. Eventuali resource KIT
disponibili a pagamento non sono stati presi in considerazione.
Le similitudini tra Linux e MS-DOS si limitano al fatto che entrambi hanno un
file system gerarchico. Ma MS-DOS gira solo su processori x86 non e' multi-user
ne' multitasking (per non parlare del multithreading) e non e' gratuito.
Inoltre MS-DOS e' in grado di interagire pochissimo con altri sistemi operativi,
ha grossi limiti per quanto riguarda la gestione della memoria, non comprende
programmi che consentano il networking, ne' utility per lo sviluppo (quali
compilatori e debugger) e nessuna delle altre utility distribuite con Linux
(quali ad esempio una GUI).
Ad ulteriore vantaggio di Linux non si dimentichi che Linux e' in grado di
leggere nativamente una partizione DOS e di eseguire diversi programmi DOS
(grazie al programma DOSEMU). A vantaggio del DOS, va invece detto che
richiede meno memoria per girare (gli bastano 640K mentre Linux vuole almeno
1MB) e funziona anche su processori 286 e inferiori.
Microsoft Windows offre alcune delle capacita' grafiche di Linux e comprende
alcune funzionalita' di networking, ma conserva tutti gli svantaggi di MS_DOS
specialmente quelli relativi alla gestione di memoria. Inoltre ha dei notevoli
problemi di sicurezza e affidabilita' per non parlare del costo da sostenere
per l'acquisto dell'ambiente operativo e di tutti gli applicativi di cui si ha
bisogno. Per finire ricordo che si tratta di un ambiente monoutente e che e'
sbagliato considerarlo un sistema operativo in quanto si basa ancora sul DOS
(pur riuscendo a bypassarne alcune limitazioni).
Grazie all'impiego di emulatori (ampiamente disponibili: Wine, WABI, Willow
Twin Library)
Linux e' in grado di eseguire molti programmi sviluppati per Win 3.x.
La superiorita' di Linux rispetto a NT per quanto riguarda la migliore
capacita' di multitasking/multithreading, la migliore gestione della memoria,
la migliore gestione e sicurezza del filesystem sono ampiamente dimostrate.
Linux offre una maggior possibilita' di configurazione e consente la fusione
di due sistemi in uno o la clonazione di una macchina con poco sforzo.
Linux offre inoltre migliori capacita' di networking, una GUI piu'
versatile e potente e necessita di minori requisiti minimi in termini di
risorse hardware.
Windows NT e' disponibile SOLO su Digital Alpha, e processori X86.
Windows NT e' sul mercato da poco tempo (che significa che e' stato dedicato
molto meno tempo per scoprire la presenza di bug e risolverli), e il prezzo
del solo sistema operativo e' piuttosto elevato.
Un confronto molto completo e preciso tra Linux e NT e' disponibile presso
www.jimmo.com/Debate/intro.html
Un altro confronto (interessante) tra NT4 e Unix (con riferimenti anche a
Linux) e' disponibile presso:
www.kirch.net/unix-nt.html
Perfino il Gartner Group afferma la superiorita' di Unix nei confronti di NT
definendo Unix piu' scalabile, flessibile, robusto e maturo. Afferma, inoltre
che gia' il 14% delle aziende ha iniziato ad usare Linux:
www.gartner.com/public/static/datapro/industry/indnews6.html
Se siete interessati ad un'analisi comparata dei costi all'interno di un
azienda con diversi client e server leggete:
www.cyber.com.au/misc/frsbiz/nt_linux.htm
Altre informazioni su come sostituire NT con Linux sono disponibili presso:
citv.unl.edu/linux/LinuxPresentation.html
Per finire un analisi sulla architettura a 64-bit, SMP, Cluster, etc.
in cui si confrontano molte versioni di UNIX (purtroppo non Linux) e NT4
e' disponibile presso:
www.unix.digital.com/unix/v4/dhbrown/AIX43.htm
Il sistema operativo di Apple per i Macintosh funziona SOLO sui Mac. Inoltre
soffre della mancanza di strumenti di sviluppo, di scarsa interoperabilita'
con altri sistemi operativi, di un multitasking primitivo, assenza di multi-
threading, problemi di sicurezza e affidabilita'. Si tratta inoltre di un
sistema operativo monoutente.
In realta' le ultime versioni del System (8.5.x) hanno risolto molti dei
problemi aumentando le capacita' di multitasking e l'affidabilita' dell'intero
sistema.
Anche le capacita' di networking dei Mac sono migliorate, rendendo questa
piattaforma una buona workstation per grafica e DTP.
Tuttavia proprio per ovviare alle limitazioni del proprio sistema operativo la
Apple ha avviato due progetti legati a tecnologie Un*x: Rapsody e MkLinux.
Rapsody - in cui molti componenti sono derivati da FreeBSD - e' destinato a
diventare il successore del System 8.5.x
MkLinux e' un porting di Linux su piattaforma PowerMac a cui Apple stessa ha
contribuito attivamente.
NOTA: Esiste un emulatore per Linux (Executor - un prodotto commerciale) che
consente di eseguire applicativi Mac anche su quella piattaforma.
Solaris e' un ottimo sistema operativo! E' di gran lunga migliore rispetto a
tutti gli i sistemi citati precedentemente e presenta gran parte delle
caratteristiche tecniche di Linux che ho esposto all'inizio del paragrafo 2.
Gli unici vantaggi a favore di Linux che mi vengono in mente sono:
il costo inferiore
le minori richieste in termini di RAM
la maggiore velocita' di Linux a parita' di hardware
il supporto per molteplici processori (Solaris gira solo su Sparc e Intel)
Gli unici vantaggi di QNX nei confronti di Linux sono le dimensioni e la
estrema efficienza. Chi ha provato il Demodisk di QNX sa che il microkernel
modulare di questo sistema operativo e' grande appena undici kilobytes, e che
la sua velocita' e' superiore a quella di qualsiasi altro prodotto.
Purtroppo QNX e' nato per le industrie come sistema operativo realtime,
quindi i prezzi non sono assolutamente concorrenziali. Il fatto di essere
protetto da una chiave hardware lo rende solo piu' ristretto in termini di
utilizzo.
OS/2 e' stato il primo sistema operativo a diffusione di massa ad avere una
GUI orientata agli oggetti, anticipando nelle edizioni 2.x caratteristiche che
avrebbero acquisito popolarita' con Windows 95. Purtroppo, fin dalle stesse
edizioni 2.x, le sue caratteristiche di efficienza e requisiti minimi
assomigliavano troppo a quelle del futuro Windows 95. Nonostante cio', OS/2 e'
stato per un certo tempo il miglior Windows in circolazione, potendo lanciare
applicazioni Dos, Windows e OS/2. Tale estrema versatilita' gli ha fatto
conquistare una certa popolarita' tra alcuni di quegli hacker che ora
supportano anche Linux.
Non e' questo il luogo adatto a discutere questo sistema gia' abbastanza
controverso: chi usa OS/2 di solito e' convinto di aver fatto la miglior
scelta, per un'infinita' di ragioni, e la difende con forza.
Come Linux e' un altro pianeta rispetto a Windows, cosi' e' anche OS/2 nei
confronti del Dos, grazie anche ad un filesystem HPFS migliore di quello FAT.
In ogni caso - oggi - il problema piu' grosso di questo OS e' che la casa
produttrice (IBM) lo ha abbandonato in favore di NT.
Linux puo' leggere questo filesystem: cio' invita ad installare i due
sistemi sullo stesso elaboratore. I conflitti tra i bootloader dei due OS
si possono risolvere con estrema facilita' con l'aiuto dei documenti HOWTO.
Questo sistema operativo e' in realta' un ibrido tra Windows NT e Windows 3.x.
Presenta quindi gli svantaggi di entrambi e si rivela quindi di gran lunga
inferiore a Linux.
L'unico vantaggio a favore di Win95 che mi viene in mente e' il vastissimo
numero di applicazioni e di giochi esistenti (sia a 16 che a 32-bit).
Il numero di applicazioni per Linux, infatti, pur essendo in forte crescita
e' ancora di gran lunga inferiore!
AvantiIndietroIndice