At 03:23 AM 10/11/98 +0300, you wrote:

>How about can I use forexample same HDD at a same time, or do I have to be
>sure, that it is not used that time by other computer?

Unless the SCSI interfaces have a DOS2 modified for sharing harddisks (does
this exist?), you will get troubles.

The type of problems you'll get are very typical of parallel computing.
Example: both computers want to create a file in the same directory. That
process includes the writing of the file name in the directory sector. This
consists of 3 actions:
1. read directory sector
2. add new filename
3. write directory sector
When computer A performs these actions, I'll call when A1, A2, A3, when
computer B performs them B1, B2, B3.
If the two computers perform the sequence one after another, like A1; A2;
A3; B1; B2; B3, there is no problem. But a sequence like A1; B1; A2; B2;
A3; B3 is a problem:
A1: A reads directory sector
B1: B reads directory sector, which doesn't include A's file
A2: A adds filename
B2: B adds filename to directory which doesn't include A's file
A3: A writes directory sector
B3: B writes directory sector, which doesn't include A's file
The result is that the file A tried to add, is erased from the directory
only moments after it is written.

So while some of you might think that writing a partition by only one
computer is a restriction, it might actually be a safety precaution which
will ensure correct writing of data to your harddisk.

The sequence 1, 2, 3 is an example of what is called a "critical section".
The execution of a critical section by two processes should never overlap
in time. A way to fix this is to make a process (computer) lock a sector
before it is allowed to modify it. This would add actions 0 and 4 to the
sequence:
0. lock the directory sector
1. read directory sector
2. add new filename
3. write directory sector
4. unlock the directory sector

Does anyone know whether the BERT interface has a DOS2 inside which
properly addresses these concurrency problems, or whether using it with 2
harddisks is simply "hoping such bad things will never happen"?

Bye,
                Maarten



****
MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put
in the body (not subject) "unsubscribe msx [EMAIL PROTECTED]" (without the
quotes :-) Problems? contact [EMAIL PROTECTED] (www.stack.nl/~wiebe/mailinglist/)
****

Reply via email to