<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Il 11/05/2012 10:12, <a class="moz-txt-link-abbreviated" href="mailto:il.maury@virgilio.it">il.maury@virgilio.it</a> ha scritto:
    <blockquote cite="mid:1373af5067c.il.maury@virgilio.it" type="cite">
      <pre wrap="">Salve a tutti, come da oggetto vorrei avere informazioni su come gestire i driver dei vari dispositivi hardware di una macchina con Linux. </pre>
    </blockquote>
    Uhm, ok vediamo se ho capito...<br>
    <blockquote cite="mid:1373af5067c.il.maury@virgilio.it" type="cite">
      <pre wrap="">Esempio se esiste una gui dov'&egrave; possibile "aggiorna, rimuovi, informazioni" sul dispositivo,</pre>
    </blockquote>
    No. <br>
    Ovviamente se la distribuzione in uso &egrave; dotata di un gestore di
    pacchetti &egrave; possibile rimuovere, aggiungere o aggiornare il
    pacchetto corrispondente.<br>
    Per le informazioni sui dispositivi esistono invece dei tools
    richiamabili da linea di comando, ad esempio lspci o lsusb che
    forniscono rispettivamente l'elenco dei device pci e usb collegati
    alla macchina o addirittura lshw (da lanciare con sudo) che elenca
    tutto l'hardware riconosciuto dal kernel. (&Egrave; probabile che
    quest'ultimo sia da installare e non venga fornito come
    default...dipende dalla distribuzione).<br>
    <blockquote cite="mid:1373af5067c.il.maury@virgilio.it" type="cite">
      <pre wrap=""> qualche accorgimento per l'installazione o la rimozione,</pre>
    </blockquote>
    Beh in generale prima di aggiornare un qualsiasi pezzo software
    sarebbe opportuno consultare il sito della distribuzione o andare a
    vedere i changelog delle singole applicazioni/librerie/ecc... per
    verificare che non entrino in contrasto con altre presenti sulla
    propria macchina.<br>
    In particolare questo andrebbe fatto SEMPRE quando avvengono
    aggiornamenti di Xorg (il gestore della grafica), glibc ( LA
    LIBRERIA base di sistema), del kernel, e anche dei vari driver
    grafici specialmente se si stanno utilizzando driver proprietari.<br>
    Poi &egrave; specifico, nel caso dei driver grafici ad esempio &egrave; opportuno
    controllare la compatibilit&agrave; degli stessi con la versione di Xorg
    installata.<br>
    <blockquote cite="mid:1373af5067c.il.maury@virgilio.it" type="cite">
      <pre wrap=""> compatibilit&agrave; con driver proprietari...</pre>
    </blockquote>
    Questo aspetto &egrave; importante. Su linux la maggior parte dei driver &egrave;
    open (anche se poi vengono usati firmware proprietari ma &egrave; un
    discorso fin troppo nel dettaglio) e soltanto per alcuni dispositivi
    (leggi schede video) sono disponibili i driver proprietari.<br>
    In generale sarebbero da preferire le versioni open, a meno di
    esigenze particolari o malfunzionamento di quest'ultimi con il
    proprio hw.<br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a href="http://www.linux-drivers.org/">http://www.linux-drivers.org/</a>
    Questo &egrave; un ottimo sito di partenza per verificare la compatibilit&agrave;
    del proprio hardware con il kernel linux e la distribuzione usata.<br>
    <blockquote cite="mid:1373af5067c.il.maury@virgilio.it" type="cite">
      <pre wrap=""> ecc. L'altro giorno volevo vedere che cosa riuscivo a combinare con una scheda ati recente su Linux, installo i driver tutto bene, aggiorno ad una versione successiva... il buoi pi&ugrave; totale (nel vero senso della parola... schermo nero). Sembra scontato che si tratti di questa operazione che ho fatto ma volevo pi&ugrave; che risolvere il problema (anche quello) capire la logica che c'&egrave; dietro. </pre>
    </blockquote>
    Per rispondere avrei bisogno di ulteriori informazioni, la
    distribuzione usata, la versione del kernel (ricavabile con il
    comando "uname -a" ), il modello di scheda video.<br>
    Soprattutto, che cosa &egrave; stato aggiornato ad un versione successiva?
    il kernel? il driver?<br>
    <blockquote cite="mid:1373af5067c.il.maury@virgilio.it" type="cite">
      <pre wrap="">Ho troppo in testa quella di un altro sistema operativo che non nomino per non far sbuffare nessuno... eheh</pre>
    </blockquote>
    L'importante &egrave; capire cos'&egrave; un driver e come funziona. <br>
    Windows rende la cosa troppo "rosa e fiori" facendo sembrare la
    questione banale. Non lo &egrave;. I driver alla fine sono pezzi di codice
    che lavorano a livello kernel, ovvero a basso livello, spesso
    scritti in codice macchina.<br>
    <br>
    In linux i driver possono essere di due tipi<br>
    &nbsp;&nbsp;&nbsp; 1) compilati all'interno del kernel e quindi sempre attivi, ad
    esempio lo sono quelli per la gestione della tastiera<br>
    &nbsp;&nbsp;&nbsp; 2) modulari, ovvero dei "moduli" caricabili durante l'esecuzione
    del kernel in memoria, ad esempio la gestione delle usb, delle
    schede video,...<br>
    Per modificarne il comportamento dei primi si deve ricompilare il
    kernel, per il secondo tipo vi sono dei file di configurazione da
    modificare per specificare le opzioni in fase di caricamento del
    modulo.<br>
    Un breve modo per elencare i moduli caricati dal kernel in
    esecuzione &egrave; il comando lsmod che riporta il nome, la dimensione
    occupata in memoria e le dipendenze.<br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a href="http://lwn.net/Kernel/LDD3/">http://lwn.net/Kernel/LDD3/</a>
    &Egrave; un link su un manuale completo e molto tecnico su come funzionano
    i moduli kernel in linux, approfondito fino alla programmazione
    degli stessi; non saprei quale altre letture consigliare dato che
    l'argomento &egrave; tecnico di per se. Tuttavia il capitolo 1 dovrebbe
    dare un idea generale di come funzionano le cose.<br>
    <br>
    Ho sbrodolato, e magari senza aver capito davvero il punto :p<br>
    <pre class="moz-signature" cols="72">-- 

Manuel.

GPG Key: 0xE92328E4
        Fingerprint: 1C5F B15E C3FA 0161 A7F2 F72D AA0D 4D08 E923 28E4

You can retrive it with GPG: 
        gpg --keyserver pgp.mit.edu --recv-key E92328E4
-----------------------------------------------------------------------

</pre>
  </body>
</html>