From: sandmann AT clio DOT rice DOT edu (Charles W. Sandmann) Subject: go32 & DPMI support (fwd) To: djgpp AT sun DOT soe DOT clarkson DOT edu (djgpp), thomas AT uunet DOT UU DOT NET Date: Thu, 3 Jun 1993 23:33:03 -0600 (CDT) 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.