Message-Id: <199803081409.JAA08491@delorie.com> Date: Sun, 08 Mar 1998 14:55:42 -0500 To: djgpp-announce AT delorie DOT com From: Peter Palotas Subject: ANNOUNCE: MSS 1.0 Beta Released Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Precedence: bulk Precedence: bulk The purpose of this message is to announce the release of MSS - Memory Supervision System version 1.0Beta MSS has gone through a very large rewrite since the last public release A LOT of new features has been added, and very little (if any) of the original code is still there. MSS version 1.0B can be downloaded from: http://hem1.passagen.se/blizzar/mss/index.html ----------------------------------------------------------------------------- A small piece of the Introduction section of the documentation follows: During the development of C/C++ programs dynamic memory is often allocated using either the standard C malloc family of functions or the C++ operators new and delete. When allocating and using dynamical memory, the programmer often make mistakes which might lead to errors during program execution, so called bugs. This could be that the program "forgets" to delete/free some memory (so called memory leaks), tries to access more memory than it allocated and a lot more. Discovering and tracking these errors is a very difficult task, and often the errors go by without the programmer noticing them because the program may appear to work correctly anyway. Therefore MSS was developed, to assist programmers in detecting such bugs and producing better programs. MSS is a free (GPL) C/C++ library that helps you in the infamious task of finding bugs related to dynamical memory during the development of your programs. With MSS you will easily be able to detect the following bugs in your programs: * Memory leaks * Use of uninitialized memory * Zero-length allocations * Out of range block accesses * Bogus or repeated deallocations * Unsuccessful allocations * "Wild" or corrupted pointers * And more... MSS can also give you a lot of information about the state of the dynamical memory allocated by your program at any point during the execution, for example: * Total allocated memory * Maximum allocated memory since program start * Number of specific allocation/deallocation functions successfully called * Number of blocks allocated * List of blocks allocated, including the module, function and line number where the allocation took place. MSS is also very easy to use. Your current sources will only require minor changes, to enable the usage of MSS. ----------------------------------------------------------------------------- MSS was written using GCC 2.7.2.1, and has also been tested using GCC 2.8.0, and it compiles without any problems on these compilers. This also goes for the excellent DJGPP, the DOS port of GCC. If your compiler is a 32-bit compiler for the i386 family of processors, building MSS should be no problems, other platforms are untested, but any reports of successful (or unsuccessful) usage of MSS are very welcome.