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 18 e 33 (in 15 versioni)
Versione 18 del 23/04/2008 14.01.31
Dimensione: 5905
Commento:
Versione 33 del 23/11/2023 04.45.27
Dimensione: 7229
Autore: jeremie2
Commento: Tabelle: rimozione vecchi colori standard
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page was renamed from Hardware/DispositiviPartizioni/DMA
## page was renamed from DMA
Linea 5: Linea 3:
[[BR]]
||<tablestyle="float:right; font-size: 0.9em; width:35%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">[[TableOfContents(1)]]||
<<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 12: Linea 11:
La maggior parte dei sistemi che hanno meno di 3 anni supportano il DMA. 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 14: Linea 13:
[[Immagine(Icone/Piccole/warning.png,,left)]] '''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 proprio sistema.''' {{{#!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 16: Linea 17:
[[Anchor(abilitare)]] = Preparazione =

== Identificare periferica ==

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''', il programma.
  0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://hdparm|hdparm]].

{{{#!wiki important
Fare attenzione che il programma ''hdparm'' se usato in modo superficiale può arrecare gravi danni al dispositivo su cui è usato.
}}}

{{{#!wiki important
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.
}}}

 0. Controllare le impostazioni di `/dev/srX`:{{{
sudo hdparm /dev/srX
}}} sostituire il dispositivo `dev/srX` con quello ottenuto per [[Hardware/Periferiche/IdentificarePeriferiche|identificare la periferica]].
  * 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 è 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.

<<Anchor(abilitare)>>
Linea 19: Linea 51:
Per abilitare il DMA, è necessario usare il comando '''hdparm'''.

Le istruzioni che seguiranno, prendono come esempio l'abilitazione del DMA sul dispositivo `/dev/hdc`, nella maggior parte dei casi il lettore CD-ROM/DVD.

 0. Controllare le impostazioni di `/dev/hdc`: {{{
sudo hdparm /dev/hdc
 0. Abilitare il DMA per `/dev/srX`:{{{
sudo hdparm -d1 /dev/srX
Linea 26: Linea 54:
 0. Se è presente una linea come questa: {{{
using_dma = 1 (on)
}}} significa che il DMA è già attivato. Passa direttamente al passo 4 per vedere se viene abilitato all'avvio del sistema.
 0. Abilitare il DMA per `/dev/hdc` {{{
sudo hdparm -d1 /dev/hdc
}}}
0. Ora è stato abilitato il DMA. Comunque, per avere queste impostazioni abilitate automaticamente all'avvio del sistema, è necessario modificare il file `/etc/hdparm.conf`. Aprire con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/hdparm.conf`, dunque aggiungere le seguenti righe alla fine del file: {{{
/dev/hdc {
dma = on
 0. Ora è stato abilitato il DMA.
 0. P
er 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 =
Linea 36: Linea 67:
}}} Salvare e riavviare il sistema. }}} salvare, quindi riavviare il sistema.
Linea 40: Linea 71:
È possibile ottenere specifiche informazioni sui tre principali parametri del disco: È possibile ottenere specifiche informazioni sui tre principali parametri del masterizzatore:
Linea 42: Linea 73:
||<tablestyle="width:100%" :>'''Opzione'''||<:>'''Ouptut'''||
||<:>'''-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||
||<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 47: Linea 78:
 * Quindi, il comando: {{{
sudo hdparm -d /dev/hda
 * Il comando:{{{
sudo hdparm -d /dev/srX
Linea 50: Linea 81:
/dev/hda: /dev/srX:
Linea 54: Linea 85:
 * Il comando: {{{
sudo hdparm -c /dev/hda
}}} darà come output: {{{
/dev/hda:
 * Il comando:{{{
sudo hdparm -c /dev/srX
}}} darà come output:{{{
/dev/srX:
Linea 61: Linea 92:
 * Il comando: {{{
sudo hdparm -m /dev/hda
}}} darà come output: {{{
/dev/hda:
 * Il comando:{{{
sudo hdparm -m /dev/srX
}}} darà come output:{{{
/dev/srX:
Linea 68: Linea 99:
== Test sui dischi == == Test sul masterizzatore ==
Linea 70: Linea 101:
Il comando '''hdparm''' consente, attraverso l'uso dell'opzione «'''-tT'''», l'esecuzione di un test completo sui dischi. Il comando '''hdparm''' consente, attraverso l'uso dell'opzione '''-tT''', l'esecuzione di un test completo sui masterizzatori.
Linea 72: Linea 103:
Per esempio: {{{
sudo hdparm -tT /dev/hda
}}}

il cui risultato è un output di questo tipo: {{{
/dev/hda:
Ad esempio:{{{
sudo hdparm -tT /dev/srX
}}} il cui risultato è un output di questo tipo:{{{
/dev/srX:
Linea 84: Linea 113:
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. 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 89: Linea 118:
||<:>'''-c0''' || disabilita la funzione|| ||<:>'''-c0''' || disabilita la funzione     ||
Linea 94: Linea 123:
È quindi possibile modificare le impostazioni del disco con questo comando: {{{
sudo hdparm -d1 -c1 -m8 /dev/hda
È quindi possibile modificare le impostazioni del masterizzatore con questo comando:{{{
sudo hdparm -d1 -c1 -m8 /dev/srX
Linea 98: Linea 127:
Con il comando precedente è stato indicato di abilitare DMA (-d1), abilitare il supporto 32-bit del disco (-c1) e imostare l'«Ide Block Mode» su 8-bit (-m8). È possibile impostare l'«Ide Block Mode» su 16-bit (-m16) o 32-bit (-m32). 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 100: Linea 129:
L'output del comando sarà: {{{
/dev/hda:
L'output del comando sarà:{{{
/dev/srX:
Linea 114: Linea 143:
A volte il passo 3 può fallire con un messaggio tipo «'''operation not permitted/operazione non permessa'''». Per risolvere questo problema, è necessario modificare il file `/etc/modules`. 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`.
Linea 116: Linea 145:
Aprire con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/modules`. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] il file `/etc/modules`.
Linea 118: Linea 147:
 * Nel caso si possieda un CPU '''Intel''', inserire: {{{  * Nel caso si possieda un CPU '''Intel''', inserire:{{{
Linea 122: Linea 151:
}}} sopra la riga: {{{ }}} sopra la riga:{{{
Linea 126: Linea 155:
 * Nel caso si possieda una CPU '''AMD''', inserire: {{{  * Nel caso si possieda una CPU '''AMD''', inserire:{{{
Linea 128: Linea 157:
}}} sopra la riga: {{{ }}} sopra la riga:{{{
Linea 132: Linea 161:
 * Nel caso si utilizzi un chipset '''VIA''', inserire: {{{  * Nel caso si utilizzi un chipset '''VIA''', inserire:{{{
Linea 134: Linea 163:
}}} sopra la riga: {{{ }}} sopra la riga:{{{
Linea 136: Linea 165:
}}}

A
questo punto riavviare e ripetere i passi 3 e 4 della [#abilitare procedura precedente].
}}} salvare e riavviare il sistema, quindi ripetere i passi 3 e 4 della [[#abilitare|procedura precedente]].
Linea 142: Linea 169:
 * Per una descrizione dettagliata del DMA consultare questa [http://standards.ieee.org/reading/ieee/std_public/description/busarch/1212.1-1993_desc.html pagina].
* [http://www.spcug.org/reviews/bl0108.htm IDE, EIDE e UDMA]
 * [[http://standards.ieee.org/reading/ieee/std_public/description/busarch/1212.1-1993_desc.html|Descrizione dettagliata del DMA]].
Linea 146: Linea 172:
CategoryHardware CategoryDaRevisionare CategoryHardware


Guida verificata con Ubuntu: 20.04 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:

Fare attenzione che il programma hdparm se usato in modo superficiale 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.

  1. Controllare le impostazioni di /dev/srX:

    sudo hdparm /dev/srX

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

    • 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 è 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.

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