Ravenscar profil
Ravenscar -profilen är en delmängd av Ada- uppdragsfunktionerna utformade för säkerhetskritisk hård realtidsberäkning . Det definierades av en separat teknisk rapport i Ada 95; det är nu en del av Ada 2012 Standard. Den har fått sitt namn efter den engelska byn Ravenscar , platsen för den åttonde internationella verkstaden i realtid Ada (IRTAW 8).
Begränsningar för profilen
En Ravenscar Ada-applikation använder följande kompilatordirektiv :
pragmaprofil ( Ravenscar ) ;
Detta är samma sak som att skriva följande uppsättning konfigurationspragman:
0
pragma Task_Dispatching_Policy ( FIFO_Within_Priorities ); pragma Locking_Policy ( Ceiling_Locking ); pragma Detect_Blocking ; pragmarestriktioner ( No_Abort_Statements , No_Calendar , No_Dynamic_Attachment , No_Dynamic_Priorities , No_Implicit_Heap_Allocations , No_Local_Protected_Objects , No_Local_Timing_Events_Events _T_E_Request , No_Delay ue_Statements , No_Select_Statements , No_Specific_Termination_Handlers , No_Task_Allocators , No_Task_Hierarchy , No_Task_Termination , Simple_Barriers , Max_Entry_Queue_Length = _ > 1 _Entries = _ > Entries = _ > 1 , Task Nej_beroende => Ada . Asynchronous_Task_Control , No_Dependence = > Ada . Calendar , No_Dependence = > Ada . Execution_Time . Group_Budget , No_Dependence = > Ada . Execution_Time . Timers , No_Dependence = > Ada .
Se även
- Ada (programmeringsspråk)
- Programvara med hög integritet
- SPARK (programmeringsspråk)
- Från "Ada Reference Manual (Ada 202x Draft 19"): ( D.13 The Ravenscar and Jorvik Profiles )
- Alan Burns (december 1999). "The Ravenscar Profile" (PDF) . ACM SIGAda Ada-bokstäver . XIX (4): 49–52. doi : 10.1145/340396.340450 .
- Alan Burns, Brian Dobbing och Tullio Vardanega (juni 2004). "Guide för användning av Ada Ravenscar-profilen i system med hög integritet" ( PDF) . ACM SIGAda Ada-bokstäver . XXIV (2): 1–74. doi : 10.1145/997119.997120 .
- Ravenscar-profil för högintegritetssystem (Teknisk rapport). ISO/WG9 Ada rapportörsgrupp. AI95-00249.
externa länkar