El リアルタイムシステムの概念 これは Linux では近年考えられたことではありません。 約20年前、正確には2005年に始まりました Linux カーネル用の PREEMPT_RT モードの開発を伴う「Realtime-Preempt」 (「-rt」) プロジェクトの一部として。
知らない人のために プリエンプト_RT、彼らはそれを知っている必要があります それはパッチです Linux カーネルの場合オペレーティング システムをリアルタイム オペレーティング システムに変換します。 (リアルタイム)。 PREEMPT_RT の主な目的は、レイテンシーを削減し、タスク実行の予測可能性を確保することです。これは、高速応答が必要なアプリケーションでは非常に重要です。
簡単に言うと、PREEMPT_RT と言えます。 カーネルのほぼすべての部分を中断できます。 これにより遅延が軽減されます。標準のカーネルとは異なり、すべてのセクションを中断できるわけではないため、応答時間の遅延が発生する可能性があります。
2015 年以来、このプロジェクトは Linux Foundation の監督下にあります。 これまで、PREEMPT_RT モードの実装は外部パッチの形で提供されてきました。これらのパッチを元に、以下のようなディストリビューションが行われます。 RHEL、SUSE、Ubuntu は自社製品のリアルタイム エディションを作成しています。 イベントに対する予測可能な応答時間を保証することが不可欠な、金融システム、オーディオおよびビデオ処理デバイス、航空システム、医療、ロボット工学、電気通信、産業アプリケーションなどの分野で高い需要があります。
En 2019 年にプロモーションプロセスが開始されました PREEMPT_RT プロジェクトで開発されたパッチの一部 メインの Linux カーネルに。 カーネル バージョン 5.3 では、リアルタイム モードを有効にするために PREEMPT_RT オプションが構成ファイルに含まれていました。
PREEMPT_RT に必要な printk ビットは linux-next にあります。これ これは PREEMPT_RT に対する既知の最後の障害でした。 RT キューには、 UART 8250 用の「アトミック コンソール」もまだありません Linuxネクスト。これは、「従来のコンソール」から印刷しないという動作を意味します。 緊急時の原子的状況。 8250 UART コントローラーは唯一のものです 現在、「アトミック コンソール」のサポートを提供しています。
藤堂 この仕事は実を結びつつある必要な変更の完全な統合には 6.12 年かかり、完成に近づいています。バージョン XNUMX では、追加のパッチを適用することなくカーネルを PREEMPT_RT モードでコンパイルできることが期待されているためです。
最後の難関と言われていますが、 PREEMPT_RT を有効にできないのは、 printk 関数を使用したノンブロッキング アトミック出力のサポート。 この機能はすでに提供されています linux-next ブランチで採用されました。 さらに、ノンブロッキング アトミック コンソールは、8250 UART コントローラー用の実装が保留中ですが、これが存在しないため、現在、アトミック コンテキストで実行されるコードからコンソールに緊急メッセージを出力できません。
printk ビットをマージすると、X86、ARM64 で PREEMPT_RT を有効にできるようになりました。 そしてRisc-V。これら 3 つの統合されたアーキテクチャには、長年にわたる変更が必要でした。
何年も経っても、私は本質的な変化が何もない立場に置かれています。
彼らに影響を与える可能性のあるキュー。 ARM と POWERPC には重要なパッチがいくつか残っています…
Linuxカーネル開発者 linux-nex ブランチに必要な最新の変更を統合することを発表しました。t、バージョン 6.12 をコンパイルするために使用されます。これらの変更により、カーネルを PREEMPT_RT オプションでコンパイルできるようになり、リアルタイム機能が導入されます。
これらの変更が承認されると、 メインブランチ、PREEMPT_RT モード X86、ARM64、RISC-V アーキテクチャで利用可能になります。 必要なパッチがまだ完全に統合されていないため、ARM および POWERPC アーキテクチャのサポートは後で追加される予定です。
提案されている変更はまだ最終的なものではなく、PREEMPT_RT が 6.12 ブランチに到着しない場合は、来年のバージョン 6.13 まで統合される可能性があることに注意してください。
最後に、 あなたがそれについてもっと知りたいなら、詳細はで確認できます 次のリンク。