E foi lançado o CoreBoot 24.02 com mudança no formato da versão, e muito mais. Confira as novidades dessa importante atualização.
CoreBoot é uma alternativa de código aberto ao tradicional BIOS (Basic Input-Output System) que já estava nos PCs do MS-DOS 80s e a substitui-lo pelo UEFI (Unified Extensible).
O CoreBoot também é um análogo de firmware proprietário gratuito e está disponível para verificação e auditoria completas. Ele é usado como firmware base para inicialização de hardware e coordenação de inicialização.
Incluindo inicialização de chip gráfico, PCIe, SATA, USB, RS232. Ao mesmo tempo, os componentes binários do FSP 2.0 (Pacote de suporte de firmware Intel) e o firmware binário do subsistema Intel ME, necessários para inicializar e iniciar a CPU e o chipset, são integrados ao CoreBoot.
Agora, os desenvolvedores do Coreboot estão lançando o Coreboot 24.02.
Novidades do CoreBoot 24.02
Sim. A edição de fevereiro do Coreboot 24.02 foi lançada recentemente e implementou grandes melhorias nas quais 111 desenvolvedores participaram e prepararam 814 mudanças.
Esta versão representa três meses de trabalho refinando a base de código do Coreboot, com foco na limpeza e melhorias de qualidade.
Sem dúvida, uma das novidades mais notáveis desta versão que os seguidores do projeto puderam notar é a mudança no formato do número da versão, já que até a versão anterior o projeto utilizava um esquema de nome de versão incremental (4. xx),
Coreboot adotou agora um esquema de nomenclatura Year.Month.Sub-version e o próximo lançamento agendado para maio deste ano terá o número 24.05, com subversão 00 implícito. No caso de correções ou versões incrementais, serão adicionados valores como .01, .02 e assim por diante.
Esta nova versão do Coreboot 24.02 apresenta a eliminação completa do branch “master” do projeto Coreboot, com isso a partir desta versão trabalharemos no desenvolvimento de um novo branch denominado “main”.
Esta modificação foi feita em resposta à consideração de que a palavra “mestre” pode ser considerada politicamente incorreta, gerando indignação entre alguns ativistas.
Há cerca de 6 meses, o projeto migrou de ‘master’ para ‘main’ e, desde então, manteve as duas filiais sincronizadas para facilitar a transição. A partir desta versão, eles se livrarão completamente do branch master.
Em relação às mudanças de infraestrutura, o decodificador de imagens JPEG foi substituído por uma implementação na linguagem Wuffs (Wrangling Untrusted File Formats Safely).
Essa linguagem oferece segurança de memória, gera código C/C++ e é otimizada para criar analisadores, codificadores e decodificadores de formato de arquivo. A adoção de um decodificador JPEG seguro reduz a exposição do seu projeto a possíveis ataques, como o LogoFAIL.
Além das melhorias mencionadas, alterações adicionais foram feitas no boot do núcleo, incluindo uma renomeação dos Makefiles de .inc para .mk para melhor identificá-los, a adição de suporte para chips GD25LQ255E e IS25WP256D no SPI, adicionado o suporte para vários grupos de segmentos PCI em dispositivos, removeu o suporte para vários downlinks não utilizados em dispositivos, alterou o nome do barramento e link_list para upstream e downstream em dispositivos e atualizou arquivos de árvore de dispositivos para que as plataformas Modern Intel chipset.cb.
Das outras mudanças que se destacam nesta nova versão:
- Corrigido erro de contagem de dias de fevereiro em ano bissexto, que fazia com que o RTC retornasse constantemente à data de construção de 29 de fevereiro de 2024.
- Adicionadas estruturas de tabela de remapeamento Arm IO, representando a topologia IO de um sistema baseado em Arm.
- Adicionado suporte PPTT, que gera tabelas de topologia de propriedades do processador (PPTT) em conformidade com a especificação ACPI 6.4.
- Adicionado suporte para a tabela WDAT, estabelecendo as bases para a implementação da especificação da tabela ACPI WDAT (Watchdog Action Table).
- suporte buildgcc para dispositivos Apple M1/M2
- Substituiu o decodificador pela implementação de Wuffs, uma linguagem de programação segura para memória que lida com formatos de arquivo não confiáveis.
- Suporte removido para vários downlinks não utilizados
- crossgcc passou do GCC 11.4.0 para o GCC 13.2.0, o CMake foi atualizado da versão 3.26.4 para 3.27.7.
- Componentes de carga útil atualizados baseados em GRUB 2.12 e Seabios 1.16.3.
- Uprev para Kconfig do Linux 6.7.
Caso tenha interesse em saber mais sobre esta nova versão, você pode conferir os detalhes no seguinte endereço.
Como obter o CoreBoot
Aqueles interessados em obter essa nova versão do CoreBoot, podem fazer isso na seção de downloads, localizada em seu site oficial do projeto.
Além disso, lá você também pode encontrar documentação e mais informações sobre o projeto.