Linux 6.4 はすでにリリースされており、Rust などの改良が加えられています。

Linuxカーネル

Linux は、Unix カーネルに似た大部分が無料のカーネルであり、無料のオープン ソース ソフトウェアの主要な例の XNUMX つです。

XNUMXか月の開発の後、 LinusTorvaldsがの発売を発表 新しいカーネルバージョン Linux 6.4 そして最も重要な変更の中でも、Rust 言語のサポートの継続的な統合が際立っています。 インテル LAM メカニズムのサポート、 プロセスレベルでのメモリページの重複排除、BPF でのイテレータのサポート、 RISC-V システムの休止状態のサポート、 とりわけ。

この新しいバージョンでは、16012 人の開発者からの 2080 の修正が統合され、1006924 行のコードが追加され、597615 行が削除されました。

Linuxカーネル6.4の主な新機能

この新しいバージョンの Linux 6.4 では、主な新機能の XNUMX つが次のとおりです。 ユーザー空間プロセスからカーネルレベルのドライバーを作成する機能。 kthread API を使用する場合とは異なり、ユーザー空間で作成されたコントローラーはプロセスのプロパティを継承し、ユーザー空間プロセスの資格情報を使用して実行されます。

目立った変更のもう XNUMX つは、次のブランチからもたらされます。 機能の移植が続くRust-for-Linux ドライバーとカーネル モジュールを開発するための第 6.4 言語としての Rust の使用に関連しています。 この新しいバージョンの Linux XNUMX では、 接続されたデータ構造を安全に初期化するための pin-init API、条件変数 (CondVar) のサポートと同様に、 ユーザー空間と対話するための UAPI パッケージが実装されました。

それに加えて、私たちはそれを見つけることもできます 同一のメモリページを結合するメカニズムの変形が実装されました。 これはプロセス レベルで機能し、同じコンテンツのページを重複排除することでメモリ消費を大幅に削減できます。 新しい実装の KSM メカニズムとは異なり、 重複排除のサポートはプロセス全体で prctl 経由で有効になります。 また、Madvise を使用してメモリ範囲ごとにアクティブ化する必要がなく、子プロセスに継承されるため、アプリケーションが大幅に簡素化されます。

また、 非特権プロセスは PSI カーネル サブシステムから情報を取得できます (圧力失速情報)、 ユーザー空間の分析が可能 さまざまなリソース (CPU、メモリ、I/O) のタイムアウト情報を使用して、システム レベルの負荷と速度低下のパターンを正確に評価します。

また、アーキテクチャに基づくシステムの場合、 RISC-V、休止状態がサポートされており、カーネルは PIE モードでリンク ファイルとしてコンパイル可能 (位置に依存しない実行可能ファイル) に加えて、 新しいシステムコール riscv_hwprobe() を追加しました 利用可能なハードウェアの製造元とアーキテクチャに関する情報を提供します。

オンザフライで FS スキャンを実装するために XFS に変更を追加しました。 (インライン クリーンアップ)。これは次のリリースのいずれかに含まれる予定です (ただし、fsck のオンライン ドキュメントはすでに追加されています)。

Ext4 では入力の構成が簡素化されています。 それらが実施されてきたことに加えて、 i ノードの事前割り当ての最適化 ランダム書き込みが大量に行われるシステムのパフォーマンスを向上させるため。 メモリ ページの読み取りおよび書き込み操作は、メモリ ページ フォリオの使用に移行されました。

btrfs は、scrub_stripe を使用するようにファイルシステムのチェック コードを書き換えました。、RAID56 検証をサポートし、約 10% 高速に実行されます。 ディレクトリ ロギングのパフォーマンスが向上しました (ロギング中のインデックス列挙を削除することで、fsync の実行にかかる時間を 4 分の XNUMX に削減できました)。

目立つ他の変更 この新しいバージョンの:

  • F2FS ファイル システムは、ゾーンのサイズが XNUMX の累乗の倍数ではないゾーン ブロック デバイスのサポートを追加します。
  • ublk ドライバーの ioctl コマンドのエンコーディングを変更しました。これにより、ユーザー空間のプロセス側に特定のロジックが導入されます。
  • 古いドライバーとの互換性を確保するために UBLK_LEGACY_OPCODES ビルド設定を追加しました。
  • 動作中に SELinux モジュールを無効にしてダウンロードすることは禁止されています。
  • SELinux の無効化は、カーネル コマンド ラインで「selinux=0」パラメータを渡すことによって、初期ブート段階でのみ実行できるようになりました。
  • Hyper-V ドライバーを使用して PCI デバイスをゲストに転送するために使用される Hyper-V ハイパーコールのサポートが追加されました。 S
  • KVM ハイパーバイザーは、SMCCC リクエスト処理をユーザー空間に移動するフレームワークを実装し、仮想化関連の多くの操作をカーネルに追加せずにユーザー空間で実装できるようにします。
  • BPF プログラムを接続して NetFilter バインディングを処理する機能が追加されました。たとえば、ルーティング前の段階でパケットの転送やアクションの実行を決定するコントローラーを作成できます。
  • msi-ec ドライバーが追加され、電源プロファイルの選択、ファン速度制御、LED 制御、負荷レベルなどの高度な MSI ラップトップ機能をユーザー空間で制御できるようになりました。

最後にあなたが それについてもっと知りたい、詳細を確認できます 次のリンクで。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:AB Internet Networks 2008 SL
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。