Não há um único nome para software projetado para interagir com hardware específico, mas aqui estão alguns termos comuns e suas nuances:
Termos gerais: *
Driver: Este é o termo mais comum e amplamente compreendido. Os motoristas atuam como tradutores, permitindo que o sistema operacional e os aplicativos se comuniquem com dispositivos de hardware, como impressoras, placas gráficas e adaptadores de rede.
*
firmware: Este é um software de baixo nível incorporado diretamente no hardware. Ele fornece as instruções básicas para o hardware operar e geralmente lida com tarefas como inicializar e executar auto-testes. Você normalmente não interage diretamente com o firmware.
*
Software incorporado: Esse termo amplo refere -se a qualquer software projetado para executar e controlar um dispositivo de hardware específico, geralmente com uma função dedicada. Pense no software dentro de um microondas, carro ou câmera digital.
Termos mais específicos: *
API (interface de programação de aplicativos): Embora não seja o próprio software, as APIs definem como os componentes do software devem interagir. Os fabricantes de hardware geralmente fornecem APIs para permitir que os desenvolvedores escrevam software que interaja com seu hardware específico.
*
sdk (kit de desenvolvimento de software): Os SDKs fornecem um conjunto de ferramentas, bibliotecas e documentação para ajudar os desenvolvedores a criar software para plataformas ou ecossistemas específicos de hardware.
Exemplos: * O software que controla sua impressora é um driver
.
* O software que permite ao seu computador reconhecer e usar uma unidade USB também é um driver
.
* O código dentro do controle remoto da sua TV é
firmware .
* O software que executa seu rastreador de fitness e interage com seus sensores é
software incorporado .
O termo específico usado geralmente depende do tipo de hardware, sua complexidade e o nível de interação envolvido.