FERRAMENTAS LINUX: A Qualcomm está explorando a hibernação baseada em bootloader para o Linux

quarta-feira, 18 de maio de 2022

A Qualcomm está explorando a hibernação baseada em bootloader para o Linux



Confira !!


Os engenheiros da Qualcomm estão explorando a hibernação baseada em bootloader para melhorar a experiência do usuário ao restaurar de um estado de hibernação.

Motivada pelos requisitos dos casos de uso automotivos, a Qualcomm está propondo a hibernação baseada em bootloader como um meio de restaurar mais rapidamente um sistema Linux depois de sair do estado de hibernação, reduzindo o tempo até que haja uma imagem na tela. Este é outro exemplo do Linux sendo adaptado para requisitos rigorosos em torno de automóveis, como o tempo máximo que um sistema pode inicializar antes de precisar das câmeras ativadas.

Aqui está a carne de sua hibernação baseada em bootloader proposta e os patches iniciais do kernel Linux enviados:
Casos de uso automotivos exigem melhores KPIs de inicialização, por isso estamos propondo uma restauração de hibernação baseada em carregador de inicialização. O objetivo da hibernação baseada no carregador de inicialização é melhorar o tempo de inicialização geral até que o primeiro quadro de exibição seja visto na tela ou um aplicativo de câmera possa ser iniciado a partir do espaço do usuário após a tecla de reinicialização ser pressionada. Este patchset RFC implementa uma versão ligeiramente ajustada de hibernação na qual a restauração de um snapshot mais antigo em DDR está sendo realizada a partir do próprio bootloader (ABL), fazendo isso estamos economizando algum tempo (1 segundo medido no kernel msm-4.14) não executando um kernel temporário e descobrindo a imagem de hibernação em late_init() Para obter as mesmas verificações de bootloader para a imagem de hibernação em um estágio muito inicial da partição swap, ele analisa a imagem e
carrega-o no DDR em vez de carregar a partição de inicialização do formulário de imagem de inicialização. Como não estamos executando o kernel temporário, o que teria feito algumas configurações básicas relacionadas ao ARM, como habilitação de MMU, configuração EL2, configuração da CPU, etc., o ponto de entrada na imagem de instantâneo de hibernação diretamente do carregador de inicialização é diferente, em linhas semelhantes, todos os drivers de dispositivo são agora reprogramando os registros mapeados por IO como parte do retorno de chamada de restauração (que é acionado a partir da estrutura de hibernação) para trazer de volta a sincronização HW/SW.

Esta série de patches que trabalha a hibernação baseada no carregador de inicialização para o Linux atualmente equivale a pouco mais de 200 linhas de novo código do kernel. Atualmente esta proposta está sob uma "solicitação de comentários" para ver onde ela leva.












Até a próxima !!


Nenhum comentário:

Postar um comentário