Linux SoftwareProgrammingQuality Assurance and TestingMemCheck Deluxe 1.2.2

MemCheck Deluxe 1.2.2


MemCheckDeluxe is an enhanced leak finder/memory profiler
Developer:   Dakoda
      more software by author →
Price:  0.00
License:   BSD License
File size:   15K
Language:   
OS:   
Rating:   0 /5 (0 votes)
Your vote:  
enlarge screenshot


MemCheckDeluxe is an enhanced leak finder/memory profiler. It tracks all the memory allocated, and can report where it was created at the end of a program (memory that would have been leaked).

It tracks the largest and smallest chunks allocated, the maximum memory used, and the highest number of allocations at any time. Some headway has been made to allow C++'s allocation operators new and delete to be tracked.

Usage

To use it, #define _MCD_CHECK, include mcd.h, and add mcd.c to the list of source files to build in your project. then, call 'showMemStats()' at any time to see the currently outstanding allocations and usage stats.

If you don't define _MCD_CHECK, it compiles away, improving performance. It is probably not a good idea to have some parts of a library use mcd, and not others. Pointers created in non-mcd parts won't be tracked and may confuse mcd, and stuff made in mcd, and freed elsewhere won't be properly cleaned up internally, leading to false leaks.

When included, a warning is normally issued, informing the user that performance will be affected. If this gets annoying, define MCD_QUIET to make it go away.

When including mcd.h, be sure to make it the last file included, as it redefines some macros. including things after it, especially system headers (stdlib.h, etc) can cause some nasty error messages and it will fail to compile anything.

One can define MCD_VERBOSE to have each and every malloc, calloc, realloc, strdup, strndup, and free be written to the RealTime log, including the size, calling function, and line number. The RealTime log defaults to stderr, but can be set to any file you want with
_MCD_RealTimeLog(FILE*fp). Just make sure the file is opened for writing/appending, and all verbosity will go there instead.

Please note that if you want RealTime log output, you MUST define MCD_VERBOSE.

With default settings, free(NULL) will simply return, providing you with an error message in the RealTime log if verbose was enabled. If you are working with a C library that acts differently when free(null) happens, define MCD_FREE_NULL, and it will generate the log message, and then perform the native free.

Using this is probably seldom needed, and will probably lead to a crash when/if it happens, providing you with a nice coredump to analyze. Again, this only applies if your C library's free(null) does something other than simply return.

There is a new flag, _MCD_GONE, that will remove all MCD code from the end product. It must be defined when compiling both mcd.c, and any other file that includes mcd.h. Note that defining _MCD_CHECK has no effect when _MCD_GONE is defined. The savings from this are about 15-20k (4-5k stripped).
tags define mcd  free null  realtime log  mcd check  the realtime  mcd and  providing you  you with  simply return  mcd gone  you want  mcd verbose  the end  

Download MemCheck Deluxe 1.2.2


 http://prj.softpixel.com/mcd/memcheckdeluxe-1.2.2.tar.gz
 http://prj.softpixel.com/mcd/memcheckdeluxe-1.2.2.tar.bz2


Authors software

MemCheck Deluxe 1.2.2 (by Dakoda)
MemCheckDeluxe is an enhanced leak finder/memory profiler


Similar software

MemCheck Deluxe 1.2.2 (by Dakoda)
MemCheckDeluxe is an enhanced leak finder/memory profiler

mpatrol 1.4.8 (by Graeme Roy)
The mpatrol library is a powerful debugging tool that attempts to diagnose run-time errors that are caused by the wrong use of dynami

cid-compiler 0.1 (by Markus W Weissmann)
cid-compiler is a language tool to easily create C code with object oriented features

Memory Allocation Checker 0.2.1 (by Hal Duston)
Memcheck provides the ability to fault on pointer overrun (read or write) or freed pointer deference (read or write), logs double fre

smalloc 1.0 (by Calin A Culianu)
smalloc short from Static memory buffer malloc, is an ideal memory manager for Realtime Linux Kernel modules that can't use dynamic m

gzLogger 0.1 (by Dennis Rowe)
gzLogger is a simple PHP5 library that allows the user to log information to compressed flat files with an approximate size defined b

C++ Debugging Support library 0.99.45 (by Carlo Wood)
Libcwd is a full-featured and well-documented library that assists C++ developers with debugging their applications.

C++ Debugging

checker 0.9.9.1 (by Tristan Gingold)
checker can help find bugs that standard tools cannot always find

Natrium Engine Beta01 (by Natrium)
Natrium Engine project tracks groups of parts by letting users define the relationships between parts

Safe Strings 2.0.1 (by Pablo Yanez Trujillo)
Safe Strings is a small C library that handles C strings in a safe way


Other software in this category

Track + Task Tracker 3.0.0 (by Joerg Friedrich)
Online project management and issue tracking with team collaboration, user management, multiple access levels, tasks, projects, time

CppUnit - C++ port of JUnit 1.12.0 (by Baptiste Lepilleur)
CppUnit is a C++ unit testing framework

MemCheck Deluxe 1.2.2 (by Dakoda)
MemCheckDeluxe is an enhanced leak finder/memory profiler

Network Traffic Generator 0.1.3 (by Robert Sandilands)
This is a traffic generator

Testitool 1.0 beta 6 (by Byrne Reese)
Testitool is an application written in PHP that allows it's users to compose and manage QA test plans.

Here are some key features

    search


Featured Software

jEdit 4.3 pre8
jEdit is an Open Source text editor written in Java

Opera 9.02
Surf the Internet in a safer, faster, and easier way with Opera browser

GNU Aspell 0.60.4
GNU Aspell is a Free and Open Source spell checker designed to eventually replace Ispell


Subscribe in Rojo
Google Reader
Add to My Yahoo!

Add to My AOL
Subscribe with Bloglines
Subscribe in NewsGator Online
Add 'nixbit linux software' to Newsburst from CNET News.com
del.icio.us nixbit linux software


Top tags