comp.lang.ada
 help / color / mirror / Atom feed
From: "Marin David Condic" <marin.condic.auntie.spam@pacemicro.com>
Subject: Re: Ada Annex E (Just curious :-)
Date: Tue, 6 Mar 2001 10:23:16 -0500
Date: 2001-03-06T15:23:55+00:00	[thread overview]
Message-ID: <982veb$l62$1@nh.pace.co.uk> (raw)
In-Reply-To: pP6p6.95$54.78@www.newsranger.com

I think the advantage would be this: Each processor with its local memory
could have its own "Main Program". The shared memory could be mapped to a
partition under Annex E and simply accessed as if it was another package.
Hence, most of the complexity is abstracted away. Each processor just looks
like its own app without much low-level concern about the other processors
or shared memory. (Naturally, at a high level, they actually have to behave
as if they know of the existence of each other, or there isn't much point in
having the shared resources, right?)

Obviously, there is more than one way to skin this cat, but having glanced
at the rationale for Annex E, I can see how it was intended to be used and
could be fairly handy for some systems with shared resources. I think that a
big drawback would be that to use it in a system that didn't have a nice,
common architecture & RTK/RTOS, you'd have to get your compiler
custom-modified for the hardware you had. (exempli gratis: you have a
computer with multiple processors of different architectures - DSPs,
Graphics, etc, shared memory of different types, no "standard" OS resident
on each processor's local partition so you don't have POSIX calls or
something similar to rely on, ad nauseum... How would you get a compiler -
or compilers? - that would be able to effectively target all the processors
& shared memory & work invisibly unless you go and custom build it? Better
you use different compilers & establish some kind of communications protocol
between them rather than try to use RPCs or other Annex E mechanisms.)

In situations where the multiple resources have some sort of common
underlying mechanisms - and you can live with whatever
overhead/nondeterminism may be imposed - I could see how the Annex E
direction would be a good choice.

MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas    www.pacemicro.com
Enabling the digital revolution
e-Mail:    marin.condic@pacemicro.com
Web:      http://www.mcondic.com/


"Ted Dennison" <dennison@telepath.com> wrote in message
news:pP6p6.95$54.78@www.newsranger.com...
> In article <3AA43C58.105B970D@linuxchip.demon.co.uk>, Dr Adrian Wrigley
says...
> >
> >I was thinking about the viability of using Annex E in a system with
> >multiple microprocessors, sharing only part of their memory space.
> >Suppose there was a coherent cache or multi-port memory, the
> >Annex E implementation could work by referring to blocks of memory,
> >making response times predictable, and performance high.
>
> Admittedly, I don't know all that much about Annex E. But in this
situation, why
> wouldn't you prefer to have direct compiler support for putting tasks on
> different processors, rather than mess with Annex E? The Harris Nighthawk
> (Ada83) compiler worked that way (and was quite nice for hard-realtime).
Ada
> 95's protected types seem tailor-made for this kind of setup. I'd think
Annex E
> would be more suited to a situation where you have multiple processors
that
> share *no* memory and must communicate through I/O.
>
> ---
> T.E.D.    homepage   - http://www.telepath.com/dennison/Ted/TED.html
>           home email - mailto:dennison@telepath.com





  reply	other threads:[~2001-03-06 15:23 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <yJSm6.8482$X_2.140961@news1.oke.nextra.no>
2001-02-28 13:28 ` Ada Annex E (Just curious :-) Marc A. Criley
2001-03-01 17:33   ` Frank
2001-03-02 17:42     ` Robert Spooner
     [not found]       ` <x7vu25bcl22.fsf@smaug.pushface.org>
2001-03-05 19:26         ` Robert Spooner
2001-03-02  9:38 ` Pascal Obry
2001-03-04 19:12   ` Dr Adrian Wrigley
2001-03-05 14:56     ` Ted Dennison
2001-03-05 16:24       ` Marin David Condic
2001-03-06  1:24         ` Dr Adrian Wrigley
2001-03-06 14:51           ` Ted Dennison
2001-03-06 15:23             ` Marin David Condic [this message]
2001-03-06 18:42               ` Kevin Rigotti
2001-03-06 20:56                 ` Marin David Condic
2001-03-06 22:47                   ` Robert A Duff
2001-03-07 14:43                     ` Marin David Condic
2001-03-07 18:02                       ` Randy Brukardt
2001-03-07 19:52                         ` Marin David Condic
2001-03-07 21:04                           ` Robert A Duff
2001-03-07 21:45                       ` Robert A Duff
2001-03-07  6:54             ` Jeffrey Carter
2001-03-07 21:39               ` Robert A Duff
2001-03-08  5:53                 ` Jeffrey Carter
2001-03-07 21:47             ` Robert A Duff
replies disabled

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