O Linux está pronto para a "Revolução ARM"?

Não havia pensado por esse ponto de vista, é possível que sim.

Talvez eu tenha me expressado mau ou tenha ficado dúbio nesse ponto, o que quis dizer foi que apesar da diversidade louca de hardwares dentro do PC o que gera de positivo uma relativa liberdade de escolha, também gera de negativo um desperdício de recursos por conta de pacotes de drivers e módulos desnecessários, o que opera segundo regras mais ou menos estabelecidas no passado pela IBM que permitem por exemplo que se tenha Windows ou Linux em uma gama absurda de máquinas.
O modelo modular dos PCs versus por exemplo o modelo “monobloco” (hardware + software casados) é uma via de mão dupla, por um lado você consegue atingir o maior número de máquinas possíveis pela construção generalista, por outro se perde performance justamente por essa diversidade. Se tivessemos uma distro ARM para todos esses minicomputadores teríamos a liberdade de instalá-la em qualquer maquininha, mas, a performance cairia por faltar otimização. Acho que esse será um dilema para os futuros PCs ARM: como criar sistemas operacionais que funcionem nos mais diferentes hardwares de forma mais ou menos uniformizada (dai a palavra padronizada) sem perder o desempenho enxuto, mas, honesto que caracterizou os ARMs até aqui.

1 curtida

Acho que tem muita coisa pra acontecer ainda, a Apple nem lançou esses produtos ainda, nem sabemos se vai dar certo que tipo de problemas podem ocorrer.Ainda existe muita coisa legada que depende de X86 usado no mercado corporativo, essa mudança não vai acontecer tão rápido. Mas uma coisa que me pergunto é se o uso de ARM pode ajudar na compatibilidade de aplicativos Android com o Linux.

A tendência (fora do mundo Apple que usará um ARM próprio) é essa aqui:

https://www.ztop.com.br/qualcomm-pc-sempre-conectado/

Supostamente (nuca vi) já até temos um hardware destes em nosso mercado:
https://www.ztop.com.br/gadget-educacional-do-dia-positivo-wise-n1212s/
http://www.positivoemfoco.com.br/notebook-hibrido-para-salas-de-aula/
https://www.meupositivo.com.br/positivowise/
Seria um primeiro passo tímido.

O Windows voltou a se mexer em relação ao ARM:

Viram que o Wine já está se preparando para dar suporte ao Mac ARM64:
https://www.edivaldobrito.com.br/wine-comecou-a-fazer-experiencias-com-o-suporte-do-macos-arm64/
?

1 curtida

Não sei se vc sabe, mas o Manjaro virou empresa, e ja tem parceria com empresas de hardware e lá fora ja vendem notebook Manjaro ARM tem bom tempo! bem antes da Apple anunciar sobre a troca de arquitetura!

1 curtida

NetBSD é o único sistema operacional moderno que ainda roda no Dreamcast e computadores da Atari hahahaha

1 curtida

Pensava que o Android já fosse isso, ele não é?

Android sempre será um caso à parte.

É, parece que ARM será a tendência mesmo:

1 curtida

Não seria o caso de lançarem uma distro live com todos os drivers genéricos possíveis (podendo se atualizar quando conectado a internet, antes da instalação, mas avisando ao usuário essa existencia para que o mesmo o permita) e, tipo, ao invéz de uma instalação tipica ocorrer uma compilação de kernel a partir da fonte ISO/temp que está rodando na memória na máquina que está para receber o sistema?
Com isso, só existiria o necessário na máquina, e ainda por cima, otimizado.

É uma possibilidade, teria que ser um assistente de atualização do tipo net installer, mas, com características do Anarchy.

1 curtida

@andryel e @TiagoCardoso

Essa discussão também acontece no mundo x86. O kernel e os módulos binários que são distribuídos em praticamente todas as distros são compiladas com a instrução “generic x86_64”. Quem tiver disposição pode compilar seus próprio kernel e módulos, incluindo opção de adicionar instruções otimizadas e específicas para o seu processador. Essa opção, embora funcione bem no geral, é sempre disponibilizada como “experimental” pois não há garantias que o código se comporte exatamente como testado no genérico. E mais ainda, nesse caso vc perde a compatibilidade com hardware antigo.

Por exemplo: Eu tenho um Ryzen. Instalei o Gentoo e compilei o kernel e todos os programas ativando instruções específicas para o ryzen (gcc -march=znver1). Se eu tirar o hd e tentar inicializar o sistema em qualquer outro computador, só vai funcionar se for arquitetura ryzen1 ou superior (ryzen2).

Porém eu acho difícil que isso vá acontecer com os ARM, pois por definição é uma arquitetura baseada em poucas instruções de máquina (Ver comparação RISC x CISC). Nesse caso não vai acontecer de a cada nova geração de processadores haver novas instruções que possam ter ganho de desempenho de processamento, tornando compilações dependentes do hardware menos vantajosas.

Se a preocupação é com os módulos do kernel para compatibilidade com máquinas antigas, eu não vejo isso um problema pois mesmo com toda essa infinidade de hardware disponível o kernel + módulos ocupa quanto de espaço? 300 MB? Para sistemas embarcados ou com restrição de armazenamento pode ser importante, mas para os dispositivos de uso geral (smartphones e computadores) esse valor de armazenamento é extremamente pequeno.

3 curtidas

Como vocês veem a aquisição da fabricante de chips ARM pela Nvidia? Nos fóruns do Reddit, o pessoal não gostou dado ao histórico de relativo descaso da Nvidia em relação ao Linux.

Creio que pode impulsionar a adoção de desktops e laptops ARM, dissipando de vez qualquer temor inicial a falta de “hardware parrudo”. Talvez até a Apple passe a adotar GPUs Nvidia em lugar de AMD (já ia escrevendo ATI, rsrsrsrs).

Mas e quanto o suporte ao Linux? Se compararmos o suporte Nvidia x AMD, o do último é melhor pro Linux porque a própria empresa fornece um driver livre, diferente da Nvidia. Me pergunto se teremos situação similar com os processadores.

É como a Nvidia nunca se mostrou muito amistosa com Linux, a menos que ela mude de posicionamento, teremos que esperar uma atitude talvez colossal da comunidade para se adequar a uma possível nova realidade. Também temos que aguardar o posicionamento de AMD e Intel que devem começar a se mover. Eu até não me surpreenderia se a Via voltasse como opção ao mercado, haja visto que os processadores Via são populares ainda na Ásia:

Isso em computadores alternativos e devices.

1 curtida

Não vejo motivo para os processadores (CPUs) terem problemas de driver. Drivers são necessários para se comunicar com coisas na qual o SO não está rodando. Um Linux de ARM está rodando direto no processador, e o “equivalente” de drivers para CPU (microcódigo) é processado pela placa-mãe independentemente do SO.

Os problemas vão ser os mesmos de sempre, placas mãe travadas pelo fabricante para rodar apenas código autorizado por ele. E isso já acontece desde o lançamento do Android.

2 curtidas

Acho que por enquanto é só sentar e esperar mesmo. Mas se a NVidia for uma boa empresa pra escutar feedback, se a comunidade linux se mover propagando tipo uma hashtag solicitando a NVidia dar mais suporte ao linux, pode ter algum efeito positivo. Senão é só sentar e aguardar mesmo.
Fora disso seria alguém construir um processador open hardware, mas essa é uma visão mais utópica.

1 curtida

Também não vejo motivo para incompatiblidades de processador.

Na verdade só haveria incompatibilidade se, malandramente, a nvidia colocasse a necessidade de algum firmware estilo microcode que fosse binário para o processador dela funcionar plenamente. Mas aí já seria uma jogada específica para derrubar qualquer implementação que não pagasse pela utilização do processador naquele sistema operacional.

Se eles limitarem demais, acaba abrindo mercado pra outros players, como falaram aí da VIA.