Ferragens  
 
Rede de conhecimento computador >> Ferragens >> Dispositivos de Entrada e Saída >> Content
Como um driver de dispositivo se comunica com o dispositivo?
Um driver de dispositivo se comunica com um dispositivo usando uma variedade de métodos, dependendo do tipo de dispositivo e do sistema operacional. A comunicação raramente é direta; Em vez disso, depende de camadas intermediárias e interfaces padronizadas. Aqui está um colapso:

1. Interfaces específicas de hardware:

* E/S mapeada de memória (mmio): Os registros do dispositivo são mapeados no espaço de endereço de memória do sistema. O driver lê e grava nesses endereços de memória para controlar o dispositivo. Isso é comum para muitos dispositivos, incluindo placas gráficas e cartões de interface de rede (NICs). O motorista interage diretamente com os registros de hardware físico.

* E/S mapeada por porta (PIO): O dispositivo é acessado através de portas específicas de entrada/saída. O driver envia comandos e recebe dados escrevendo e lendo essas portas. Isso é menos comum agora, mas ainda encontrado nos sistemas herdados. Como MMIO, é uma interação direta.

* Interrupções: O dispositivo interrompe a CPU quando precisar de atenção (por exemplo, os dados estão prontos, ocorreu um erro). A interrupção desencadeia um manipulador de interrupção específico dentro do driver, permitindo que o driver responda ao evento do dispositivo. Isso é crucial para operações assíncronas.

* Acesso à memória direta (DMA): O dispositivo pode acessar diretamente a memória do sistema sem intervenção da CPU, melhorando o desempenho. O motorista configura a transferência de DMA, liberando a CPU para outras tarefas.

2. Interfaces de software (camadas de abstração):

As interações brutas de hardware descritas acima são normalmente abstraídas por camadas de software para fornecer uma interface mais gerenciável e portátil. Estes incluem:

* kernel do sistema operacional: O motorista opera dentro do kernel do sistema operacional. Ele utiliza serviços de kernel para acessar recursos de hardware e interagir com outras partes do sistema.

* APIs específicas do dispositivo: Os sistemas operacionais geralmente fornecem APIs (interfaces de programação de aplicativos) específicas para determinados tipos de dispositivos (por exemplo, SCSI, SATA, USB). Essas APIs simplificam o desenvolvimento do motorista, abstraindo detalhes de baixo nível.

* Interfaces específicas do barramento: O dispositivo está conectado ao sistema através de um barramento (por exemplo, PCI, USB, SATA). O motorista usa protocolos e interfaces específicos do barramento para se comunicar com o dispositivo sobre o barramento.

em resumo:

O processo de comunicação pode ser visualizado da seguinte maneira:

1. Aplicativo (usuário ou sistema): Solicita uma operação (por exemplo, leitura de dados de um disco rígido).

2. Sistema operacional : Rotas a solicitação para o driver de dispositivo apropriado.

3. Driver de dispositivo: Usa a interface apropriada específica de hardware (MMIO, PIO, etc.) e abstrações de software para se comunicar com o dispositivo. Isso pode envolver o envio de comandos, recebendo dados, interrupções de manuseio ou gerenciamento de transferências de DMA.

4. dispositivo: Executa a operação solicitada e envia o resultado (se houver) de volta ao driver.

5. Driver de dispositivo: Processa a resposta e retorna o resultado ao sistema operacional.

6. Sistema operacional : Retorna o resultado para o aplicativo.

A complexidade da comunicação depende muito da sofisticação do dispositivo e do sistema operacional. Os sistemas modernos geralmente utilizam várias camadas de abstração para simplificar o desenvolvimento do motorista e melhorar a portabilidade.

Anterior :

Próximo :
  Os artigos relacionados
·Como conectar uma saída de fone de ouvido à entrada d…
·Problemas com a Corel Painter Sketch Pad 
·DVD Kiosk Definição 
·Como fazer uma capa rato do computador 
·É um dispositivo de entrada de arruela de prato? 
·Um dispositivo que envia e recebe dados sobre linhas te…
·O que é um monitor 
·Como transmitir arquivos ISO para TV 
·O que você chama quando entrar em entrada errada O com…
·Connector de energia de 4 pinos para unidades de IDE? 
  Artigos em destaque
·Como substituir PC2700 Com PC2100 
·Como ligar um computador, incluindo Internet a uma TV 
·Se você conectar um monitor ao laptop, ele jogará atr…
·Como modificar uma ATX 6 Pin AUX Conector 
·Qual é a linguagem de impressora padrão que suporta f…
·A melhor impressora para Brochuras 
·Como executar Dois monitores com o seu MacBook 
·Como ler uma revista no iPad 
·Como encontrar um modelo Compaq Evo por Número de Sér…
·Como instalar o Sound Blaster Audigy 
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados