X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-workers-bounces using -f Message-ID: <3C72ED37.A7BD29CC@yahoo.com> Date: Tue, 19 Feb 2002 19:26:31 -0500 From: CBFalconer Organization: Ched Research X-Mailer: Mozilla 4.75 [en] (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: djgpp-workers AT delorie DOT com Subject: Re: Malloc/free DJGPP code References: <10202192346 DOT AA14305 AT clio DOT rice DOT edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Reply-To: djgpp-workers AT delorie DOT com Charles Sandmann wrote: > ... snip ... > > If there was some way to do a binary search in a sorted list we could > make that a log(n) type behavior which would IMO be acceptable, but > O(n) is bad. > > > I can easily make a portion of the revised memblock compatible > > with the original, in that the size and freelist pointer will be > > at the same (-ve) offsets from the user pointer. That would > > forbid the safety improvement I am making to guard against > > off-by-one indexed operations. Publishing the offsets of those > > two items in implementation space would allow gradual conversion > > of unclean software that uses them, so that eventually the module > > would be truly independant If the other software uses only the > > size that is better. I envision a globally available variable: > > > > const int __msize_offset = offsetof(memblock, data) > > - offsetof(memblock, size); > > > > and the header contains: > > > > extern const int __msize_offset; > > > > which is initially constrained (and documented) to be the same as > > the present. > > Be aware that alignment is also a very important issue here that we > just discussed about a week ago - I don't think we've decided which > of the 2 ways we should pick yet to fix our occasional alignment > offset issue. I'm pretty uncomfortable making any major changes to > malloc() for many reasons if it can be avoided. If sbrk alignment is controlled malloc alignment is controlled. Pick a size. -- Chuck F (cbfalconer AT yahoo DOT com) (cbfalconer AT XXXXworldnet DOT att DOT net) Available for consulting/temporary embedded and systems. (Remove "XXXX" from reply address. yahoo works unmodified) mailto:uce AT ftc DOT gov (for spambots to harvest)