Message-ID: <3E78A90E.A480B3C5@yahoo.com> Date: Wed, 19 Mar 2003 12:29:50 -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: nmalloc revisited References: <200303141601 DOT RAA26911 AT lws256 DOT lu DOT erisoft DOT se> <3E721051 DOT 645AA67D AT yahoo DOT com> <3E74B558 DOT 3629CBA9 AT yahoo DOT com> <1438-Sun16Mar2003203300+0200-eliz AT elta DOT co DOT il> <3E74E454 DOT BC734243 AT yahoo DOT com> <3E753E85 DOT 81830981 AT phekda DOT freeserve DOT co DOT uk> <3E755250 DOT 837B3606 AT yahoo DOT com> <3E75B36C DOT 6327581D AT phekda DOT freeserve DOT co DOT uk> <3E75E6E1 DOT A3989CD6 AT yahoo DOT com> <5137-Tue18Mar2003084918+0200-eliz AT elta DOT co DOT il> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Reply-To: djgpp-workers AT delorie DOT com Here, for carping and constructive criticism, is the present output of the namalloc debuggery package testing (some free list dumps will wrap). Tests begin by mallocing a herd of varying length items and forming a list of these. A pruning operation takes the list, retains the root, and frees the next 2 items, and so on. mallocmap first dumps the complete free list(s), followed by a map of everything under control. User pointers are DATAOFFSET above the displayed pointer values. Run of tmalldbg with no parameters: ================================== test00-10 Usage: tmalldbg [testnumber [quantity [quiet]]] CHAR_BIT * sizeof(size_t) = 32 sysinfo is: nil = ec24 DATAOFFSET = 16 gdlo offset = 255 sz offset = 8 prvf offset = 16 nxtf offset = 12 nxt offset = 4 prv offset = 0 ohead = 20 &freehdrs = ec20 Test Purpose 1 Allocate items, execute/show mallinfo 2 Allocate items, execute mallocmap 3 Allocate/prune items, do mallocmap & info Any entry for quiet suppresses free list dumps Run of tmalldbg 3 100: ===================== test03-100 Before pruning: arena = 29344 ordblks = 152 smblks = 0 hblks = 0 hblkhd = 0 usmblks = 0 fsmblks = 0 uordblks = 26736 fordblks = 208 keepcost = 0 After pruning: arena = 29344 ordblks = 118 smblks = 0 hblks = 0 hblkhd = 0 usmblks = 0 fsmblks = 0 uordblks = 20800 fordblks = 7200 keepcost = 0 After repruning: arena = 29344 ordblks = 76 smblks = 0 hblks = 0 hblkhd = 0 usmblks = 0 fsmblks = 0 uordblks = 18816 fordblks = 9536 keepcost = 0 Complete map: mallocmap at level 0 0: 991d0(184)->0 991d0 sz=184 nxt=0 prv=99198 nxtf=0 5: 92660(24)->0 92660 sz=24 nxt=92678 prv=92640 nxtf=NONE prvf=NONE 9: 98fb0(488)->0 98fb0 sz=488 nxt=99198 prv=98f70 nxtf=NONE prvf=NONE 10: 931d0(536)->977f0(992)->97c48(920)->98050(848)->98408(776)->98770(704)->98a80(632)->98d40(560)->97560(528)->0 931d0 sz=536 nxt=933e8 prv=93148 nxtf=977f0 prvf=NONE 977f0 sz=992 nxt=97bd0 prv=97770 nxtf=97c48 prvf=931d0 97c48 sz=920 nxt=97fe0 prv=97bd0 nxtf=98050 prvf=977f0 98050 sz=848 nxt=983a0 prv=97fe0 nxtf=98408 prvf=97c48 98408 sz=776 nxt=98710 prv=983a0 nxtf=98770 prvf=98050 98770 sz=704 nxt=98a30 prv=98710 nxtf=98a80 prvf=98408 98a80 sz=632 nxt=98cf8 prv=98a30 nxtf=98d40 prvf=98770 98d40 sz=560 nxt=98f70 prv=98cf8 nxtf=97560 prvf=98a80 97560 sz=528 nxt=97770 prv=93550 nxtf=NONE prvf=98d40 11: 92790(1208)->92cd8(1136)->0 92790 sz=1208 nxt=92c48 prv=926f8 nxtf=92cd8 prvf=NONE 92cd8 sz=1136 nxt=93148 prv=92c48 nxtf=NONE prvf=92790 Total Free = 9536 Group 0: 91fe8 sz=32 nxt=92008 prv=0 nxtf=0 92008 sz=32 nxt=92028 prv=91fe8 nxtf=0 92028 sz=32 nxt=92048 prv=92008 nxtf=0 92048 sz=32 nxt=92068 prv=92028 nxtf=0 92068 sz=40 nxt=92090 prv=92048 nxtf=0 92090 sz=40 nxt=920b8 prv=92068 nxtf=0 920b8 sz=40 nxt=920e0 prv=92090 nxtf=0 920e0 sz=40 nxt=92108 prv=920b8 nxtf=0 92108 sz=104 nxt=92170 prv=920e0 nxtf=0 92170 sz=48 nxt=921a0 prv=92108 nxtf=0 921a0 sz=48 nxt=921d0 prv=92170 nxtf=0 921d0 sz=56 nxt=92208 prv=921a0 nxtf=0 92208 sz=48 nxt=92238 prv=921d0 nxtf=0 92238 sz=48 nxt=92268 prv=92208 nxtf=0 92268 sz=64 nxt=922a8 prv=92238 nxtf=0 922a8 sz=48 nxt=922d8 prv=92268 nxtf=0 922d8 sz=40 nxt=92300 prv=922a8 nxtf=0 92300 sz=48 nxt=92330 prv=922d8 nxtf=0 92330 sz=48 nxt=92360 prv=92300 nxtf=0 92360 sz=40 nxt=92388 prv=92330 nxtf=0 92388 sz=48 nxt=923b8 prv=92360 nxtf=0 923b8 sz=40 nxt=923e0 prv=92388 nxtf=0 923e0 sz=40 nxt=92408 prv=923b8 nxtf=0 92408 sz=48 nxt=92438 prv=923e0 nxtf=0 92438 sz=32 nxt=92458 prv=92408 nxtf=0 92458 sz=32 nxt=92478 prv=92438 nxtf=0 92478 sz=32 nxt=92498 prv=92458 nxtf=0 92498 sz=48 nxt=924c8 prv=92478 nxtf=0 924c8 sz=40 nxt=924f0 prv=92498 nxtf=0 924f0 sz=40 nxt=92518 prv=924c8 nxtf=0 92518 sz=48 nxt=92548 prv=924f0 nxtf=0 92548 sz=48 nxt=92578 prv=92518 nxtf=0 92578 sz=48 nxt=925a8 prv=92548 nxtf=0 925a8 sz=40 nxt=925d0 prv=92578 nxtf=0 925d0 sz=24 nxt=925e8 prv=925a8 nxtf=0 925e8 sz=40 nxt=92610 prv=925d0 nxtf=0 92610 sz=24 nxt=92628 prv=925e8 nxtf=0 92628 sz=24 nxt=92640 prv=92610 nxtf=0 92640 sz=32 nxt=92660 prv=92628 nxtf=0 92660 sz=24 nxt=92678 prv=92640 nxtf=NONE prvf=NONE 92678 sz=24 nxt=92690 prv=92660 nxtf=0 92690 sz=24 nxt=926a8 prv=92678 nxtf=0 926a8 sz=24 nxt=926c0 prv=92690 nxtf=0 926c0 sz=24 nxt=926d8 prv=926a8 nxtf=0 926d8 sz=32 nxt=926f8 prv=926c0 nxtf=0 926f8 sz=152 nxt=92790 prv=926d8 nxtf=0 92790 sz=1208 nxt=92c48 prv=926f8 nxtf=92cd8 prvf=NONE 92c48 sz=144 nxt=92cd8 prv=92790 nxtf=0 92cd8 sz=1136 nxt=93148 prv=92c48 nxtf=NONE prvf=92790 93148 sz=136 nxt=931d0 prv=92cd8 nxtf=0 931d0 sz=536 nxt=933e8 prv=93148 nxtf=977f0 prvf=NONE 933e8 sz=168 nxt=93490 prv=931d0 nxtf=0 93490 sz=40 nxt=934b8 prv=933e8 nxtf=0 934b8 sz=48 nxt=934e8 prv=93490 nxtf=0 934e8 sz=48 nxt=93518 prv=934b8 nxtf=0 93518 sz=56 nxt=93550 prv=934e8 nxtf=0 93550 sz=16400 nxt=97560 prv=93518 nxtf=0 97560 sz=528 nxt=97770 prv=93550 nxtf=NONE prvf=98d40 97770 sz=128 nxt=977f0 prv=97560 nxtf=0 977f0 sz=992 nxt=97bd0 prv=97770 nxtf=97c48 prvf=931d0 97bd0 sz=120 nxt=97c48 prv=977f0 nxtf=0 97c48 sz=920 nxt=97fe0 prv=97bd0 nxtf=98050 prvf=977f0 97fe0 sz=112 nxt=98050 prv=97c48 nxtf=0 98050 sz=848 nxt=983a0 prv=97fe0 nxtf=98408 prvf=97c48 983a0 sz=104 nxt=98408 prv=98050 nxtf=0 98408 sz=776 nxt=98710 prv=983a0 nxtf=98770 prvf=98050 98710 sz=96 nxt=98770 prv=98408 nxtf=0 98770 sz=704 nxt=98a30 prv=98710 nxtf=98a80 prvf=98408 98a30 sz=80 nxt=98a80 prv=98770 nxtf=0 98a80 sz=632 nxt=98cf8 prv=98a30 nxtf=98d40 prvf=98770 98cf8 sz=72 nxt=98d40 prv=98a80 nxtf=0 98d40 sz=560 nxt=98f70 prv=98cf8 nxtf=97560 prvf=98a80 98f70 sz=64 nxt=98fb0 prv=98d40 nxtf=0 98fb0 sz=488 nxt=99198 prv=98f70 nxtf=NONE prvf=NONE 99198 sz=56 nxt=991d0 prv=98fb0 nxtf=0 991d0 sz=184 nxt=0 prv=99198 nxtf=0 -- Chuck F (cbfalconer AT yahoo DOT com) (cbfalconer AT worldnet DOT att DOT net) Available for consulting/temporary embedded and systems. USE worldnet address!