Update (March 17, 2007): Apparently the memory leak is fixed in Mac OS X 10.4.9. If you have installed the update, you therefore want to uninstall the workaround, assuming you installed it. If you have the memory leak, try installing Mac OS X 10.4.9 before you try this workaround.
As
described
by Kevin Ballard, there is a memory leak in Activity Monitor under Mac OS,
specifically with the program pmTool which Activity Monitor uses.
Fortunately, if you
kill
pmTool, it regenerates, but only after freeing up its eaten
memory. So, as a workaround, you can install
net.smallinfinity.his.pmTool.plist
into /Library/LaunchDaemons, make sure the file is owned by
root and then activate it. It will
killall pmTool every 30 minutes.
Specifically, the plist is
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd > <plist version="1.0"> <dict> <key>Disabled</key> <false/> <key>Label</key> <string>net.smallinfinity.his.pmTool</string> <key>UserName</key> <string>root</string> <key>StartInterval</key> <integer>1800</integer> <key>ProgramArguments</key> <array> <string>/usr/bin/killall</string> <string>pmTool</string> </array> </dict> </plist>
This says to run as root, and
killall pmTool every 30 minutes.
It has to run as root because, for some reason--probably so it can examine
all processes--pmTool runs as root.
Because it runs as root, you have to make sure that once you have installed it,
/Library/LaunchDaemons/net.smallinfinity.his.pmTool.plist
is owned by root and has correct permissions.
To do so, open a Terminal and type
chmod 0644 /Library/LaunchDaemons/net.smallinfinity.his.pmTool.plist sudo chown root:wheel /Library/LaunchDaemons/net.smallinfinity.his.pmTool.plist
Finally, you have to tell
launchd
that the new job exists. This only has to be done once; it survives reboot.
In the Terminal, type
sudo launchctl load /Library/LaunchDaemons/net.smallinfinity.his.pmTool.plist
Once/if Since Apple comes out with a fix for
has fixed this memory leak, you can uninstall
this workaround by typing in a Terminal
sudo launchctl unload -w /Library/LaunchDaemons/net.smallinfinity.his.pmTool.plist
This page was made on January 14, 2007, updated March 17, 2007, and is Copyrighted © smallinfinity.net.