Skip to content

rnk/drmemory

Repository files navigation

# **********************************************************
# Copyright (c) 2010-2012 Google, Inc.  All rights reserved.
# Copyright (c) 2008-2009 VMware, Inc.  All rights reserved.
# **********************************************************

# Dr. Memory: the memory debugger
# 
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; 
# version 2.1 of the License, and no later version.
# 
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Library General Public License for more details.
# 
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

===========================================================================
                     D O C T O R   M E M O R Y
===========================================================================

===========================================================================
What is Dr. Memory?

Dr. Memory is a memory monitoring tool capable of identifying
memory-related programming errors such as accesses of uninitialized memory,
accesses to unaddressable memory (including outside of allocated heap units
and heap underflow and overflow), accesses to freed memory, double frees,
memory leaks, and access to un-reserved thread local storage slots (on
Windows).

Dr. Memory is based on the DynamoRIO binary translation engine.  Dr. Memory
currently targets 32-bit Windows and Linux.  64-bit is coming soon.

===========================================================================
How do I use Dr. Memory?

Build your application with debug information and then run it under
Dr. Memory.  Errors found are printed to the screen, and a summary is shown
at the end of the run.

--------------------------------------------------
Quick start for Linux:

1) g++ -m32 -g -fno-inline -fno-omit-frame-pointer *.cpp -o myapp
2) bin/drmemory.pl -- ./myapp args_to_myapp

--------------------------------------------------
Quick start for Windows:

1) cl /Zi /MT /EHsc /Oy- /Ob0 /Femyapp.exe *.cpp
2) bin\drmemory.exe -- myapp.exe args_to_my_app

===========================================================================
Full Documentation

If you are viewing this file, you have already successfully unpacked the
Dr. Memory distribution archive.  To view the documention, point your web
browser at the drmemory/docs/html/index.html file, or online at
http://drmemory.org/docs/.

===========================================================================
Contact

This project is provided as-is, with no official support.  Use
the Dr. Memory Users group at
http://groups.google.com/group/drmemory-users/ to ask questions and seek
help on using Dr. Memory.

Dr. Memory's source code and issue tracker live at
http://code.google.com/p/drmemory/

If you would like to submit a patch, you will need to first sign a
Contributor License Agreement.  See
http://code.google.com/p/drmemory/wiki/Contributing for more information.

===========================================================================

Releases

No releases published

Packages

No packages published