[comp.sys.amiga] A question about DOS devices

wutka@gitpyr.gatech.EDU (Mark Wutka) (11/09/86)

Someone recently posted a sample RAM: device a few weeks ago. This was
very helpful. But I was wondering how you take a device like that and
assign a name to it for DOS (like SER: or RAM:). The reason I was asking
about this is I was wondering how AmigaDOS interacts with these devices.
Does AmigaDOS want to treat the devices like SER: as disks ??  Or does it
request a stream of bytes from each ??  (I.E. does AmigaDOS itself do
the handling of the disk sectors or does it leave that to the device drivers
themselves and just expects a stream of bytes).
The reason I am asking is that I wanted to implement a Pipe device that
maintaned a queue of bytes. That way you might be able to run one process
in the background sending it's output to the PIPE device and then run the
other one and have it take its input from the PIPE device. I seem to recall
people mentioning something about PIPE: already on the NET. Is this in 1.2
or did someone just kludge it with temporary files ?



-- 
...!{akgua,allegra,amd,hplabs,ihnp4,masscomp,ut-ngp}!gatech!gitpyr!wutka

This is what happens when I roll my head on the keyboard:
kl,miojunhygbtmki,l o.;/,kmoij unhybgtvfrcdjnmki l,o.;p/ijn

phillip@cbmvax.cbm.UUCP (Phillip Lindsay) (11/12/86)

> 
> 
> Someone recently posted a sample RAM: device a few weeks ago. This was
> very helpful. But I was wondering how you take a device like that and
> assign a name to it for DOS (like SER: or RAM:). The reason I was asking
> about this is I was wondering how AmigaDOS interacts with these devices.
> Does AmigaDOS want to treat the devices like SER: as disks ??  Or does it
> request a stream of bytes from each ??  (I.E. does AmigaDOS itself do
> the handling of the disk sectors or does it leave that to the device drivers
> themselves and just expects a stream of bytes).
> The reason I am asking is that I wanted to implement a Pipe device that
> maintaned a queue of bytes. That way you might be able to run one process
> in the background sending it's output to the PIPE device and then run the
> other one and have it take its input from the PIPE device. I seem to recall
> people mentioning something about PIPE: already on the NET. Is this in 1.2
> or did someone just kludge it with temporary files ?
> 
> 
> 
> -- 
> ...!{akgua,allegra,amd,hplabs,ihnp4,masscomp,ut-ngp}!gatech!gitpyr!wutka
> 
> This is what happens when I roll my head on the keyboard:
> kl,miojunhygbtmki,l o.;/,kmoij unhybgtvfrcdjnmki l,o.;p/ijn

My try at making a distinction:

SER: = DF1: = "AmigaDos Device" = "handler"

"DOS I/O" = PROCESS(application)->DOS DEVICE(handler)->EXEC DEVICE->HARDWARE

An Exec device (ie. trackdisk.device) knows nothing about AmigaDos...On the
other hand AmigaDos's disk device (handler) knows about an exec device
called the "trackdisk.device". 

[...make you more confused...sorry...]

I believe the basic differences between devices	(ie. AmigaDos Devices [handler]
.not. Exec/Devices) like SER: and DF0: are the type of packets the device 
supports. The "Info" command finds all disk releated devices by sending
DiskInfo packets to every device...if the packet returns sucessfully and the
DiskInfo reveals a disk of type DOS then it is processed as a disk device...so
the device is seen in the info command output. An AmigaDos disk device(handler)
is responsible for several file-system related packets. (look at the back of
Dos Tech. Ref. Manual for an idea.) 

A pipe would more easily be written in the form of an AmigaDos device which
 handles a subset of the file-system packets.

==============================================================================
  Phillip Lindsay - Commodore Business Machines - Amiga Technical Support
    Dirt: 1200 Wilson Drive, West Chester  PA 19380                
    uucp: {ihnp4|seismo|caip}!cbmvax!phillip
    arpa: cbmvax!phillip@seismo -or- phillip@cbmvax.UUCP@{seismo | harvard}
    Tel.: (215) 431-9180
Disclaimer: [someone said I needed this] No warranty is implied or otherwise
   given in the form of suggestion or example. Any opinions found here are of
   my making. [unless Fred pops up (my other self)] 
==============================================================================