Os engenheiros do Google e outras partes estão interessados em poder criar espaços de troca em sistemas Linux que seriam reservados apenas para fins de suspensão / hibernação do sistema e não para troca genérica para o disco.
O SWAP_FLAG_HIBERNATE_ONLY proposto reservaria um espaço de troca apenas para o uso de suspensão para o disco e não para troca de páginas regulares. Até agora, a troca genérica precisa ser ativada se quiser apenas usá-la para suspender o sistema, sem soluções alternativas para ativá-la / desativá-la durante o processo de suspensão.
Entre os motivos para suspender apenas espaços de troca:
Existem algumas razões pelas quais o modo do usuário pode querer ser capaz de controlar exclusivamente a troca e a hibernação. Um dos motivos está relacionado ao uso de SSD. Os requisitos de resistência e velocidade do Hibernate são diferentes da troca. Pode ser vantajoso, por exemplo, manter a hibernação no armazenamento primário, mas colocar a troca em um namespace SLC. Esses namespaces são mais rápidos e têm melhor durabilidade, mas custam 3-4x em termos de capacidade. O controle exclusivo de hibernação e troca permite que os projetistas de sistema particionem com precisão seu armazenamento sem gastar o armazenamento primário ou superprovisionar sua área de troca rápida.
Outra razão para permitir uma direção exclusiva tem a ver com a segurança. Os requisitos para projetar sistemas com resiliência contra ataques offline são diferentes entre troca e hibernação. A troca requer efetivamente um dicionário de hashes, já que as páginas podem ser adicionadas e removidas arbitrariamente, enquanto o hibernate só precisa de um único hash para a imagem inteira. Se você configurou a integridade de nível de bloco para troca e integridade de nível de imagem para hibernação, então permitir que os blocos de troca vazem para a região de hibernação é problemático, pois cria páginas de troca não protegidas por nenhuma integridade.
Enviado hoje foi o mais recente patch implementando este sinalizador somente hibernação para swap. Esta revisão altera o nome do sinalizador e tem várias outras melhorias de código para esta funcionalidade proposta.
Até a próxima !!
Nenhum comentário:
Postar um comentário