É possível recuperar a memória usada por um initrd?

1

Estou desenvolvendo um processo de inicialização para um dispositivo incorporado. Atualmente estou usando um initrd (não compactado é 4 megas) para poder configurar minha partição raiz real antes de continuar a inicialização (eu tenho que selecionar uma partição com base em algumas informações e sobrepor outra usando unionfs).

No entanto, estou preocupado que a memória usada para o sistema de arquivos initrd seja permanentemente reservada para esse uso, mesmo que seja necessária apenas por alguns segundos do tempo de inicialização. O dispositivo tem apenas 256 megas de RAM, e 4 megas disso parecem significativas.

  • Existe uma maneira de recuperar essa memória?
  • Se eu fosse usar initramfs em vez de initrd, isso me compraria alguma coisa?
  • Existe outra opção?
por Steve 15.07.2014 / 18:32

1 resposta

1

A memória usada pelo initrd / initramfs é liberada depois que é feito com ie. quando a raiz real fs é montada. Então normalmente você deveria se preocupar com isso. Sua pergunta revela que você não está usando o initrd / initramfs como sua raiz de tempo de execução fs, então a memória usada para isso é liberada automaticamente.

Para mais detalhes, consulte parte do initrd da documentação do kernel sob o título de "Alterando o dispositivo raiz ".

    
por 15.07.2014 / 19:47