www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1994/11/17/00:12:26

Date: Wed, 16 Nov 1994 15:49:48 -0500 (CDT)
From: Aaron Ucko <UCKO AT VAX1 DOT ROCKHURST DOT EDU>
Subject: Re: Virtual memory and DPMI (and Win 3.1)
To: MRMILLER AT delphi DOT com
Cc: djgpp AT sun DOT soe DOT clarkson DOT edu
Organization: Rockhurst College; Kansas City, MO

>Greetings,
> 
>I recently downloaded and installed djgpp thru 1.12.maint2 and things
>seem to be mostly working -- and have compiled and run several simple
>test programs.
> 
>As part of my testing I ran the following program in a DOS box under
>Windows 3.1, as well as from the normal system command line (ie NOT 
>under Windows):
> 
[deleted]

>As you can see, the program simply trys to allocate 8192 1K blocks, or
>8 Mb.  The idea was to verify that virtual memory worked -- because
>this is more physical memory than is free on my system after
>booting-up.
> 
>I ran the program with the GO32 environment variable set to "nodpmi",
>in addition to not specifying it, which I assume causes dpmi to be used
>if it's available.
> 
>My conflicting results were:
> 
>Normal DOS:
>===========
>    default:    fails after allocating approx 4 Mb with the 
>                  message "DPMI: Not enough memory"
>    nodpmi:     ran sucessfully
> 
>Win DOS box:
>============
>    default:    ran sucessfully
>    nodpmi:     won't run at all with some message about being in V86
>                  mode
> 
>(the actual amount allocated in the cases that failed was not exactly
>the same, although I don't think that's important)
> 
>I'm using DOS 6.2 and QEMM 7.04 with QDPMI,SYS installed, so dpmi
>support should be there even when not using a Windows DOS box, right?. 
> 
>Isn't virtual memory suppose to work, regardless of the presence of
>dpmi (assuming you have the disk space)?  Is there some way to set GO32
>so that the program would work whether or not it was run from a Windows
>DOS box or not?

Not quite.  If you have a DPMI provider, DJGPP assumes it is capable of
providing virtual memory.  QDPMI apparently fails to do this.  OTOH, as
you've noticed, DPMI is the _only_ way to run GO32 programs under Windoze.
Do you really need QDPMI?  If so, can you tell it to provide virtual
memory?  (I apologize for my lack of knowledge of the program.)

--- Aaron Ucko (ucko AT vax1 DOT rockhurst DOT edu; finger for PGP public key) -=- httyp!
-=*=-Just because you're paranoid doesn't mean they aren't out to get you.-=*=-
Geek code 2.1 [finger hayden AT vax1 DOT mankato DOT msus DOT edu for explanation]: 
 GCS/M/S d(-) H s g+ p? !au a-- w+ v+ C++(+++)>++++ U-(S+)>++++ P+ L>++ 3(-) 
 E-(----) !N>++ K- W(--) M-(--) V(--) po-(--) Y+(++) t(+) !5 j R G tv--(-) 
 b+++ !D(--) B--(---) e>++++(*) u++(@) h!() f(+) r-(--)>+++ n+(-) y?

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019