> I can think of a couple of things that can be addressed to improve/resolve
> the situation...

If my memory serves me well:

Slave blocks are areas of memory of 512 bytes organised in a linked 
list. And in 128K of memory it is fast to look if a part of the needed 
file is contained in one of the slave blocks. But in 32 MB, even with a 
fast processor, it takes some time. Especially if the file must be read 
one byte after the other and each time the OS forces a look into the 
slave blocks (can you confirm that this is the mechanism?).

One idea was to artificially force the pointer to end of slave blocks 
have the same value as the pointer to start of slave blocks. But this 
does not work IIRC.

Another idea (I just got it): would it be possible to change the size of 
the slave blocks from 512 bytes to 512 kbytes for example? Then there 
would only be 64 possible slave blocks in 32 Mbytes. And the search for 
a part of a file through the linked list of a very small number of slave 
blocks would be a lot faster. Maybe this would be a not too difficult 
hack of SMSQ/E?

Arnould

Reply via email to