Oracle Linux 9 e Unbreakable Enterprise Kernel 7 disponíveis

A Oracle publicou versões estáveis ​​da distribuição Oracle Linux 9 e do Unbreakable Enterprise Kernel 7 (UEK R7), posicionado para uso na distribuição Oracle Linux como uma alternativa ao pacote de kernel padrão do Red Hat Enterprise Linux. A distribuição Oracle Linux 9 é baseada na base de pacotes do Red Hat Enterprise Linux 9 e é totalmente compatível com binários.

Imagens iso de instalação de 8.6 GB e 840 MB, preparadas para arquiteturas x86_64 e ARM64 (aarch64), são oferecidas para download sem restrições. O Oracle Linux 9 tem acesso ilimitado e gratuito ao repositório yum com atualizações de pacotes binários que corrigem erros (errata) e problemas de segurança. Repositórios suportados separadamente com conjuntos de pacotes Application Stream e CodeReady Builder também foram preparados para download.

Além do pacote de kernel RHEL (baseado no kernel 5.14), o Oracle Linux oferece seu próprio kernel, Unbreakable Enterprise Kernel 7, baseado no kernel Linux 5.15 e otimizado para trabalhar com software industrial e hardware Oracle. As fontes do kernel, incluindo a divisão em patches individuais, estão disponíveis no repositório público Oracle Git. O Unbreakable Enterprise Kernel é instalado por padrão, posicionado como uma alternativa ao pacote de kernel RHEL padrão e fornece vários recursos avançados, como integração DTrace e suporte aprimorado a Btrfs. Além do kernel adicional, as versões do Oracle Linux 9 e RHEL 9 são completamente idênticas em funcionalidade (a lista de alterações pode ser encontrada no anúncio do RHEL9).

Principais inovações no Unbreakable Enterprise Kernel 7:

  • Suporte aprimorado para arquitetura Aarch64. O tamanho padrão das páginas de memória em sistemas ARM de 64 bits foi reduzido de 64 KB para 4 KB, o que corresponde melhor aos tamanhos de memória e às cargas de trabalho típicas dos sistemas ARM.
  • A entrega do sistema de depuração dinâmica DTrace 2.0 continuou, que passou a usar o subsistema de kernel eBPF. O DTrace 2.0 é executado sobre o eBPF, semelhante ao modo como as ferramentas de rastreamento existentes do Linux funcionam sobre o eBPF.
  • Os recursos do sistema de arquivos Btrfs foram expandidos. Uma implementação assíncrona da operação DISCARD foi adicionada ao Btrfs para marcar blocos liberados que não precisam mais ser armazenados fisicamente. A implementação assíncrona permite que você não espere que a unidade conclua o DISCARD e execute esta operação em segundo plano. Adicionadas novas opções de montagem para simplificar a recuperação de dados de um sistema de arquivos danificado: “rescue=ignorebadroots” para montagem apesar de danos a algumas árvores raiz (extensão, uuid, reloc de dados, dispositivo, csum, espaço livre), “rescue=ignoredatacsums” para desabilitar verificando somas de verificação de dados e "rescue=all" para ativar simultaneamente os modos 'ignorebadroots', 'ignoredatacsums' e 'nologreplay'. Foram feitas otimizações significativas de desempenho relacionadas às operações fsync(). Adicionado suporte para fs-verity (autenticação de arquivo e verificação de integridade) e mapeamento de ID de usuário.
  • O XFS oferece suporte a operações DAX para acesso direto a arquivos, ignorando o cache de página para eliminar o cache duplo. Adicionadas alterações para resolver problemas de estouro com o tipo de dados time_t de 32 bits em 2038, incluindo novas opções de montagem bigtime e inobtcount.
  • Melhorias foram feitas no sistema de arquivos OCFS2 (Oracle Cluster File System).
  • Adicionado o sistema de arquivos ZoneFS, que simplifica o trabalho de baixo nível com dispositivos de armazenamento zoneados. Drives zoneados significam dispositivos em discos rígidos magnéticos ou SSDs NVMe, cujo espaço de armazenamento é dividido em zonas que compõem grupos de blocos ou setores, nos quais apenas é permitida a adição sequencial de dados, atualizando todo o grupo de blocos. O ZoneFS FS associa cada zona da unidade a um arquivo separado, que pode ser usado para armazenar dados em modo bruto sem manipulação no nível de setor e bloco, ou seja, Permite que os aplicativos usem a API de arquivo em vez de acessar diretamente o dispositivo de bloco usando um ioctl.
  • O suporte para o protocolo VPN WireGuard foi estabilizado.
  • As capacidades do subsistema eBPF foram ampliadas. Foi implementado o mecanismo CO-RE (Compile Once - Run Everywhere), que resolve o problema de portabilidade dos programas eBPF compilados e permite compilar o código dos programas eBPF apenas uma vez e utilizar um carregador universal especial que adapta o programa carregado para o kernel atual e o formato de tipos BPF). Adicionado o mecanismo “trampolim BPF”, que permite praticamente reduzir a sobrecarga ao transferir chamadas entre o kernel e os programas BPF para zero. É fornecida a capacidade de acessar diretamente a funcionalidade do kernel a partir de programas BPF e suspender o manipulador.
  • Foi integrado um detector de bloqueios divididos, que ocorre ao acessar dados desalinhados na memória devido ao fato de que ao executar uma instrução atômica, os dados cruzam duas linhas de cache da CPU. O kernel pode identificar instantaneamente esses bloqueios que causam degradação significativa do desempenho e emitir avisos ou enviar um sinal SIGBUS para o aplicativo que causa o bloqueio.
  • É fornecido suporte para Multipath TCP (MPTCP), uma extensão do protocolo TCP para organizar a operação de uma conexão TCP com a entrega de pacotes simultaneamente ao longo de várias rotas através de diferentes interfaces de rede associadas a diferentes endereços IP.
  • O agendador de tarefas implementa o modo de agendamento SCHED_CORE, que permite controlar quais processos podem ser executados juntos no mesmo núcleo da CPU. A cada processo pode ser atribuído um identificador de cookie que define o escopo de confiança entre processos (por exemplo, pertencer ao mesmo usuário ou contêiner). Ao organizar a execução do código, o escalonador pode garantir que um núcleo da CPU seja compartilhado apenas entre processos associados ao mesmo proprietário, o que pode ser usado para bloquear alguns ataques Spectre, evitando que tarefas confiáveis ​​e não confiáveis ​​sejam executadas no mesmo thread SMT (Hyper Threading). .
  • Para cgroups, foi implementado um controlador de memória de placas, que é notável por transferir a contabilidade de placas do nível de páginas de memória para o nível de objetos do kernel, o que torna possível compartilhar páginas de placas em diferentes cgroups, em vez de alocar caches de placas separados para cada cgrupo. A abordagem proposta permite aumentar a eficiência do uso de laje, reduzir o tamanho da memória usada para laje em 30-45%, reduzir significativamente o consumo geral de memória do kernel e reduzir a fragmentação de memória.
  • A entrega de dados de depuração é fornecida no formato CTF (Compact Type Format), que fornece armazenamento compacto de informações sobre tipos C, conexões entre funções e símbolos de depuração.
  • O módulo DRBD (Distributed Replicated Block Device) e o dispositivo /dev/raw foram descontinuados (use o sinalizador O_DIRECT para acesso direto ao arquivo).

Fonte: opennet.ru

Adicionar um comentário