Sender: |
|
Subject: |
|
From: |
|
Date: |
Sat, 24 Apr 1999 15:00:19 -0700 |
In-Reply-To: |
Blue Herring's message of "Thu, 22 Apr 1999 06:30:39 -0700" |
X-To: |
|
Reply-To: |
|
Parts/Attachments: |
|
|
Blue Herring <[log in to unmask]> writes:
> One issue I had, was that I read somewhere that protected procedures
> and so forth, when executed, will run until completed, and not be
> interrupted by time slicing and so forth.
This statement is incorrect. A protected operation gives you exclusive
access to a resource, that's all.
> This certainly does the job, but as a learned friend of mine pointed
> out, Ada protected types are meant to passively guard critical section
> data, but time slicing in the middle of execution would be fine, as
> long as mutual exclusion was maintained.
Yes.
> Is there a specific way this happens in the 95 standard, or is it
> implementation dependent?
Read the Ada95 Rationale for the gory details about "bounded priority
inversion" and spin-locks.
> I'm also curious if there is a compiler out there which does enforce
> consistant time slicing, since Gnat supposedly doesn't.
Forget time-slicing. Forget round-robin scheduling.
Don't confuse "concurrency" with "parallelism."
|
|
|