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.