オラクルが発表 最近、Linuxカーネルの新しい安定バージョン«Unbreakable Enterprise Kernel 7(UEK R7)«、標準のRed HatEnterpriseLinuxカーネルパッケージの代替としてOracleLinuxディストリビューションで使用するために配置されています。
Unbreakable Enterprise Kernelを知らない人は、これがOracle Linuxが提供するカーネルであり、この新しいバージョンはLinux 5.15カーネルに基づいており、産業用ソフトウェアおよびOracle機器で動作するように最適化されていることを知っておく必要があります。
Unbreakable EnterpriseKernel7の主な新機能
提示されるこの新しいバージョンでは、 Aarch64アーキテクチャのサポートが改善されました。 El メモリページサイズ 64ビットARMシステムのデフォルト 64KBから4KBに削減されました、これは、ARMシステムに典型的なメモリサイズとワークロードにより適しています。
また、 Btrfsファイルシステムの機能が拡張され、 そのため、物理的に保存できなくなった解放されたブロックをマークするために、DISCARD操作の非同期実装がBtrfsに追加されました。 非同期実装により、ドライブがDISCARDを完了するのを待たずに、この操作をバックグラウンドで実行できます。
中に XFSはDAX操作のサポートを実装します ファイルシステムに直接アクセスする場合は、ページキャッシュをバイパスしてダブルキャッシュを回避し、さらに32年に2038ビットtime_tオーバーフローの問題に対処するための変更を行います。これには、bigtimeとinobtcountをマウントする新しいオプションが含まれます。
OCFS2(Oracle Cluster File System)ファイルシステムが改善されました。
私達はまたそれを見つけることができます 低レベルの作業を簡素化するためにZoneFSファイルシステムを追加しました ゾーン化されたストレージデバイスを使用します。 ゾーンストレージとは、ストレージスペースがブロックまたはセクターのグループであるゾーンに分割されているNVMeハードドライブまたはSSDを指し、ブロックグループ全体を更新することによってのみデータを順次追加できます。ブロック。 ZoneFSは、ドライブ上の各ゾーンを個別のファイルに関連付けます。このファイルを使用して、セクターおよびブロックレベルで操作することなく、rawモードでデータを保存できます。つまり、アプリケーションは、ioctlを使用してブロックのデバイスに直接アクセスする代わりに、ファイルAPIを使用できます。
さらに、ハイライト eBPFサブシステムの拡張機能、 そう CO-REメカニズムが実装されました (Compile Once – Run Everywhere)は、コンパイルされたeBPFプログラムの移植性の問題を解決し、eBPFプログラムのコードをXNUMX回だけコンパイルし、ロードされたプログラムを現在のカーネルとBTF(BPFタイプ)に適合させる特別なユニバーサルローダーを使用できるようにします。フォーマット)タイプ。
BPFトランポリンメカニズムを追加、これにより、中央プログラムとBPF間でコールを送信する際の全体的なコストをほぼ完全に削減できます。 BPFプログラムのコア機能に直接アクセスし、ドライバーを一時停止する機能を提供しました。
また、eBPFカーネルサブシステムを使用するように変更されたDTrace2.0動的デバッグシステムの継続的な提供。 DTrace 2.0は、既存のLinuxトレースツールがeBPF上で実行されるのと同様に、eBPF上で実行されます。
cgroupsの場合、メモリスラブドライバが実装されています。 これは、スラブアカウンティングをメモリページのレベルからカーネルオブジェクトのレベルに移動することで注目に値します。eを使用すると、異なるcgroupでスラブページを共有できます。 それぞれに個別のスラブキャッシュを割り当てる代わりに。 cgroup。 提案されたアプローチにより、スラブの使用効率を高め、スラブに使用されるメモリのサイズを30〜45%削減し、カーネルの総メモリ消費量を大幅に削減し、メモリの断片化を減らすことができます。
CTF形式のデバッグデータ配信が提供されます (コンパクトタイプフォーマット)。Cタイプ、関数間の関係、およびデバッグシンボルに関する情報をコンパクトに格納します。
最後に、あなたがそれについてもっと知ることができることに興味があるなら、あなたは相談することができます 以下の詳細
さらに、個々のパッチへの内訳を含むカーネルソースコードは、パブリックOracleGitリポジトリで入手できます。