On 18 May 1999 11:50:32, Or Botton <[EMAIL PROTECTED]> writes:

> Ok, here is one of those ideas that poped into my mind latly:
> How about making a driver for Virtual Conventional Memory?

> Granted, most programs today that tend to use Virtual memory do not
> use it really well, however a 640k swap file shouldnt be a real
> problem.. it would be slower since it would be on the disk, but
> still, its a possible solution. Comments?

EMS has been addressing this problem since 1982 or so; it is indeed
"virtual conventional memory", 16k at a time.  The earliest versions
used memory that did not appear ANYWHERE in memory space; later versions
used existing XMS for this purpose.

Of course, it still won't allow you to RUN outsized programs there.
Ignoring for the purposes of this discussion, such things as the "virtual
8086 machines" available under w95 and other extenders ( which still have
a 640k limit, even if run in XMS ), HIMEM.SYS ( on 286s ) and EMM386
( 386+ ) do provide UMB access.  In a conventional PC with 1Meg or more
of RAM, ( including an old 8086 ), the max limit is really 1 meg+64k
- not 640k.  It's just that your BIOS reserves 384k for things like VGA
adapters, etc.  You CAN run programs within that 384k, and there used to
be plenty of drivers that added excess video RAM to the available pool.
( e.g. - use a herc mono with a VGA installed, but unused.  Most of
video RAM can be made available for programs.)

The 640k limit is a function of BIOS and the Intel chip design, rather
than a programming problem.  No non-overlayed program can exceed 1 MB
in RUNNING CODE size. ( Data, tables, etc. may exceed that, of course. )

A lot of older z80 machines used "paged" memory to exceed the 64k address
barrier of that 8-bit chip.  ( Most notably, the Sinclair ZX81 with 128k.)
Since I have built such things from scratch for use in embedded control
systems, it wouldn't be too hard to build a similar board for a PC that
"paged" in different sections of -for example - 512k into lower memory
while running.  Of necessity, though, it would "switch tasks" as those
512k "pages" were switched in-and-out using I/O space to make the
selection, always retaining the same 128k block in memory as the "core
control" program.  However, there would be no market for such a device.
( Dynamic refresh of the "dormant" RAM would be the biggest problem.)

- John T.
-- Arachne V1.5a;alpha, NON-COMMERCIAL copy, http://home.arachne.cz/

To unsubscribe from SURVPC send a message to [EMAIL PROTECTED] with 
unsubscribe SURVPC in the body of the message.
Also, trim this footer from any quoted replies.

Reply via email to