comp.lang.ada
 help / color / mirror / Atom feed
From: Robert A Duff <bobduff@world.std.com>
Subject: Re: Ada Protected Object Tutorial #1
Date: 1999/12/20
Date: 1999-12-20T00:00:00+00:00	[thread overview]
Message-ID: <wccvh5tmypz.fsf@world.std.com> (raw)
In-Reply-To: 33qr5scnbs04v391ev4541p5bv48hklg3q@4ax.com

Brian Orpin <abuse@borpin.co.uk> writes:

> On 18 Dec 1999 21:52:53 +0100, Laurent Guerby <guerby@acm.org> wrote:

> >No, the Ada compiler can statically make the difference between an
>                           ^^^^^^^^^^
> >internal and external call. There is no locking involved at all for
> >internal calls. That is the fundamental point of protected procedures,
> >they are lightweight and efficient, but you are of course restricted
> >on what you do inside them.  If you need to do more things, you use an
> >entry, and then there are locks and all the stuff you mention.
> 
> I would hope that this could be forced on the compiler as in a
> multiprocessor system with some form of Dual-Port-RAM (or a VME bus) the
> compiler would not have a hope in hell of determining statically whether
> to lock or not.
> 
> It also needs a definition of internal and external.  Data may be passed
> 'internally' but if it is also available externally then it must be
> treated as an external call.

Yes, "internal" and "external" calls are defined in the Ada Reference
Manual.  This definition allows the compiler to distinguish the two at
compile time.  It has nothing to do with dual-port RAM and so forth.

- Bob




  parent reply	other threads:[~1999-12-20  0:00 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-12-15  0:00 Ada Protected Object Tutorial #1 James S. Rogers
1999-12-16  0:00 ` Kaz Kylheku
1999-12-16  0:00   ` John English
1999-12-16  0:00     ` Ed Falis
1999-12-16  0:00       ` Usenet Poster Boy
1999-12-17  0:00     ` Karel Th�nissen
1999-12-17  0:00       ` Mike Silva
1999-12-17  0:00       ` Laurent Guerby
1999-12-18  0:00         ` Kaz Kylheku
1999-12-18  0:00           ` Laurent Guerby
1999-12-18  0:00             ` Kaz Kylheku
1999-12-19  0:00               ` Laurent Guerby
1999-12-20  0:00                 ` Stanley R. Allen
1999-12-21  0:00               ` Robert I. Eachus
     [not found]             ` <33qr5scnbs04v391ev4541p5bv48hklg3q@4ax.com>
1999-12-20  0:00               ` Robert A Duff [this message]
1999-12-18  0:00           ` Robert A Duff
1999-12-18  0:00             ` Kaz Kylheku
1999-12-18  0:00         ` Karel Th�nissen
1999-12-18  0:00           ` Laurent Guerby
1999-12-24  0:00       ` Kenneth Almquist
1999-12-16  0:00   ` James S. Rogers
1999-12-17  0:00     ` Laurent Guerby
1999-12-17  0:00   ` Robert A Duff
1999-12-17  0:00     ` Vladimir Olensky
1999-12-17  0:00   ` Tucker Taft
1999-12-18  0:00     ` Kaz Kylheku
1999-12-18  0:00       ` Robert A Duff
1999-12-18  0:00         ` Kaz Kylheku
1999-12-19  0:00           ` swhalen
1999-12-19  0:00             ` Kaz Kylheku
1999-12-19  0:00               ` Laurent Guerby
1999-12-19  0:00               ` Robert Dewar
1999-12-20  0:00       ` Vladimir Olensky
1999-12-26  0:00         ` Ehud Lamm
1999-12-26  0:00           ` Robert Dewar
1999-12-26  0:00             ` Kaz Kylheku
1999-12-27  0:00               ` Robert Dewar
1999-12-27  0:00                 ` Richard D Riehle
1999-12-27  0:00                   ` Robert Dewar
1999-12-31  0:00                     ` Richard D Riehle
1999-12-27  0:00                 ` Jean-Pierre Rosen
1999-12-27  0:00               ` Robert Dewar
2000-01-02  0:00             ` Tucker Taft
1999-12-17  0:00 ` Robert A Duff
1999-12-18  0:00   ` Kaz Kylheku
replies disabled

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