[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: File sharing //e ???
Michael J. Mahon <mjmahon@aol.com> wrote:
> David Empson wrote:
>
> >One way you can do this is to use one particular brand of third-party
> >SCSI card (CMS?), which supports hard partitioning of a SCSI hard drive.
> >This allows you to set up independent partitions for each of two
> >computers (each computer must have one of these SCSI cards). You can
> >also set up a shared partition, but it is only safe to write to it from
> >one computer at a time (ideally, one computer should have write access
> >and the other one should only have read access).
>
> Really?! I'm amazed that _any_ Apple SCSI card can deal with a multi-
> master arrangement on the SCSI bus. Don't they all just _assume_ that if
> they haven't started anything, that nothing is going on, and the bus is
> their's to play with?
As far as I know, only the RamFAST SCSI card assumes it has full control
over the SCSI bus.
Both of the Apple SCSI cards implement the SCSI arbitration phase, which
potentially allows multiple masters, and also allows slave devices to be
deselected while they are doing a time consuming operation, so a master
can use the bus to talk to initiate another operation at the same time
(on a different slave). The SCSI ID is used to determine which device
gets control if two of them try to access the bus at the same time
(highest ID wins - each device must have a distinct ID).
Other third party cards which have their own SCSI ID should also support
arbitration (though they might not make use of the disconnect/reconnect
feature).
The catch: the operating system typically has no support for sharing
access to a single hard drive - each copy of ProDOS (or GS/OS, or
whatever) assumes it has full control over details like sector
allocation, that it can keep cached copies of parts of the file system,
and can write anywhere whenever it feels like it.
This means that if one computer writes to a shared hard drive, the other
one may be completely unaware that anything has changed, and write
operations are likely to interfere with each other, corrupting the file
system. (Caching would also cause problems on the reading machine,
since it wouldn't be aware of changes made by the other machine.)
Getting back to the card I mentioned in my previous post:
I'm not certain I have the brand name right, but some time around 1987
or 1988, I saw a three machine plus one drive "SCSI network" which used
these cards.
The SCSI card in question has lots of jumpers, which are used to
configure the partitions on the hard drive. The partitioning scheme is
not compatible with the Apple SCSI cards - the partitions are defined by
ranges of physical block numbers set by the jumpers, and the there is no
partition map on the drive. The partitions can be configured for
read/write or read only access independently for each machine.
The "network" I saw had several problems because they hadn't set it up
properly - they had shared read/write access to the same partition, and
they weren't being careful. They were also exceeding the maximum length
of the SCSI bus. I recall complaints about pieces of directories ending
up in AppleWorks Spreadsheets. :-)
ProDOS-8 doesn't generally cache anything, so it should be safe to have
read-only access to a partition which is written by another computer
(just don't try to access a file which is currently being written by the
other computer). I believe ProDOS-16 would also work.
GS/OS wouldn't work (assuming the cards are supported at all), because
it may cache sectors (parts of the directory in particular), making it
difficult to identify changed data.
--
David Empson
dempson@actrix.gen.nz