TEAM-ADA Archives

Team Ada: Ada Programming Language Advocacy

TEAM-ADA@LISTSERV.ACM.ORG

Options: Use Forum View

Use Monospaced Font
Show Text Part by Default
Condense Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Sender:
"Team Ada: Ada Advocacy Issues (83 & 95)" <[log in to unmask]>
X-To:
"Harbaugh, John S" <[log in to unmask]>
Date:
Wed, 11 Aug 1999 13:02:44 -0500
Reply-To:
Pat Rogers <[log in to unmask]>
Subject:
MIME-Version:
1.0
Content-Transfer-Encoding:
7bit
Content-Type:
text/plain; charset="iso-8859-1"
From:
Pat Rogers <[log in to unmask]>
Parts/Attachments:
text/plain (13 lines)
> On a related note, I am curious as to how the Ada run-time system
implements dispatching.  Suppose task A is running at the highest
software priority and encounters a delay statement.  It then yields the
CPU to the next runable task of highest priority.  Okay so far, but what
happens when task A's delay expires?  How does the run-time system know
it should preempt the running task?  Do implementations rely on a timer
interrupt, or poll a list of delayed queues, or something else
altogether?  Perhaps one of the implementation folks would care to shed
a little light on a murky subject.

A timer interrupt is the way that is done -- the handler invokes the
dispatcher when necessary.

ATOM RSS1 RSS2