[Coco] nitros9 proposal - cache sector 0?

Aaron Wolfe aawolfe at gmail.com
Sat Jan 25 12:07:18 EST 2014


Interesting to know other drivers have done that, gives me hope there
is a reasonably safe way.
I would also not cache writes, that is a bit dicey even for my taste :)
Thanks for the head up, maybe I can find a one of those drivers and
take a look at their logic... at least if I implement it and it goes
all wrong I could sort of blame someone else in that case.
One wrinkle is that while the DW server knows about disk changes, the
CoCo itself really doesn't.  Have to think about that one.

On Sat, Jan 25, 2014 at 11:59 AM, L. Curtis Boyle
<curtisboyle at sasktel.net> wrote:
> Some hard drive drivers for OS9/NitrOS9 already cache sector 0 (for reads only), as that rarely changes. Anything with swappable media is a risk for corruption if there is a crash, power loss, etc., which is why it was usually non-removable media that used the cache.
> Now since Drivewire should be aware when a drive image has changed, you should be able to cache LSN0, and just flag for a forced refresh when the drive image has changed.
>
> Sent from my iPhone
>
>> On Jan 25, 2014, at 10:45 AM, Steve <6809er at srbsoftware.com> wrote:
>>
>> My problem with cache this sector is corruption.  This a very important bit of information of the file system and should the cache buffer get damaged by crash code on the CoCo side, you just lost the disk.
>>
>> A CRC or other check would be needed to verify the data has not been corrupted.  But the CoCo doing this type of check could take as long as reading it from the server.  Don't forget that writing this sector back to the server will take longer because to updating the cache and the CRC.
>>
>> Good idea, but caching this sector may not save the time that you are hoping for.
>>
>> Steve
>>
>>> On 1/25/2014 8:05 AM, Aaron Wolfe wrote:
>>> Its often been noticed that sector 0 of an RBF filesystem gets
>>> read/written an awful lot when doing nearly any disk I/O.  I've been
>>> working on the dw server some this morning and am being reminded of
>>> just how much.
>>>
>>> Would it be practical to cache this sector somewhere?  256 bytes is
>>> not tiny, but also not impossible to find in the typical system page.
>>> The logic for a simple write-through cache would not be very complex.
>>>  I guess I'm looking to the experts for reasons this can't work or
>>> should never be done before looking at how to do it :)  Any thoughts?
>>>
>>> -Aaron
>>>
>>> --
>>> Coco mailing list
>>> Coco at maltedmedia.com
>>> http://five.pairlist.net/mailman/listinfo/coco
>>
>>
>> --
>> Coco mailing list
>> Coco at maltedmedia.com
>> http://five.pairlist.net/mailman/listinfo/coco
>>
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> http://five.pairlist.net/mailman/listinfo/coco



More information about the Coco mailing list