Ravenscar profile

E48531

The Ravenscar profile is a restricted subset of the Ada programming language designed to support high-integrity, real-time, and safety-critical systems by enforcing deterministic and analyzable concurrency.


Statements (50)

Predicate Object
instanceOf concurrency profile
real-time programming language profile
safety-critical software standard
subset of Ada
appliesToLanguage Ada (programming language)
surface form: "Ada"
designedFor high-integrity systems
real-time systems
safety-critical systems
enforces no abort statements
no asynchronous entry calls
no asynchronous transfer of control
no dynamic allocation of tasking objects
no dynamic priorities
no dynamic task creation
no local protected objects
no requeue on protected entries
no task hierarchy
no task termination
no timed entry calls
no use of Ada select statements
static tasking model
goal certifiability
deterministic concurrency
high reliability
predictable timing behavior
schedulability analysis
hasProfilePragma pragma Profile(Ravenscar)
namedAfter Ravenscar, North Yorkshire, England
property analyzable concurrency
bounded resource usage
deterministic behavior
reduced runtime complexity
restricts Ada protected object features
Ada tasking features
standardizedIn Ada (programming language)
surface form: "Ada 2005"

Ada (programming language)
surface form: "Ada 2012"
supports WCET analysis
compile-time analysis of concurrency
hard real-time constraints
schedulability analysis
static memory allocation
typicalDomain avionics software
industrial control systems
medical devices software
railway control systems
spacecraft software
uses ceiling locking protocol
fixed-priority preemptive scheduling
periodic and sporadic tasks
protected objects for synchronization

Referenced by (1)

Full triples — surface form annotated when it differs from this entity's canonical label.

Ada (programming language) hasProfile Ravenscar profile