Como o Linux sabe o nome do meu hardware?

Como o Linux sabe o nome do meu hardware?

Digamos que eu execute lspcio comando. Este comando informa nomes e modelos dos dispositivos em meu sistema. A saída pode ser semelhante a:

03:00.0 Network controller: Intel Corporation Centrino Ultimate-N 6300 (rev 3e)

Esta string "Centrino Ultimate-N 6300" - de onde veio? Foi originalmente armazenado em algum lugar dentro da ROM da placa de rede? Caso contrário, o cartão deve ter fornecido alguma informação que permitiu ao kernel do Linux identificá-lo exclusivamente. Que informação é essa, como posso obtê-la?

Responder1

Os nomes vêm da tradução do código do fornecedor: dispositivo PCI do hardware usando um banco de dados local/arquivo de texto para as descrições de texto.

O arquivo em si está localizado em /usr/share/misc/pci.ids.

Neste caso você pode encontrar, no Debian 9/Stretch neste arquivo:

"Corporação Intel":

[line 19280] 8086  Intel Corporation

Centrino Ultimate...

[line 24449]         422b  Centrino Ultimate-N 6300

Pelo texto, o código do seu fornecedor PCI: dispositivo parece ser 8086:422b

informação relacionada