Compartilhar via


Componentes da tela de inicialização

Há dois componentes na tela de inicialização de atualização do firmware: o logotipo do OEM e o texto de atualização. Este artigo fornece diretrizes sobre como configurar cada um desses componentes e informações sobre como esses componentes são passados para o firmware em uma cápsula de atualização de firmware.

O logotipo OEM na tela de inicialização de atualização de firmware deve ser o mesmo logotipo exibido durante o processo de inicialização normal. Para telas de inicialização de atualização de firmware, o logotipo deve ter o mesmo tamanho, posição e qualidade esperados como é exibido durante o processo de inicialização normal.

Arquivo de logotipo OEM

Antes que os clientes vejam as telas acionáveis, o logotipo do OEM é exibido na tela de inicialização.

O logotipo OEM não aparece em nenhuma tela no OOBE e, depois do OOBE, ele é exibido no Painel de Controle em Ferramentas e Informações de Desempenho. Ele não é exibido no aplicativo Configurações .

POST (Power-On Self-Test) e tempos de inicialização do sistema operacional são mais rápidos do que costumavam ser. Para garantir que você tenha um momento de identidade visual adequado, o logotipo do OEM fica visível tanto no POST quanto na inicialização do sistema operacional. Nessa abordagem, o logotipo do OEM é prontamente reconhecível, adequadamente sustentado e associado a uma experiência rápida e confiável.

Além disso, o logotipo do OEM é exibido como um elemento de identidade visual no aplicativo Painel de Controle , em Ferramentas e Informações de Desempenho. Ele não é exibido no aplicativo Configurações .

O logotipo que você adiciona apresenta aos clientes seu primeiro encontro visual com seus novos computadores que executam o Windows, portanto, ele deve ser limpo, nítido e afiado em suas bordas e dentro.

A tela de fundo da tela de inicialização é sempre preta, portanto, use um logotipo que fique ótimo em um plano de fundo preto. O logotipo também deve ter um plano de fundo preto verdadeiro para que não haja nenhuma diferença perceptível em que o plano de fundo preto do logotipo termine e o plano de fundo preto da tela comece. Não há suporte para transparência. A tela de fundo preta otimiza o desempenho do sistema tanto para a renderização inicial do logotipo quanto para o fade-out no final da inicialização para a transição do GOP (Protocolo de Saída de Gráficos UEFI) para o driver de vídeo nativo do sistema operacional. Outras áreas do Windows também utilizam seu logotipo: Configuração, redefinição de Push-Button (PBR), remediação da Inicialização Segura e a Ferramenta de Reparo de Inicialização, todas usando uma tela de fundo preta. Essas experiências usam o mesmo logotipo da Tabela de Recursos de Gráficos de Inicialização (BGRT).

Posicionar o logotipo durante POST

O firmware desenha o logotipo do OEM em POST e coloca o logotipo em uma posição predeterminada. Quando a inicialização do Windows começa, o logotipo é mantido no buffer de vídeo. Computadores desktop podem detectar a resolução original do painel lendo seu EDID (Dados de Identificação de Exibição Estendida).

Para que o logotipo apareça corretamente em toda a sequência, POST precisa ocorrer na resolução nativa do dispositivo. Isso garante que o logotipo seja o tamanho, a forma e o local desejados e que o Windows requer.

O logotipo deve aparecer na tela em um local específico para mostrar a marca do computador. Recomendamos que o logotipo seja colocado com seu centro em 38,2% da borda superior da tela. Esse posicionamento é baseado na estética visual da proporção dourada e corresponde às proporções de design do Windows 10. Esse posicionamento consistente em todos os computadores que executam o Windows 10 permite que o Windows coloque o anel de progresso no local correto e garante que o logotipo e o anel estejam visualmente equilibrados.

Para dar suporte a esse equilíbrio visual, recomendamos limitar o tamanho do logotipo a 40% da altura e largura da tela. ** Isso garante que a tela apareça corretamente, e que o Windows possa desvanecer o logotipo corretamente no final do processo de inicialização. Recomendamos que a área máxima do logotipo comece em no máximo 18,2% na parte superior da tela.

Esses princípios de design se aplicam a dispositivos paisagísticos e retratos.

Adicionar o logotipo ao BGRT

Além de posicionar corretamente o logotipo durante o POST, você também armazena o logotipo dentro da tabela de recursos gráficos de inicialização (BGRT). O BGRT define dinamicamente novos objetos para o Windows usar para descrever os recursos e o local na tela. Armazene o logotipo em EfiBootServicesData e exponha-o por meio do BGRT. A interface BGRT dá suporte a esse logotipo como um bitmap de 24 bits com um formato de pixel de 0xRRGGBB ou um bitmap de 32 bits com um formato de pixel de 0xrrRRGGBB, onde 'rr' é reservado. Essa é a interface padrão que o Windows usa para acessar o logotipo.

Dois campos importantes no BGRT são "Deslocamento de Imagem X" e "Deslocamento de Imagem Y". Estes são os valores (x,y) do canto superior esquerdo do posicionamento do logotipo na tela. Ao definir esses valores, certifique-se de não usar a posição do logotipo ou o canto superior esquerdo da caixa delimitadora ou o Windows não posicionará corretamente o logotipo em Instalação, Reparo de Inicialização do Sistema, Redefinição Push-Button ou outros processos.

Você deve minimizar o preenchimento no recurso do logotipo e usar somente o que é necessário para a centralização adequada. O uso de preenchimento mínimo economiza espaço no firmware e permite que o Windows escale o logotipo com base em BGRT corretamente.

O logotipo OEM não aparece em nenhuma tela no OOBE.

Para obter mais informações sobre o BGRT, consulte a seção 5.2.22 da Especificação de ACPI (Advanced Configuration and Power Interface).

Atualizar texto

O texto de atualização na tela de inicialização de atualização de firmware é uma cadeia de caracteres simples que foi projetada para ser rápida de ler e fácil de entender. O texto é renderizado pelo carregador de inicialização do Windows. Depois de determinar que as atualizações de firmware estão pendentes, o bootloader identifica a localidade do Windows e exibe o texto localizado na tela.

Durante a chamada para UpdateCapsule, o carregador de inicialização passará todas as cápsulas de atualização de firmware. Além disso, ele também passará por uma cápsula de exibição de atualização de firmware, conforme definida pela Microsoft, que contém um bitmap do texto que é exibido e a localização do bitmap na tela. O método UpdateCapsule do firmware do sistema deve salvar a cápsula de modo que, sempre que a tela for limpa ou modificada, possa tornar a exibir o bitmap na tela.

componentes da tela de inicialização durante atualização de firmware.

Cápsula de exibição de atualização de firmware do Windows

Quando o carregador de inicialização do Windows chama o método UpdateCapsule do firmware do sistema, ele passa todas as cápsulas de atualização de firmware. Além disso, ele será testado em um módulo de experiência do usuário do Windows. Esta cápsula contém o bitmap do texto localizado e renderizado que deve ser exibido na tela. O GUID a seguir é usado para identificar esta cápsula: {3b8c8162-188c-46a4-aec9-be43f1d65697}.

Não há garantia de que a cápsula UX apareça em uma ordem específica na matriz de cápsulas. Não dependa de uma posição de índice específica para localizar a cápsula de UX. Uma prática recomendada inclui escanear a matriz procurando a cápsula de UX e processá-la antes de processar as cápsulas de firmware restantes na matriz.

É importante observar que pode haver alguns cenários em que não haverá cápsula de UX. Por exemplo, não haverá nenhuma cápsula de UX no caso de um servidor sem cabeça que não tenha nenhum adaptador de exibição. Nesses casos, a chamada UpdateCapsule do firmware pode ignorar o requisito da cápsula de UX. No entanto, se a cápsula UX estiver presente, o UpdateCapsule deverá processá-la de acordo com o processo descrito nesta seção.

A tabela a seguir descreve o cabeçalho de atualização de firmware para a cápsula UX.

Campo Tamanho do byte Deslocamento de bytes Descrição
CapsuleGuid 16 0 Atualização de Firmware - Módulo de Exibição
HeaderSize 4 16 sizeof(EFI_CAPSULE_HEADER)
Sinalizadores 4 20 CAPSULE_FLAGS_PERSIST_ACROSS_RESET
CapsuleImageSize 4 24 Um inteiro sem sinal de 4 bytes que descreve o comprimento da cápsula de exibição de atualização de firmware. O tamanho inclui o cabeçalho e a cápsula, que inclui a imagem de exibição.

A tabela a seguir descreve o conteúdo da cápsula de exibição de atualização de firmware.

Campo Tamanho do byte Deslocamento de bytes Descrição
Versão 1 28 Identifica qual revisão da cápsula de exibição foi implementada. Esse campo será definido como 1.
Checksum 1 29 Contém uma soma de verificação para habilitar a validação simples. A soma de toda a cápsula (cabeçalho e carga), incluindo a imagem de exibição, deve ser igual a zero. Se a soma não for igual a zero, a cápsula deverá ser ignorada.
ImageType 1 30 Especifica o formato da imagem inserida:

0: Bitmap

1-255: Reservado para uso futuro.
Reservado 1 31 Reservado para uso futuro. Tem de ser zero.
Modo 4 32 Especifica o modo de vídeo do protocolo de saída gráfico que é capaz de exibir a imagem inserida. O modo de vídeo é consultado antes de chamar UpdateCapsule e descreve o modo de vídeo atual e o modo de vídeo da exibição local quando a imagem inserida é exibida pelo carregador de inicialização. O valor é igual ao campo Modo da estrutura EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE quando a imagem é renderizada.
Deslocamento da imagem no eixo X 4 36 Um longo sem sinal de 4 bytes (32 bits) que descreve o deslocamento X da imagem de bitmap. (X, Y) exibe o deslocamento do canto superior esquerdo da imagem. O canto superior esquerdo da exibição está em deslocamento (0, 0).
Deslocamento de imagem Y 4 40 Um valor inteiro sem sinal de 4 bytes (32 bits) que descreve o deslocamento no eixo Y da imagem de bitmap. (X, Y) exibe o deslocamento do canto superior esquerdo da imagem. O canto superior esquerdo da exibição está em deslocamento (0, 0). Veja a imagem abaixo para obter um exemplo.
Imagem Não aplicável 44 Uma matriz de bytes que contém o bitmap embutido a ser exibido durante o processo de atualização do firmware. O bitmap pode ser um bitmap de 24 bits com o formato de pixel 0xRRGGBB ou um bitmap de 32 bits com o formato de pixel 0xrrRRGGBB, onde 'rr' é reservado.

valor de deslocamento de imagem relativo à exibição

Ao contrário de uma cápsula gerada para a carga de atualização de firmware, a carga da cápsula de exibição não é preenchida para ser alinhada à página. A carga de exibição segue imediatamente o cabeçalho da cápsula.

A cápsula de exibição de atualização de firmware descreve um gráfico que deve ser renderizado durante a duração de uma atualização de firmware. O gráfico é inicialmente renderizado e exibido pelo Windows e entregue ao firmware como parte da mesma chamada UpdateCapsule que contém o(s) payload(s) de atualização para o firmware. Se o firmware redefinir o sistema ou o dispositivo de vídeo, o firmware deverá reproduzir novamente o bitmap fornecido na cápsula de exibição. Se a memória física não for mantida durante a redefinição, o firmware talvez precise salvar o bitmap no armazenamento persistente para redesenhar o bitmap após a redefinição. Os detalhes sobre como salvar e restaurar o bitmap após uma redefinição são específicos da implementação e não são discutidos neste artigo.

A cápsula de exibição de atualização de firmware é modelada a partir da BGRT (Tabela de Recursos Gráficos de Inicialização) definida no ACPI 5.0. O BGRT define um mecanismo para o firmware do sistema fornecer uma imagem gráfica para um carregador de boot do sistema operacional. Embora as duas tabelas sejam semelhantes, há algumas diferenças notáveis.

BGRT Cápsula de exibição de atualização de firmware Motivo
Ponteiro para Bitmap Bitmap inserido A inserção do bitmap permite que a cápsula seja salva e restaurada em uma única operação.
Não contém o modo de vídeo Contém o modo de vídeo Feito para evitar a necessidade de o firmware consultar o modo de vídeo durante a chamada UpdateCapsule.
Conter um campo Status Não contém um campo Status O campo Status do BGRT descreve se a imagem é exibida atualmente na tela. Isso não é aplicável à cápsula de exibição de atualização de firmware.

Experiência do usuário para atualizações de firmware uefi