• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Purify?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Purify?


  • Subject: Re: Purify?
  • From: Dave Thorup <email@hidden>
  • Date: Fri, 19 Nov 2004 10:37:56 -0500

Sorry, I sent the last message to the wrong list.  Please ignore.
_____________________________

Dave Thorup
Software Engineer
email@hidden

http://www.kuwan.net
Defaults Manager - The premier editor for Mac OS X's User Defaults / Preferences database.



On Nov 19, 2004, at 10:24 AM, Dave Thorup wrote:

On Nov 19, 2004, at 7:49 AM, Patrick Coskren wrote:

On Nov 18, 2004, at 11:01 PM, Rhys Hill wrote:

Hi Jeff,

Assuming you're talking about IBM Rational Purify, you can use libgmallocdebug to
find memory corruption, which is easily enabled within XCode. For leaks, there are
ObjectAlloc and MallocDebug.

Those are good, but do they really cover quite the same ground as Purify? I'd love to see a port of valgrind, the open-source equivalent, to the Mac.

Well, what is it exactly that you want from these tools? Do a "man libgmalloc" in the Terminal to see what Guard Malloc does for you. Here's an excerpt from that:


------------------------------------
libgmalloc is a debugging malloc library that can track down insidious
bugs in your code or library.  If your application crashes when using
libgmalloc, then you've found a bug.

libgmalloc uses the virtual memory system to identify such bugs. Each
malloc allocation is placed on its own virtual memory page, with the end
of the buffer at the end of the page's memory, and the next page is kept
unallocated. As a result, accesses beyond the end of the buffer cause a
bus error immediately. When memory is freed, libgmalloc deallocates its
virtual memory, causing reads or writes to the freed buffer cause a bus
error. Thus, nasty, hard-to-track-down bugs are immediately obvious, and
you'll know exactly which code is causing the problem. This is thread-
safe and works for all uses of malloc(), NXZoneMalloc(), NSZoneMalloc(),
and friends.
------------------------------------


From what I've used of Guard Malloc it's a great, heavy duty tool to help you track down memory bugs. And if your looking for the profiling features of Purity or valgrind, nothing beats Shark.

_______________________________________________ Do not post admin requests to the list. They will be ignored. Cocoa-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
References: 
 >Re: Purify? (From: Dave Thorup <email@hidden>)

  • Prev by Date: Re: Purify?
  • Next by Date: Re: Fastest way to push strings to the screen in an NSView?
  • Previous by thread: Re: Purify?
  • Next by thread: User click lost in space for a NSTableView
  • Index(es):
    • Date
    • Thread