comp.lang.ada
 help / color / mirror / Atom feed
From: himel@mips.UUCP (Mark I. Himelstein)
Subject: Re: Microsoft OS/2 -- Ideal for Ada
Date: Wed, 17-Jun-87 00:14:51 EDT	[thread overview]
Date: Wed Jun 17 00:14:51 1987
Message-ID: <459@gumby.UUCP> (raw)
In-Reply-To: 1624@aw.sei.cmu.edu

In article <1624@aw.sei.cmu.edu> firth@bd.sei.cmu.edu.UUCP writes:
...

>I agree that it is inappropriate to map Ada tasks into Unix processes.
>For one thing, the overhead is insupportable.

I agree too mainly due the horrible overhead of unix processes and the
shared nature of the ada memory model.


>Unfortunately, the alternative doesn't work either.  Two serious
>problems

I presume you mean multi-tasks within one unix process.



>(a) Unix does not provide asynchronous IO to a process.  If one Ada task
>    does a read() from the terminal, the whole program blocks.  And you
>    thought polling died out in the '60s?

BSD UNIX provides full asynchronous IO. This is done with ioctl's and fcntl's
and setting up a signal handler for SIGIO.


>(b) A large number of Unix system calls are not reentrant.  If one Ada
>    task is suspended in a malloc(), chaos can ensue.

Since Ada tasks would share memory, allocating from a shared heap like malloc
represents a critical region and other tasks should be blocked.

Mark I. Himelstein
decwrl!mips!himel

  parent reply	other threads:[~1987-06-17  4:14 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1987-06-13  0:06 Microsoft OS/2 -- Ideal for Ada Herm Fischer
1987-06-15 11:40 ` martillo
1987-06-16 12:50   ` Robert Firth
1987-06-16 22:24     ` martillo
1987-06-17  4:14     ` Mark I. Himelstein [this message]
1987-06-17 22:13       ` Yakim Martillo
  -- strict thread matches above, loose matches on Subject: below --
1987-06-17 16:28 "VAXR::IVANOVIC"
1987-06-19 11:33 ` martillo
replies disabled

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