comp.lang.ada
 help / color / mirror / Atom feed
From: polley@netins.net (Jonathan Polley)
Subject: Re: Ada Task priorities
Date: 1997/01/26
Date: 1997-01-26T00:00:00+00:00	[thread overview]
Message-ID: <polley-ya023180002601971518570001@news.netins.net> (raw)
In-Reply-To: kmradke-2601971335300001@dip7.inav.net


In article <kmradke-2601971335300001@dip7.inav.net>, kmradke@inav.net
(Kevin Radke) wrote:

> Hello,
> 
> Can one guarantee how tasks at different priority
> levels will be executed with respect to eachother?
> (Speaking in both ada83 and ada95 terms...)
> 
> I.E. the following scenario:
> 
>   task a at the highest priority level
>   task b at a priority level between the highest and lowest levels
>   task c at the lowest priority level
> 
> Can one guarantee that if all 3 tasks are eligible for execution
> at the same time, that task a will finish it's work before
> task b begins to run, and task c will only run after both
> tasks a and b finish? (Assuming no tasks rendezvous with
> other tasks during this time?)
> I suppose even OS calls would make this highly platform dependent.
> 
> The ada83 RM seems to be pretty explicit about requiring "The
> highest priority eligible task must be executing at any given
> time", but the ada95 RM seems less verbose about this.  Even
> annex D doesn't seem to require this. (Unless I missed something
> obvious, which I probably have...)
> 
> My personal opinion is that using assumptions about priorities like this
> is just asking for trouble, but I thought I would get other people's opinions
> on this...
> 
> Thanks!
> Kevin
> 
> -- 
> /\/\Under Construction/\/\ kmradke@inav.net

Kevin,

     I have found that (with the Rational compiler at least) if a higher
priority task is waiting on an OS event (i.e., waiting on data from a TCP
socket), it will starve all lower priority tasks.  Because of this, I make
sure that all my I/O tasks (for TCP, UDP, and X) are the lowest priority
tasks in the system.  I have not proven, however, that tasks of the SAME
priority will NOT be starved (although they shouldn't).

Jonathan Polley
polley@netins.net
The opinions expressed here are my own, yada yada yada.




  reply	other threads:[~1997-01-26  0:00 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-01-26  0:00 Ada Task priorities Kevin Radke
1997-01-26  0:00 ` Jonathan Polley [this message]
1997-01-27  0:00   ` Geert Bosch
1997-01-26  0:00 ` Robert Dewar
1997-01-28  0:00   ` Robert I. Eachus
1997-01-27  0:00 ` Geert Bosch
1997-01-27  0:00 ` Michael F Brenner
1997-01-28  0:00   ` Kevin Radke
replies disabled

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