Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Hardware/DispositiviPartizioni/Dma"
Differenze tra le versioni 2 e 34 (in 32 versioni)
Versione 2 del 26/10/2005 20.43.01
Dimensione: 2801
Commento:
Versione 34 del 01/10/2024 13.53.52
Dimensione: 7253
Commento: sistemato paragrafo
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
Se la riproduzione di un DVD non è scorrevole, potrebbe essere a causa del DMA non attivato. DMA, o Direct Memory Access, permette ai dischi rigidi ed ai CD/DVD di accedere alla memoria di sistema. #format wiki
#LANGUAGE it
<<BR>>
<<Indice>>
<<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=119711";rilasci="22.04 20.04 18.04 16.04 14.04")>>
Linea 3: Linea 7:
'''Attenzione: Abilitare il DMA può essere pericoloso in alcuni casi. Problemi comuni sono collegati ad hardware con problemi, errori nei driver, o uso di impostazioni non supportate dal tuo sistema. USARE HDPARM NON CORRETTAMENTE PUO' CAUSARE UNA MAGGIORE CORRUZIONE DI DATI E/O LA LORO PERDITA. La maggior parte dei sistemi che hanno meno di 3 anni supportano il DMA.''' = Introduzione =
Linea 5: Linea 9:
== Abilitare il DMA == Se la riproduzione di un DVD non è scorrevole, potrebbe essere a causa del DMA non attivato. DMA, o «Direct Memory Access», permette ai dischi rigidi e ai lettori di CD/DVD di accedere direttamente alla memoria di sistema, senza caricare la CPU.
Linea 7: Linea 11:
Per abilitare il DMA, devi usare il comando {{{hdparm}}} e il file di configurazione {{{hdparm.conf}}}.
In queste istruzioni si presume che tu voglia abilitare il DMA su `hdc`, in molti casi il lettore CD-rom.
La maggior parte dei sistemi prodotti dal 1994 ha il supporto al DMA, mentre è pressoché certa la sua presenza (o sua evoluzione quale l'UDMA) dal 1997.
Linea 10: Linea 13:
 1. Guarda le impostazione per `/dev/hdc`
   {{{
   sudo hdparm /dev/hdc
   }}}
 1. Se vedi una linea come questa "{{{using_dma = 1 (on)}}}", il DMA è già attivato. Passa direttamente al passo 4 per vedere se viene abilitato all'avvio del sistema.
 1. Abilita il DMA per `/dev/hdc`
   {{{
   sudo hdparm -d1 /dev/hdc
   }}}
 1. Ora hai abilitato il DMA per il lettore. Comunque, per avere queste impostazioni abilitate automaticamente all'avvio del sistema, devi modificare il file {{{/etc/hdparm.conf}}}. Per farlo usa questo comando: {{{sudo gedit /etc/hdparm.conf}}}
Aggiungi le seguenti linee alla fine file
   {{{
   /dev/hdc {
   dma = on
   }
   }}}
{{{#!wiki important
Abilitare il DMA può essere pericoloso in alcuni casi. I problemi più comuni sono collegati ad hardware con problemi, errori nei driver o uso di impostazioni non supportate dal proprio sistema.
}}}
Linea 27: Linea 17:
== Problemi Noti == = Preparazione =
Linea 29: Linea 19:
Se i tuoi device sono configurati in modalità [Cable Select] ed eseguendo il comando `hdparm` ricevi errori relativi a dei timeout o periferica non pronta, prova a cambiare la periferica in master o slave, a seconda della configurazione del tuo sistema. Questo richiede l'apertura del case, e per quanto ne so la maggior parte dei lettori sono settati in modalità Cable Select dai produttori. == Identificare periferica ==
Linea 31: Linea 21:
A volte il passo 3 può fallire con un messaggio come "operation not permitted/operazione non permessa". Puoi risolvere modificando il file /etc/modules, per una cpu intel, cosi: Di seguito viene illustrato l'utilizzo di due strumenti:
 * '''lsscsi''': strumento semplice per [[Hardware/Periferiche/IdentificarePeriferiche|identificare]] il dispositivo di masterizzazione.
  0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://lsscsi|lsscsi]].
  0. Per identificare il nome del dispositivo digitare nel [[AmministrazioneSistema/Terminale |terminale]] il comando:{{{
lsscsi | grep -i dvd
}}}
 * '''hdparm''': per utilizzare il programma seguire i seguenti passaggi:
  0. [[AmministrazioneSistema/InstallareProgrammi|installare]] il pacchetto [[apt://hdparm|hdparm]].
  0. Controllare le impostazioni di `/dev/srX`:{{{
sudo hdparm /dev/srX
}}}
  sostituendo `dev/srX` con il dispositivo ottenuto per [[Hardware/Periferiche/IdentificarePeriferiche|identificare la periferica]].
  0. Se è presente una riga come questa:{{{
using_dma = 1 (on)
}}} significa che il DMA è già attivato. Passare direttamente al punto 8 per vedere se viene abilitato all'avvio del sistema.
  Se è invece presente una riga come questa:{{{
SG_IO: bad/missing sense data, sb[]
}}} significa che il dispositivo non viene letto correttamente. Passare direttamente al punto 7 per attivare tramite modifica del file.
 {{{#!wiki important
Fare attenzione poiché il programma ''hdparm'' se usato in modo scorretto può arrecare gravi danni al dispositivo su cui è usato.<<BR>>
Prestare molta attenzione nell'indicare il dispositivo corretto. Ad esempio, nei casi più comuni, indicare /dev/sda nel comando può compromettere l'integrità del disco rigido cagionando l'inavviabilità del proprio sistema e l'accesso ai propri file personali.
}}}
Linea 33: Linea 44:
{{{piix}}} <<Anchor(abilitare)>>
= Abilitare il DMA =
Linea 35: Linea 47:
{{{ide-core}}}  0. Abilitare il DMA per `/dev/srX`:{{{
sudo hdparm -d1 /dev/srX
}}}
 0. Ora è stato abilitato il DMA.
 0. Per avere queste impostazioni abilitate automaticamente all'avvio del sistema, è necessario modificare il file `/etc/hdparm.conf`.<<BR>>
 A tale scopo aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/hdparm.conf`, modificare i parametri nelle seguenti righe:{{{
#/dev/cdroms/cdrom0 {
# dma = on
# interrupt_unmask = on
# io32_support = 0
#}}}nel modo seguente:{{{
/dev/sr0 {
       dma = on
       interrupt_unmask = on
       io32_support =
}
}}} salvare, quindi riavviare il sistema.
Linea 37: Linea 65:
sopra la linea = Comandi avanzati =
Linea 39: Linea 67:
{{{ide-cd}}} È possibile ottenere specifiche informazioni sui tre principali parametri del masterizzatore:
Linea 41: Linea 69:
||<tablestyle="width:100%":> '''Opzione'''||<:>'''Output'''||
||'''-d''' ||DMA del dispositivo in esame ||
||'''-c''' ||supporto IO del dispositivo in esame, 16 o 32 bit è la velocità di trasmissione dei dati (consultare questa [[http://it.wikipedia.org/wiki/Input/Output|pagina]])||
||'''-m''' ||multcount, (Ide Block Mode) trasmissione di settori multipli per I/O a 0, 8, 16 o 32 bit||
Linea 42: Linea 74:
per una cpu amd  * Il comando:{{{
sudo hdparm -d /dev/srX
}}} darà come output:{{{
/dev/srX:
 using_dma = 1 (on)
}}}
Linea 44: Linea 81:
{{{amd74xx}}}  * Il comando:{{{
sudo hdparm -c /dev/srX
}}} darà come output:{{{
/dev/srX:
 IO_support = 1 (32-bit)
}}}
Linea 46: Linea 88:
sopra  * Il comando:{{{
sudo hdparm -m /dev/srX
}}} darà come output:{{{
/dev/srX:
 multcount = 0 (off)
}}}
Linea 48: Linea 95:
{{{ide-cd}}} == Test sul masterizzatore ==
Linea 50: Linea 97:
Il comando '''hdparm''' consente, attraverso l'uso dell'opzione '''-tT''', l'esecuzione di un test completo sui masterizzatori.
Linea 51: Linea 99:
per un Chipset VIA Ad esempio:{{{
sudo hdparm -tT /dev/srX
}}} il cui risultato è un output di questo tipo:{{{
/dev/srX:
 Timing cached reads: 276 MB in 2.01 seconds = 136.99 MB/sec
 Timing buffered disk reads: 20 MB in 3.14 seconds = 6.37 MB/sec
}}}
Linea 53: Linea 107:
{{{via82cxxx}}} == Modifica della configurazione ==
Linea 55: Linea 109:
sopra L'esecuzione dei test mostrerà che Ubuntu ha già configurato al meglio il proprio hardware. Tuttavia può essere utile la verifica dei valori e la loro eventuale correzione.
Linea 57: Linea 111:
{{{ide-cd}}} Alcune opzioni utili per la modifica della configurazione da utilizzare con '''hdparm''':
Linea 59: Linea 113:
A questo punto riavvia e riprova i passi 3 e 4 ||<tablestyle="width:100%" :>'''Opzione'''||<:>'''Risultato'''||
||<:>'''-c0''' || disabilita la funzione ||
||<:>'''-c1''' || abilita la modalità a 32bit||
||<:>'''-c2''' || abilita la modalità a 16bit||
||<:>'''-c3''' || abilita la modalità a 32bit con una funzione di sincronismo richiesta da molti chipset||
Linea 61: Linea 119:
== Ulteriore lettura == È quindi possibile modificare le impostazioni del masterizzatore con questo comando:{{{
sudo hdparm -d1 -c1 -m8 /dev/srX
}}}
Linea 63: Linea 123:
{{{hdparm}}} ha ulteriori opzioni che potrebbero essere più rischiose. Puoi vedere usando il comando {{{man hdparm}}} in un terminale. Con il comando precedente è stato indicato di abilitare DMA (-d1), abilitare il supporto 32-bit del masterizzatore (-c1) e impostare l'«Ide Block Mode» su 8-bit (-m8). È possibile impostare l'«Ide Block Mode» su 16-bit (-m16) o 32-bit (-m32).
Linea 65: Linea 125:
Per una descrizione dettagliata del DMA visita l'IEEE
http://standards.ieee.org/reading/ieee/std_public/description/busarch/1212.1-1993_desc.html
L'output del comando sarà:{{{
/dev/srX:
 setting 32-bit IO_support flag to 1
 setting multcount to 8
 setting using_dma to 1 (on)
 multcount = 8 (on)
 IO_support = 1 (32-bit)
 using_dma = 1 (on)
}}}
Linea 68: Linea 135:
IDE, EIDE e UDMA http://www.spcug.org/reviews/bl0108.htm = Problemi noti =
Linea 70: Linea 137:
Traduzione: LorenzoSfarra - Documento Originale: https://wiki.ubuntu.com/DMA Se i propri dispositivi sono configurati in modalità ''Cable Select'' ed eseguendo il comando '''hdparm''' si ricevono degli errori relativi a dei timeout o periferica non pronta, provare a cambiare la periferica in ''master'' o ''slave'', a seconda della configurazione del sistema (far riferimento al manuale del dispositivo o della propria scheda madre).

A volte il passo 2 può fallire con un messaggio tipo '''operation not permitted/operazione non permessa'''. Per risolvere questo problema, è necessario modificare il file `/etc/modules`.

Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/modules`.

 * Nel caso si possieda un CPU '''Intel''', inserire:{{{
piix

ide-core
}}} sopra la riga:{{{
ide-cd
}}}
 
 * Nel caso si possieda una CPU '''AMD''', inserire:{{{
amd74xx
}}} sopra la riga:{{{
ide-cd
}}}

 * Nel caso si utilizzi un chipset '''VIA''', inserire:{{{
via82cxxx
}}} sopra la riga:{{{
ide-cd
}}} salvare e riavviare il sistema, quindi ripetere i passi 3 e 4 della [[#abilitare|procedura precedente]].

= Ulteriori risorse =

 * [[http://standards.ieee.org/reading/ieee/std_public/description/busarch/1212.1-1993_desc.html|Descrizione dettagliata del DMA]].

----
CategoryHardware


Guida verificata con Ubuntu: 22.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Se la riproduzione di un DVD non è scorrevole, potrebbe essere a causa del DMA non attivato. DMA, o «Direct Memory Access», permette ai dischi rigidi e ai lettori di CD/DVD di accedere direttamente alla memoria di sistema, senza caricare la CPU.

La maggior parte dei sistemi prodotti dal 1994 ha il supporto al DMA, mentre è pressoché certa la sua presenza (o sua evoluzione quale l'UDMA) dal 1997.

Abilitare il DMA può essere pericoloso in alcuni casi. I problemi più comuni sono collegati ad hardware con problemi, errori nei driver o uso di impostazioni non supportate dal proprio sistema.

Preparazione

Identificare periferica

Di seguito viene illustrato l'utilizzo di due strumenti:

  • lsscsi: strumento semplice per identificare il dispositivo di masterizzazione.

    1. Installare il pacchetto lsscsi.

    2. Per identificare il nome del dispositivo digitare nel terminale il comando:

      lsscsi | grep -i dvd
  • hdparm: per utilizzare il programma seguire i seguenti passaggi:

    1. installare il pacchetto hdparm.

    2. Controllare le impostazioni di /dev/srX:

      sudo hdparm /dev/srX

      sostituendo dev/srX con il dispositivo ottenuto per identificare la periferica.

    3. Se è presente una riga come questa:

      using_dma = 1 (on)
      significa che il DMA è già attivato. Passare direttamente al punto 8 per vedere se viene abilitato all'avvio del sistema.

      Se è invece presente una riga come questa:

      SG_IO: bad/missing sense data, sb[]
      significa che il dispositivo non viene letto correttamente. Passare direttamente al punto 7 per attivare tramite modifica del file.

    Fare attenzione poiché il programma hdparm se usato in modo scorretto può arrecare gravi danni al dispositivo su cui è usato.
    Prestare molta attenzione nell'indicare il dispositivo corretto. Ad esempio, nei casi più comuni, indicare /dev/sda nel comando può compromettere l'integrità del disco rigido cagionando l'inavviabilità del proprio sistema e l'accesso ai propri file personali.

Abilitare il DMA

  1. Abilitare il DMA per /dev/srX:

    sudo hdparm -d1 /dev/srX
  2. Ora è stato abilitato il DMA.
  3. Per avere queste impostazioni abilitate automaticamente all'avvio del sistema, è necessario modificare il file /etc/hdparm.conf.
    A tale scopo aprire con un editor di testo e con i privilegi di amministrazione il file /etc/hdparm.conf, modificare i parametri nelle seguenti righe:

    #/dev/cdroms/cdrom0 {
    #       dma = on
    #       interrupt_unmask = on
    #       io32_support = 0
    #

    nel modo seguente:

    /dev/sr0  {
           dma = on
           interrupt_unmask = on
           io32_support = 
    }
    salvare, quindi riavviare il sistema.

Comandi avanzati

È possibile ottenere specifiche informazioni sui tre principali parametri del masterizzatore:

Opzione

Output

-d

DMA del dispositivo in esame

-c

supporto IO del dispositivo in esame, 16 o 32 bit è la velocità di trasmissione dei dati (consultare questa pagina)

-m

multcount, (Ide Block Mode) trasmissione di settori multipli per I/O a 0, 8, 16 o 32 bit

  • Il comando:

    sudo hdparm -d /dev/srX

    darà come output:

    /dev/srX:
     using_dma    =  1 (on)
  • Il comando:

    sudo hdparm -c /dev/srX

    darà come output:

    /dev/srX:
     IO_support   =  1 (32-bit)
  • Il comando:

    sudo hdparm -m /dev/srX

    darà come output:

    /dev/srX:
     multcount    =  0 (off)

Test sul masterizzatore

Il comando hdparm consente, attraverso l'uso dell'opzione -tT, l'esecuzione di un test completo sui masterizzatori.

Ad esempio:

sudo hdparm -tT /dev/srX

il cui risultato è un output di questo tipo:

/dev/srX:
 Timing cached reads:   276 MB in  2.01 seconds = 136.99 MB/sec
 Timing buffered disk reads:   20 MB in  3.14 seconds =   6.37 MB/sec

Modifica della configurazione

L'esecuzione dei test mostrerà che Ubuntu ha già configurato al meglio il proprio hardware. Tuttavia può essere utile la verifica dei valori e la loro eventuale correzione.

Alcune opzioni utili per la modifica della configurazione da utilizzare con hdparm:

Opzione

Risultato

-c0

disabilita la funzione

-c1

abilita la modalità a 32bit

-c2

abilita la modalità a 16bit

-c3

abilita la modalità a 32bit con una funzione di sincronismo richiesta da molti chipset

È quindi possibile modificare le impostazioni del masterizzatore con questo comando:

sudo hdparm -d1 -c1 -m8 /dev/srX

Con il comando precedente è stato indicato di abilitare DMA (-d1), abilitare il supporto 32-bit del masterizzatore (-c1) e impostare l'«Ide Block Mode» su 8-bit (-m8). È possibile impostare l'«Ide Block Mode» su 16-bit (-m16) o 32-bit (-m32).

L'output del comando sarà:

/dev/srX:
 setting 32-bit IO_support flag to 1
 setting multcount to 8
 setting using_dma to 1 (on)
 multcount    =  8 (on)
 IO_support   =  1 (32-bit)
 using_dma    =  1 (on)

Problemi noti

Se i propri dispositivi sono configurati in modalità Cable Select ed eseguendo il comando hdparm si ricevono degli errori relativi a dei timeout o periferica non pronta, provare a cambiare la periferica in master o slave, a seconda della configurazione del sistema (far riferimento al manuale del dispositivo o della propria scheda madre).

A volte il passo 2 può fallire con un messaggio tipo operation not permitted/operazione non permessa. Per risolvere questo problema, è necessario modificare il file /etc/modules.

Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/modules.

  • Nel caso si possieda un CPU Intel, inserire:

    piix
    
    ide-core

    sopra la riga:

    ide-cd
  • Nel caso si possieda una CPU AMD, inserire:

    amd74xx

    sopra la riga:

    ide-cd
  • Nel caso si utilizzi un chipset VIA, inserire:

    via82cxxx

    sopra la riga:

    ide-cd

    salvare e riavviare il sistema, quindi ripetere i passi 3 e 4 della procedura precedente.

Ulteriori risorse


CategoryHardware