O que gerencia IO entre um buffer e um dispositivo?

0

Se eu estiver correto, um buffer é usado como um intermediário entre uma CPU e um dispositivo, para liberar a CPU de esperar que o IO com o dispositivo seja concluído e deixar a CPU fazer outras coisas

Como o cpu está fazendo outras coisas, parece não funcionar para gerenciar o buffer. O que gerencia dados de transferência do buffer para o dispositivo quando o buffer está cheio, ou recebe dados do dispositivo quando o buffer está vazio?

    
por Tim 07.01.2015 / 20:40

1 resposta

1

Acesso Direto à Memória (DMA) é a peça que falta no seu quebra-cabeça. O DMA permite que os controladores de dispositivo de E / S leiam e gravem diretamente a memória sem a intervenção da CPU.

Sem DMA, um buffer ainda pode ser empregado, já que os dados precisam viver em algum lugar enquanto estão sendo recuperados e pode ser desejável dar apenas dados ao programa solicitante se a E / S for concluída com êxito.

    
por 07.01.2015 / 20:44

Tags