Essa possibilidade já havia sido levantada em outros momentos. No ano passado, por exemplo, a ideia chegou a ser discutida, mas um desenvolvedor alegou ainda ter uma máquina baseada em i486 e Linux em operação. O assunto ficou de lado, até que, recentemente, Torvalds trouxe a ideia à tona novamente na lista de discussão do kernel. Em uma das interações, ele apresenta a remoção de um componente como solução indireta para um problema no kernel tratado tópico. No final da mensagem, Torvalds pergunta:
486: icônico, mas antigo
i486 e 486 são nomes que fazem referência aos chips 80486, lançados pela Intel no final dos anos 1980. Posteriormente, surgiram variações mais avançadas, como 80486DX e 80486DX2. O mercado também presenciou o lançamento de alternativas da concorrência, a exemplo da família Am486, da AMD. Esses processadores são tão antigos que, hoje, é difícil encontrar máquinas baseadas neles em uso. As exceções vão para PCs mantidos por entusiastas ou por aplicações muito antigas, mas em operação até os dias atuais. É por isso que Torvalds cogita remover o suporte à plataforma i486 do kernel. Em seu entendimento, isso não é importante atualmente. Na lista, ele reconheceu que ainda pode haver interesse no suporte, mas argumentou que “do ponto de vista do desenvolvimento do kernel, não acho que seja [algo] realmente relevante”.
Se funciona, por que mexer?
Remover código pouco (ou nada usado) pode contribuir para o desempenho, a manutenção e, sobretudo, a segurança do kernel. Não raramente, a preservação de determinados recursos requer adaptações em outros ou exige trabalho adicional. Às vezes, o melhor jeito de se manter um projeto tão abrangente quanto o Linux é cortando o que não é essencial em vez de seguir com a política de abraçar o mundo. Isso já foi feito antes. Como Linus Torvalds relembrou em sua mensagem, o kernel deixou de suportar chips i386 (anteriores ao i486, obviamente) em 2012. Na ocasião, ele explicou que o suporte à arquitetura 386 “nos atormentou com trabalho adicional sempre que queríamos alterar as primitivas do SMP [multiprocessamento simétrico]”. O fim do suporte a i386 não deixou feridos, no fim das contas. Aqui, a ideia seria a de exigir que o processador x86 tenha suporte à instrução cmpxchg8b (usada em operações que comparam informações de oito bytes na memória). Isso significa que somente chips Pentium e posteriores seriam oficialmente suportados pelo Linux. Se a mudança ocorrer, não será de imediato. Atualmente, o kernel Linux está na versão 6.0. A próxima, a 6.1, pode ser lançada em dezembro e, por ser uma versão LTS (com suporte estendido), não deve passar por grandes modificações. Há boas chances de que o fim do suporte a i486 no Linux aconteça a partir do kernel 6.2, portanto. Para quem tem computadores 486, a saída é usar uma distribuição com uma versão antiga do kernel, como o próprio Torvalds (sarcasticamente) sugere: “algumas vezes, pessoas os têm como peças de museu. Elas também podem executar kernels de museu”. Com informações: Phoronix.