Já falamos sobre as inovações que foram feitas no
kernel Linux 4.18 . Hoje falaremos sobre o que foi introduzido na versão 4.20 e uma breve revisão do próximo lançamento.
Com um alto grau de probabilidade, será chamado "5.0".
/ foto de Gregory "Slobirdr" Smith CC BY-SAA versão mais recente do kernel foi lançada em dezembro passado. A atualização está disponível para download no
site oficial . Este comunicado
foi o detentor
do recorde de número de linhas de código adicionadas - seu número aumentou em 354 mil. Mais foram adicionadas apenas na versão 4.13 do Linux (setembro de 2017).
Entre as principais atualizações : novos drivers, segurança aprimorada e alterações no trabalho com matrizes.
Novos drivers e novo hardware
O Linux 4.20 adicionou suporte
aos processadores
híbridos AMD Picasso e Raven 2, sistemas de chips Qualcomm
Snapdragon 835 e também à CPU chinesa Hygon Dhyana, baseada na arquitetura AMD Zen. Isso expandirá o número de dispositivos que podem executar o Linux.
O trabalho também
começou no código da arquitetura AMD Zen 2, mas mudanças sérias o aguardam em versões futuras. As mudanças também afetaram os chips Intel Icelake - os desenvolvedores adicionaram suporte ao
controlador DSI e funcionalidade para controlar os modos de energia do processador.
Foi adicionado um código responsável por trabalhar com o AMD Vega 20, embora continue a ser aprimorado pelo menos até o lançamento da GPU (seu lançamento está previsto para o
primeiro trimestre de 2019 ).
As alterações também afetaram o driver VKMS (Virtual Kernel Mode-Setting), que foi
adicionado na versão anterior do kernel. Ele simula o dispositivo de saída virtual mais simples e é usado para organizar o trabalho do
servidor X ou de qualquer outro subsistema gráfico em máquinas sem monitor. Ao mesmo tempo, fornece a capacidade de usar GPUs existentes. No kernel Linux 4.20, o VKMS
recebeu suporte ao GEM e ao cursor.
Além disso, o novo núcleo
foi capaz de trabalhar com os trackpads Apple Magic Trackpad 2 e os controladores do Xbox.
Alterações de matriz
As matrizes de comprimento variável (VLA) foram removidas do kernel, cujo tamanho é determinado no estágio de execução, em vez de compilar o código. Eles diminuíram a velocidade e poderiam afetar a segurança do sistema operacional. Há muito tempo
pede- se
a Linus Torvalds
que se livre do VLA e ele próprio
criticou ativamente a decisão de usar matrizes de tamanho variável. No kernel 4.20, a maioria deles foi finalmente expulsa.
Também foi implementada uma estrutura de dados do XArray, que
eles tentaram implementar desde a versão 4.17. Este é um tipo de dados abstrato que se comporta como uma grande variedade de ponteiros. Diferentemente
das matrizes dinâmicas , ao usar o XArray, você não precisa alterar nada na unidade de controle de memória para expandir a estrutura. Mas, por enquanto, apenas o cache da página do kernel e o
mapa de memórias estão sendo traduzidos para o
XArray .
Atualizações de segurança
A cifra de bloco
Speck foi removida do Linux 4.20, pois havia suspeitas de
que houvesse backdoors em sua implementação.
Eles também introduziram a função
STACKLEAK (não na 4.19), que protege os usuários do Linux de vários tipos de vulnerabilidades.
Em particular, reduz a quantidade de informações úteis para invasores vindos da pilha do kernel para o espaço do usuário. O STACKLEAK também bloqueia vários ataques a variáveis não inicializadas e oferece ferramentas para monitorar o "estouro" da pilha do kernel.
No Linux 4.20, eles adicionaram o patch STIBP (Single Thread Indirect Branch Predictors), que protege contra ataques do tipo Spectre. Eles visam a vulnerabilidade de hardware dos processadores modernos associados à implementação da computação especulativa .
O que a comunidade pensa sobre o kernel Linux 4.20
Os moradores do Hacker News
observam que o Linux sempre teve dificuldades com os drivers e a quantidade de hardware suportada. As atualizações 4.20 ajudaram a corrigir parcialmente esse problema, expandindo a variedade de arquiteturas disponíveis para o trabalho. No entanto, vários usuários estão preocupados com o fato de que, com a transição para um novo kernel, o sistema operacional começou a funcionar mais lentamente.
O motivo da "regressão" foi um código adicional para
proteção contra Spectre. O patch do STIBP é ativado por padrão e
leva a "freios" em sistemas usando SMT / Hyper-Threading. Em alguns casos, o desempenho pode ser reduzido em 50%. Linus Torvalds já
levantou a questão de iniciar uma função a pedido do usuário, e não automaticamente. Mas até agora nada foi feito.
Como a balsoft observou nos comentários, a degradação do desempenho do Linux devido ao STIBP foi a razão pela qual esse código foi removido das versões do kernel 4.19.4 e 4.14.83 . Portanto, há motivos para acreditar que, no futuro, os desenvolvedores lançarão o kernel 4.20 sem um patch que neutralize os ataques do Spectre.
/ foto hackNY.org CC BY-SAO que eles vão "ensinar" 5.0
Se você seguir a
abordagem de Torvalds para numerar liberações pelo número de dedos em uma pessoa, a versão 21
não deve ser . Por esse motivo, com um alto grau de probabilidade, 2019 será o ano de nascimento do kernel 5.0 do Linux.
Entre as melhorias da próxima versão
, haverá suporte para novo hardware e dispositivos adicionais. Provavelmente, os usuários terão a oportunidade de conectar o teclado para jogos Cougar 700K e trabalhar com o
Chameleon96 - FPGA da Intel.
Os trabalhos continuarão com a questão Y2038 e outras questões de segurança, além de novos drivers para unidades gráficas, híbridas e de processamento central. O tão esperado túnel da WireGuard VPN também chegará ao kernel .
Na próxima versão, o subsistema I3C
aparecerá , que eles não tiveram tempo de adicionar na versão 4.20. Ele incorpora os benefícios
do I2C e SPI e é adequado para trabalhar com a IoT.
Primeiro blog corporativo de IaaS:
Nosso blog do Telegram IaaS: