# OProfile View

The OProfile view is the central point of interaction of the plug-in with the results of profiling.

The tree structure displayed above describes one or more profiles of one or more events in the following manner:

- Events -- the name of the profiling event used by OProfile (e.g. `CPU_CLK_UNHALTED`)
  - Session -- the name of the session the profile is stored in (e.g. `run1`)
    - Image -- the binary being profiled (e.g. `/notnfs/ksebasti/oprofile/plugin/factorial/Debug/factorial`)
      - Symbol -- symbols gathered from the binary's debug information (e.g. `factorial2`)
        - Sample -- individual OProfile samples correlated to line numbers of source code
      - Dependent Images -- other binaries related to the run of the program; shared libraries or kernel modules
        - Image -- the dependent binary
          - Symbol -- same as above
            - Sample -- same as above

If source code is not available, some symbols (including source file name) may be shown, but no samples. This is normally the case with programs that use shared libraries. Also, depending on the Global Settings, a profile may have no dependent images.

Note that after Eclipse is restarted, there will be no data shown in the OProfile view. Data from past profiles will still be on the system, if not touched otherwise, and can be re-read with the Refresh View menu action (refer to the View Menu section for more details).

## Features

This section describes the features of the plug-in exposed through the view.

### View Tree

Double-clicking on a sample will open the source file in an editor and place the insertion point at the corresponding line in code.

Note: For this to work, the source code must be available and it must be in the correct directory (as described in the debug info of the binary).

### View Menu

Open OProfile Daemon Log
  This will launch a dialog showing the contents of the OProfile daemon log.
  By default, the OProfile daemon log is in `/var/lib/oprofile/samples/oprofiled.log`

Refresh View
  This will re-read the OProfile data on the system, re-create the internal data model and re-display the profile tree. Doing so allows you to display data already on the system without launching a profile (e.g. when Eclipse first starts up).

Save Default Session
  The default session, named `current`, is overwritten on each launch of a profile if it is not saved. If you wish to keep a profile for later viewing, this menu action will allow you to save the session to a different name.
  Since the samples are in a system directory, this operation requires root privileges; hence, you will be prompted for the root password. The Save Session dialog is shown below: