Re: Ravenscar - program termination



matteo.bordin@xxxxxxxxx wrote:
[ snip ]
On real-time kernels supporting the Ravenscar profile, even the main procedure must contain an infinite loop.

I don't think that is an Ada requirement. As I understand it, under the Ravenscar profile the environment task is the master of all application tasks, so it will await their termination; since they never terminate, neither does the environment task (RM 2005 10.2(25)), even if the main procedure terminates and returns to the body of the environment task.

I have seen a Ravenscar Ada implementation that requires the main procedure to end with an infinite loop, but I think that is a non-standard requirement. A trivial one, of course.

--
Niklas Holsti
Tidorum Ltd
niklas holsti tidorum fi
. @ .
.



Relevant Pages

  • Re: Ravenscar - program termination
    ... procedure must contain an infinite loop. ... I don't think that is an Ada requirement. ... Ravenscar profile the environment task is the master of all application ... tasks, so it will await their termination; ...
    (comp.lang.ada)
  • Re: Ravenscar - program termination
    ... procedure must contain an infinite loop. ... Ravenscar profile the environment task is the master of all application ... If a Ravenscar program has no tasks then the main procedure must not terminate, ...
    (comp.lang.ada)