Recentemente, em nosso blog,
falamos sobre o lançamento do kernel 4.17 do Linux e seus principais recursos. Neste post, falaremos sobre a versão 4.18, que será lançada em agosto.
Falaremos sobre o que será feito e o que já foi implementado sob o corte.
/ foto Christopher Michel CCO que acontecerá em 4.18
Em 8 de julho, Linus Torvalds, com uma equipe de desenvolvimento da comunidade,
lançou uma versão de teste do kernel 4.18-rc4. De acordo
com Linus, se tudo continuar bem, o kernel Linux 4.18 será lançado em agosto.
O novo kernel receberá funções destinadas a melhorar ainda mais a estabilidade e reduzir a base de código. No total, devido à remoção de elementos obsoletos, o item 4.18 já “se sentiu melhor” por 100 mil linhas de código, comparado ao item 4.17.
O kernel do Linux 4.18 está aguardando uma série de outras
melhorias . Além disso, sobre alguns deles.
Gerenciamento de energia otimizado para todo o sistema
Os desenvolvedores levaram a sério a eficiência energética:
- Desempenho aprimorado do iowait para o Schedutil, o controlador CPUFreq que usa dados do agendador do processador para determinar sua frequência operacional ideal;
- também melhorou o modo de aumento iowait no driver CPUFreq Schedutil;
- Driver CPUFreq adicionado para o Qualcomm Kryo;
Observe que as melhorias
prometidas na operação do controlador P-State para sistemas com Intel Skylake destinadas a melhorar o desempenho das tarefas de E / S não estarão nesta versão. Provavelmente, eles
aparecerão na versão 4.19. Uma lista completa de atualizações de gerenciamento de energia (embora para rc-1) pode ser encontrada
em lkml .
Aprimoramentos de segurança na montagem do sistema de arquivos
Esse problema foi
resolvido desde 2008: o primeiro conjunto de patches com a função mount () foi lançado. Atualmente,
estão em
andamento trabalhos para permitir que usuários não privilegiados montem com segurança sistemas de arquivos usando o mecanismo FUSE. Isso deve proteger o kernel de possíveis vulnerabilidades.
No entanto, como
observa o desenvolvedor Dave Chinner, sobre a eliminação dos riscos de escalação de privilégios não autorizados ao montar automaticamente um sistema de arquivos (por exemplo, a partir do USB), ainda há mais trabalho a ser feito.
Adicionado suporte para transferência de dados TCP usando zero de cópia
A API
permite ler dados de um canal TCP sem copiá-los entre o kernel e o espaço do usuário. Normalmente, o kernel “
não sabe ” quais pacotes serão baixados pela interface de rede, portanto, não é possível determinar antecipadamente o destinatário do pacote recebido pelo buffer. No caso de cópia zero, os buffers "ligam" ao espaço do usuário após a chegada de um pacote e são associados a um soquete aberto. Segundo os desenvolvedores, todo o processo se tornará mais simples e previsível.
Subsistema AF_XDP acelera a rede
Sua tarefa é permitir que o código executado no espaço do usuário gerencie os pacotes com
mais eficiência , ou seja, use o mínimo possível de recursos de hardware.
Bpfilter - a base para criar uma nova geração de firewalls do kernel
O Bpfilter é um novo
mecanismo de filtragem de pacotes baseado na máquina virtual BPF. A essência de seu trabalho é que ele permite criar programas BPF que podem ser "vinculados" a pontos ao longo do caminho do pacote de rede e, se necessário, executar a filtragem.
O BPF permite que você escreva regras para firewalls em C, o que pode ser uma boa ajuda para os desenvolvedores. O código em si será verificado pelo verificador BPF, que adicionará uma "camada" de segurança adicional para todo o sistema.
O trabalho continua na edição 2038
Na
publicação sobre a versão 4.17, mencionamos o problema
Y2038 - supostas falhas de software devido à apresentação do horário padrão
POSIX que ocorrerá em 19 de janeiro do ano mencionado. Para resolver esse problema, os desenvolvedores adicionam correções para vários sistemas em cada atualização. Por exemplo, a atualização 4.15
incluiu correções para adicionar carimbos de data e hora para o módulo de segurança TOMOYO, bem como uma nova
função de contador de tempo que permite que ela seja redefinida.
Na versão 4.18, os desenvolvedores
continuam a lidar com interfaces COMPAT. Eles consolidaram os cabeçalhos SySV UAPI para o método de mensagens IPC e converteram o SySV IPC no novo mecanismo COMPAT_32BIT_TIME.
/ foto Christopher Michel CCO que ainda não está incluído no release
Na versão 4.18,
eles decidiram não incluir os sistemas de arquivos Bcachefs, Reiser4 e NOVA, além de oferecer suporte ao túnel WireGuard VPN. De acordo com os desenvolvedores, essas coisas ainda não estão prontas para se tornar parte do kernel. Além disso, o subsistema BUS1 e o driver OpenChrome VIA DRM ficaram para trás.
Tudo isso podemos ver em 4.19 ou 5.0. Quanto ao 4.18, então, como já observado,
será lançado em algum lugar no início e meados de agosto.
A principal direção da nossa atividade é a prestação de serviços em nuvem:
Infraestrutura virtual (IaaS) | Hospedagem PCI DSS | Nuvem FZ-152 | Alugue 1C na nuvem
Alguns artigos sobre o assunto em nosso blog sobre Habré: