Linux Information Sheet
Michael K. Johnson <
[email protected]>
v4.14, 1 settembre 1998
Questo documento fornisce semplici informazioni sul sistema operativo
Linux, inclusa una introduzione a Linux, una lista di caratteristiche,
requisiti hardware e risorse. Questo documento � stato tradotto da
Giovanni Bortolozzo, <
[email protected]>.
1. Introduzione a Linux
Linux � una reimplementazione completamente gratuita delle specifiche
POSIX, con estensioni SYSV e BSD (il che significa che sembra proprio
come Unix, ma non � derivato dallo stesso codice di partenza),
disponibile sia come codice sorgente sia in formato binario. Il suo
copyright � posseduto da Linus Torvalds <
[email protected]> e da
altri collaboratori, ed � liberamente distribuibile nei termini della
GNU General Public License (GPL). Una copia della GPL � inclusa nei
sorgenti di Linux; � possibile ottenerne una copia anche da
<
ftp://prep.ai.mit.edu/pub/gnu/COPYING>.
Linux, di per s�, � solo il kernel del sistema operativo, la parte che
controlla l'hardware, gestisce i file, suddivide i processi e cos�
via. Esistono diverse combinazioni di Linux con insiemi di utilit� e
applicazioni per formare un sistema operativo completo. Ognuna di
queste combinazioni � detta una distribuzione di Linux. La parola
Linux, sebbene in senso stretto si riferisca specificamente al kernel,
� largamente e correttamente usata per riferirsi all'intero sistema
operativo costruito attorno al kernel Linux. Per un elenco e una breve
descrizione delle diverse distribuzioni, si veda
<
http://sunsite.unc.edu/LDP/HOWTO/Distribution-HOWTO.html>. Nessuna
di queste distribuzioni � il ``Linux ufficiale''.
Linux non � di pubblico dominio, non � nemmeno ``shareware''. � un
software ``libero'', comunemente chiamato freeware o Open Source
Software[tm] (si veda <
http://www.opensource.org>), e si possono
distribuire o venderne copie, ma si devono includerne i sorgenti o
renderli disponibili nello stesso modo con il quale si distribuiscono
o si vendono gli eseguibili. Se si distribuisce una qualsiasi
modifica, si � obbligati per legge a distribuire i sorgenti di queste
modifiche. Si veda la GNU General Public License per i dettagli.
Linux � ancora libero, come nella versione 2.0, e continuer� a
esserlo. La natura del copyright GNU, a cui Linux � soggetto,
renderebbe illegale il fatto che non sia pi� libero. Notare che: la
parte `libera' implica l'accesso ai sorgenti indipendentemente
dall'aspetto monetario; � perfettamente legale far pagare denaro per
la distribuzione di Linux, a patto che venga distribuito anche il
codice sorgente. Questa � una generalizzazione; per aspetti pi�
accurati, leggere la GPL.
Linux gira su macchine 386/486/Pentium con bus ISA, EISA, PCI e VLB.
MCA (bus della IBM) non � attualmente ben supportato, sebbene nella
nuova versione in fase di sviluppo, la 2.1.x, il supporto sia stato
inserito. Se siete interessati, guardate
<
http://glycerine.itsmm.uni.edu/mca>.
� in corso il port per diverse piattaforme Motorola 680x0 (attualmente
usate in alcuni Amiga, Atari e macchine VME), che ora funziona
abbastanza bene. Richiede un 68020 con MMU, un 68030, un 68040 o un
68060 e richiede anche l'FPU. Per ora il supporto di rete e X non
funzionano. Si veda <news:comp.os.linux.m68k>.
Linux funziona bene sulle CPU Alpha della DEC, supportando attualmente
le piattaforme ``Jensen'', ``NoName'', ``Cabriolet'', ``Universal
Desktop Box'' (meglio conosciuta come Multia). Per altre informazioni,
si veda <
http://www.azstarnet.com/~axplinux/FAQ.html>.
Linux funziona bene su Sun SPARC e viene utilizzato gi� su molte
macchine sun4c, sun4m e sun4u, mentre il supporto per sun4 � in fase
di sviluppo. Red Hat Linux � (alla scrittura di questo testo) la sola
distribuzione disponibile per SPARC; si veda
<
http://www.redhat.com/support/docs/rhl-sparc/>.
Linux � in attiva fase di port per architetture PowerPC, incluse le
macchine PowerMac (Nubus e PCI), Motorola, IBM e Be. Si veda
<
http://www.cs.nmt.edu/~linuxppc/> e <
http://www.linuxppc.org/>.
Port su altre macchine, tra cui MIPS (si veda
<
http://linus.linux.sgi.com> e <
http://lena.fnet.fr/>) e ARM, sono in
corso e stanno mostrando dei progressi. Non trattenete il fiato, ma se
siete interessati e capaci di contribuire, potete trovare facilmente
altri sviluppatori che vorrebbero lavorare con voi.
Linux non � pi� considerato in beta test da quando � stata rilasciata
la versione 1.0 il 14 marzo 1994. C'erano ancora bug nel sistema, e
nuovi bug salteranno fuori e saranno risolti col passare del tempo.
Siccome Linux segue il ``modello a sviluppo aperto'', tutte le nuove
versioni sono rilasciate al pubblico anche se non sono considerate
``prodotti di qualit�''. Comunque, per aiutare la gente a capire se
sta prelevando una versione stabile o no, � stato adottato il seguente
schema: le versioni n.x.y, dove x � un numero pari, sono le versioni
stabili, e come vengono risolti bug viene incrementato y. Cos� dalla
versione 1.2.2 alla 1.2.3 ci fu la correzione di alcuni bug e non
l'aggiunta di nuove caratteristiche. Le versioni n.x.y, dove x � un
numero dispari, sono di qualit� beta per soli sviluppatori, e possono
quindi essere instabili e cadere (crash), ma hanno nuove
caratteristiche aggiuntive. Non appena il kernel attualmente in
sviluppo diviene stabile, verr� ``congelato'' in uno nuovo kernel
``stabile'', e lo sviluppo continuer� con una nuova versione del
kernel. Si noti che la maggior parte dei rilasci del kernel Linux,
beta o meno, sono relativamente robuste; in questo contesto
``stabile'' significa che ``cambia lentamente'' oltre a ``robusto''.
La versione stabile attuale � la 2.0.35 (questa continua a cambiare a
mano a mano che vengono aggiunti nuovi supporti hardware e corretti
bug), ed � partito lo sviluppo dei kernel sperimentali 2.1.x. I
sorgenti del kernel Linux contengono un file, Documentation/Changes,
che spiega i cambiamenti di cui si deve essere consci quando si
aggiorna la versione del kernel. Comunque, la stragrande maggioranza
degli utenti di Linux semplicemente aggiornano periodicamente la loro
distribuzione per avere una nuova versione del kernel.
Molte versioni di Linux, beta o no, sono abbastanza stabili e si
possono usare se fanno quel che vi serve. Un sito ha utilizzato un
computer con la versione 0.97p1 (rilasciata nell'estate del 1992) per
pi� di 136 giorni senza nessun errore o crash (e avrebbe funzionato
ancora pi� a lungo se un operatore sbadato non avesse erroneamente
staccato la spina dell'alimentatore principale...) Altri hanno
segnalato uptime di oltre un anno. Un sito ha ancora un computer che
usa Linux 0.99p15 da oltre 600 giorni.
Una cosa da considerare � che Linux � sviluppato usando un modello
aperto e distribuito, invece di un modello chiuso e centralizzato come
molto altro software. Questo significa che la versione di sviluppo
corrente � sempre pubblica (con un ritardo di una o due settimane) in
modo che tutti possano usarla. Il risultato � che ogni volta una
versione con nuove funzionalit� viene rilasciata, quasi sempre
contiene bug, ma con il rapido sviluppo esistente i bug sono trovati e
corretti velocemente, spesso in ore, in quanto molta gente lavora per
risolverli.
Diversamente, il modello chiuso e centralizzato significa che una sola
persona o un gruppo lavora al progetto, e solo loro rilasciano il
software quando ritengono che funzioni bene. Spesso questo porta a un
lungo intervallo tra le release, una lunga attesa per risolvere i bug
e uno sviluppo lento. Certamente l'ultima release pubblica di tale
software �, a volte, di qualit� superiore, ma la velocit� di sviluppo
� generalmente molto inferiore.
Per una discussione su questi due modelli, si legga ``The Cathedral
and the Bazaar'' a
<
http://sagan.earthspace.net/~esr/writings/cathedral-bazaar/> di Eric
Raymond.
Al 1 settembre 1998, la versione stabile corrente di Linux � 2.0.35, e
quella in fase di sviluppo � 2.1.119.
2. Caratteristiche di Linux
� Multitasking: pi� programmi funzionano contemporaneamente.
� Multiutenza: pi� utenti nella stessa macchina contemporaneamente (e
senza licenze per coppie di utenti!).
� Multipiattaforma: funziona su varie CPU diverse, non solo Intel.
� Multiprocessore: il supporto per SMP � disponibile su piattaforme
Intel e SPARC (ed � in sviluppo il supporto su altre piattaforme),
e Linux viene usato in diverse applicazioni MP loosely-coupled, tra
cui i sistemi Beowulf (si veda <
http://cesdis.gsfc.nasa.gov/linux-
web/beowulf/beowulf.html>) e il supercomputer basato su SPARC
Fujitsu AP1000+.
� Multithreading: ha supporto nativo nel kernel per thread di
controllo multipli e indipendenti all'interno dello stesso spazio
di memoria del processo.
� Funziona in modalit� protetta nel chip 386.
� Protezione della memoria tra processi, in modo che un programma non
possa mandare in crash l'intero sistema.
� Caricamento degli eseguibili a richiesta: Linux legge dal disco
solo le parti di un programma che sono realmente usate.
� Condivisione pagine copy-on-write tra processi. Questo significa
che pi� processi possono usare la stessa memoria per funzionare.
Quando uno tenta di scrivere in quella zona di memoria, quella
pagina (un pezzo di memoria da 4Kb) � copiata in un altro posto.
Copy-on-write ha due vantaggi: incrementa la velocit� e diminuisce
l'uso di memoria.
� Memoria virtuale con paginazione (non fa lo swap di interi
processi) su disco: in una partizione separata o in un file del
filesystem o in entrambi, con la possibilit� di aggiungere nuove
aree durante il normale funzionamento (sono chiamate aree di swap).
Un massimo di 16 di queste aree di swap da 128 Mb (2GB nei kernel
recenti) possono essere usate contemporaneamente, per un totale
teorico di 2 Gb di spazio di swap disponibile. � semplice
aumentarlo, se necessario, cambiando poche linee di codice
sorgente.
� Memoria unificata per programmi utente e cache del disco, in modo
che tutta la memoria possa essere usata per la cache e la cache
possa essere ridotta quando funzionano programmi di grandi
dimensioni.
� Collegamento (link) dinamico delle librerie condivise (DLL), e
naturalmente anche di quelle statiche.
� Pu� creare core per l'analisi post-mortem dei processi, permettendo
l'uso di un debugger su un programma non solo mentre sta
funzionando, ma anche dopo che � terminato in malo modo.
� Compatibile a livello sorgente con POSIX, SYSV e BSD.
� Attraverso un modulo di emulazione conforme a iBCS2, compatibile a
livello di binari con SCO, SVR3 e SVR4.
� Il codice sorgente � disponibile in toto, compreso quello
dell'intero kernel, dei driver, degli strumenti di sviluppo e dei
programmi utente e tutti questi sono pure distribuibili
liberamente. Diversi programmi commerciali vengono forniti per
Linux senza i sorgenti ma tutto quello che � nato libero, compreso
l'intero sistema operativo di base, � tuttora libero.
� Controllo POSIX dei processi.
� Pseudoterminali (pty).
� Emulazione 387 nel kernel in modo che i programmi non abbiano
bisogno di una propria emulazione del coprocessore matematico.
Qualsiasi computer che usa Linux appare possedere un coprocessore
matematico. Naturalmente, se il proprio computer contiene gi� una
FPU, verr� usata questa invece di emularla, e si pu� anche
compilare il proprio kernel togliendo l'emulazione matematica per
guadagnare un po' di memoria.
� Supporto per molte tastiere nazionali o personalizzate, ed �
abbastanza semplice aggiungerne dinamicamente una nuova.
� console virtuali multiple: pi� sessioni in console con login
indipendente ed � possibile passare da una all'altra premendo una
combinazione di tasti (indipendente dall'hardware video). Sono
allocate dinamicamente; se ne possono usare fino a 64.
� Supporto per parecchi filesystem comuni: tra cui minix, Xenix, e
tutti i comuni filesystem System V, ed un proprio filesystem
avanzato che offre filesystem fino a 4 TB, e nomi lunghi fino a 256
caratteri.
� Accesso trasparente alle partizioni MS-DOS (o alle partizioni FAT
di OS/2) tramite un filesystem speciale: non � necessario alcun
comando speciale per usare una partizione MS-DOS, appare come un
normale filesystem Unix (tranne che per quelle simpatiche
restrizioni sui nomi dei file, permessi altro). Le partizioni
compresse di MS-DOS 6 attualmente non funzionano a meno che non si
applichi una patch (dmsdosfs). Il supporto per VFAT (WNT, Windows
95) e FAT-32 � disponibile in Linux 2.0.
� Filesystem speciale chiamato UMSDOS che permette di installare
Linux su un filesystem DOS.
� Supporto in sola lettura di HPFS-2 per OS/2 2.1.
� Supporto per il filesystem HFS (Macintosh) disponibile
separatamente come modulo.
� Filesystem per CD-ROM che legge tutti i formati standard di CD-ROM.
� Supporto di rete TCP/IP, compresi ftp, telnet, NFS, ecc.
� Server Appletalk.
� Client e server Netware.
� Client e server Lan Manager/Windows Native (SMB).
� Molti protocolli di rete: i protocolli di base disponibili nel
l'ultimo kernel in sviluppo includono TCP, IPv4, IPv6, AX.25, X.25,
IPX, DDP (Appletalk), Netrom, e altri. I protocolli di rete stabili
compresi nei kernel stabili attualmente sono TCP, IPv4, IPX, DDP e
AX.25.
3. Requisiti hardware
3.1. Configurazione minima
Quella che segue probabilmente � la pi� piccola configurazione
possibile che permette di far funzionare Linux: 386SX/16, 1 MB di RAM,
un floppy da 1.44 MB o 1.2 MB, una qualsiasi delle schede video
supportate (+ ovviamente tastiera, monitor e cos� via). Questa
dovrebbe permettere di avviare Linux e di provare se funziona o meno
nella macchina, ma non si sar� in grado di fare niente altro di utile.
Si veda <
http://rsphy1.anu.edu.au/~gpg109/mem.html> per altre
configurazioni minime di Linux.
Per poter fare qualcosa, sar� necessario un po' di spazio su un disco
fisso, da 5 a 10 MB dovrebbero essere sufficienti per un'installazione
proprio minima (con solo i comandi pi� importanti e forse una o due
piccole applicazioni, come una programma di terminale). Questa �
ancora una installazione molto ma molto limitata e molto scomoda a
meno che le proprie applicazioni non siano proprio limitate.
Generalmente non � raccomandata per farci niente se non un po' di test
di funzionamento, e naturalmente per essere in grado di vantarsi del
fatto che le risorse richieste sono veramente minime.
3.2. Configurazione usabile
Se si ha intenzione di usare programmi intensi a livello
computazionale, come gcc, X e TeX probabilmente si avr� bisogno di un
processore pi� veloce di un 386SX/16, sebbene anche questo potrebbe
essere sufficiente se si ha pazienza.
In pratica, si avr� bisogno di almeno 4 MB di RAM se non si usa X, e
di 8 MB se lo si usa. Inoltre, se si vogliono avere pi� utenti in
contemporanea, o eseguire contemporaneamente pi� programmi grossi
(compilazioni, per esempio), si avr� bisogno di pi� di 4 MB di
memoria. Funzioner� comunque anche con meno memoria ma user� la
memoria virtuale (usando il disco fisso come una memoria lenta) ma
sar� cos� lento da essere inutilizzabile. Se si usano pi� programmi
contemporaneamente, 16 MB riduranno considerevolmente le operazioni di
swap. Se non si vuole fare swap in maniera apprezzabile durante il
normale carico, 32 MB probabilmente saranno sufficienti. Se si usano
assieme molte applicazioni che usano intensamente la memoria, saranno
necessari 64 MB per evitare un sacco di swap. Naturalmente se si usano
applicazioni fameliche in termini di memoria, bisogner� aggiungerne.
Lo spazio su disco di cui si ha bisogno dipende da quale software si
vuole installare. L'insieme normale di utility Unix, shell e programmi
di amministrazione dovrebbero stare abbondantemente in meno di 10 MB,
con un po' di spazio libero per i file degli utenti. Per un sistema
pi� completo, si prenda Red Hat, Debian, o un'altra distribuzione e si
faccia conto che saranno necessari dai 60 ai 600 MB, a seconda di cosa
si sceglie di installare e di quale distribuzione si prende. Si
aggiunga lo spazio che si vuole riservare per i file degli utenti a
questi totali. Con i prezzi correnti dei dischi fissi, se si sta per
comperare una nuova macchina, non ha senso comperare un disco fisso
troppo piccolo. Se ne prenda almeno uno da 2 GB, preferibilmente 4 GB
o pi�, e si vedr� che non andr� sprecato. Linux gestisce
tranquillamente dischi fissi molto grandi come i recenti e popolari
dischi IDE da 11 GB e SCSI da 18 GB.
Si aggiunga pi� memoria, pi� spazio su disco, un processore pi� veloce
e altro a seconda delle proprie necessit�, desideri e disponibilit�
economiche. In generale, una grossa differenza tra Linux e DOS � che
in Linux l'aggiunta di memoria fa una grande differenza, mentre in DOS
memoria in pi� non fa poi molta differenza. Naturalmente ci� ha a che
fare con il limite dei 640KB, che sotto Linux non esiste.
3.3. Hardware supportato
CPU
Qualsiasi cosa in grado di eseguire programmi in modalit� 386
protetta. Tutti i modelli di 386, 486, Pentium, Pentium Pro,
Pentium II e cloni di questi chip dovrebbero andar bene (i 286 e
inferiori potrebbero un giorno essere supportati da un kernel
pi� piccolo detto ELKS (Embeddable Linux Kernel Subset), ma non
ci si aspetti le stesse caratteristiche). Una versione per CPU
680x0 (con x = 2 con MMU esterna, 3, 4 e 6) che funziona su
Amiga e Atari pu� essere reperita a tsx-11.mit.edu nella
directory 680x0. Sono supportate molte macchine DEC Alpha,
SPARC, e PowerPC. Sono in lavorazione anche i port su
architetture ARM, StrongARM, e MIPS. Maggiori dettagli sono
reperibili da qualche altra parte.
Architetture
Bus PCI, ISA, EISA e VLB. Il supporto per MCA (la maggior parte
dei PS/2 true blue) � incompleto ma sta migliorando (si veda
sopra). I local bus (VLB e PCI) funzionano. Linux � molto pi�
esigente sull'hardware rispetto a DOS, Windows e in pratica
molti altri sistemi operativi. Ci� significa che alcuni
componenti hardware, che potrebbe funzionare se usati con altri
sistemi operativi meno esigenti, potrebbero dare problemi quando
usati con Linux. Linux � un eccellente tester della memoria...
RAM
Fino a 1 GB su Intel; di pi� su piattaforme a 64-bit. Alcuni
(tra cui Linus) hanno notato che aggiungere RAM senza allo
stesso tempo aggiungere anche cache ha estremamente rallentato
le loro macchine, quindi se si aggiunge RAM e si trova che la
propria macchina sia pi� lenta, si provi ad aggiungere ancora
cache. Alcune macchine possono fare il cache solo di una certa
parte della memoria indipendentemente da quanta RAM � installata
(64 MB � la dimensione di cui i chipset pi� popolari possono
fare la cache). Oltre i 64 MB sar� necessario un parametro al
boot con kernel 2.0.35 e precendenti, in quanto il BIOS non pu�
riportare pi� di 64 MB. I recenti kernel 2.1.x e successivi sono
in grado di rilevare tutta la memoria di un sistema.
Dispositivi di immagazzinamento dati
Sono supportati i drive AT generici (controller di HD EIDE, IDE
e a 16 bit con MFM, RLL o ESDI), cos� come lo sono i dischi
fissi e i CD-ROM SCSI con un adattatore SCSI tra quelli
supportati. Sono supportati anche i controller generici XT
(controller a 8 bit con MFM o RLL). Adattatori SCSI supportati:
Advansys, Adaptec 1542, 1522, 1740, e le serie 27xx e 29xx (con
alcune eccezioni), Buslogic MultiMaster e Flashpoint, controller
basati su NCR53c8xx, controller DPT, controller Qlogic ISP e
FAS, Seagate ST-01 and ST-02, la serie Future Domain TMC-88x (o
qualsiasi scheda basata sul chip TMC950) e TMC1660/1680,
Ultrastor 14F, 24F and 34F, Western Digital wd7000 ed altri.
Sono anche supportati i nastri SCSI, QIC-02 e alcuni QIC-80. A
parte i cdrom IDE e SCSI, sono supportati anche parecchi
dispositivi CD-ROM proprietari, tra cui Matsushita/Panasonic,
Mitsumi, Sony, Soundblaster, Toshiba, ATAPI (EIDE), SCSI e
altri. Per i modelli esatti si veda l'Hardware compatibility
HOWTO. N.B. Questi elenchi sono incompleti, e lo saranno sempre.
Chi vende le distribuzioni mantiene generalmente una lista molto
pi� aggiornata.
Video
In modo testo funzionano le VGA, EGA, CGA o Hercules (e
compatibili). Per la grafica e X, c'� il supporto (almeno) per
VGA normale, alcune schede SVGA (molte delle schede basate su
chipset Tseng, Paradise, e alcuni Trident), S3, 8514/A, ATI,
Matrox ed Hercules (Linux usa il server X XFree86, il quale
determina quali schede sono supportate. Una lista completa dei
chipset supportati avrebbe occupato molto pi� di una pagina. Si
veda <
http://www.XFree86.org/>)
Rete
Il supporto Ethernet comprende 3COM 503/509/579/589/595/905 (le
501/505/507 sono supportate ma non raccomandate), AT&T GIS (ne�
NCR) WaveLAN, molte schede basate su WD8390 e su WD80x3,
NE1000/2000 e cloni, AC3200, Apricot 82596, AT1700, ATP,
DE425/434/435/500, D-Link DE-600/620, DEPCA, DE100/101,
DE200/201/202 Turbo, DE210, DE422, Cabletron E2100 (non
raccomandata), Intel EtherExpress (non raccomandata),
EtherExpress Pro, EtherExpress 100, DEC EtherWORKS 3, HP LAN, HP
PCLAN/plus, molte schede basate su AMD LANCE, NI5210, ni6510,
SMC Ultra, DEC 21040 (tulip), Zenith Z-Note ethernet. Tutte le
schede Zircom e tutte le Cabletron diverse dalla E2100 non sono
supportate, a causa nel rifiuto dei costruttori di fornire
gratuitamente informazioni per programmarle.
Il supporto FDDI attualmente comprende le schede DEFxx della
DEC.
Il supporto di rete Point-to-Point comprende PPP, SLIP, CSLIP e
PLIP. Il supporto per il PPP � disponibile sia per dispositivi
asincroni standard come i modem, sia per connessioni sincrone
come ISDN.
� disponibile un supporto limitato per il Token Ring.
Seriali
Molte schede basate su UART 16450 e 16550, tra cui AST Fourport,
Usenet Serial Card II e altre. Le schede intelligenti supportate
comprendono la serie Cyclom della Cyclades (supportata dal
costruttore), la serie Rocketport della Comtrol (supportata dal
costruttore), Stallion (la maggior parte delle schede;
supportate dal costruttore) e Digi (alcune schede; supportate
dal costruttore). � supportato anche un po' di hardware per
ISDN, frame relay e leased line.
Altro hardware
SoundBlaster, ProAudio Spectrum 16, Gravis Ultrasound, molte
altre schede audio, molti (tutti?) tipi di bus mouse (Microsoft,
Logitech, PS/2), ecc.
4. e altro software Un elenco incompleto di programmi portati su
Linux
Sono stati portati su Linux la maggior parte degli strumenti e dei
programmi Unix, tra cui praticamente tutto il software della GNU e
molti client per X da varie fonti. Attualmente, il port � pi�
difficile a dirsi che a farsi, in quanto molti programmi si compilano
direttamente senza modifiche, o solo con modifiche minime, in quanto
Linux segue abbastanza fedelmente le direttive POSIX. Non ci sono mai
abbastanza applicazioni per un qualsiasi sistema operativo, ma Linux
sta guadagnando sia in applicazioni per utenti finali che per server.
Si contatti il produttore della propria applicazione Unix commerciale
preferita e gli si chieda se ne hanno prodotto una versione per Linux.
Ecco una lista incompleta di software che sicuramente funziona sotto
Linux:
Comandi Unix basilari:
ls, tr, sed, awk e cosi via (se ne pensi uno, e probabilmente
Linux ce l'ha).
Strumenti di sviluppo:
gcc, gdb, make, bison, flex, perl, rcs, cvs, prof.
Linguaggi e ambienti:
C, C++, Objective C, Java, Modula-3, Modula-2, Oberon, Ada95,
Pascal, Fortran, ML, scheme, Tcl/tk, Perl, Python, Common Lisp e
molti altri.
Ambienti grafici:
GNOME e KDE (desktop), X11R6 (XFree86 3.x), X11R5 (XFree86 2.x),
MGR.
Editor:
GNU Emacs, XEmacs, MicroEmacs, jove, ez, epoch, elvis (GNU vi),
vim, vile, joe, pico, jed e altri.
Shell:
bash (POSIX sh compatibile), zsh (compresa la modalit� di
compatibilit� ksh) pdksh, tcsh, csh, rc, es, ash (shell
praticamente sh compatibile usata come /bin/sh da BSD) e molte
altre.
Telecomunicazione:
PPP, UUCP, SLIP, CSLIP, insieme completo di strumenti di
comunicazione TCP/IP, kermit, szrz, minicom, pcomm, xcomm, term
(esegue pi� shell, redireziona l'attivit� di rete e permette
l'uso di applicazioni X remote, il tutto su una singola linea
modem), Seyon (programma di comunicazione per X-Window molto
popolare) e sono disponibili diversi pacchetti per fax e voice-
mail (usando ZyXEL e altri modem). Naturalmente, sono supportati
i login remoti via seriale e via rete.
News e mail:
C-news, innd, trn, nn, tin, smail, elm, mh, exmh, pine, mutt,
ecc.
Elaborazione testi:
TeX, groff, doc, ez, LyX, Lout, Linuxdoc-SGML e altri.
Giochi:
Nethack, diversi Mud e giochi per X e moltissimi altri. Se se ne
cerca uno, si veda tra tutti i giochi disponibili a tsx-11 e
sunsite.
Tutti questi programmi (e questi non sono neanche un centesimo di
quanto � disponibile) sono disponibili gratuitamente. Inizia a
diventare largamente disponibile anche moltissimo software
commerciale; si chieda ai produttori del proprio software commerciale
preferito se supportano Linux.
5. Chi usa Linux?
Linux � disponibile liberamente e a nessuno viene richiesto di
registrare le proprie copie a una qualsiasi autorit� centrale, perci�
� difficile sapere quanta gente usa Linux. Diverse aziende vivono solo
vendendo e fornendo supporto per Linux e i newsgroup su Linux sono tra
i pi� letti in Internet, quindi il numero di utenti probabilmente va
espresso in milioni, ma una stima veritiera � difficile da fare. La
miglior ricerca di mercato attuale indica fra i 7.5 e gli 11 milioni
di utenti.
Comunque, un'anima coraggiosa, Harald T. Alvestrand
[email protected], ha deciso di provare a contare gli
utenti di Linux nel modo pi� difficile: uno a uno. Se si vuole essere
annoverati fra gli utenti di Linux, allora si usi il form disponibile
a <
http://counter.li.org/>. In alternativa, si pu� spedire un
messaggio a
[email protected] con uno dei seguenti subject: `I
use Linux at home' (uso Linux a casa), `I use Linux at work' (uso
Linux al lavoro), o `I use Linux at home and at work' (uso Linux a
casa e al lavoro). Saranno accettate anche registrazioni tramite
terzi; si chieda ad Harald per i dettagli.
Harald pubblica mensilmente i suoi conteggi in
<news:comp.os.linux.misc>; sono disponibili anche presso
<
http://counter.li.org/>.
6. Procurarsi Linux
6.1. In FTP Anonimo
Per documentazione su Linux liberamente distribuibile, si veda il sito
del Linux Documentation Project a
<
ftp://sunsite.unc.edu/pub/Linux/docs/LDP/> e
<
http://sunsite.unc.edu/LDP/>
Si rimanga sintonizzati sul newsgroup <news:comp.os.linux.announce>
per ulteriori sviluppi.
Almeno i seguenti siti per ftp anonimo rendono disponibile Linux.
Nome Indirizzo Numerico Directory Linux
============================= ================== ===============
tsx-11.mit.edu 18.172.1.2 /pub/linux
sunsite.unc.edu 152.2.22.81 /pub/Linux
ftp.funet.fi 128.214.248.6 /pub/Linux
net.tamu.edu 128.194.177.1 /pub/linux
ftp.mcc.ac.uk 130.88.203.12 /pub/linux
src.doc.ic.ac.uk 146.169.2.1 /packages/linux
fgb1.fgb.mw.tu-muenchen.de 129.187.200.1 /pub/linux
ftp.informatik.tu-muenchen.de 131.159.0.110 /pub/comp/os/linux
ftp.dfv.rwth-aachen.de 137.226.4.111 /pub/linux
ftp.informatik.rwth-aachen.de 137.226.225.3 /pub/Linux
ftp.Germany.EU.net 192.76.144.75 /pub/os/Linux
ftp.lip6.fr 132.227.77.2 /pub/linux
ftp.uu.net 137.39.1.9 /systems/unix/linux
wuarchive.wustl.edu 128.252.135.4 mirrors/linux
ftp.win.tue.nl 131.155.70.100 /pub/linux
ftp.stack.urc.tue.nl 131.155.2.71 /pub/linux
srawgw.sra.co.jp 133.137.4.3 /pub/os/linux
cair.kaist.ac.kr /pub/Linux
ftp.denet.dk 129.142.6.74 /pub/OS/linux
NCTUCCCA.edu.tw 140.111.1.10 /Operating-Systems/Linux
nic.switch.ch 130.59.1.40 /mirror/linux
sunsite.cnlab-switch.ch 193.5.24.1 /mirror/linux
cnuce_arch.cnr.it 131.114.1.10 /pub/Linux
ftp.monash.edu.au 130.194.11.8 /pub/linux
ftp.dstc.edu.au 130.102.181.31 /pub/linux
ftp.sydutech.usyd.edu.au 129.78.192.2 /pub/linux
tsx-11.mit.edu e fgb1.fgb.mw.tu-muenchen.de sono i siti ufficiali del
GCC per Linux. Alcuni siti fanno il mirror di altri siti. Si invita a
usare il sito a voi pi� vicino (in senso di rete) ogni qualvolta ci�
sia possibile.
Almeno sunsite.unc.edu e ftp.informatik.tu-muenchen.de offrono servizi
di ftpmail. Si invii un messaggio a
[email protected] o
[email protected] per ottenere un aiuto.
Se ci si � persi, si veda
<
http://sunsite.unc.edu/LDP/HOWTO/Distribution-HOWTO.html>, dove sono
elencate diverse distribuzioni. Red Hat Linux e Debian sembrano al
momento essere le distribuzioni pi� popolari, almeno negli USA.
6.2. In CD-ROM
La maggior parte della gente ormai installa Linux da CD-ROM. Le
distribuzioni hanno ormai raggiunto centinaia di MB di software per
Linux, e scaricarsele con un modem a 28.8 o una connesione ISDN
richiede un sacco di tempo.
Ci sono essenzialmente due modi per comperare una distribuzione Linux
su CD-ROM: come parte di un archivio di siti FTP o direttamente dal
produttore. Se si compra un archivio, spesso di avranno diverse
distribuzioni tra cui scegliere, ma solitamente non � incluso il
supporto. Quando si compra una distribuzione direttamente dal
produttore, tipicamente si riceve solo una distribuzione, ma
solitamente si riceve anche qualche forma di supporto, tipicamente
supporto sull'installazione.
6.3. Altri modi per procurarsi Linux
Ci sono molte BBS che hanno file su Linux. Un elenco di queste viene
inviato di tanto in tanto in comp.os.linux.announce. Si chieda ad
amici e a gruppi di utenti, o si ordini una delle distribuzioni
commerciali. Una lista di queste � contenuta nel Linux Distribution
HOWTO, disponibile a <
http://sunsite.unc.edu/LDP/HOWTO/Distribution-
HOWTO.html>, e postato regolarmente nel newsgroup
<news:comp.os.linux.announce>.
7. Stato legale di Linux
Sebbene Linux sia fornito con i sorgenti completi, � un software
soggetto a copyright, non di pubblico dominio. Comunque � disponibile
gratuitamente nei termini della GNU General Public License, anche
detta ``copyleft''. Si veda la GPL per maggiori informazioni. Ognuno
dei programmi che girano sotto Linux ha il proprio copyright, sebbene
molti di questi usino la GPL. X usa il copyright MIT X, e alcune
utility sono sotto il copyright BSD. In qualsiasi caso, tutto il
software nei siti FTP � liberamente distribuibile (altrimenti non
dovrebbe essere l�).
8. Notizie su Linux
Circa quattro anni fa, � stata avviata una rivista mensile chiamata
Linux Journal. Include articoli per qualsiasi livello di conoscenza, e
vuole essere d'aiuto a tutti gli utenti di Linux. Un anno di
abbonamento costa $22 per gli USA, $27 per Canada e Messico, e $32 per
il resto del mondo, pagabili in valuta statunitense. Le richieste di
abbonamento possono essere spedite via email a
[email protected], oppure
via fax allo +1-206-782-7191, o tramite telefono allo +1-206-782-7733,
oppure spedite a Linux Journal, PO Box 85867, Seattle, WA 98145-1867
USA. SSC mette a disposizione una chiave per criptare le proprie mail
in modo da proteggere il proprio numero di carta di credito; si faccia
finger
[email protected] per avere la chiave.
Esistono diversi gruppi Usenet per discussioni su Linux, oltre a
diverse mailing list. Si vedano le Linux FAQ per maggiori infomazioni
sulle mailing list (si dovrebbe essere in grado di trovare le FAQ sia
nei newsgroup sia nei siti FTP).
Il newsgroup <news:comp.os.linux.announce> � un newsgroup moderato
per gli annunci su Linux (nuovi programmi, correzioni di bug, ecc).
Il newsgroup <news:comp.os.linux.answers> � un newsgroup moderato nel
quale vengono inviate le Linux FAQ, i documenti HOWTO e altra
documentazione.
Il newsgroup <news:comp.os.linux.admin> � un newsgroup non moderato
per la discussione dell'amministrazione di sistemi Linux.
Il newsgroup <news:comp.os.linux.development.system> � un newsgroup
non moderato specifico per le discussioni sullo sviluppo del kernel di
Linux. Le sole questioni sullo sviluppo di applicazioni che
dovrebbero essere ivi discusse sono quelle intimamente associate con
il kernel. Tutte le altre questioni sullo sviluppo sono probabilmente
questioni generiche di sviluppo in Unix e dovrebbero invece essere
dirette al gruppo comp.unix, a meno che non siano questioni su
applicazioni veramente specifiche per Linux, nel qual caso dovrebbero
essere dirette a comp.os.linux.development.apps.
Il newsgroup <news:comp.os.linux.development.apps> � un newsgroup non
moderato specifico per le discussioni sullo sviluppo di applicazioni
connesse con Linux. Non � per le discussioni su dove trovare
applicazioni per Linux e nemmeno un forum di discussione su quali
applicazioni piacerebbe vi fossero per Linux.
Il newsgroup <news:comp.os.linux.hardware> � per le domande
specifiche sull'hardware per Linux.
Il newsgroup <news:comp.os.linux.networking> � specifico per lo
sviluppo del supporto di rete in Linux e sulla sua configurazione.
Il newsgroup <news:comp.os.linux.x> � specifico per le questioni
sull'X Window in Linux.
Il newsgroup <news:comp.os.linux.misc> � il rimpiazzo di
comp.os.linux, ed � pensato per qualsiasi discussione che non
appartenga a qualche altro newsgroup.
In generale, non si faccia il post multiplo (``crosspost'') su pi�
newsgroup di Linux. Il solo crosspost che � appropriato � un post
occasionale tra un gruppo non moderato e comp.os.linux.announce. Lo
scopo della divisione del vecchio gruppo comp.os.linux in molti gruppi
� stato quello di ridurre il traffico in ognuno di essi. Chi non
segue questa regola verr� brutalmente ripreso senza nessuna
scusante...
Linux � nel Web all'URL <
http://sunsite.unc.edu/LDP/>
9. Il futuro
Dopo il rilascio di Linux 1.0, il lavoro si � concentrato su diversi
miglioramenti. Linux 1.2 comprendeva incrementi nella velocit� di
accesso al disco, miglioramenti alle TTY, alla memoria virtuale,
supporto per diverse piattaforme, quote su disco e molto altro. Linux
2.0, l'attuale versione stabile, ha ancora altri miglioramenti e nuove
caratteristiche, tra cui incremento delle prestazioni, diversi nuovi
protocolli di rete, una delle pi� veloci implementazioni di TCP/IP al
mondo, e molto, molto altro. Prestazioni ancora migliori, ulteriori
protocolli di rete e pi� driver di dispositivi saranno disponibili con
Linux 2.2.
Anche se sono state scritte pi� di 3/4 milioni di righe di codice nel
kernel, c'� ancora un sacco di codice da scrivere, e ancora altra
documentazione. Si invita a sottoscrivere la mailing list linux-
[email protected] se si vuole contribuire alla documentazione. Si
invii una mail a
[email protected] contenente una unica riga
con la parola ``help'' nel corpo nel messaggio (NON come subject).
10. Questo documento
Questo documento � mantenuto da Michael K. Johnson
<
[email protected]>. Si inviino a me le mail con qualsiasi commento,
anche se piccolo. Non posso fare un buon lavoro di manutenzione di
questo documento senza il vostro aiuto. Una copia pi� o meno
aggiornata di questo documento pu� sempre essere trovata a
<
http://sunsite.unc.edu/LDP/>
Prima traduzione di Michele Dalla Silvestra, <
[email protected]>.
Aggiornamento e traduzioni successive a cura di Giovanni Bortolozzo,
<
[email protected]>. La versione pi� aggiornata di questa
traduzione pu� sempre essere trovata a
<
http://www.pluto.linux.it/ildp/>.
11. Questioni legali
I marchi sono registrati dai rispettivi possessori. Non si da alcuna
garanzia sulle informazioni contenute in questo documento. L'uso e la
distribuzione sono a proprio rischio. Il contenuto di questo
documento � di dominio pubblico ma, se lo si usa, si invita a essere
corretti e a citarlo fra le proprie fonti.