To Miggy Df:
I'm obviously missing the point you were making. I have only recently started using the net and just found this forum, so I am at a disadvantage in probably having missed earlier correspondence.
My point was really further to Alt255 (Jan 4 & 9), who suggested filing strings and variables to hard disk. Using DOS 6.22 and QB 4.0 my finished programs are always compiled as Exe files. All of these apps used multiple arrays, and to avoid the dreaded 'out-of-memory' I split them into separate, smaller, programs linked with the 'Run' statement. Variables and arrays needed by the next program are filed and picked up by the new program. Fortunately, I haven't had a crash yet because of an oversize program and variables (fingers crossed).
My problem has always been getting arrays large enough to cater for a growing database. Faced in one app with a lot of records in a 6-field array, I decided to group them, 250 at a time, and file them. No problem reading them because successive files could be read into the 250dim array, but to sort them meant shelling out to a commercial sort prog which joined then all together before sorting. Back in QB, the resulting long file was read in 250 at a time and split up into separate files again. It would have been nicer to have kept within QB!
Now I've tried to use one of those apps on a machine using the AMD Athlone 600 and Window 98 DOS within that environment and it crashes when I try to 'shell'! Which makes this discussion particularly interesting to me.
What I was suggesting was that for speed of access these files could be held in RAMdisk as one long random access file. It should be possible to sort them there just as if they were arrays (I have yet to try it).
I don't see a RAMdisk as reducing conventional memory. Under DOS 6.22 I use QEMM as memory manager(far better utilisation than Microsoft's) and as an experiment I have just made a 2Meg RAMdisk in extended memory and optimized it. Dos's MEM now tells me that only 6k of conventional memory have been used and that the largest executable program size is 624K.
Anyone know how to make a Ramdisk from within Windows? The Windows 'Help' file is strangely silent.