From: Simon Wright <simon@pushface.org>
Subject: Re: Ravenscar - release multiple tasks when an event occurs
Date: Tue, 05 May 2020 17:05:27 +0100
Date: 2020-05-05T17:05:27+01:00 [thread overview]
Message-ID: <lyimhafjug.fsf@pushface.org> (raw)
In-Reply-To: db2fa833-c660-4c4e-9e28-6947aec11fb8@googlegroups.com
Jere <jhb.chat@gmail.com> writes:
> On Sunday, May 3, 2020 at 6:43:31 AM UTC-4, Simon Wright wrote:
>> I have several sensor tasks (in general, 2 at the moment) which will of
>> course be created and start execution during elaboration.
>>
>> I'd like to ensure that they don't actually start reading and reporting
>> input data until the system is in a state to receive them.
>>
>> With the Ravenscar profile it's not obvious how to do this (only one
>> entry per PO, only one task allowed to queue). I suppose I could just
>> ignore the inputs until the system's ready to receive them! but has
>> anyone a scheme which is less clunky?
>>
>> An alternative would be to try for the Jorvik profile, which does allow
>> multiple tasks to queue on one entry.
>
> I don't have any experience using ravenscar, so this is somewhat of
> a question as well as a potential option. I know you cannot do
> relative delays, but can you do absolute delays? If so, could that
> then give you the option to have a single protected object with a
> get function and set procedure (no entries) and you just spin lock
> at the beginning of all your tasks looking for that protected
> object to change state?
With Ravenscar, you can _only_ do absolute delays. Jorvik (not yet in
the compiler, GNAT_Extended_Ravenscar is the equivalent) allows relative
delays too.
I think it would be unwise to spin lock! A loop with a short delay would
do.
next prev parent reply other threads:[~2020-05-05 16:05 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-03 10:43 Ravenscar - release multiple tasks when an event occurs Simon Wright
2020-05-03 11:50 ` Niklas Holsti
2020-05-05 16:02 ` Simon Wright
2020-05-05 16:16 ` Niklas Holsti
2020-05-03 14:45 ` Jere
2020-05-05 16:05 ` Simon Wright [this message]
2020-05-03 15:09 ` J-P. Rosen
2020-05-05 16:11 ` Simon Wright
2020-05-05 17:02 ` Niklas Holsti
2020-05-03 15:13 ` Jeffrey R. Carter
2020-05-05 16:12 ` Simon Wright
2020-05-05 16:22 ` Simon Wright
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox