🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.os.msdos.programmer
Article #3921

Re: Coalescing memory for DOS

#3921
From: Ralf.Brown
Date: Thu, 13 Dec 1990 12:02
17 lines
1600 bytes
In article <90346.130938DLV101@psuvm.psu.edu>, DLV101@psuvm.psu.edu (Dwaine VanBibber) wrote:
}A while back there was some discussion about DOS's inability to coalesce
}freed memory and several people posted solutions. I have a couple of questions
}regarding this. First, what is "coalescing"? Why is it needed? When is it
}need (ie, when freeing objects from dynamic data structures?)? Lastly, how
}is it done? Examples in C and/or assembly would be appreciated. Thank you.

Coalescing is the process of combining adjacent free blocks into a single,
larger free block.  If you didn't do that, a sequence of allocations and
frees would eventually fragment the memory to the point where even a small
allocation would fail even though there are hundreds of K available--but none
of the free blocks large enough for the request.
--
UUCP: {ucbvax,harvard}!cs.cmu.edu!ralf -=- 412-268-3053 (school) -=- FAX: ask
ARPA: ralf@cs.cmu.edu  BIT: ralf%cs.cmu.edu@CMUCCVMA  FIDO: 1:129/3.1
Disclaimer?    |   I was gratified to be able to answer promptly, and I did.
What's that?   |   I said I didn't know.  --Mark Twain
Technical Details
Message-ID: <27677be5@ralf>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!samsung!zaphod.mps.ohio-state.edu!wuarchive!udel!rochester!pt.cs.cmu.edu!b.gp.cs.cmu.edu!Ralf.Brown@B.GP.CS.CMU.EDU

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!samsung!zaphod.mps.ohio-state.edu!wuarchive!udel!rochester!pt.cs.cmu.edu!b.gp.cs.cmu.edu!Ralf.Brown@B.GP.CS.CMU.EDU
From: Ralf.Brown@B.GP.CS.CMU.EDU
Newsgroups: comp.os.msdos.programmer
Subject: Re: Coalescing memory for DOS
Message-ID: <27677be5@ralf>
Date: 13 Dec 90 12:02:29 GMT
Sender: ralf@b.gp.cs.cmu.edu
Organization: Carnegie Mellon University School of Computer Science
Lines: 17
In-Reply-To: <90346.130938DLV101@psuvm.psu.edu>