[comp.arch] Asynchronous I/O on micros

andras@alzabo.ocunix.on.ca (Andras Kovacs) (02/07/91)

In article <63703@brunix.UUCP> cgy@cs.brown.edu (Curtis Yarvin) writes:
>In article <13632@lanl.gov> jlg@lanl.gov (Jim Giles) writes:
>>It's even showing up on (plans
>>at least) microcomputers.
>
>Hmm... I'd be interested in seeing you cite something on this (translate:
>"OH BOY!  You mean I can run CMS on my PC?"

    The proprietary OS for the Archimedes line of micros, RISC OS, has the
necessary hooks to implement asynchronous file-system I/O. I don't know about
the other OS (which is a UNIX implementation) though.

    Andras

-- 
Andras Kovacs       "Could somebody tell me what kind of a world we live in
andras@alzabo.UUCP   where a man dressed as a BAT gets all of my press..."
Nepean, Ont.                                               The Joker

davidsen@crdos1.crd.ge.COM (Wm E Davidsen Jr) (02/12/91)

In article <1991Feb11.091551.22202@eecs.wsu.edu> pcooper@yoda.UUCP (Phil Cooper - CS495) writes:

|              I would guess that it would be fairly easy to implement such
| abilities on any micro which has true (preemptive) multi-tasking.  Just
| spawn a new task to do the disk I/O (while the parent continues running) and
| signal when it is done.  

  That's how the later versions of bundle and iobuf work, using shared
memory buffers and semiphores. Posted months ago to the moribund
comp.source.unix group.
-- 
bill davidsen	(davidsen@crdos1.crd.GE.COM -or- uunet!crdgw1!crdos1!davidsen)
  "I'll come home in one of two ways, the big parade or in a body bag.
   I prefer the former but I'll take the latter" -Sgt Marco Rodrigez

daveh@cbmvax.commodore.com (Dave Haynie) (02/22/91)

In article <1991Feb11.091551.22202@eecs.wsu.edu> pcooper@yoda.UUCP (Phil Cooper - CS495) writes:
>In article <1991Feb7.004530.29359@alzabo.ocunix.on.ca> andras@alzabo.UUCP (Andras Kovacs) writes:
>>In article <63703@brunix.UUCP> cgy@cs.brown.edu (Curtis Yarvin) writes:
>>>In article <13632@lanl.gov> jlg@lanl.gov (Jim Giles) writes:
>>>>It's even showing up on (plans at least) microcomputers.

>>>Hmm... I'd be interested in seeing you cite something on this (translate:
>>>"OH BOY!  You mean I can run CMS on my PC?"

>>    The proprietary OS for the Archimedes line of micros, RISC OS, has the
>>necessary hooks to implement asynchronous file-system I/O. ...

>    My Commodore Amiga micro has a fully functional asynchronous disk I/O...

The capability for asynchronous I/O in any OS (now that micro OSs are generally
approaching the complexity of a good portion of the OSs used on larger systems)
has alot to do with how these things are done in that OS.  If it wasn't
there from the beginning, it might be rather annoying to add on.  Especially
in the systems that implement most I/O type things as subroutines in a single 
threaded kernel program.

The Amiga's asynchronous capabilities stem for the fact that it implements
most I/O, like a filesystem for example, via servers.  If you want to open a
file, you send a filesystem message packet to the filesystem server.  Your
program can go on or wait, it's up to you.  There are OS supported front
ends to these things, which give you typical open(), read(), etc. equivalents;
basically, just send the packet and wait for the reply.

>   -Phil-


-- 
Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
	"What works for me might work for you"	-Jimmy Buffett