Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 564

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
 <TITLE>The Linux Linmodem-HOWTO   : Setup generale e moduli del kernel</TITLE>
 <LINK HREF="Linmodem-HOWTO-4.html" REL=next>
 <LINK HREF="Linmodem-HOWTO-2.html" REL=previous>
 <LINK HREF="Linmodem-HOWTO.html#toc3" REL=contents>
</HEAD>
<BODY>
<A HREF="Linmodem-HOWTO-4.html">Avanti</A>
<A HREF="Linmodem-HOWTO-2.html">Indietro</A>
<A HREF="Linmodem-HOWTO.html#toc3">Indice</A>
<HR>
<H2><A NAME="s3">3. Setup generale e moduli del kernel</A></H2>

<P>
<P>
<H2><A NAME="ss3.1">3.1 Supporto dei moduli del kernel </A>
</H2>

<P>Tutti i kernel drivers qui elencati sono rilasciati come moduli del kernel, quindi dovete essere sicuri di avere un kernel che supporti i moduli. Inoltre, bisogna attivare il supporto per la "module version", al fine di adiuvare l'utilizzo di kernel e moduli che non siano della stessa versione, come verr&agrave; descritto pi&ugrave; sotto. 
Se utilizzate un kernel di una distribuzione di Linux ragionevolmente recente, molto probabilmente tale supporto dei moduli &egrave; gi&agrave; attivato. Se compilate il kernel da voi, allora gi&agrave; dovreste sapere come attivarne il supporto moduli, tramite il
<A HREF="http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html">Kernel HOWTO</A>.  
Ad ogni buon conto, potete sempre controllare che le seguenti righe siano presenti nel vostro file di configurazione del kernel (che di solito &egrave; situato sotto <CODE>/usr/src/linux</CODE>):
<PRE>
CONFIG_MODULES=y
CONFIG_MODVERSIONS=y
</PRE>
<P>
<P>
<H2><A NAME="ss3.2">3.2 ISA Plug-n-Play</A>
</H2>

<P>Se possedete un modem ISA Plug-n-Play dovrete verosimilmente avere isapnptools installato per allocare le risorse per la scheda modem.
Per fare ci&ograve;, oltre ad avere installato isapnptools, &egrave; necessario avere una linea per il modem nel file <CODE>/etc/isapnp.conf</CODE>. Leggete le pagine di manuale ed il  
<A HREF="http://www.linuxdoc.org/HOWTO/Plug-and-Play-HOWTO.html">Plug-and-Play-HOWTO</A>, ma se non avete altri dispositivi ISA che vi interessano, fondamentalmente tutto quello da fare &egrave;:
<OL>
<LI> Configurate, se possibile, il vostro BIOS come "Non-PNP OS."</LI>
<LI> Come root, eseguite <CODE>pnpdump</CODE> per generare un prototipo di file isapnp.conf basato sulle schede testate e sulle risorse attualmente utilizzate dal vostro sistema.</LI>
<LI> Cercate l'output del modem e decommentate le linee corrispondenti all'IRQ (altrimenti inutilizzato) che desiderate utilizzare per il modem. Per esempio, il file <CODE>isapnp.conf</CODE> di Sean per un Thinkpad i1411 equipaggiato con un modem Lucent LT comprende:
<P>
<PRE>
(CONFIGURE ACRd119/1 (LD 0                   
  (INT 0 (IRQ 11 (MODE +E)))                   
  (IO 1 (SIZE 8) (BASE 0x0100) (CHECK))       
  (NAME "ACRd119/1[0]{LT Win Modem        }") 
# (ACT Y)                                    
))                                           
</PRE>

Stranamente, almeno in questo caso, &egrave; stato necessario lasciare commentata la linea  <CODE>#(ACT Y)</CODE>. Se per voi non funziona in questo modo, provate l'altro.
</LI>
<LI> Copiate il file in <CODE>/etc/isapnp.conf</CODE></LI>
<LI> Fate il reboot. Al boot dovrebbe apparire un messaggio tipo 'Initializing
ISA PNP devices...OK'. Se ci&ograve; non succede, avete probabilmente scelto una configurazione IRQ/DMA che &egrave; gi&agrave; utilizzata; provate un'altra delle opzioni fornite dall'output di <CODE>pnpdump</CODE>.
(Notate che probabilmente il reboot non &egrave; necessario se eseguite <CODE>isapnp</CODE>
con le giuste opzioni. Comunque &egrave; pi&ugrave; semplice per l'utente inesperto fare un reboot.</LI>
</OL>
<P>
<P>
<H2><A NAME="ss3.3">3.3 Modems PCI</A>
</H2>

<P>   
Se desiderate maggiori notizie sul vostro modem PCI di quelle fornite da <CODE>cat /proc/pci</CODE> possono essere preziose le utilit&agrave; contenute nel pacchetto 
<CODE>pciutils</CODE> quali <CODE>scanpci</CODE> e <CODE>lspci</CODE>.
In particolare, <CODE>lspci -vv</CODE> offre un notevole numero di informazioni, utili e preziose.
<P>
<P>
<H2><A NAME="ss3.4">3.4 Strumenti per i moduli </A>
</H2>

<P>I comandi seguenti sono utili quando si ha a che fare con i moduli. Molti richiedono i privilegi di root. Consultate le pagine di manuale (p.es., <CODE>man insmod</CODE>) per informazioni pi&ugrave; dettagliate su questi comandi.
<P>
<H3>insmod -f</H3>

<P>Un modulo con una versione corrispondente al kernel dovrebbe essere inserito con il comando <CODE>modprobe</CODE> <EM>nome_modulo</EM>; <CODE>modprobe</CODE> tenter&agrave; di inserire ogni altro modulo dal quale detto modulo dipenda (come determinato da <CODE>depmod</CODE>, descritto sotto). 
<P>Un singolo modulo pu&ograve; essere inserito (senza i moduli da cui dipende) con il comando
<CODE>insmod</CODE> <EM>nome_del_modulo</EM>. 
Qualora il modulo fosse stato compilato con un kernel differente da quello corrente,<CODE>insmod</CODE> segnalerebbe la mancata corrispondenza delle versioni e rifiuterebbe di caricare il modulo. 
Si pu&ograve;, comunque, passare un'opzione per forzare il caricamento del modulo nonostante la mancata corrispondenza:
<CODE>insmod -f</CODE> <EM>nome_del_modulo</EM>. Se il modulo utilizza un'interfaccia per il kernel che non cambia sostanzialmente con il cambiare della versione, il modulo verr&agrave; comunque inserito, e potr&agrave; essere pi&ugrave; o meno funzionale.  
<P>E' questo il caso, per esempio, del modulo per il modem ESS <CODE>esscom.o</CODE> che, nonostante sia compilato sotto la versione 2.2.12, pu&ograve; essere forzatamente inserito con kernel successivi, e funzionare in maniera pi&ugrave; o meno estesa fino alla versione 2.2.14 senza ulteriori modifiche; oltre la versione 2.2.15, &egrave; invece richiesto il patch per <CODE>tty.h</CODE> descritto oltre. L'inserimento forzato fallisce comunque con i kernels delle serie 2.4.
<P>
<P>
<H3>rmmod</H3>

<P>Si pu&ograve; scaricare un modulo (rimuoverlo dal kernel) dopo l'uso dando il comando <CODE>rmmod</CODE>.
<P>
<P>
<H3>depmod</H3>

<P>Il comando <CODE>depmod</CODE> analizza le dipendenze dei moduli.
Si pu&ograve; testare la compatibilit&agrave; di un modulo precompilato con il kernel corrente con un comando quale:
<PRE>
   depmod -e ltmodem.o
</PRE>

Nell'esempio specifico di ltmodem.o compilato con un kernel 2.2.12 che gira sotto 2.2.17, le informazioni fornite includono:
<UL>
<LI> depmod: *** Unresolved symbols in ltmodem.o</LI>
<LI> depmod:    bh_mask</LI>
<LI> depmod:    schedule_timeout</LI>
<LI> depmod:    request_region</LI>
<LI> depmod:    pcibios_read_co</LI>
<LI>  e molte altre.</LI>
</UL>

Utilizzare un modulo con simboli irrisolti (unresolved symbols) pu&ograve; essere rischioso, come descritto sotto.
<P>
<P>
<HR>
<A HREF="Linmodem-HOWTO-4.html">Avanti</A>
<A HREF="Linmodem-HOWTO-2.html">Indietro</A>
<A HREF="Linmodem-HOWTO.html#toc3">Indice</A>
</BODY>
</HTML>