O que controla um controlador de dispositivo?

0

Minha teoria é que um driver de dispositivo é aquele que controla um controlador de dispositivo que, por sua vez, controla um dispositivo de hardware. Este raciocínio está correto? Por favor, desculpe minha falta de conhecimento. Apenas lendo sobre e tropeçou nesse pensamento?

    
por jax 17.03.2015 / 21:37

1 resposta

2

What controls a device controller?

O computador host (ao qual o controlador de dispositivo está conectado) usando comandos de dispositivo.

My theory is that a device driver is the one that controls a device controller which in turn controls a hardware device.

Um driver de dispositivo é um software do SO que está sendo executado na CPU do host. O driver precisa converter os pedidos e dados do SO I / O em operações que o dispositivo periférico pode executar.

Um controlador de dispositivo faz parte do subsistema de um periférico. O controlador é considerado hardware, mas o controlador típico (moderno) tem um processador (normalmente um microcontrolador ou um microprocessador), é programado (ex. Firmware instalado em memória não volátil, como NAND Flash) e é essencialmente um computador embutido cuja finalidade é fornecer uma interface entre o computador host e um dispositivo. O controlador do dispositivo pode ser fabricado como um único CI (especialmente quando produzido em grandes volumes e / ou devido a requisitos de empacotamento) ou completamente integrado com uma CPU em um SoC, ou pode ser alguns chips em uma placa.

A interface de hardware do controlador do dispositivo para o computador host seria um conjunto de "registros de dispositivo". Alguns controladores podem ter um elaborado conjunto de registradores (também conhecidos como portas), especialmente quando integrados no chip de silício com uma CPU (também conhecido como SoC, System on Chip). Outros controladores que se conectam ao computador host por meio de um cabo normalmente têm uma interface HW que se parece com um link de comunicação (por exemplo, SATA, USB).

A interface do software do controlador do dispositivo varia. Normalmente, há um conjunto de comandos que podem ser gravados em um registrador de comandos. Ou pode haver um registro de dados para gravar pacotes de um comando e / ou dados (por exemplo, SATA). Esses comandos (por exemplo, executar uma operação de leitura, gravação ou reinicialização) são o que "controla" o controlador do dispositivo e o dispositivo real por meio de operações de baixo nível.

    
por 18.03.2015 / 00:28

Tags