Mail Archives: djgpp/2002/01/19/12:45:35
> Success! Both PMODE 1.3 and CWSDPMI 6b give me full access to my two
> 512MB PCI cards. Excellent utilities, thank you.
I'm glad you found them useful. I'm also happy to hear the WIP CWSDPMI
with 4Mb pages works OK for devices - since it had never been tested that
I know of... Mapping 1Gb of devices is a cool test. Thanks.
> Just for fun, I tried mapping my entire non-DOS memory from 0x00100000
> to 0xFFFFFFFF into one segment, and then I peek bytes from various
> addresses. PMODE 1.3 works great. CWSDPMI 6b works too if I restrict
> my segment to 0x20000000 to 0xFFFFFFFF. For some reason, a wider
> segment provokes SIGSEGV when I peek bytes. Oh well, it was just an
> experiment.
Architecture difference. If not running under VCPI, PMODE does not turn
on paging - so it always just returns a 1:1 map. If running under VCPI,
you would also see some problems with PMODE trying large address spaces.
CWSDPMI tries to always look the same to the program (under VCPI or HIMEM
or raw) and provides features like null pointer protection which require
some memory remapping. So it will always have some issues with trying
to deal with physical to virtual mappings, especially if you try to
map 4Gb of address space.
As the 4Gb address space gets more crowded with devices and memory and
DPMI programs we will see more problems. Windows 9x already has problems
with over 512Mb of memory (which get progressively worse up to 1Gb) - and
you can't use more than 2Gb of address space under NT/Win2K/XP without
a special boot switch (/3Gb) that only works with "server" versions - and
even then you must use special link flags, exe header flags, etc and are
limited to 3Gb.
- Raw text -