Swap infinito? Entenda como o Kernel Linux 7.0 vai gerenciar a memória virtual do seu PC

O Kernel Linux 7.0 redefine o gerenciamento de memória com a tecnologia Ghost Swap!

Escrito por
Emanuel Negromonte
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre...
  • O patch corrige o consumo estático excessivo de RAM ao eliminar tabelas fixas de swap que ocupavam espaço mesmo sem uso.
  • A mudança impacta a performance de builds de larga escala, reduzindo o tempo de processamento de sistema em aproximadamente 16%.
  • A autoria é de Kairui Song, da Tencent, fundamentada em conceitos de Chris Li e Nhat Pham sobre swap em camadas e XArrays.
  • O Kernel Linux 7.0 agora utiliza alocação dinâmica via XArray para metadados de swap, permitindo dispositivos de troca virtualmente infinitos.
  • A funcionalidade está prevista para chegar às versões estáveis e distribuições rolling release no primeiro semestre de 2026.

Kairui Song, desenvolvedor da Tencent, enviou uma proposta de mudança para o subsistema de memória que promete revolucionar como o sistema lida com a falta de RAM. O conjunto de 15 patches, que marca a quarta fase de reformulação da tabela de swap, introduz o conceito de arquivos de swap fantasma (ghost swapfiles) e remove estruturas estáticas de dados que consumiam memória desnecessariamente. O patch impacta o Kernel Linux 7.0 ao reduzir o tempo de processamento do sistema em até 16% em cargas de trabalho pesadas e economizar centenas de megabytes de RAM em servidores com grandes áreas de troca.

A mudança unifica o processo de alocação e cobrança de memória anônima e compartilhada (shmem), além de consolidar o rastreamento por grupos de controle (cgroups). Na prática, a implementação elimina a necessidade de tabelas fixas que cresciam proporcionalmente ao tamanho do disco de swap, permitindo que o sistema operacional gerencie espaços de troca virtualmente infinitos com overhead estático próximo de zero.

O que isso significa na prática

Para o administrador de sistemas ou usuário avançado, o impacto é duplo: eficiência e economia. Antes, ao configurar um dispositivo de swap de 1 TB, o Kernel Linux reservava automaticamente cerca de 512 MB de RAM apenas para gerenciar essa área, mesmo que ela não estivesse sendo usada. Agora, esse consumo de memória é dinâmico e quase nulo. Além disso, o sistema se torna mais resiliente sob pressão de memória extrema, reduzindo travamentos (thrashing) e eliminando erros críticos de falta de memória (OOM) que ocorriam durante a troca de páginas grandes (mTHP).

Detalhes da implementação

A arquitetura utiliza a estrutura XArray para gerenciar as informações de clusters de memória de forma dinâmica. Em vez de arrays estáticos, os metadados de swap agora são alocados sob demanda. O patch também integra o suporte para o subsistema zswap diretamente no ghost swapfile, permitindo que o Kernel Linux 7.0 utilize compressão de memória sem a necessidade de um dispositivo de bloco real ou arquivo em disco servindo de lastro, o que simplifica a configuração de sistemas que operam apenas com swap em RAM comprimida.

Métrica de desempenhoAntes da mudançaDepois da mudança
Tempo de sistema (build de Kernel)2215.55s1852.14s (16.4% mais rápido)
Uso de memória estática (1TB swap)512 MBPróximo a 0 MB
Performance de mTHPReferência~15% de ganho
Alocação de memória por slotVariável8 bytes (ou menos)

Curiosidades e bastidores da discussão

A discussão na LKML revela que o projeto é fruto de uma colaboração intensa entre engenheiros de diferentes empresas. Kairui Song destacou a contribuição de Chris Li, autor da ideia original da tabela de swap em camadas, e de Nhat Pham, que sugeriu o uso de XArray para viabilizar o redimensionamento dinâmico. Um ponto de “fofoca técnica” interessante é o surgimento de um novo dispositivo especial em /dev/ghostswap, criado especificamente para facilitar os testes dessa tecnologia sem depender de ferramentas complexas de espaço de usuário. O autor mencionou que a mudança finalmente resolve um problema antigo onde falhas de memória (VM_FAULT_OOM) vazavam para os tratadores de exceção do processador.

Quando isso chega no meu PC?

A proposta está atualmente em fase de Request for Comments (RFC), o que significa que o código está estável, mas os mantenedores ainda discutem detalhes finos da API. Como os patches visam o ciclo do Kernel Linux 7.0, a expectativa é que a parte estável da fase IV da tabela de swap seja integrada na branch principal no primeiro semestre de 2026. Distribuições focadas em performance e servidores, como Fedora e Ubuntu, devem disponibilizar o recurso em suas versões de final de ano, enquanto usuários de Arch Linux poderão testar a funcionalidade via repositórios de desenvolvimento poucas semanas após a fusão oficial.

Compartilhe este artigo
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre GNU/Linux, Software Livre e Código Aberto, dedica-se a descomplicar o universo tecnológico para entusiastas e profissionais. Seu foco é em notícias, tutoriais e análises aprofundadas, promovendo o conhecimento e a liberdade digital no Brasil.