comp.lang.ada
 help / color / mirror / Atom feed
* Protected handlers & entry bodies
@ 2015-01-18 23:15 Simon Wright
  2015-01-19 20:18 ` Randy Brukardt
  0 siblings, 1 reply; 6+ messages in thread
From: Simon Wright @ 2015-01-18 23:15 UTC (permalink / raw)


This is for a Ravenscar RTS.

In GNAT, if an protected entry's guard is opened by a protected
procedure, the entry code is executed in the thread of control (task)
that called the protected procedure. I haven't looked in detail at the
normal RTS, but I suspect that after a protected procedure call each of
the entries is serviced (the guard is evaluated, and if open the entry
code is called). In Ravenscar, there's only one entry, so things are
a bit simpler.

The generated code appears to do exactly the same for protected
procedure handlers, in which case the entry code is going to be executed
in the thread of the ISR.

This may well require restrictions on what can be done in the entry. Is
this covered by C.3.1(17)?

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-01-21 20:39 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-18 23:15 Protected handlers & entry bodies Simon Wright
2015-01-19 20:18 ` Randy Brukardt
2015-01-19 21:36   ` Simon Wright
2015-01-20 22:05     ` Randy Brukardt
2015-01-20 22:46       ` Simon Wright
2015-01-21 20:39         ` Randy Brukardt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox