comp.lang.ada
 help / color / mirror / Atom feed
From: att!bu.edu!encore!pierson@ucbvax.Berkeley.EDU  (Dan L. Pierson)
Subject: Re: Ada and Unix--Blocked Tasks
Date: 6 Aug 91 14:32:38 GMT	[thread overview]
Message-ID: <PIERSON.91Aug6103238@xenna.encore.com> (raw)

Regarding Re: Ada and Unix--Blocked Tasks; mfeldman@june.cs.washington.edu (Mik
e Feldman) adds:

> What Paul might be getting at is the notion that an Ada compiler could
> (should) map each Ada task onto an OS-level process. I see no reason in
> principle why this could not be done; indeed, I think there may be vendors
> who are doing it in Unix (can anyone confirm this?). 

If you refer back to Jerry Callen's posting of a few days ago you'll
see that we do, indeed, do this.  At the minimum, it requires a Unix
extended with shared memory.  This leaves with traditional heavyweight
Unix processes and very slow task creation and switching times.  It
also causes some I/O problems because file descriptors cannot be
shared under normal Unix+shared memory.

The next step on the parallel road is to use a Unix with lightweight
parallel processes such as Mach threads (yes, I know that Mach isn't
really Unix but it doesn't matter) or our UMAXV's variable weight
processes.  Now thread creation is much faster and switching times are
also better.  The I/O problem is solved.  But rondevous (sp?) will
still be slower than a single process implementation and the max OS
thread/process limit will bite some programs.

So the next step is to multiplex Ada tasks as very lightwight entities
on lightweight threads.  I don't know of anyone who's released this
yet. 

All of the above works fine for people who want to use tasks for
parallel computation.  Unfortunately there is another group.  Folks
from a Cedar, Modula-2, etc. background like to use tasks as
programming abstractions to deal with such things as blocking IO.
Some of these people write programs that create *many* tasks; they
don't really want them to all try and run in parallel.  They would
really rather have Ada use a serial lightweight process mechanism like
Sun's.

Since Ada doesn't know about different types of tasks, what should a
poor vendor do?
--

                                            dan

In real life: Dan Pierson, Encore Computer Corporation, Research
UUCP: {talcott,linus,necis,decvax}!encore!pierson
Internet: pierson@encore.com

             reply	other threads:[~1991-08-06 14:32 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1991-08-06 14:32 Dan L. Pierson [this message]
  -- strict thread matches above, loose matches on Subject: below --
1991-08-16 15:43 Ada and Unix--Blocked Tasks bu.edu!inmet!offer
1991-08-14 15:24 torolab4.vnet.ibm.com!jrussell
1991-08-10  4:59 Robert I. Eachus
1991-08-07  1:35 Bob Kitzberger @midnight
1991-08-06 20:12 mcsun!corton!chorus!nocturne.chorus.fr!jloup
1991-08-06 18:48 Mike Murphy
1991-08-06 17:23 David Emery
1991-08-06 14:57 Drew Johnson
1991-08-06 14:17 mcsun!corton!chorus!nocturne.chorus.fr!jloup
1991-08-06 12:32 Arthur Evans
1991-08-06  9:17 Jim Showalter
1991-08-06  4:05 Mike Feldman
1991-08-05 19:56 Howard E. Turner, Jr.
1991-08-05 19:04 EDWARD CRAGG
1991-08-05 16:06 David Emery
1991-08-05 15:25 Fred Stluka
1991-08-05 14:14 Paul Stachour
1991-08-05  5:08 cis.ohio-state.edu!zaphod.mps.ohio-state.edu!sdd.hp.com!news.cs.indiana.e
1991-08-02 18:17 cis.ohio-state.edu!zaphod.mps.ohio-state.edu!sdd.hp.com!spool.mu.edu!cs.u
1991-08-02 13:28 Dennis Doubleday
1991-07-30 19:35 Dave Lewicki
replies disabled

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