comp.lang.ada
 help / color / mirror / Atom feed
From: tmoran@bix.com
Subject: Re: Ada replacements for DOS I/O
Date: 31 Oct 1994 19:31:51 GMT
Date: 1994-10-31T19:31:51+00:00	[thread overview]
Message-ID: <393gn7$kmf@news.delphi.com> (raw)

>The most logical step is of course to write the IO functions we need
There are two problems: traditional hard disk IO in DOS is done via
CPU instructions, not DMA, so it's not convenient to interrupt in
the middle - and you couldn't get much IO/CPU overlap anyway.
The more general problem is that MSDOS is not re-entrant.
So the effect is as if there is a single (DOS) task that does
any and all DOS activity.  Any task wanting a DOS action must
wait for rendezvous with that single DOS task.
  The first problem is lessened under DOS by doing disk IO with
large block sizes, full track reading, disk caching, etc.
For the second problem, you'll have to write your own multi-tasking
DOS.  A non-trivial undertaking.  (OTOH, IBM and Microsoft have
already done that and sell the results as OS/2 and Windows NT. ;)
  Is your problem that you would like useful CPU cycles overlapped
with disk IO, or that (presumably due to interrupts) high priority
tasks can suddenly become unblocked while a low priority task is
running inside non-preemptible DOS?



             reply	other threads:[~1994-10-31 19:31 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1994-10-31 19:31 tmoran [this message]
  -- strict thread matches above, loose matches on Subject: below --
1994-11-03  3:15 Ada replacements for DOS I/O tmoran
1994-11-03 23:05 ` Robert Dewar
1994-10-31 12:46 cwarwick
1994-10-29 22:01 tmoran
1994-10-27 11:25 Elgar the Idiot aka Chris Warwick
1994-10-27 23:04 ` Robert Dewar
1994-10-31 15:08   ` Mark Bayern
1994-11-03 11:23     ` Robert Dewar
1994-11-04  8:17       ` Samuel Tardieu
1994-11-06 21:03         ` Robert Dewar
1994-10-28 12:17 ` Ted Dennison
1994-10-31 13:21   ` Robert Dewar
1994-11-03  9:24     ` Robert I. Eachus
1994-11-05  5:37       ` Robert Dewar
1994-11-01 14:42   ` David Emery
1994-11-02 14:40     ` David Weller
1994-11-02 15:20   ` Robert I. Eachus
1994-11-03 13:01     ` Bevin R. Brett
replies disabled

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