Faz pouco Intel apresentou o desenvolvimento de uma nova arquitetura de firmware Firmware escalável universal (USF) que é destinado a simplificar o desenvolvimento de todos os componentes da pilha de software de firmware para uma variedade de categorias de dispositivos, de servidores a sistemas em um chip (SoC).
USF fornece camadas de abstração para separar a lógica de inicialização do hardware de baixo nível dos componentes da plataforma responsáveis pela configuração, atualizar firmware, proteger e inicializar o sistema operacional.
Sobre a USF
USF tem uma estrutura modular que não está vinculada a soluções específicas y permite usar vários projetos existentes Eles implementam a inicialização de hardware e estágios de boot, como a pilha TianoCore EDK2 UEFI, o firmware minimalista Slim Bootloader, o bootloader U-Boot e a plataforma CoreBoot.
Interface UEFI, camada LinuxBoot (para carregamento direto do kernel Linux), VaultBoot (inicialização verificada) e hipervisor ACRN podem ser usados como ambientes de carga útil para localizar o carregador de inicialização e transferir o controle para o sistema operacional, além de interfaces típicas como ACPI, UEFI, Kexec e Multi-boot são fornecidos para sistemas operacionais.
As especificações USF da Intel consistem em duas partes: uma especificação interna da Intel que cobre a construção do SOC e suas interfaces internas (IP HW e IP FW); e uma especificação externa da indústria cobrindo interfaces para SOCs, plataformas e cargas úteis de SO, bem como construção e gerenciamento de produtos e soluções de firmware completos (ou seja, como inicializar, configurar, integrar, inicializar, atualizar e manter). A especificação externa está aberta a feedback ativo e colaboração de parceiros da indústria e de tecnologia. A versão de especificação externa no lançamento inicial está intencionalmente começando em uma revisão preliminar para que os parceiros de tecnologia tenham a oportunidade de ajudar a melhorar seu conteúdo e direção antes da finalização da v1.0.
USF definir uma camada de pacote de suporte de firmware Um FSP separado que faz interface com o Platform Orchestration Layer (POL) genérico e personalizado por meio de uma API comum. O FSP abstrai operações como redefinição de CPU, inicialização de hardware, SMM (modo de gerenciamento de sistema), autenticação e verificação no nível de SoC.

A camada de orquestração simplifica a criação de interfaces ACPI, também oferece suporte a bibliotecas de carga útil genéricas e permite o uso da linguagem Rust para criar componentes de firmware seguros e também permite definir a configuração usando a linguagem de marcação YAML. O POL também realiza atestado (confirmação de autenticidade), autenticação e organização da instalação segura de atualizações.
Com o USF, esperamos ajudar a resolver os pontos fracos da indústria no desenvolvimento de firmware, reduzir a complexidade, acelerar a inovação, melhorar a qualidade e segurança do firmware e permitir a flexibilidade e escalabilidade do firmware futuro em CPUs e XPUs.
Espera-se que a nova arquitetura permita:
- Reduza a complexidade e o custo de desenvolvimento de firmware para novos dispositivos reutilizando o código de componente pronto para uso, uma arquitetura modular que não está vinculada a carregadores específicos e a capacidade de usar uma API universal para configurar módulos.
- Melhore a qualidade e a segurança do firmware usando módulos verificáveis para interação com o computador e uma infraestrutura mais segura para verificação e autenticação de firmware.
- Use diferentes carregadores e componentes de carga útil, dependendo das tarefas a serem resolvidas.
- Acelere o avanço de novas tecnologias e encurte o ciclo de desenvolvimento - os desenvolvedores podem se concentrar apenas em adicionar funcionalidade específica, caso contrário, usar componentes comprovados e prontos para uso.
- Dimensione o desenvolvimento de firmware para várias arquiteturas de computação mista (XPUs), por exemplo, incluindo, além da CPU, um acelerador gráfico discreto integrado (dGPU) e dispositivos de rede programáveis para acelerar as operações de rede em data centers que fornecem sistemas em nuvem (IPU), infraestrutura Unidade de processamento).
Finalmente para aqueles interessados em saber mais sobre isso, eles devem saber que um projeto de especificação e implementação dos elementos típicos da arquitetura USF já está disponível são postados no GitHub.
fonte: https://www.intel.com