stringdups(1) BSD General Commands Manual stringdups(1)NAMEstringdups — Identify duplicate strings or other objects in malloc blocks
of a target process
SYNOPSISstringdups [-minimumCount count] [-stringsOnly] [-nostacks] [-callTrees]
[-invertCallTrees] pid | partial-executable-name
DESCRIPTIONstringdups examines the content of malloc blocks in the specified target
process. For all blocks which have the same content, it shows a line
with the number of such blocks, their total allocated size (the total
size in the malloc heap, not just the specific size of their content),
and the average allocated size.
If the MallocStackLogging environment variable was set when the target
process was launched, stringdups also displays stack backtraces or call
trees showing where all the blocks with a particular grouping of content
were allocated.
stringdups gathers the content of blocks of various types including:
· C strings (composed of UTF8 characters, null terminated, of any
length)
· Pascal strings (composed of UTF8 characters with length byte at
start, no longer than 255 characters, not necessarily null termi‐
nated)
· NSString of all types (immutable, mutable, UTF8, Unicode). Malloc
blocks which are the storage blocks for non-inline or mutable
NSString's are listed separately. The string content is shown for
both but the block sizes accurately show what is allocated in the
malloc heap for that particular chunk of storage.
· NSDate
· NSNumber
· NSPathStore2 (Cocoa's representation of file paths)
· item counts for collection classes such as NSArray, NSSet, and NSDic‐
tionary
OPTIONS-minimumCount count Only print information for object descriptions which
appear at least count times in the target process.
The default minimum count is 2. To see all strings
in the target process, use 1 or use 'heap <pid>
-addresses all'.
-stringsOnly Only print information for objects that have string
content such as C or Pascal strings, or NSString.
-nostacks Do not print stack backtraces or call trees even if
the target process has the MallocStackLogging envi‐
ronment variable set.
-callTrees If stack bactraces are available, then by default
all the object descriptions for a particular stack
backtrace are consolidated together. However if
this argument is passed then the output is consoli‐
dated by each particular string and a call tree is
displayed showing the allocation backtraces of all
occurrences of objects with that description. This
output can be very lengthy if minimumCount is a low
value, because the same call tree may be displayed
many times.
-invertCallTrees Same as except that the call trees are printed from
hottest to coldest stack frame, so the leaf malloc
call appears first.
SEE ALSOheap(1), leaks(1), malloc_history(1), vmmap(1), DevToolsSecurity(1)BSD July 21, 2011 BSD