レイヴンズカーのプロフィール
Ravenscarプロファイルは、安全性が重視されるハードリアルタイムコンピューティング向けに設計されたAdaタスク機能のサブセットです。Ada 95の別個の技術レポートで定義され、現在はAda 2012規格の一部となっています。このプロファイルは、第8回国際リアルタイムAdaワークショップ(IRTAW 8)の開催地であるイギリスの村、 Ravenscarにちなんで名付けられました。
プロフィールの制限
Ravenscar Ada アプリケーションは次のコンパイラ ディレクティブを使用します。
プラグマProfile ( Ravenscar );これは、次の構成プラグマのセットを記述することと同じです。
プラグマTask_Dispatching_Policy ( FIFO_Within_Priorities );プラグマLocking_Policy ( Ceiling_Locking );プラグマDetect_Blocking ;プラグマの制限( No_Abort_Statements 、No_Calendar 、No_Dynamic_Attachment 、No_Dynamic_Priorities 、No_Implicit_Heap_Allocations 、No_Local_Protected_Objects 、No_Local_Timing_Events 、No_Protected_Type_Allocators 、No_Relative_Delay 、No_Requeue_Statements 、No_Select_Statements 、No_Specific_Termination_Handlers 、No_Task_Allocators 、No_Task_Hierarchy 、No_Task_Termination 、Simple_Barriers 、Max_Entry_Queue_Length => 1 、Max_Protected_Entries => 1 、Max_Task_Entries => 0 、No_Dependence => Ada . Asynchronous_Task_Control 、No_Dependence => Ada . Calendar 、No_Dependence => Ada . Execution_Time . Group_Budget 、No_Dependence => Ada . Execution_Time . Timers 、No_Dependence => Ada . Task _ Attributes );参照
- Ada(プログラミング言語)
- 高信頼性ソフトウェア
- SPARK(プログラミング言語)
- 「Adaリファレンスマニュアル(Ada 2022)」より: ( D.13 レイヴンズカーとジョービックのプロファイル)
参考文献
- アラン・バーンズ(1999年12月). 「レイヴンズカー・プロファイル」(PDF) . ACM SIGAda Ada Letters . XIX (4): 49– 52. doi : 10.1145/340396.340450 . S2CID 29367277 .
- Alan Burns、Brian Dobbing、Tullio Vardanega (2004年6月). 「高信頼性システムにおけるAda Ravenscarプロファイルの利用ガイド」(PDF) . ACM SIGAda Ada Letters . XXIV (2): 1– 74. doi : 10.1145/997119.997120 . S2CID 36061649 .
- 高信頼性システムのためのRavenscarプロファイル(技術報告書)。ISO/WG9 Ada報告者グループ。AI95-00249。