Como a BIOS lê a partir do armazenamento flash sem instalar o driver primeiro?

1

Sempre que conectamos um novo pen drive, recebemos um pop-up dizendo Installing Device Driver e depois de algum tempo a caixa de diálogo do autorun aparece.

Então, ao instalar outro sistema operacional a partir da unidade flash inicializável - como a BIOS, que eu suponho ser muito rudimentar em comparação com o próprio SO, consegue ler rapidamente os dados da unidade flash (que também no início da inicialização) sem qualquer necessidade de instalar drivers de dispositivos.

Editar : notei que o Linux (Ubuntu 12.04 no meu caso) também não precisa instalar o driver de dispositivo & a unidade é aberta automaticamente no Nautilus. Como isso funciona?

    
por RinkyPinku 25.05.2015 / 12:16

2 respostas

1

Desde as últimas duas décadas, alguns aspectos de hardware se tornaram muito padronizados, de modo que é fácil incorporar esses drivers no firmware (ou no caso do linux, o kernel). Se você olhar para os drivers em uso para armazenamento USB, é quase sempre o mesmo, independentemente do fabricante, tamanho, etc.

O mesmo acontece com teclados USB (a maioria) e outros dispositivos de entrada comuns, pois todos são compatíveis com a classe HID peripderals.

Quanto ao linux mostrando automaticamente o conteúdo da unidade, o esboço é o seguinte:

  1. O kernel registra o dispositivo recém-anexado. Isso pode ser visto se você fizer um dmesg após conectá-lo em
  2. A unidade é então montada automaticamente, como pode ser visto em mount -l . Normalmente você verá uma linha começando com algo ao longo das linhas de /dev/sdc1 on /media/username/Something... correspondendo ao nó do dispositivo listado em # 1.
  3. Seu ambiente de área de trabalho vê esse novo ponto de montagem para seu nome de usuário e abre um gerenciador de arquivos para esse ponto de montagem.
por 25.05.2015 / 12:31
1

O conjunto "driver de instalação" shebang aparece apenas no Windows. Na verdade, é mais como "registrar nova instância de dispositivo" de qualquer maneira. Em outros sistemas operacionais, o processo é essencialmente o mesmo, é claro, mas gerenciado de maneira diferente. Por exemplo, existem duas maneiras de lidar com vários dispositivos semelhantes: uma instância de driver isolada está sendo executada para cada uma delas ou uma única instância é capaz de lidar com vários dispositivos.

Existem alguns requisitos que devem ser atendidos: Um driver deve existir em um local onde o kernel (ou um programa carregando drivers no kernel) irá encontrá-lo automaticamente. Algo como /lib/modules no Linux. Se um driver não estiver disponível ou integrado ao kernel, o dispositivo não poderá ser usado.

Para firmware como UEFI ou BIOS, o driver seria embutido, porque eles devem ser independentes.

Como Jarmund já mencionou, as interfaces para dispositivos de entrada e armazenamento são amplamente padronizadas atualmente. Um único driver é suficiente o uso de quase todos os dispositivos de armazenamento USB lá fora. É assim que a BIOS e a UEFI permitem que você use o teclado e mouse e o armazenamento USB e outros itens.

    
por 25.05.2015 / 12:44