3 ms·
Probably not so much. Most of Win 3.1 is actually still 16bit even in Protected Mode (unless you count win32s which came much later), so everything over 1MB can
by anyfoo 5y ago
Probably not so much. Most of Win 3.1 is actually still 16bit even in Protected Mode (unless you count win32s which came much later), so everything over 1MB cannot even be addressed directly. While you can probably come up with something that makes use of the 32MB under Win 3.1, that would likely be rather artificial and not very typical of what was happening back in the day, not just because 32MB was considered absolutely massive then.
I vividly remember thinking how freaky it must be to have a PC that tests 32MB at boot (and how long it must take), and I think that was even during Pentium times already, not sure... my 486 had 8MB while many still had 4MB.
- joakleaf 5y agoProtected mode using 16 bit segment:offset addressing could use more than 1 MB of memory. The segments were 64K, but the base address of each individual segment was defined in a descriptor table and could point to anywhere within 24-bit addressable memory space on the 286 and 32-bit on the 386. So the 286 was limited to 16 MB of ram in 16-bit protected mode. The 386 not so. Incidentally, I had a 286 that was happy to use all the 4 MB of memory it had when running under Windows 3.1. I remember using Turbo Pascal for Windows, and being amazed that I could allocate more than 640KB — albeit in 64K segments.
- anyfoo 5y agoI know, hence why I said “addressed directly”, which 16 bit segments (like the major Windows portion living in vm86) couldn’t do, but they could still access it through windows (lowercase w, and no pun intended). EMS and XMS essentially did what you describe for example.