View Full Version : What is the CLI and why bother?

07-17-2006, 09:44 AM
The CLI (Command Line Interface) is a significant and under-used part of TotalView. The CLI, in a nutshell, gives you a second way to debug your programs. This way is also extensible. Many GUI debuggers are wrappers on top of a command line. Not TotalView, the GUI and CLI both use the same debugger core but the GUI does not work by executing CLI commands!

So why did we create the CLI? Here are a few reasons:

Some UNIX/Linux people are mouse-phobic, preferring the keyboard to the mouse. (There are some engineers here at Etnus who only use the GUI as a last resort.) When you don't have much bandwidth, a GUI can really slow you down. We needed a good way to automatically test TotalView. In other words, we use the CLI to do regression testing.

The CLI differs from the command line interfaces used by other debuggers in being programmable. We took a standard Tcl shell and added commands to it that access the same routines that the GUI does. This means that TotalView's CLI debugging commands are actually Tcl commands that control debugging activities.

What's in it for you? No debugger can be all things to all people. Your environments are unique and your programs are unique. To create something that meets everyone's needs would be impossible. And this is where the CLI comes in. You can use the CLI to create debugging routines that help you solve your problems.

What's the downside? You've got to learn Tcl (it's easy) and find out what the CLI's commands are. That takes time and when you've got a problem, you're in a hurry.

The CLI is described in the "TotalView Users Guide" and the "TotalView Reference Guide." You can order this book from us or view and print online copies (http://www.etnus.com/Documentation/index.html).