Hi Arnould, >I would like to understand exactly why they are a problem.
1. It *is* possible to efficiently read a complete file into memory for the first time *in one go*, with the "load" call. Because, on my request, Tony Tebby kindly disabled the (previously existing) slaving for this call (but unfortunately, only for this call.) 2. It is *not* possible to efficiently read a file by random (or even sequential) access in smaller portions for the *first* time, if your SMSQ/E machine has a lot of physical RAM. Because the slaving algorithm tries to cache the file to RAM while reading, and that becomes *slower*, the more memory it finds. On a 32 MB machine, it is *painfully* slow. It is the consequence of a (for lots of RAM) very poor algorithm. As you can imagine, for long video or audio files, you can not just read the whole file into RAM in one go - so you can't have reasonable multimedia applications. 3. It *is* possible to efficiently read a file by random (or sequential) access in smaller portions for the *second* time, even if you have lots of RAM. Because the slaving algorithm now reads the contents from RAM, not from disk (which was the use of slaving on early machines). On a Q40/Q60 this help is not needed anymore. But at least, the second read is not slowed down anymore, because the slaving algorithm works more efficient if used in this direction. - The best solution would be if TT disables slaving completely, or at least limits it - to use, lets say a maximum of a few hundred kB. The only other help is to deliberately waste RAM by a "dummy" application, so SMSQ/E can't use it anymore. I always do that before I load the Linux kernel for example. QDOS Classic doesn't have this problem. It's purely a SMSQ/E pain. Has this helped? All the best Peter
