www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1996/03/17/09:17:23

Xref: news2.mv.net comp.os.msdos.djgpp:1900
From: Charles Sandmann <sandmann AT clio DOT rice DOT edu>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Memory Locking , and problems.
Date: Sat, 16 Mar 1996 10:34:15 CST
Organization: Rice University, Houston, Texas
Lines: 16
Message-ID: <314aed87.sandmann@clio.rice.edu>
References: <4iboac$fui AT news DOT ariadne-t DOT gr>
Reply-To: sandmann AT clio DOT rice DOT edu
NNTP-Posting-Host: clio.rice.edu
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

> The problem comes, when I try to lock the memory so that it is not swapped out
> when in low memory. What I use is (to be sure) something like this : 

There is a bug in CWSDPMI in the locking code.  It does not return failures,
and it does not check to see if it can complete when it starts locking.  So,
it will lock 1/2 the memory, fail (due to insufficient memory) then return with
no error.  At that point, any page fault can't be satsified (no free memory)
so it dies with a page fault error.

Because of the way CWSDPMI lazy pages untouched memory, it makes the accounting
a real nightmare for determining how much lockable memory there is.  So I 
took the easy way out and didn't handle the error cases properly, and it
doesn't return the lockable memory field correctly in the meminfo requests.

I'll fix it someday, but for now the effort exceeds the time required+value
returned in my mind (especially with my very tight time budget).

- Raw text -


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