DMA (Direct Memory Access)

O termo DMA (sigla da expressão inglesa Direct Memory Access) designa uma forma de acesso directo à memória utilizada por alguns aplicativos.

O termo DMA (sigla da expressão inglesa Direct Memory Access) designa uma forma de acesso directo à memória utilizada por alguns aplicativos que permite que a informação seja transferida entre a memória e o disco rígido, sem passar pelo processador, ganhando em rapidez.

Enquanto a maioria dos dados, que são de entrada ou de saída do computador, são processados pelo processador, alguns dados não necessitam desse processamento, ou podem ser processados por um outro dispositivo. Nestas situações, o DMA pode economizar tempo de processamento e é uma maneira mais eficiente para mover os dados da memória do computador para outros dispositivos.

Por exemplo, uma placa de som pode precisar aceder aos dados armazenados na memória RAM do computador, mas desde que ele possa processar os dados em si, ele pode usar o DMA para ignorar o CPU. As placas gráficas que suportam o DMA também podem aceder à memória do sistema e processar os gráficos sem precisar do CPU. Os discos rígidos Ultra DMA usam o DMA para transferir os dados mais rapidamente do que os discos rígidos anteriores que exigiam que os dados fossem primeiro executados através do CPU.

Para que os dispositivos usem o Direct Memory Access, deve ser atribuído um canal DMA. Cada tipo de porta de um computador tem um conjunto de canais DMA que podem ser atribuídos a cada dispositivo conectado. Por exemplo, um controlador PCI (Peripheral Component Interconnect ou Interconector de Componentes Periféricos) e um controlador do disco rígido têm cada um o seu próprio conjunto de canais DMA.

Em computadores mais antigos, quatro canais DMA foram numeradas de 0, 1, 2 e 3. Quando o barramento (bus) de expansão de 16 bits da Industry Standard Architecture (ISA) foi introduzido, foram adicionados os canais 5, 6 e 7. O ISA foi um padrão de barramentos de computador para computadores compatíveis com a IBM (International Business Machines), permitindo que um dispositivo possa iniciar operações (bus mastering) a uma velocidade mais rápida. O ISA desde então tem sido substituído pelo AGP (accelerated graphics port) e PCI, que são muito mais rápidos.
Cada canal requer duas linhas para funcionar. Uma linha é para o controlador de DMA, que pede a libertação do CPU. A outra linha é para o CPU reconhecer que o controlador de DMA é capaz de enviar dados sobre as linhas sem interrupção do CPU.

As ferramentas de recursos do sistema de um computador são usadas para a comunicação entre hardware e software. Os quatro tipos de recursos do sistema são os seguintes:

  • Endereços de I / O (Entrada / Saída)

  • Os endereços de memória

  • Números de pedido de interrupção (IRQ, Interrupt request numbers)

  • Canais Direct Memory Access (DMA)

Os canais DMA são usados para comunicar dados entre o dispositivo periférico e a memória do sistema. Todos os quatro recursos do sistema dependem de certas linhas num barramento. Algumas linhas no barramento são usadas para IRQs, algumas para endereços (os endereços I / O e o endereço de memória) e algumas para canais DMA.

Um canal DMA permite que um dispositivo possa transferir dados sem expôr o CPU a uma sobrecarga de trabalho. Sem os canais de DMA, o CPU copia cada pedaço de dados através de um barramento de periféricos a partir do dispositivo I / O. Ao usar um barramento periférico, ele ocupa o CPU durante o processo de leitura / escrita e não permite que outro trabalho possa ser executado até que a operação seja concluída.

Com o DMA, o CPU pode processar outras tarefas enquanto a transferência de dados está a ser executada. A transferência de dados é primeiro iniciada pelo CPU. Durante a transferência de dados entre o canal de DMA e o dispositivo de I / O, o CPU executa outras tarefas. Quando a transferência de dados está completa, o processador recebe um pedido de interrupção do controlador de DMA.

Um dispositivo utiliza tecnologia DMA ao usar apenas um único canal. Para evitar um conflito, por vezes, a BIOS (Basic Input/Output System ou Sistema Básico de Entrada / Saída) deve atribuir um canal diferente para um dispositivo. Um conflito pode acontecer quando mais do que um dispositivo tenta utilizar o mesmo canal.

Os canais DMA são mais lentos do que os métodos de transferência de dados mais recentes, e, portanto, não são tão comuns. Uma interface mais recente é o Ultra DMA, que tem uma taxa de transferência de dados de até 33 MB por segundo. Cada transferência DMA usa aproximadamente 2 MB de dados por segundo.

1501 Visualizações 1 Total
1501 Visualizações

A Knoow é uma enciclopédia colaborativa e em permamente adaptação e melhoria. Se detetou alguma falha em algum dos nossos verbetes, pedimos que nos informe para o mail geral@knoow.net para que possamos verificar. Ajude-nos a melhorar.