delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/09/07/16:12:36

Date: Sun, 7 Sep 1997 13:11:05 -0700 (PDT)
Message-Id: <199709072011.NAA03009@adit.ap.net>
Mime-Version: 1.0
To: djgpp AT delorie DOT com
From: Nate Eldredge <eldredge AT ap DOT net>
Subject: Re: system() and memory

At 07:11  9/7/1997 +0300, Eli Zaretskii wrote:
>
>On Mon, 8 Sep 1997, *** Brett *** wrote:
>
>> Use spawn command. It frees up _loads_ more memory for your programs.
>
>This is incorrect.  `spawn' does NOT release more memory than `system', 
>because in most cases `system' just calls `spawn' internally.
>
>And btw, the actual amount of free memory is probably totally irrelevant 
>for this case.  First, only DOS memory (below the 640KB mark) is what 
>counts.  And second, I suspect that the real problem is that the program 
>in point somehow confuses DOS so it thinks the memory it needs is too 
>large.
The header of an EXE file contains a field telling DOS how much memory it
needs in addition to that needed to load the image. It seems likely this
file has either a very large or a bogus value for that. I'm not sure how you
can tell; Turbo Debugger used to come with a utility called "TDUMP" which
printed such info, I don't know if it still does. Ralf Brown's Interrupt
list also talks about the structure of the header so that might be helpful too.

Nate Eldredge
eldredge AT ap DOT net



- Raw text -


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