Mail Archives: djgpp/1993/06/04/00:57:14
Forwarded message:
> From: ckgp!thomas AT uunet DOT uu DOT net
> Subject: go32 & DPMI support
> Date: Thu, 3 Jun 93 18:46:12 EDT
>
> > Because djgpp still builds executables with data starting at the 4M
> > mark, you'll need at *least* 5M of available DPMI memory to run
> > anything. The dpmiinfo program I posted a while back can give you
> > that information.
>
> I have not yet downloaded 1.10 (that 5 user limit)... butI was wondering
> when go32 uses DPMI does it just use the max amount and no longer swap
> memory to disk (virtual memory), meaning that go32 lets the dpmi server
> handle the virtual memory?
DPMI does all of the memory handling (with one exception). If the DPMI
server supports virtual memory (such as Win or OS/2) then you can use
as much as it supports, and DPMI does the paging for you. So, with DPMI
you are at the mercy of whoever wrote your DPMI server instead of at the
mercy of GO32 (which you have the source for :-) when it comes to page
faults.
The exception is system() - which still copies all of the memory to disk
before executing the child program. The size of the file is typically
fairly small, since I don't write the entire address space, just what
needs to be saved. Without this, you need 10Mb of DPMI memory just to
compile "hello world" type programs.
- Raw text -