Início » Aplicativos e Software » Desenvolvedores do Linux discutem retirar suporte a chips antigos

Desenvolvedores do Linux discutem retirar suporte a chips antigos

Remoção de código poderia facilitar manutenção do kernel Linux, mas suporte a hardware obsoleto também é defendido

Emerson AlecrimPor

O kernel Linux existe há muito tempo e, à medida que é atualizado para suportar novos hardwares e tecnologias, pode acumular código-fonte desnecessário. É por isso que alguns desenvolvedores estão discutindo a possibilidade de remover o suporte a determinados processadores antigos do kernel.

Chip Intel 80486SX (imagem: Henry Mühlpfordt/Wikipedia)

Chip Intel 80486SX (imagem: Henry Mühlpfordt/Wikipedia)

Em dezembro de 2020, Linus Torvalds anunciou o Linux 5.10 como software LTS (Long Term support), o que significa que essa versão irá receber suporte oficial por pelo menos cincos anos.

Na mesma época em que esse anúncio foi feito, Arnd Bergmann, outro conhecido desenvolvedor do projeto, percebeu que o kernel mantém códigos para chips que foram descontinuados ou que não parecem ter sido usados nos últimos cincos anos (ou mais) — eles não receberam nenhuma atualização durante esse período. Esses códigos dizem respeito principalmente a chips obsoletos baseados em arquitetura ARM.

Em função disso, Bergmann abriu um tópico na lista de discussão do Linux sobre a possibilidade de os códigos para esses chips — ou, pelo menos, parte deles — serem removidos do kernel. Entre os modelos afetados estariam:

  • ASM9260
  • AXXIA
  • BCM/Kona
  • DigiColor
  • Dove
  • EFM32
  • Nspire
  • PicoXcell
  • PRIMA2
  • Spear
  • Tango
  • U300
  • VT8500
  • ZX

Na mesma mensagem, Bergmann incluiu uma lista de chips que poderiam ter códigos removidos do kernel se os responsáveis por eles concordarem com isso:

  • CLPS711x
  • CNS3xxx
  • EP93xx
  • Footbridge
  • Gemini
  • HISI
  • Highbank
  • IOP32x
  • IXP4xx
  • LPC18xx
  • LPC32xx
  • MMP
  • Moxart
  • MV78xx0
  • Nomadik
  • OXNA
  • PXA
  • RPC
  • SA1100

Arnd Bergmann também listou alguns processadores antigos que não têm arquitetura ARM, mas que também estariam em completo desuso ou perto disso, entre eles, os chips Intel 80486SX e 80486DX.

A remoção de código relacionado a processadores obsoletos facilitaria o trabalho de manutenção do kernel e, presumivelmente, o deixaria menos “inchado”. Por outro lado, a ideia encontra alguma resistência, especialmente entre desenvolvedores e entusiastas que acham importante o Linux suportar uma ampla diversidade de hardware antigo.

Não surpreende que a discussão sobre o assunto esteja movimentada. Boa parte das respostas à mensagem defende a manutenção dos códigos, pelo menos no que diz respeito a determinados chips listados.

O entendimento geral parece ser o de que, se uma “limpeza” no kernel tiver que ser feita, que envolva uma lista muito bem apurada de chips em desuso para que nenhum grupo de usuários seja prejudicado.

De todo modo, nenhuma decisão foi tomada ainda. Por ora, o assunto continua sendo apenas uma discussão.

Com informações: The Register.

Comentários da Comunidade

Participe da discussão
5 usuários participando

Os mais notáveis

Comentários com a maior pontuação

Sérgio (@trovalds)

Questão interessante. Um pouco é esbarrar no saudosismo e na egolatria de quem ainda quer que o Linux mantenha suporte a hardware tão antigo. Outra é que a manutenção de algo assim acredito que não atinja nem 1% da base linux instalada mundo afora. E disso eu duvido que tenha algo que seja realmente voltado para ambiente corporativo.

Aí entram outras questões: por padrão, a maioria esmagadora das distribuições oferece um kernel “full”, que é gerado automaticamente e dá suporte a quase 100% do hardware conhecido. Pra esse grupo de fato é interessante que deixar esse suporte de lado é uma forma de enxugar o kernel e acabar de vez com algumas instruções obsoletas. Do outro lado está a turma que “constrói” o seu próprio kernel do zero, configurando APENAS o que a máquina tem de hardware instalado. Isso é bastante interessante pra máquinas antigas e/ou antiquadas em que cada porção de instrução desnecessária a menos impacta positivamente na performance.

Eu, particularmente, já fui do segundo grupo. Em um tempo em que tinha um Pentium 3 800MHz com 256MB de RAM, um Ubuntu da época (10.x) já sofria bastante pra rodar. Enquanto o Gentoo (que lhe permite você “costurar o seu kernel”) rodava lindamente e sem engasgos configurado praticamente da mesma forma. Hoje é construir o kernel com tudo mesmo. A diferença prática de performance em configurações mais modernas chega a ser irrisória.

No frigir dos ovos, pra mim tanto faz se tirarem ou não o suporte. Pros mantenedores do kernel é interessante porque vão ter menos código pra manter e revisar. E um parênteses aqui: os mantentedores desse hardware proposto para ser retirado podem ser alocados em manter outras porções do kernel. Pro usuário comum, não muda quase nada. Pro usuário mais heavy, basta perder algum tempo debruçado no kernel deixando ele exatamente do jeito que ele quiser.

André (@andre00)

Em 2005/2006 meu computador era um Pentium MMX 200mhz com 48mb de RAM (pc velho de 1996).
Na época minhas opções de SO eram Windows 98 (muito lento) ou Linux. Passei a usar o Damn Small Linux, que era uma distro super leve onde eu conseguia fazer muito mais coisas do que com o Win98. Na época eu achava fantástico poder usar um software moderno e atual em um computador tão velho.

A maior vantagem do linux é que, se houver interesse suficiente, alguém pode pegar e colocar de volta o suporte no kernel pra qualquer tipo de hardware do qual o suporte tenha sido removido.

Sérgio (@trovalds)

Bem lembrado. Temos isso também.

E no meu raciocínio de antes acabo de acrescentar: teriam os contrários à remoção do suporte oficial medo de que esse hardware pudesse não ser mais suportado de jeito nenhum? Apesar que é coisa tão antiga que duvido que até hoje não tenha sido esmiuçado o suficiente. MAS com o fim do suporte algumas instruções relativas a esse hardware (fora o suporte em si) também sumiriam do kernel. Daí não seria só compilar os drivers respectivos.

Particularmente: eu faria um fork do kernel. Manteria um fork principal pro desenvolvimento ativo e outro pro hardware antigo. Pararia de investir tempo e esforço em coisa antiga e usaria essa energia pra criar coisa nova ou aperfeiçoar coisa que já existe. Voluntário é o que costuma não faltar pra manter coisa antiquada. Aliás o que mais tem é comunidade e canal dedicado a hardware super antigo.

Eu (@Keaton)

Cara… 80486SX e 80486DX? Isso foi lançado em 89 e descontinuado em 2007… a tecnologia já está pra lá de obsoleta… 31 anos de existência e 13 anos de descontinuado… Quem precisar dessas reliquias (pré-)históricas ainda pode usar uma versão mais antiga do kernel do Linux. Não faz o menor sentido manter essas coisas no suporte. Eu sinceramente não consigo enxergar um 486SX conseguindo rodar qualquer distro atual, mesmo modo texto, de forma minimamente aceitável…

Alias, até Pentium Socket 7 já deve sofrer um tanto pra rodar as distros atuais. hahaha

Sérgio (@trovalds)

O medo de quem está contra a retirada é que se sair do kernel não vai achar quem mantenha ou dê suporte a essas relíquias de museu. Aliás imagina ter que ter um cara (ou alguns) na equipe de desenvolvimento e manutenção do kernel só pra ficar testando essas velharias pra ver se não vai surgir algum tipo de incompatibilidade. Devem ser eles e mais uma “meia dúzia” de usuários mundo afora e só. Aliás, a rotina de testes nem deve ser feita mais em máquina física e sim em máquina virtual ou mesmo algum emulador.

Vamos ver o que o Linus fala a respeito. Mas, na boa: deviam é fazer um fork do kernel 2.4.x ou mesmo do 2.6.x e deixar lá só pra quem quisesse rodar Linux nessas “peças de museu”.