Tenta fazer um bootloader pra x86 ou até uma BIOS, é o mais proximo de bare metal que vc consegue chegar num computador normal.

Pelo que entendi a BIOS é responsavel por verificar o hardware e inicializar um sistema operacional.

Então essa BIOS deve ser feita pela fabricante do computador e ela deve passar informações sobre o hardware para a empresa que faz o SO.

No caso eu criaria um SO então não precisaria mexer com BIOS.

Mas o mais importante e é o que eu estou tentando achar.

A documentação de uma fabricante de hardware explicando como usar os recurso.

Me parece que essas informações são passadas de forma privilegiada para o Windows por exemplo.

Se n me engano existe um comando, pra rodar no terminal, q lista todas as "funções" do seu processador
normalmente o bootloader te passa um monte de informações de recursos do sistema pro kernel, existe um bootloader chamado limine que tem um protocolo próprio, ele já te vai dar um framebuffer, terminal, memory map e um monte de coisa que ele puxa do hardware para VC montar o seu próprio kernel
Estou tentando sair fora de tudo que é de terceiros ! O único que "não dá" é o fabricante do hardware. **Então quero as informações direto do fabricante para usar os recursos do computador** SE for para usar algum software de terceiro para me dar suporte. Então eu uso o Windows mesmo e programo em c c++.