A Microsoft introduziu um sistema modular aberto para a criação de firmware UEFI

Projeto mu

Recentemente A Microsoft lançou um novo projeto aberto, o "Projeto Mu", que está desenvolvendo uma estrutura para a criação de ambientes UEFI que inicializam o hardware e fornecem um conjunto de serviços para carregar o sistema operacional.

O firmware baseado no Projeto Mu já está sendo usado em produtos da Microsoft como Surface e Hyper-V.

O projeto baseia-se no trabalho da pilha UEFI aberta TianoCore EDK2, mas não é um fork, é colocado como complemento (módulo «MU»), compilado com base em novas versões estáveis ​​do TianoCore e retornando correções e alterações específicas do TianoCore para o projeto principal.

Os desenvolvimentos do projeto são distribuídos sob a licença BSD.

Uma característica principal do projeto Mu é o desenvolvimento da ideia de firmware como serviço (FaaS, Firmware as a Service), cuja essência é fornecer mecanismos para manter o firmware e o ambiente UEFI atualizados.

O FaaS permite que você visualize o firmware como um produto que requer atualizações constantes para fornecer rapidamente correções de erros e vulnerabilidades aos usuários, bem como adicionar novos recursos.

Os desenvolvedores do projeto Mu tentaram resolver os problemas que surgem no desenvolvimento do firmware UEFI, causada pelo envolvimento de vários fornecedores e pelo uso de vários componentes proprietários, que estão sujeitos a estritas restrições de licenciamento.

Até agora, devido à complexidade de organizar a interação entre parceiros comerciais, os fabricantes praticavam a criação de uma bifurcação de uma base de código típica ao criar firmware com a introdução de modificações específicas do produto.

Manter o firmware em tais condições é muito complicado e o custo das modificações e os riscos associados às mudanças permitem que você gere atualizações apenas em situações excepcionais.

Sobre o projeto Mu

Mu fornece um conjunto de módulos, ferramentas de construção e repositórios focados na reutilização de código, um processo de desenvolvimento colaborativo distribuído com compartilhamento de repositório e estrito controle de qualidade.

O firmware gerado pode combinar componentes de código aberto com módulos proprietários, que são desenvolvidos separadamente e o próprio módulo é anexado ao produto final sem violar os requisitos de licença do detentor dos direitos autorais.

Ao contrário do TianoCore, O Project Mu inclui recursos adicionais para melhorar a compatibilidade com produtos Microsoft, aumentar a escalabilidade (no contexto de manutenção de firmware para muitos produtos diferentes que têm várias empresas envolvidas), simplificar a manutenção de firmware e organizar atualizações planejadas.

Mu

Os Os componentes do projeto incluem uma interface de usuário, um teclado na tela, ferramentas para gerenciar com segurança as configurações de UEFI, um bootloader de alto desempenho e um conjunto de exemplos de menu do BIOS.

Para aumentar a segurança do projeto, a base de código TianoCore foi limpa de componentes obsoletos e mudanças foram feitas para reduzir possíveis vetores de ataque.

Além do código, o projeto também euInclui um conjunto de especificações para organizar o processo de desenvolvimento de firmware, de acordo com o paradigma FaaS, bem como um conjunto de testes e ferramentas para analisar e otimizar a qualidade do firmware.

As principais características do Mu

  • Interface para configurar firmware (DFCI, interface de configuração de firmware de dispositivo) e ferramentas para gerenciamento de dispositivo móvel (MDM, Gerenciamento de dispositivo móvel);
  • O sistema de proteção de senha do BIOS que PBKDF2 usa para hashing de senha.
  • Suporte para verificação de componentes usando assinaturas digitais baseadas em EKU (Extended Key Usage).
  • Usando a estrutura da Microsoft para testes de unidade.
  • Significa auditar, verificar a funcionalidade e avaliar o desempenho de todas as capacidades da plataforma.
  • Sistema de compilação escalável escrito em Python.
  • Plug-ins para controlar a reescrita e análise de informações do descritor flash (Flash Descriptor, estrutura de programação SPI Flash).
  • Sistema de gerenciamento de pacotes binários baseado no gerenciador de pacotes NuGet.
  • A possibilidade de certificação por assinaturas digitais de componentes transmitidos usando o mecanismo de cápsula UEFI (meio de transferência de conjuntos de dados binários para firmware EFI)
  • Suporte ao compilador Visual Studio.
  • Suporte à codificação Base64 para objetos binários.
  • Pacote com suporte a XML.

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: AB Internet Networks 2008 SL
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.