Showing posts from February, 2007

VMWare Server - Free to download

A couple of weeks old news, but still thought worth sharing. For all those VMWare fans, the VMWare Server is now available free of cost for download. Earlier only VMWare player was available for download. Download and try it from here.

You might wish to view all my previous posts on VMWare to know few more tricks.

Opening control panel from command prompt

How do you go to a tab in control panel directly from command prompt?

Under the system32 directory, you will find a few *.cpl files. Running these files will take you directly to the control panel tab corresponding to them. For e.g. appwiz.cpl will take you to "Add/Remove Programs" tab in control panel.

You can get a complete list of these files from this Microsoft Knowledge Base article.

It saves a lot of time especially when you are running in a lesser privileged account and want to switch to admin account to install/uninstall programs.

A python script to monitor a process

Here is a python script to monitor a process' memory usage in Linux. This tool periodically prints how much of heap that has been used by the process so far. When you stop monitoring the script prints out a summary along with a text graph that will help you understand the trend.

You can take a look at the script here. It might be useful and handy.

Debugging by printing

There are two ways to debug a program. One is to study the source code and try to understand what the program is doing and try to figure out what could have gone wrong. This is a kind of static debugging. Doing a dry run of the program is at times overkill. The other is to let the program run and print its state information. We can reason out what might have gone wrong from the collected information.

Roughly speaking, state of a running program includes everything in the memory of the running program. But to make out what might have gone wrong, we only have to focus on what is really necessary.

When I say "let the program print its state information," it could be the modified program with a lot of print statements. Or it could be a debugger attached to the running process and printing the state information. It definitely helps to learn a few ways to print the state information. An incomplete list of useful information on how to print in various systems.

Language or Tool

Browsable HotSpot VM Source Code

With JDK source code having been made open source, I wanted to go through the source code to figure out how things have been done. I found the following two links to be useful.
OpenGrok - A wicked fast source browser (and it lives upto its word!)OpenJDK Subversion TrunkOpenGrok link is too good if you would like to search something in the source code. If you have any better links, please do care to post in the comments.