home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / cset21v1.zip / IBMCPP / HELP / DDE4XTRA.HLP (.txt) < prev    next >
OS/2 Help File  |  1993-04-28  |  111KB  |  4,192 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Notices ΓòÉΓòÉΓòÉ
  3.  
  4. References in this publication to IBM products, programs, or services do not 
  5. imply that IBM intends to make these available in all countries in which IBM 
  6. operates. Any reference to an IBM licensed program in this publication is not 
  7. intended to state or imply that only IBM's licensed program may be used. Any 
  8. functionally equivalent product, program or service that does not infringe any 
  9. of IBM's intellectual property rights may be used instead of the IBM product, 
  10. program, or service. Evaluation and verification of operation in conjunction 
  11. with other products, except those expressly designated by IBM, is the user's 
  12. responsibility. 
  13.  
  14. IBM may have patents or pending patent applications covering subject matter in 
  15. this document. The furnishing of this document does not give you any license to 
  16. these patents. You can send license inquiries, in writing, to the IBM Director 
  17. of Commercial Relations, IBM Corporation, Purchase, NY 10577. 
  18.  
  19.  
  20. ΓòÉΓòÉΓòÉ 1.1. Trademarks and Special Notices ΓòÉΓòÉΓòÉ
  21.  
  22. The following terms, used in this online information, are trademarks and 
  23. service marks of IBM Corporation in the United States and other countries: 
  24.  
  25. IBM 
  26.  
  27. Operating System/2 
  28.  
  29. OS/2 
  30.  
  31.  
  32. ΓòÉΓòÉΓòÉ 1.2. Conventions Used in the Online Help ΓòÉΓòÉΓòÉ
  33.  
  34. The following highlighting conventions are used in this online help: 
  35.  
  36. Bold 
  37.           Names of windows, menus, menu choices, push buttons, radio buttons, 
  38.           and entry fields. 
  39.  
  40. Monospace
  41.           Text displayed in a sample program and text that you type. 
  42.  
  43. Italics 
  44.           Words that are used for emphasis and variables in command strings. 
  45.  
  46.  
  47. ΓòÉΓòÉΓòÉ 1.3. Notes about this Online Help ΓòÉΓòÉΓòÉ
  48.  
  49. The following conventions are used in this online help: 
  50.  
  51. o The words program and application are used synonymously in this online help. 
  52.   Both words refer to the executable file that you are tracing. 
  53.  
  54. o The word diagram is used to refer to all diagrams, as well as the Statistical 
  55.   Summary and the Dynamic Call Graph. 
  56.  
  57. o All examples in this online help used C/C++. 
  58.  
  59.  
  60. ΓòÉΓòÉΓòÉ 2. Adding Debugging Information to Your Application ΓòÉΓòÉΓòÉ
  61.  
  62. To add debugging information to your application, you must compile and link the 
  63. application with the proper options. The following topics explain how to 
  64. compile and link your application. 
  65.  
  66. Compiling an Application 
  67.  
  68. To compile your application, use the following options: 
  69.  
  70. /Gh       Includes the profile hooks that allow EXTRA to monitor your 
  71.           executable. 
  72.  
  73. /Ti       Includes debugging information in the compiled object file, which 
  74.           would be a file with the OBJ file extension. EXTRA needs this 
  75.           information the same as a debugger does. 
  76.  
  77. Linking an Application 
  78.  
  79. You must link the DDE4XTRA.OBJ with your application. 
  80.  
  81. To link with IBM LINK386, use the following option: 
  82.  
  83. /DE       Enables the linker to include debugging information in the executable 
  84.           (EXE or DLL file). EXTRA needs this information the same as a 
  85.           debugger does. 
  86.  
  87. To view the MAKE file called PMLINES.MAK, see PMLINES.MAK. 
  88.  
  89.  
  90. ΓòÉΓòÉΓòÉ 2.1. Adding Debugging Information to PMLINES.MAK ΓòÉΓòÉΓòÉ
  91.  
  92. The following MAKE file shows how to compile and link the PMLINES.MAK 
  93. application so that EXTRA can trace it. 
  94.  
  95. pmlines.exe: pmlines.obj dde4xtra.obj pmlines.res
  96. link386 /DE /pmtype:pm pmlines extra,,pmlines,_doscall /
  97.   _pmwin _pmgpi;
  98.   rc pmlines.res
  99.  
  100. pmlines..res: pmlines.rc pmlines.ico pmlines.h pmlines.dlg
  101.   rc -r pmlines.rc
  102.  
  103. pmlines.obj: pmlines.c pmlines.h
  104.   icc /c /Fa /S2 /Ti /Gh pmlines.c
  105.  
  106.  
  107. ΓòÉΓòÉΓòÉ 2.2. Tracing the System Calls ΓòÉΓòÉΓòÉ
  108.  
  109. If you want to trace calls into the OS/2* Toolkit Application Interface (API), 
  110. specify the following EXTRA libraries immediately before the OS/2 libraries in 
  111. your link statement. This is shown in the PMLINES.EXE example. 
  112.  
  113. The APIs and their corresponding libraries are as follows: 
  114.  
  115. DosCalls  _DOSCALL.LIB 
  116.  
  117. WinCalls  _PMWIN.LIB 
  118.  
  119. GPICalls  _PMGPI.LIB 
  120.  
  121. Notes: 
  122.  
  123.  1. Each library listed above also has an associated DLL. 
  124.  
  125.  2. The order is critical. If the replacement libraries are not immediately 
  126.     before the OS/2 libraries in the link statement, EXTRA may not interpret 
  127.     and trace the API calls. 
  128.  
  129.  
  130. ΓòÉΓòÉΓòÉ 2.3. Defining User Events ΓòÉΓòÉΓòÉ
  131.  
  132. The DDE4XTRA.OBJ file contains an entry point called EXTRA that accepts calls 
  133. from the application you are analyzing. The entry point inserts text strings, 
  134. which are called user events, into the trace file. User events help you 
  135. diagnose problems in your application. You can add user events to your 
  136. application by adding the following statement to your application source code: 
  137.  
  138.    EXTRA(string);
  139.  
  140. where string is an ASCIIZ string. When such a call is made, the string is 
  141. placed in the trace file. You can see these strings in the Call Nesting diagram 
  142. and in the Statistical Summary. 
  143.  
  144. Warning: 
  145.  
  146. The string must be unique static alphanumeric characters. Otherwise, you will 
  147. receive unpredictable results. 
  148.  
  149. The string must exist in storage when the trace buffer containing the reference 
  150. is written to disk. 
  151.  
  152. Creating EXTRA C and C++ Prototypes 
  153.  
  154. The application that contains the EXTRA entry point must have a prototype. You 
  155. must declare a prototype for C applications, as follows: 
  156.  
  157.    VOID EXTRA (PSZ string);
  158.  
  159. You must declare a prototype for C++ applications, as follows: 
  160.  
  161. EXTERN "C" {
  162.    VOID EXTRA (PSZ string);
  163. }
  164.  
  165.  
  166. ΓòÉΓòÉΓòÉ 3. Startup Information Window ΓòÉΓòÉΓòÉ
  167.  
  168.  1. Type the full path and file name of the application you want to trace in 
  169.     the Trace file name entry field. If the trace file is in your current 
  170.     directory, you do not have to type the path. 
  171.  
  172.  2. Select the OK push button to display the diagram or select the Cancel push 
  173.     button to return to the command prompt. 
  174.  
  175.  
  176. ΓòÉΓòÉΓòÉ 4. Directory Window ΓòÉΓòÉΓòÉ
  177.  
  178. When you start EXTRA for the first time, the Directory window is displayed. The 
  179. Directory window prompts you to type the path where you want to store the INI 
  180. file. The INI file stores your session settings. Type the full path name and 
  181. select OK. The INI file is created in the directory you specified. 
  182.  
  183.  
  184. ΓòÉΓòÉΓòÉ 5. Push Buttons ΓòÉΓòÉΓòÉ
  185.  
  186. The following push buttons are available in most EXTRA action windows unless 
  187. otherwise indicated: 
  188.  
  189. All max 
  190.           Select this push button to set the call depth of all threads to the 
  191.           maximum limit of 128. The push button is only available in the Set 
  192.           Call Depth action window. 
  193.  
  194. All off 
  195.           Select this push button to set the call depth of all threads to 0. 
  196.           The push button is only available in the Set Call Depth action 
  197.           window. 
  198.  
  199. Cancel 
  200.           Select this push button to exit the current action window without 
  201.           saving any changes. 
  202.  
  203. Clear all 
  204.           Select this push button to clear all selected elements in the action 
  205.           window. This push button is available from the Select Functions 
  206.           action window and the Select threads action window. 
  207.  
  208. Default 
  209.           Select this push button to reset all changes in an action window to 
  210.           the default settings. 
  211.  
  212. Find callee 
  213.           Select this push button in the Who Calls Whom action window to select 
  214.           and center the node that is called. For more information, see the Who 
  215.           Calls Whom action window. 
  216.  
  217. Find caller 
  218.           Select this push button in the Who Calls Whom action window to select 
  219.           and center the node that makes the call. For more information, see 
  220.           the Who Calls Whom action window. 
  221.  
  222. Help 
  223.           Select this push button to learn how to use the action window that is 
  224.           currently displayed. 
  225.  
  226. OK 
  227.           Select this push button to save the changes and close the action 
  228.           window. 
  229.  
  230. Search 
  231.           Select this push button in the Search action window to start 
  232.           searching for a user event, a file access, a call for a function, a 
  233.           return to a function, or an annotation. For more information, see the 
  234.           Search action window. 
  235.  
  236. Select all 
  237.           Select this push button to select all elements in the action window. 
  238.  
  239. Stop 
  240.           Select this push button in the Application Termination window to stop 
  241.           your application while it is being analyzed by EXTRA. 
  242.  
  243. Trace 
  244.           Select this push button to begin tracing your application. 
  245.  
  246. Who calls me 
  247.           Select this push button in the Function Information action window to 
  248.           display only the selected node and the nodes that called the selected 
  249.           node. For more information, see the Function Information action 
  250.           window. 
  251.  
  252. Whom do I call 
  253.           Select this push button in the Function Information action window to 
  254.           display only the selected node and the nodes that the selected node 
  255.           calls. For more information, see the Function Information action 
  256.           window. 
  257.  
  258.  
  259. ΓòÉΓòÉΓòÉ 6. Trace Generation Window ΓòÉΓòÉΓòÉ
  260.  
  261. The Trace Generation window is the main window of EXTRA. This window contains 
  262. the executable file names of the application you want to trace. An executable 
  263. contains object files and each object file contains functions. 
  264.  
  265. An executable or object file that is displayed in black contains the necessary 
  266. debugging information for EXTRA to trace the application. An executable or an 
  267. object file that does not contain debugging information is displayed in cyan. 
  268.  
  269. Note:  For an executable or object file to be traceable, you must include 
  270. debugging information. For more information, see adding debugging information. 
  271.  
  272. Showing and Hiding Object Files and Functions 
  273.  
  274. To show the object files that comprise the executable, select the plus icon 
  275. next to the executable file name. The object files are displayed beneath the 
  276. executable. You can select the plus icon next to an object file to see the 
  277. functions. The functions are displayed beneath the object file. 
  278.  
  279. By selecting the minus icon you can hide the object files and functions. 
  280.  
  281. Enabling and Disabling Object Files and Functions 
  282.  
  283. You can disable or enable an executable, an object file, or a function by using 
  284. the Options menu or using the pop-up menu. When you enable an executable, an 
  285. object file, or a function, EXTRA includes information about that item in the 
  286. trace file. When you disable an executable, an object file, or a function, 
  287. EXTRA does not include information about that item in the trace file. A 
  288. disabled executable, object file, or function is displayed in brown. 
  289.  
  290. Menu Bar Summary 
  291.  
  292. The Trace Generation window contains the following choices on the menu bar: 
  293.  
  294. Edit 
  295.           Accesses various action windows that let you view the executables, 
  296.           object files, and functions of your application and controls which 
  297.           parts of your application are traced. 
  298.  
  299. Options 
  300.           Selects specific actions used when your application is traced. 
  301.  
  302. Help 
  303.           Accesses information about menu choices, tasks, and key words. Press 
  304.           F1 or select the Help push button to access Help. 
  305.  
  306. Push Button and Check Box 
  307.  
  308. The following push button and check box are available from the Trace Generation 
  309. window: 
  310.  
  311. Trace push button 
  312.           Begins a trace session. 
  313.  
  314. Save settings check box 
  315.           Specifies whether your menu settings are to be saved. 
  316.  
  317. Pop-Up Menu Summary 
  318.  
  319. A pop-up menu is available when you use mouse button two to select any 
  320. executable, object file, or function. Choices from the pop-up menu allow you to 
  321. select specific actions to customize the trace analysis. 
  322.  
  323.  
  324. ΓòÉΓòÉΓòÉ 6.1. Trace Push Button ΓòÉΓòÉΓòÉ
  325.  
  326. Select the Trace push button to close the Trace Generation window and begin 
  327. tracing your application. 
  328.  
  329.  
  330. ΓòÉΓòÉΓòÉ 6.2. Save Settings Check Box ΓòÉΓòÉΓòÉ
  331.  
  332. The Save settings check box is located at the bottom of the Trace Generation 
  333. window. If you want to save the current menu settings you have selected, select 
  334. the Save settings check box. Saving the current settings prevents you from 
  335. having to specify a complicated setup more than once. 
  336.  
  337. When you select Save settings, a ΓêÜ symbol is displayed. If a ΓêÜ symbol is not 
  338. displayed, Save settings is disabled. This is the default. 
  339.  
  340. Note:  The settings are not saved until the Trace Generation window is closed 
  341. or until you begin the trace analysis. These settings are kept, for each 
  342. application, until you reset them. 
  343.  
  344.  
  345. ΓòÉΓòÉΓòÉ 6.3. Options Menu ΓòÉΓòÉΓòÉ
  346.  
  347. Select choices from the Options menu to access various action windows that let 
  348. you set options to customize your trace sessions. These options control the 
  349. operation of EXTRA. 
  350.  
  351. Select clock 
  352.           Select to log or not log time stamps. 
  353.  
  354. Buffer control 
  355.           Select the size of the event log buffer, plus enable and disable 
  356.           buffer wrapping. 
  357.  
  358. Set call depth 
  359.           Select the call nesting depth limit for each thread. 
  360.  
  361. Name trace file 
  362.           Type a new path or rename the trace file for the application you are 
  363.           analyzing. 
  364.  
  365. Timeout control 
  366.           Select the maximum number of seconds your application may run without 
  367.           logging events. Use this choice when your application is in a 
  368.           continuous loop. 
  369.  
  370. File access 
  371.           Select to trace or not trace file accesses. 
  372.  
  373. Default setup 
  374.           Select to revert to the default settings. 
  375.  
  376.  
  377. ΓòÉΓòÉΓòÉ 6.3.1. Select Clock Choice ΓòÉΓòÉΓòÉ
  378.  
  379. Select the Select clock choice to enable or disable time stamps. If you choose 
  380. to disable the time stamp choice, EXTRA produces a smaller trace file and only 
  381. the Statistical Summary, Call Nesting diagram, and Dynamic Call Graph can be 
  382. viewed. The default is to have the time stamps enabled. 
  383.  
  384. When you select the Select clock choice, a Select Clock action window is 
  385. displayed. 
  386.  
  387.  
  388. ΓòÉΓòÉΓòÉ <hidden> Select Clock Action Window ΓòÉΓòÉΓòÉ
  389.  
  390. When you select the Select clock choice, a Select Clock action window is 
  391. displayed. 
  392.  
  393. This action window lets you enable or disable time stamps. 
  394.  
  395. To use the Select Clock action window: 
  396.  
  397.  1. Choose to enable or disable time stamps: 
  398.  
  399.    o Select the Yes radio button to enable the time stamp choice 
  400.  
  401.      OR 
  402.  
  403.    o Select the No radio button to disable the time stamp choice. 
  404.  
  405.  2. Select the OK push button to save the changes and exit the action window or 
  406.     select the Cancel push button to ignore the changes and exit the action 
  407.     window. 
  408.  
  409. Note:  To keep this setting active for more than one trace, select the Save 
  410. settings check box in the Trace Generation window. The settings are not saved 
  411. until the Trace Generation window is closed or you begin the trace analysis. 
  412.  
  413.  
  414. ΓòÉΓòÉΓòÉ 6.3.2. Buffer Control Choice ΓòÉΓòÉΓòÉ
  415.  
  416. Select the Buffer control choice to set the size of the event log buffer and to 
  417. enable or disable buffer wrapping. 
  418.  
  419. The event log buffer size determines how often the data from the trace analysis 
  420. is written to the trace file. The default is set to 256 kilobytes (KB). 
  421.  
  422. You can enable or disable the buffer wrapping to choose when the data is 
  423. written to the trace file. When buffer wrapping is enabled, the trace data is 
  424. written only when the tracing has stopped. As the program is traced, the buffer 
  425. fills and overwrites the older events in the buffer. When buffer wrapping is 
  426. disabled, the data is written to the trace file every time the buffer fills. 
  427. The default is to disable buffer wrapping. 
  428.  
  429. When you select Buffer control, a Buffer Control action window is displayed. 
  430.  
  431.  
  432. ΓòÉΓòÉΓòÉ <hidden> Buffer Control Action Window ΓòÉΓòÉΓòÉ
  433.  
  434. When you select the  Buffer control choice, a Buffer Control action window is 
  435. displayed. This action window has two entry fields: Buffer size and Buffer 
  436. Wrapping. 
  437.  
  438. To use the Buffer Control action window: 
  439.  
  440.  1. Set the buffer size by selecting the spin buttons in the Buffer size entry 
  441.     field. The top spin button increases the buffer size and the bottom spin 
  442.     button decreases the buffer size. 
  443.  
  444.  2. Enable or disable buffer wrapping by selecting a radio button. 
  445.  
  446.    o Select the On radio button to enable buffer wrapping. 
  447.  
  448.    o Select the Off radio button to disable buffer wrapping. 
  449.  
  450.  3. Select the OK push button to save the changes and close the action window 
  451.     or select the Cancel push button to close the action window without saving 
  452.     the changes. 
  453.  
  454. Note:  To keep this setting active for more than one trace, select the Save 
  455. settings check box in the Trace Generation window. The settings are not saved 
  456. until the Trace Generation window is closed or you begin the trace analysis. 
  457.  
  458.  
  459. ΓòÉΓòÉΓòÉ 6.3.3. Set Call Depth Choice ΓòÉΓòÉΓòÉ
  460.  
  461. Select the Set call depth choice to set the nesting depth for each thread in 
  462. your application. You can select as many as 16 threads with a maximum nesting 
  463. depth of 128 for each thread. The default is to have all threads selected with 
  464. the maximum depth of 128. 
  465.  
  466. When you select Set call depth, a Set Call Depth action window is displayed. 
  467.  
  468.  
  469. ΓòÉΓòÉΓòÉ <hidden> Set Call Depth Action Window ΓòÉΓòÉΓòÉ
  470.  
  471. When your select the Set call depth choice, the Set Call Depth action window is 
  472. displayed. The Set Call Depth action window displays 16 thread entry fields. 
  473.  
  474. To use the Set Call Depth action window: 
  475.  
  476.  1. Select the All max push button to set the maximum depth of all threads to 
  477.     128. 
  478.  
  479.  2. Select the All off push button to change the depth to 0 for all threads. 
  480.  
  481.  3. Select a thread entry field and type in a number. 
  482.  
  483.     Note:  To disable tracing of any event in a thread, set the call depth of 
  484.     that thread to 0. 
  485.  
  486.  4. Select the OK push button to save the changes and close the action window 
  487.     or select the Cancel push button to close the action window without saving 
  488.     the changes. 
  489.  
  490. Note:  To keep this setting active for more than one trace, select the Save 
  491. settings check box in the Trace Generation window. The settings are not saved 
  492. until the Trace Generation window is closed or you begin the trace analysis. 
  493.  
  494.  
  495. ΓòÉΓòÉΓòÉ 6.3.4. Name Trace File Choice ΓòÉΓòÉΓòÉ
  496.  
  497. Select the Name trace file choice to replace the name of the output file you 
  498. are analyzing. The default name for the trace file is filename.TRC, where 
  499. filename is the name of the application you are currently tracing. 
  500.  
  501. When you select Name trace file, a Name Trace File action window is displayed. 
  502.  
  503.  
  504. ΓòÉΓòÉΓòÉ <hidden> Name Trace File Action Window ΓòÉΓòÉΓòÉ
  505.  
  506. When you select Name trace file, the Name Trace File action window is 
  507. displayed. 
  508.  
  509. To use the Name Trace File action window: 
  510.  
  511.  1. Type the new path, file name, and file extension in the entry field. 
  512.  
  513.  2. Select OK to accept the changes and close the action window or select the 
  514.     Cancel push button to close the action window without saving the changes. 
  515.  
  516. Note:  To keep this setting active for more than one trace, select the Save 
  517. settings check box in the Trace Generation window. The settings are not saved 
  518. until the Trace Generation window is closed or you begin the trace analysis. 
  519.  
  520.  
  521. ΓòÉΓòÉΓòÉ 6.3.5. Timeout Control Choice ΓòÉΓòÉΓòÉ
  522.  
  523. Select the Timeout control choice to specify the maximum number of seconds your 
  524. application can run without logging events. Use this choice when your 
  525. application deadlocks to determine where the problem is located. 
  526.  
  527. When you select Timeout control, a Timeout Control action window is displayed. 
  528.  
  529.  
  530. ΓòÉΓòÉΓòÉ <hidden> Timeout Control Action Window ΓòÉΓòÉΓòÉ
  531.  
  532. When you select the Timeout control choice, a Timeout Control action window is 
  533. displayed. 
  534.  
  535. To use the Timeout Control action window: 
  536.  
  537.  1. Type a number from 0 to 3600 in the Number entry field or use the spin 
  538.     buttons to scroll to the number of seconds you want. 
  539.  
  540.     Note:  A 0 in the Number entry field implies there is not a maximum limit. 
  541.  
  542.  2. Select the OK push button to save the changes and close the action window 
  543.     or select the Cancel push button to close the action window without saving 
  544.     the changes. 
  545.  
  546. Note:  To keep this setting active for more than one trace, select the Save 
  547. settings check box in the Trace Generation window. The settings are not saved 
  548. until the Trace Generation window is closed or you begin the trace analysis. 
  549.  
  550.  
  551. ΓòÉΓòÉΓòÉ 6.3.6. File Access Choice ΓòÉΓòÉΓòÉ
  552.  
  553. Select the File access choice to keep track of file access calls, such as 
  554. DosOpen( ), DosRead( ), DosWrite( ), DosClose( ), and DosDupHandle( ). When a 
  555. Dos call references a file, EXTRA keeps track of the file name associated with 
  556. the traced Dos calls. These calls are shown in the Call Nesting diagram and in 
  557. the Statistical Summary under the function that made the file access. 
  558.  
  559. To set file access, select File access from the Options menu. A ΓêÜ symbol is 
  560. displayed next to the choice to show it is enabled. To reset file access, 
  561. select File access from the Options menu. The ΓêÜ symbol is removed to show the 
  562. choice is disabled. 
  563.  
  564. Notes: 
  565.  
  566.  1. To keep this setting active for more than one trace, select the Save 
  567.     settings check box in the Trace Generation window. The settings are not 
  568.     saved until the Trace Generation window is closed or you begin the trace 
  569.     analysis. 
  570.  
  571.  2. File access is a choice only when the _DOSCALL.LIB file is linked. 
  572.  
  573.  
  574. ΓòÉΓòÉΓòÉ 6.3.7. Default Setup Choice ΓòÉΓòÉΓòÉ
  575.  
  576. Select the Default setup choice to reset all options to the default settings. 
  577. This includes removing any triggers and enabling all executables, object files, 
  578. and functions. 
  579.  
  580. To choose the default settings, select Default setup from the Options menu. 
  581.  
  582.  
  583. ΓòÉΓòÉΓòÉ 6.4. Edit Menu ΓòÉΓòÉΓòÉ
  584.  
  585. Trace Generation 
  586.  
  587. Select choices from the Edit menu or pop-up menu menu to set triggers and 
  588. manipulate the executables, object files, and functions. 
  589.  
  590. Show object files 
  591.           Displays the object files in a selected executable. This choice is 
  592.           available when an executable is selected and object files are hidden. 
  593.  
  594. Hide object files 
  595.           Hides object files in a selected executable. This choice is available 
  596.           when an executable is selected and object files are shown. 
  597.  
  598. Show functions 
  599.           Displays the functions in a selected object file. This choice is 
  600.           available when an object file is selected and the functions are 
  601.           hidden. 
  602.  
  603. Hide functions 
  604.           Hides the functions in a selected object file. This choice is 
  605.           available when an object file is selected and the functions are 
  606.           shown. 
  607.  
  608. Enable executable 
  609.           Enables the executable. This choice is available when an executable 
  610.           is selected. 
  611.  
  612. Disable executable 
  613.           Disables the executable. This choice is available when an executable 
  614.           is selected. 
  615.  
  616. Enable object files 
  617.           Enables all object files in a selected executable. This choice is 
  618.           available when an executable is selected. 
  619.  
  620. Disable object files 
  621.           Disables all object files in a selected executable. This choice is 
  622.           available when an executable is selected. 
  623.  
  624. Enable object file 
  625.           Enables an object file. This choice is available when an object file 
  626.           is selected. 
  627.  
  628. Disable object file 
  629.           Disables an object file. This choice is available when an object file 
  630.           is selected. 
  631.  
  632. Enable functions 
  633.           Enables the functions. This choice is available when an object file 
  634.           is selected. 
  635.  
  636. Disable functions 
  637.           Disables the functions. This choice is available when an object file 
  638.           is selected. 
  639.  
  640. Enable function 
  641.           Enables a function. This choice is available when a function is 
  642.           selected. 
  643.  
  644. Disable function 
  645.           Disables a function. This choice is available when a function is 
  646.           selected. 
  647.  
  648. Set trigger 
  649.           Sets or resets a trigger on a function. This choice is available when 
  650.           a function is selected. 
  651.  
  652.           To keep these settings active for more than one trace, select the 
  653.           Save settings check box in the Trace Generation window. The settings 
  654.           are not saved until the Trace Generation window is closed or you 
  655.           begin the trace analysis. 
  656.  
  657.  
  658. ΓòÉΓòÉΓòÉ 6.4.1. Show Object Files Choice ΓòÉΓòÉΓòÉ
  659.  
  660. Select the Show object files choice to display all the object files in a 
  661. selected executable. This choice is available when an executable is selected 
  662. and the object files are hidden. 
  663.  
  664. When you choose to show the object files that make up the executable, they are 
  665. displayed beneath the executable. The object files that are displayed in black 
  666. are traceable and object files displayed in cyan are not traceable. The 
  667. executables that have a plus icon to the left of them are expandable. 
  668.  
  669. Showing All Objects 
  670.  
  671. There are three ways to show all object files in an executable: by using the 
  672. Edit menu, by using the pop-up menu, or by using the plus icon. The following 
  673. explains how to use each method: 
  674.  
  675.  1. Using the Edit menu. 
  676.  
  677.     a. Select the executable you want to show. 
  678.  
  679.     b. Select Show object files from the Edit menu. The object files are 
  680.        displayed beneath the executable. 
  681.  
  682.  2. Using the pop-up menu. 
  683.  
  684.     a. Use mouse button two to select the executable you want to show. A pop-up 
  685.        menu is displayed. 
  686.  
  687.     b. Choose Show object files from the pop-up menu. The object files are 
  688.        displayed beneath the executable. 
  689.  
  690.  3. Using the plus icon. 
  691.  
  692.     a. Select the plus icon at the left of the executable. The object files are 
  693.        displayed beneath the executable. The plus icon changes to a minus icon. 
  694.  
  695.  
  696. ΓòÉΓòÉΓòÉ 6.4.2. Hide Object Files Choice ΓòÉΓòÉΓòÉ
  697.  
  698. Select the Hide object files choice to hide the object files. This choice is 
  699. available when an executable is selected and the object files are shown. 
  700.  
  701. This choice contracts the executable so that the object files are not 
  702. displayed. When a minus icon is displayed next to an executable indicates that 
  703. it is expanded. 
  704.  
  705. Hiding object files 
  706.  
  707. There are three ways to hide the object files of an executable: using the Edit 
  708. menu, using the pop-up menu, or using the minus icon. The following explains 
  709. how to use each method: 
  710.  
  711.  1. Using the Edit menu. 
  712.  
  713.     a. Select the executable you want to hide. 
  714.  
  715.     b. Select Hide object files from the Edit menu. The object files are 
  716.        contracted. 
  717.  
  718.  2. Using the pop-up menu. 
  719.  
  720.     a. Use mouse button two to select the executable you want to hide. A pop-up 
  721.        menu is displayed. 
  722.  
  723.     b. Choose Hide object files from the pop-up menu. The object files are 
  724.        contracted. 
  725.  
  726.  3. Using the minus icon. an executable and object file in the Trace Generation 
  727.     window when the file can be shown or expanded. 
  728.  
  729.     a. Select the minus icon at the left of the executable. The object files 
  730.        are contracted. The minus icon changes to a plus icon. 
  731.  
  732.  
  733. ΓòÉΓòÉΓòÉ 6.4.3. Show Functions Choice ΓòÉΓòÉΓòÉ
  734.  
  735. Select the Show functions choice to display the functions. This choice is 
  736. available when an object file is selected and the functions are hidden. 
  737.  
  738. When you choose to show or expand an object file, the functions that make up 
  739. the object file are displayed beneath the object file. The functions that are 
  740. displayed in black are traceable and functions displayed in cyan are not 
  741. traceable. 
  742.  
  743. Showing Functions 
  744.  
  745. There are three ways to show all the functions of an object file: using the 
  746. Edit menu, using the pop-up menu, or using the plus icon. The following 
  747. explains how to use each method: 
  748.  
  749.  1. Using the Edit menu. 
  750.  
  751.     a. Select the object file you want to show. 
  752.  
  753.     b. Select Show functions from the Edit menu. The functions are displayed 
  754.        beneath the selected object file. 
  755.  
  756.  2. Using the pop-up menu. 
  757.  
  758.     a. Use mouse button two to select the object file you want to show. A 
  759.        pop-up menu is displayed. 
  760.  
  761.     b. Choose Show functions from the pop-up menu. The functions are displayed 
  762.        beneath the selected object file. 
  763.  
  764.  3. Using the plus icon. 
  765.  
  766.     a. Select the plus icon at the left of the object file. The functions are 
  767.        displayed beneath the selected object file. The plus icon changes to a 
  768.        minus icon. 
  769.  
  770.  
  771. ΓòÉΓòÉΓòÉ 6.4.4. Hide Functions Choice ΓòÉΓòÉΓòÉ
  772.  
  773. Select the Hide functions choice to hide the functions. This choice is 
  774. available when an object file is selected and the functions are shown. 
  775.  
  776. This contracts the object file so that the functions are not displayed. A minus 
  777. icon displayed next to an object file indicates that it is expanded. 
  778.  
  779. Hiding Functions 
  780.  
  781. There are three ways to hide the functions in an object file; using the Edit 
  782. menu, using the pop-up menu, or using the minus icon. The following explains 
  783. how to use each method: 
  784.  
  785.  1. Using the Edit menu. 
  786.  
  787.     a. Select the object file you want to hide. 
  788.  
  789.     b. Select Hide functions from the Edit menu. The functions are hidden. 
  790.  
  791.  2. Using the pop-up menu. 
  792.  
  793.     a. Use mouse button two to select the object file you want to hide. A 
  794.        pop-up menu is displayed. 
  795.  
  796.     b. Choose Hide functions from the pop-up menu. The functions are hidden. 
  797.  
  798.  3. Using the minus icon. 
  799.  
  800.     a. Select the minus icon at the left of the object file. The functions are 
  801.        hidden. The minus icon changes to a plus icon. 
  802.  
  803.  
  804. ΓòÉΓòÉΓòÉ 6.4.5. Enable Executable Choice ΓòÉΓòÉΓòÉ
  805.  
  806. Select the Enable executable choice to enable the selected executable. 
  807.  
  808. This choice is available when an executable is selected. When an executable has 
  809. been disabled, the executable is displayed in brown. When you enable an 
  810. executable, EXTRA includes information about the executable in the trace file. 
  811. The executable stays disabled only during this trace analysis unless the Save 
  812. settings check box is selected. 
  813.  
  814. Enabling Executables 
  815.  
  816. There are two ways to enable all object files in an executable: using the Edit 
  817. menu or using the pop-up menu. The following explains how to use each method: 
  818.  
  819.  1. Using the Edit menu. 
  820.  
  821.     a. Select the executable you want to enable. 
  822.  
  823.     b. Select Enable executable from the Edit menu. 
  824.  
  825.  2. Using the pop-up menu. 
  826.  
  827.     a. Use mouse button two to select the executable you want to enable. A 
  828.        pop-up menu is displayed. 
  829.  
  830.     b. Select Enable executable from the pop-up menu. 
  831.  
  832.  
  833. ΓòÉΓòÉΓòÉ 6.4.6. Disable Executable Choice ΓòÉΓòÉΓòÉ
  834.  
  835. Select the Disable executable choice to disable an executable. This choice is 
  836. available when a disabled executable is selected. Disabled executables are 
  837. displayed in brown. 
  838.  
  839. When an executable is disabled, EXTRA does not include information about that 
  840. executable in the trace file. The executable stays disabled only during this 
  841. trace analysis unless the Save settings check box is selected. 
  842.  
  843. Disabling an Executable 
  844.  
  845. There are two ways to disable an executable: using the Edit menu or using the 
  846. pop-up menu. The following explains how to use each method: 
  847.  
  848.  1. Use the Edit menu. 
  849.  
  850.     a. Select the executable you want to disable. 
  851.  
  852.     b. Select Disable executable from the Edit menu. 
  853.  
  854.  2. Using the pop-up menu. 
  855.  
  856.     a. Use mouse button two to select the executable you want to disable. A 
  857.        pop-up menu is displayed. 
  858.  
  859.     b. Select Disable executable from the pop-up menu. 
  860.  
  861.  
  862. ΓòÉΓòÉΓòÉ 6.4.7. Enable Object Files Choice ΓòÉΓòÉΓòÉ
  863.  
  864. Select the Enable object files choice to enable all object files for a selected 
  865. executable. 
  866.  
  867. This choice is available when an executable is selected. When all object files 
  868. in an executable have been disabled, the executable is displayed in brown. When 
  869. you enable object files, EXTRA includes information about the object files in 
  870. the trace file. When all object files are disabled, the font is changed to 
  871. italic. The executable stays disabled only during this trace analysis unless 
  872. the Save settings check box is selected. 
  873.  
  874. Enabling Objects 
  875.  
  876. There are two ways to enable all object files in an executable: using the Edit 
  877. menu or using the pop-up menu. The following explains how to use each method: 
  878.  
  879.  1. Using the Edit menu. 
  880.  
  881.     a. Select the executable you want to enable. 
  882.  
  883.     b. Select Enable object files from the Edit menu. 
  884.  
  885.  2. Using the pop-up menu. 
  886.  
  887.     a. Use mouse button two to select the executable you want to enable. A 
  888.        pop-up menu is displayed. 
  889.  
  890.     b. Select Enable object files from the pop-up menu. 
  891.  
  892.  
  893. ΓòÉΓòÉΓòÉ 6.4.8. Disable Object Files Choice ΓòÉΓòÉΓòÉ
  894.  
  895. Select the Disable object files choice to disable all object files. This choice 
  896. is available when an executable is selected. 
  897.  
  898. When you disable object files, EXTRA does not include information about those 
  899. object files in the trace file. Disabled object files are displayed in brown. 
  900. The object file stays disabled only during this trace analysis unless the Save 
  901. settings check box is selected. 
  902.  
  903. Disabling Objects 
  904.  
  905. There are two ways to disable an executable: using the Edit menu or using the 
  906. pop-up menu. The following explains how to use each method: 
  907.  
  908.  1. Using the Edit menu. 
  909.  
  910.     a. Select the executable you want to disable. 
  911.  
  912.     b. Select Disable object files from the Edit menu. 
  913.  
  914.  2. Using the pop-up menu. 
  915.  
  916.     a. Use mouse button two to select the executable you want to disable. A 
  917.        pop-up menu is displayed. 
  918.  
  919.     b. Select Disable object files from the pop-up menu. 
  920.  
  921.  
  922. ΓòÉΓòÉΓòÉ 6.4.9. Enable Object File Choice ΓòÉΓòÉΓòÉ
  923.  
  924. Select the Enable object file choice to enable an object file. This choice is 
  925. available when an object file is selected. 
  926.  
  927. When an object file is disabled, it is displayed in brown. When you enable an 
  928. object file, EXTRA includes information about that object file in the trace 
  929. file. The object file stays disabled only during this trace analysis unless the 
  930. Save settings check box is selected. 
  931.  
  932. Enabling an Object 
  933.  
  934. There are two ways to enable an object file: using the Edit menu or using the 
  935. pop-up menu. The following explains how to use each method: 
  936.  
  937.  1. Using the Edit menu. 
  938.  
  939.     a. Select the object file you want to enable. 
  940.  
  941.     b. Select Enable object file from the Edit menu. 
  942.  
  943.  2. Using the pop-up menu. 
  944.  
  945.     a. Use mouse button two to select the object file you want to enable. A 
  946.        pop-up menu is displayed. 
  947.  
  948.     b. Select Enable object file from the pop-up menu. 
  949.  
  950.  
  951. ΓòÉΓòÉΓòÉ 6.4.10. Disable Object File Choice ΓòÉΓòÉΓòÉ
  952.  
  953. Select the Disable object file choice to disable an object file. This choice is 
  954. available when an object file is selected. 
  955.  
  956. When an object file is disabled, EXTRA does not include information about that 
  957. object file in the trace file. Disabled object files are displayed in brown. 
  958. The object file stays disabled only during this trace analysis unless the Save 
  959. settings check box is selected. 
  960.  
  961. Disabling an Object File 
  962.  
  963. There are two ways to disable an object file: using the Edit menu or using the 
  964. pop-up menu. The following explains how to use each method: 
  965.  
  966.  1. Use the Edit menu. 
  967.  
  968.     a. Select the object file you want to disable. 
  969.  
  970.     b. Select Disable object file from the Edit menu. 
  971.  
  972.  2. Using the pop-up menu. 
  973.  
  974.     a. Use mouse button two to select the object file you want to disable. A 
  975.        pop-up menu is displayed. 
  976.  
  977.     b. Select Disable object file from the pop-up menu. 
  978.  
  979.  
  980. ΓòÉΓòÉΓòÉ 6.4.11. Enable Functions Choice ΓòÉΓòÉΓòÉ
  981.  
  982. Select the Enable functions choice to enable the functions. This choice is 
  983. available when an object file is selected. 
  984.  
  985. When the functions in an object file have been disabled, the object file is 
  986. displayed in brown. When you enable an object file or the functions, EXTRA 
  987. includes information about the object file in the trace file. The functions 
  988. stay disabled only during this trace analysis unless the Save settings check 
  989. box is selected. 
  990.  
  991. Enabling Functions 
  992.  
  993. There are two ways to enable the functions: using the Edit menu and using the 
  994. pop-up menu. The following explains how to use each method: 
  995.  
  996.  1. Use the Edit menu. 
  997.  
  998.     a. Select the function you want to enable. 
  999.  
  1000.     b. Select Enable functions from the Edit menu. 
  1001.  
  1002.  2. Use the pop-up menu. 
  1003.  
  1004.     a. Use mouse button two to select the object file you want enabled. A 
  1005.        pop-up menu is displayed. 
  1006.  
  1007.     b. Select Enable functions from the pop-up menu. 
  1008.  
  1009.  
  1010. ΓòÉΓòÉΓòÉ 6.4.12. Disable Functions Choice ΓòÉΓòÉΓòÉ
  1011.  
  1012. Select the Disable functions choice to disable the functions. This choice is 
  1013. available when an object file is selected. 
  1014.  
  1015. When the functions are disabled, EXTRA does not include information about these 
  1016. functions in the trace file. Disabled functions are displayed in brown. The 
  1017. functions stay disabled only during this trace analysis unless the Save 
  1018. settings check box is selected. 
  1019.  
  1020. Disabling Functions 
  1021.  
  1022. There are two ways to disable a function: using the Edit menu and using the 
  1023. pop-up menu. The following explains how to use each method: 
  1024.  
  1025.  1. Using the Edit menu. 
  1026.  
  1027.     a. Select the object file you want disabled. 
  1028.  
  1029.     b. Select Disable functions from the Edit menu. 
  1030.  
  1031.  2. Using the pop-up menu. 
  1032.  
  1033.     a. Use mouse button two to select the object file you want disabled. A 
  1034.        pop-up menu is displayed. 
  1035.  
  1036.     b. Select Disable functions from the pop-up menu. 
  1037.  
  1038.  
  1039. ΓòÉΓòÉΓòÉ 6.4.13. Enable Function Choice ΓòÉΓòÉΓòÉ
  1040.  
  1041. Select the Enable function choice to enable a function. This choice is 
  1042. available when a function is selected. 
  1043.  
  1044. When a function is disabled, it is displayed in brown. When you enable a 
  1045. function, EXTRA includes information about the function in the trace file. The 
  1046. function stays disabled only during this trace analysis unless the Save 
  1047. settings check box is selected. 
  1048.  
  1049. Enabling a Function 
  1050.  
  1051. There are two ways to enable a function: using the Edit menu and using the 
  1052. pop-up menu. The following explains how to use each method: 
  1053.  
  1054.  1. Using the Edit menu. 
  1055.  
  1056.     a. Select the function you want to enable. 
  1057.  
  1058.     b. Select Enable function from the Edit menu. 
  1059.  
  1060.  2. Using the pop-up menu. 
  1061.  
  1062.     a. Use mouse button two to select the function you want enabled. A pop-up 
  1063.        menu is displayed. 
  1064.  
  1065.     b. Select Enable function from the pop-up menu. 
  1066.  
  1067.  
  1068. ΓòÉΓòÉΓòÉ 6.4.14. Disable Function Choice ΓòÉΓòÉΓòÉ
  1069.  
  1070. Select the Disable function choice to disable a function. This choice is 
  1071. available when a function is selected. 
  1072.  
  1073. When a function is disabled, EXTRA does not included information about the 
  1074. function in the trace file. Disabled functions are displayed in brown. The 
  1075. function stays disabled only during this trace analysis unless the Save 
  1076. settings check box is selected. 
  1077.  
  1078. Note:  This choice is only available from the Edit menu. 
  1079.  
  1080. Disabling a Function 
  1081.  
  1082. There are two ways to disable a function: using the Edit menu and using the 
  1083. pop-up menu. The following shows how to use each method: 
  1084.  
  1085.  1. Using the Edit menu. 
  1086.  
  1087.     a. Select the function you want disabled. 
  1088.  
  1089.     b. Select Disable function from the Edit menu. 
  1090.  
  1091.  2. Using the pop-up menu. 
  1092.  
  1093.     a. Use mouse button two to select the function you want disabled. A pop-up 
  1094.        menu is displayed. 
  1095.  
  1096.     b. Select Disable function from the pop-up menu. 
  1097.  
  1098.  
  1099. ΓòÉΓòÉΓòÉ 6.4.15. Set Trigger Choice ΓòÉΓòÉΓòÉ
  1100.  
  1101. Select the Set trigger choice to add or remove a trigger from a function. This 
  1102. choice is available when a function is selected. 
  1103.  
  1104. A trigger function turns tracing on when it is called and then turns off the 
  1105. tracing when it returns. If a trigger function is nested within another trigger 
  1106. function, tracing is turned off only after the outer function returns. You can 
  1107. set multiple triggers. The trigger is set for one trace analysis unless the 
  1108. Save settings check box is selected. 
  1109.  
  1110. Setting Triggers 
  1111.  
  1112. There are two ways to set a trigger on a function: using the Edit menu or using 
  1113. the pop-up menu. The following explains how to use each method: 
  1114.  
  1115.  1. Using the Edit menu. 
  1116.  
  1117.     a. Select the function you want to trigger. 
  1118.  
  1119.     b. Select Set trigger from the Edit menu. 
  1120.  
  1121.     c. Select the On choice from the cascaded menu. A box is displayed around 
  1122.        the function and the word trigger is displayed next to the function. 
  1123.  
  1124.  2. Using the pop-up menu. 
  1125.  
  1126.     a. Use mouse button two to select the function you want to trigger. A 
  1127.        pop-up menu is displayed. 
  1128.  
  1129.     b. Select Set trigger from the pop-up menu. A box is displayed around the 
  1130.        function and the word trigger is displayed next to the function. 
  1131.  
  1132. Resetting Triggers 
  1133.  
  1134. There are two ways to reset a trigger on a function: using the Edit menu or 
  1135. using the pop-up menu. The following explains how to use each method: 
  1136.  
  1137.  1. Using the Edit menu. 
  1138.  
  1139.     a. Select the function you want to reset. 
  1140.  
  1141.     b. Select Set trigger from the Edit menu. 
  1142.  
  1143.     c. Select the Off choice from the cascaded menu. 
  1144.  
  1145.  2. Using the pop-up menu. 
  1146.  
  1147.     a. Use mouse button two to select the function you want to reset. A pop-up 
  1148.        menu is displayed. 
  1149.  
  1150.     b. Select Reset trigger from the pop-up menu. The box and the word trigger 
  1151.        are removed from the function. 
  1152.  
  1153.  
  1154. ΓòÉΓòÉΓòÉ 6.4.16. Reset Trigger Function Choice ΓòÉΓòÉΓòÉ
  1155.  
  1156. Select the Reset trigger function choice to remove a trigger from a function. 
  1157. This choice is only available from the pop-up menu menu when a function has a 
  1158. trigger set. 
  1159.  
  1160. To reset the triggers: 
  1161.  
  1162.  1. Use mouse button two to select a function that you want to reset. A pop-up 
  1163.     menu is displayed. 
  1164.  
  1165.  2. Select Reset trigger function from the pop-up menu. The box and the word 
  1166.     trigger are removed from the function. 
  1167.  
  1168.  
  1169. ΓòÉΓòÉΓòÉ 6.5. Help Menu ΓòÉΓòÉΓòÉ
  1170.  
  1171. Trace Generation window 
  1172.  
  1173. The choices available from the Help menu are: 
  1174.  
  1175. Help index 
  1176.           Shows an alphabetical index of all available EXTRA help topics. 
  1177.  
  1178. General help 
  1179.           Provides help information for the current action window. 
  1180.  
  1181. Using help 
  1182.           Explains how to use the EXTRA help facility. 
  1183.  
  1184.  
  1185. ΓòÉΓòÉΓòÉ 6.5.1. Using Help Choice ΓòÉΓòÉΓòÉ
  1186.  
  1187. Trace Generation window 
  1188.  
  1189. Select the Using help choice to learn how to use the EXTRA help facility. To 
  1190. get help, select Using help from the Help menu. 
  1191.  
  1192.  
  1193. ΓòÉΓòÉΓòÉ 6.5.2. General Help Choice ΓòÉΓòÉΓòÉ
  1194.  
  1195. Trace Generation window 
  1196.  
  1197. Select the General help choice to display online help for the active EXTRA 
  1198. window. The online help panel displayed is the same panel that is displayed 
  1199. when you place your cursor inside the window and press F1. 
  1200.  
  1201.  
  1202. ΓòÉΓòÉΓòÉ 6.5.3. Help Index Choice ΓòÉΓòÉΓòÉ
  1203.  
  1204. Trace Generation window 
  1205.  
  1206. Select the Help index choice to display an alphabetical list of index entries 
  1207. for EXTRA. Use the Search push button to locate topics in the index. 
  1208.  
  1209.  
  1210. ΓòÉΓòÉΓòÉ 7. Application Termination Window ΓòÉΓòÉΓòÉ
  1211.  
  1212. While EXTRA is analyzing your application, the Application Termination window 
  1213. and the Trace Analysis Status window are displayed. Use the Application 
  1214. Termination window to stop your application. 
  1215.  
  1216. Tracing an Application 
  1217.  
  1218. You can choose to trace your entire application or just a specific part. 
  1219.  
  1220. To trace your application: 
  1221.  
  1222.  1. Use the Trace Generation window to set any special settings. 
  1223.  
  1224.  2. Select the Trace push button to begin the trace analysis. 
  1225.  
  1226.  3. Run your entire application or any specific part you want to trace. 
  1227.  
  1228.  4. To stop tracing, quit from your application or select the Stop push button. 
  1229.     The Trace Analysis Status window shows the following message: 
  1230.  
  1231.         Application terminated ... please wait
  1232.     The Trace Analysis Selection is displayed. 
  1233.  
  1234.  
  1235. ΓòÉΓòÉΓòÉ 8. Trace Analysis Status Window ΓòÉΓòÉΓòÉ
  1236.  
  1237. The Trace Analysis Status window is displayed while EXTRA is tracing your 
  1238. application. It displays the status of EXTRA. 
  1239.  
  1240. The following lists the statements that may be displayed: 
  1241.  
  1242. Gathering trace events ...
  1243.           EXTRA is writing trace events to the buffer. 
  1244.  
  1245. Flushing buffer - avoid desktop input!
  1246.           EXTRA is writing trace events to the trace file because the buffer is 
  1247.           full. You should not enter any information or select any push button 
  1248.           while this statement is displayed. Any desktop input is delayed until 
  1249.           the buffer flushing is complete. 
  1250.  
  1251. Application terminated ... please wait.
  1252.           EXTRA is writing information to the trace file. 
  1253.  
  1254.  
  1255. ΓòÉΓòÉΓòÉ 9. Trace Analysis Selection Window ΓòÉΓòÉΓòÉ
  1256.  
  1257. After EXTRA has analyzed your application, the Trace Analysis Selection window 
  1258. is displayed with a push button for each diagram. From this window, you can 
  1259. view the trace file in one of the following diagrams: 
  1260.  
  1261. Statistics 
  1262.           This push button opens the Statistical Summary. This is a textual 
  1263.           report of execution times by function. It also provides other timing 
  1264.           information. 
  1265.  
  1266. Call Nesting 
  1267.           This push button opens the Call Nesting diagram. This diagram shows 
  1268.           the sequence of nested function calls and returns made during the 
  1269.           execution of application. 
  1270.  
  1271. Exec Density 
  1272.           This push button opens the Execution Density diagram. This diagram 
  1273.           divides the entire execution time into horizontal slices with a 
  1274.           column representing each function. The slices are in different colors 
  1275.           to show the percentage of time spent in each function. 
  1276.  
  1277. Time Line 
  1278.           This push button opens the Time Line diagram. This diagram displays 
  1279.           the sequence of nested function calls and returns, and it uses time 
  1280.           stamp information to place each event properly along the time 
  1281.           dimension. 
  1282.  
  1283. Call Graph 
  1284.           This push button opens the Dynamic Call Graph. This graph shows a 
  1285.           graphical view of the target application execution. Each function 
  1286.           called is displayed as a node. Calls are shown as arcs between nodes. 
  1287.           The color and size of nodes and arcs show the amount of time spent in 
  1288.           the function and the number of calls between functions. 
  1289.  
  1290.  
  1291. ΓòÉΓòÉΓòÉ 9.1. Opening Diagrams ΓòÉΓòÉΓòÉ
  1292.  
  1293. To open a diagram, use one of the following methods: 
  1294.  
  1295.  1. Type the diagram command at the command prompt. The following list shows 
  1296.     the diagram and the command to type. After the command, type the name of 
  1297.     the trace file where the filename equals the name of the trace file and ext 
  1298.     equals the file extension: 
  1299.  
  1300.    Diagram                            Command 
  1301.  
  1302.    Statistical Summary 
  1303.  
  1304.                                                                             istats filename.ext
  1305.  
  1306.    Call Nesting 
  1307.  
  1308.                                                                             icalnest filename.ext
  1309.  
  1310.    Time Line. 
  1311.  
  1312.                                                                             itime filename.ext
  1313.  
  1314.    Execution Density 
  1315.  
  1316.                                                                             iexcdens filename.ext
  1317.  
  1318.    Dynamic Call Graph 
  1319.  
  1320.                                                                             idcgraph filename.ext
  1321.  
  1322.  2. Select one of the push buttons in the Trace Analysis Selection window. The 
  1323.     following lists the push button name and diagram: 
  1324.  
  1325.    Push Button                        Diagram 
  1326.  
  1327.    Statistics                         Statistical Summary 
  1328.  
  1329.    Time Line                          Time Line 
  1330.  
  1331.    Exec Density                       Execution Density 
  1332.  
  1333.    Call Nesting                       Call Nesting 
  1334.  
  1335.    Call Graph                         Dynamic Call Graph 
  1336.  
  1337.  3. Select Open from the File menu of the window you have open and then select 
  1338.     a diagram to view from the cascaded menu. 
  1339.  
  1340.  
  1341. ΓòÉΓòÉΓòÉ <hidden> Statistics Choice ΓòÉΓòÉΓòÉ
  1342.  
  1343. The Statistics choice is available from the Open cascaded menu. When you select 
  1344. Statistics, the Statistical Summary is displayed. 
  1345.  
  1346.  
  1347. ΓòÉΓòÉΓòÉ <hidden> Time Line Choice ΓòÉΓòÉΓòÉ
  1348.  
  1349. The Time Line choice is available from the Open cascaded menu. When you select 
  1350. Time Line, the Time Line diagram is displayed. 
  1351.  
  1352.  
  1353. ΓòÉΓòÉΓòÉ <hidden> Exec Density Choice ΓòÉΓòÉΓòÉ
  1354.  
  1355. The Execution Density choice is available from the Open cascaded menu. When you 
  1356. select Execution Density, the Execution Density diagram is displayed. 
  1357.  
  1358.  
  1359. ΓòÉΓòÉΓòÉ <hidden> Call Nesting Choice ΓòÉΓòÉΓòÉ
  1360.  
  1361. The Call Nesting choice is available from the Open cascaded menu. When you 
  1362. select Call Nesting, the Call Nesting diagram is displayed. 
  1363.  
  1364.  
  1365. ΓòÉΓòÉΓòÉ <hidden> Call Graph Choice ΓòÉΓòÉΓòÉ
  1366.  
  1367. The Dynamic Call Graph choice is available from the Open cascaded menu. When 
  1368. you select Dynamic Call Graph, the Dynamic Call Graph is displayed. 
  1369.  
  1370.  
  1371. ΓòÉΓòÉΓòÉ 9.2. Statistics Startup Information Window ΓòÉΓòÉΓòÉ
  1372.  
  1373. The Statistical Summary Startup Information window displays your trace file. To 
  1374. specify the trace file you want EXTRA to display, do the following: 
  1375.  
  1376.  1. Type the full path and file name of the application you want to trace in 
  1377.     the Trace file name entry field. If the trace file is in your current 
  1378.     directory, you do not have to type the path. 
  1379.  
  1380.  2. Select the OK push button to display the diagram or select the Cancel push 
  1381.     button to return to the command prompt. 
  1382.  
  1383.  
  1384. ΓòÉΓòÉΓòÉ 9.3. Time Line Startup Information Window ΓòÉΓòÉΓòÉ
  1385.  
  1386. The Time Line Startup Information window displays your trace file. To specify 
  1387. the trace file you want EXTRA to display, do the following: 
  1388.  
  1389.  1. Type the full path and file name of the application you want to trace in 
  1390.     the Trace file name entry field. If the trace file is in your current 
  1391.     directory, you do not have to type the path. 
  1392.  
  1393.  2. Select the OK push button to display the diagram or select the Cancel push 
  1394.     button to return to the command prompt. 
  1395.  
  1396.  
  1397. ΓòÉΓòÉΓòÉ 9.4. Execution Density Startup Information Window ΓòÉΓòÉΓòÉ
  1398.  
  1399. The Execution Density Startup Information window displays your trace file. To 
  1400. specify the trace file you want EXTRA to display, do the following: 
  1401.  
  1402.  1. Type the full path and file name of the application you want to trace in 
  1403.     the Trace file name entry field. If the trace file is in your current 
  1404.     directory, you do not have to type the path. 
  1405.  
  1406.  2. Select the OK push button to display the diagram or select the Cancel push 
  1407.     button to return to the command prompt. 
  1408.  
  1409.  
  1410. ΓòÉΓòÉΓòÉ 9.5. Call Nesting Startup Information Window ΓòÉΓòÉΓòÉ
  1411.  
  1412. The Call Nesting Startup Information window displays your trace file. To 
  1413. specify the trace file you want EXTRA to display, do the following: 
  1414.  
  1415.  1. Type the full path and file name of the application you want to trace in 
  1416.     the Trace file name entry field. If the trace file is in your current 
  1417.     directory, you do not have to type the path. 
  1418.  
  1419.  2. Select the OK push button to display the diagram or select the Cancel push 
  1420.     button to return to the command prompt. 
  1421.  
  1422.  
  1423. ΓòÉΓòÉΓòÉ 9.6. Dynamic Call Graph Startup Information Window ΓòÉΓòÉΓòÉ
  1424.  
  1425. The Dynamic Call Graph Startup Information window displays your trace file. To 
  1426. specify the trace file you want EXTRA to display, do the following: 
  1427.  
  1428.  1. Type the full path and file name of the application you want to trace in 
  1429.     the Trace file name entry field. If the trace file is in your current 
  1430.     directory, you do not have to type the path. 
  1431.  
  1432.  2. Select the OK push button to display the diagram or select the Cancel push 
  1433.     button to return to the command prompt. 
  1434.  
  1435.  
  1436. ΓòÉΓòÉΓòÉ 10. Statistical Summary ΓòÉΓòÉΓòÉ
  1437.  
  1438. The Statistical Summary gives you a textual report of execution time by 
  1439. function. Use this information to find hot spots in the overall application 
  1440. execution. 
  1441.  
  1442. The Statistical Summary has two windows: Summary and Details. 
  1443.  
  1444. The Summary window is in the top-most area. You can scroll the windows and 
  1445. window panes to view the summary information. The Details window is divided 
  1446. into two panes. The left pane lists the function names. The right pane lists 
  1447. the statistics for each function. 
  1448.  
  1449. You can resize the windows horizontally and the panes vertically. To resize a 
  1450. window or window pane, press and drag the mouse pointer on a split bar until 
  1451. the windows or window panes are the size you want. 
  1452.  
  1453. Using the Summary Window 
  1454.  
  1455. The summary information provides data about the following: 
  1456.  
  1457. o Number of executables or object files generating events 
  1458. o Number of functions generating events 
  1459. o Number of threads generating events 
  1460. o Maximum nesting depth of each thread 
  1461. o Number of user events 
  1462. o Total number of events 
  1463. o Number of buffer flushes 
  1464. o Total trace time excluding overhead 
  1465. o Trace overhead time. 
  1466.  
  1467. Viewing the Details Window 
  1468.  
  1469. The Details window contains the functions and information about the functions, 
  1470. such as: 
  1471.  
  1472. o Function names 
  1473. o The total execution and active time as percentages of the total execution and 
  1474.   the total active time, respectively 
  1475. o The minimum, maximum, and average call time 
  1476. o The total number of calls. 
  1477.  
  1478. Notes: 
  1479.  
  1480.  1. Times are shown in seconds and in milliseconds. 
  1481.  2. If you chose to have file accesses traced, the Statistical Summary lists 
  1482.     the Dos call with the number of calls to it under the function name. For 
  1483.     more information, see tracing file accesses. 
  1484.  3. If you have user events in your application, the Statistical Summary lists 
  1485.     the user event with the number of accesses under the function name. For 
  1486.     more information, see inserting user events. 
  1487.  
  1488. Menu Bar Summary 
  1489.  
  1490. The choices available from the Statistical Summary menu bar are: 
  1491.  
  1492. o File 
  1493. o Options 
  1494. o Help. 
  1495.  
  1496.  
  1497. ΓòÉΓòÉΓòÉ 10.1. File Menu ΓòÉΓòÉΓòÉ
  1498.  
  1499. The following choices are available from the File menu: 
  1500.  
  1501. Open 
  1502.           Displays a new or an additional diagram. 
  1503.  
  1504. Save as 
  1505.           Creates a file containing the summary information. 
  1506.  
  1507. Print 
  1508.           Prints the Statistical Summary. 
  1509.  
  1510.  
  1511. ΓòÉΓòÉΓòÉ 10.1.1. Open Choice ΓòÉΓòÉΓòÉ
  1512.  
  1513. Select the Open cascading choice to view another diagram. You can open as many 
  1514. new diagram windows as you want. 
  1515.  
  1516. To select a new diagram: 
  1517.  
  1518.  1. Select Open from the File menu. A cascaded menu is displayed with the 
  1519.     following choices: 
  1520.  
  1521.    Statistics 
  1522.  
  1523.    Time Line 
  1524.  
  1525.    Execution Density 
  1526.  
  1527.    Call Nesting 
  1528.  
  1529.    Dynamic Call Graph 
  1530.  
  1531.  2. Select the name of the diagram you want to view. A new window opens and 
  1532.     displays the diagram you selected. 
  1533.  
  1534.  
  1535. ΓòÉΓòÉΓòÉ 10.1.2. Save As Choice ΓòÉΓòÉΓòÉ
  1536.  
  1537. Select the Save as choice to save the Statistical Summary as an ASCII file. 
  1538. When you select Save as, a Save As action window is displayed. 
  1539.  
  1540.  
  1541. ΓòÉΓòÉΓòÉ 10.1.3. Print Choice ΓòÉΓòÉΓòÉ
  1542.  
  1543. Select Print to print the Statistical Summary. 
  1544.  
  1545. To print the Statistical Summary, select Print from the File menu. The 
  1546. Statistical Summary is printed on the default printer. 
  1547.  
  1548. Note:  If you are printing over a network, see your LAN administrator about 
  1549. creating a printer object. 
  1550.  
  1551.  
  1552. ΓòÉΓòÉΓòÉ 10.2. Options Menu ΓòÉΓòÉΓòÉ
  1553.  
  1554. The choices from the Options menu are: 
  1555.  
  1556. Font 
  1557.           Select the font and font size for the Summary and Details windows. 
  1558.  
  1559. Horz. split bar 
  1560.           Controls the horizontal split bar between the Summary and Details 
  1561.           windows. 
  1562.  
  1563. Vert. split bar 
  1564.           Controls the vertical split bar in the Details window. 
  1565.  
  1566.  
  1567. ΓòÉΓòÉΓòÉ 10.2.1. Font Choice ΓòÉΓòÉΓòÉ
  1568.  
  1569. Select the Font cascading choice to change the font and font size for the 
  1570. Summary window and the Details window. 
  1571.  
  1572. When you select Font, a cascaded menu is displayed with the following choices: 
  1573.  
  1574. o Summary 
  1575. o Details. 
  1576.  
  1577.  
  1578. ΓòÉΓòÉΓòÉ 10.2.2. Summary Choice ΓòÉΓòÉΓòÉ
  1579.  
  1580. Select the Summary choice to change the font and font size for the Summary 
  1581. window. The Summary window is in the top-most area. 
  1582.  
  1583. When you select Summary, a Font action window is displayed. 
  1584.  
  1585.  
  1586. ΓòÉΓòÉΓòÉ 10.2.3. Details Choice ΓòÉΓòÉΓòÉ
  1587.  
  1588. Select the Details choice to change the font and font size for the Details 
  1589. window panes. 
  1590.  
  1591. When you select Details, a Font action window is displayed. 
  1592.  
  1593.  
  1594. ΓòÉΓòÉΓòÉ 10.2.4. Horz. Split Bar Choice ΓòÉΓòÉΓòÉ
  1595.  
  1596. Controls the horizontal split bar between the Summary and Details windows. 
  1597.  
  1598.  
  1599. ΓòÉΓòÉΓòÉ 10.2.5. Vert. Split Bar Choice ΓòÉΓòÉΓòÉ
  1600.  
  1601. Controls the vertical split bar in the Details window. 
  1602.  
  1603.  
  1604. ΓòÉΓòÉΓòÉ 10.2.6. Vert. Split Bar Action Window ΓòÉΓòÉΓòÉ
  1605.  
  1606. The Vert. Split Bar Action Window lets you control the vertical split bar in 
  1607. the Details window. To change the setting, select the spin buttons in the entry 
  1608. field. 
  1609.  
  1610.  
  1611. ΓòÉΓòÉΓòÉ 10.3. Help Menu ΓòÉΓòÉΓòÉ
  1612.  
  1613. The choices available from the Help menu are: 
  1614.  
  1615. Help index 
  1616.           Shows an alphabetical index of all available EXTRA help topics. 
  1617.  
  1618. General help 
  1619.           Provides help information for the current action window. 
  1620.  
  1621. Using help 
  1622.           Explains how to use the EXTRA help facility. 
  1623.  
  1624.  
  1625. ΓòÉΓòÉΓòÉ 10.3.1. Help Index Choice ΓòÉΓòÉΓòÉ
  1626.  
  1627. Select the Help index choice to display an alphabetical list of index entries 
  1628. for EXTRA. Use the Search push button to locate topics in the index. 
  1629.  
  1630.  
  1631. ΓòÉΓòÉΓòÉ 10.3.2. Using Help Choice ΓòÉΓòÉΓòÉ
  1632.  
  1633. Select the Using help choice to learn how to use the EXTRA help facility. To 
  1634. get help, select Using help from the Help menu. 
  1635.  
  1636.  
  1637. ΓòÉΓòÉΓòÉ 10.3.3. General Help Choice ΓòÉΓòÉΓòÉ
  1638.  
  1639. Select the General help choice to display online help for the active EXTRA 
  1640. window. 
  1641.  
  1642.  
  1643. ΓòÉΓòÉΓòÉ 11. Time Line Diagram ΓòÉΓòÉΓòÉ
  1644.  
  1645. The Time Line diagram displays the sequence of nested function calls and 
  1646. returns. Time stamps determine the exact placement of an event along the time 
  1647. dimension on the vertical axis. This provides a direct and natural presentation 
  1648. of the chronological relationships of events. 
  1649.  
  1650. Menu Bar Summary 
  1651.  
  1652. The following choices are available from the Time Line diagram menu bar: 
  1653.  
  1654. o File 
  1655. o Options 
  1656. o Help. 
  1657.  
  1658.  
  1659. ΓòÉΓòÉΓòÉ 11.1. File Menu ΓòÉΓòÉΓòÉ
  1660.  
  1661. The following choices are available from the File menu: 
  1662.  
  1663. Open 
  1664.           Shows a new or an additional diagram. 
  1665.  
  1666. Print 
  1667.           Prints the information that is displayed in the current window. 
  1668.  
  1669.  
  1670. ΓòÉΓòÉΓòÉ 11.1.1. Open Choice ΓòÉΓòÉΓòÉ
  1671.  
  1672. Select the Open choice to view another diagram. You can open as many new 
  1673. diagram windows as you want. 
  1674.  
  1675. To select a new diagram: 
  1676.  
  1677.  1. Select Open from the File menu. A cascaded menu is displayed with the 
  1678.     following choices: 
  1679.  
  1680.    Statistics 
  1681.  
  1682.    Time Line 
  1683.  
  1684.    Execution Density 
  1685.  
  1686.    Call Nesting 
  1687.  
  1688.    Dynamic Call Graph 
  1689.  
  1690.  2. Select the name of the diagram you want to view. A new window opens and 
  1691.     displays the diagram you selected. 
  1692.  
  1693.  
  1694. ΓòÉΓòÉΓòÉ 11.1.2. Print Choice ΓòÉΓòÉΓòÉ
  1695.  
  1696. Select Print to print the information from the Time Line diagram that is 
  1697. displayed in the window. 
  1698.  
  1699. To print the Time Line diagram, select Print from the File menu. The Time Line 
  1700. diagram is printed on the default printer. 
  1701.  
  1702. Note:  If you are printing over a network, see your LAN administrator about 
  1703. creating a printer object. 
  1704.  
  1705.  
  1706. ΓòÉΓòÉΓòÉ 11.2. Options Menu ΓòÉΓòÉΓòÉ
  1707.  
  1708. The following choices are available from the Options menu: 
  1709.  
  1710. Call stack 
  1711.           Shows all functions on the call stack at a selected point. 
  1712.  
  1713. Correlation 
  1714.           Uses a selected point to find a correlating point in another diagram. 
  1715.  
  1716. Font 
  1717.           Selects the font, font style, and font size for the diagram. 
  1718.  
  1719. Scale 
  1720.           Selects the size of the diagram and controls which functions are 
  1721.           displayed in the diagram. 
  1722.  
  1723. Thread layout 
  1724.           Selects the indentation amount for each thread column and whether to 
  1725.           draw separator bars between threads. 
  1726.  
  1727. Ruler 
  1728.           Shows the time between two points of interest in a diagram. 
  1729.  
  1730.  
  1731. ΓòÉΓòÉΓòÉ 11.2.1. Call Stack Choice ΓòÉΓòÉΓòÉ
  1732.  
  1733. Select the Call stack choice to display the order in which the functions were 
  1734. called at a selected point. A call stack is a display of the call nesting in a 
  1735. given application. For example, if function A calls function B, which calls 
  1736. function C, then the call stack for function C would show function C as the 
  1737. first element, function B as the second element, and function A as the last 
  1738. element. 
  1739.  
  1740. When you select Call stack, the pointer turns into a plus icon. Select a point 
  1741. in the diagram to display the Call Stack action window. 
  1742.  
  1743.  
  1744. ΓòÉΓòÉΓòÉ <hidden> Call Stack Action Window ΓòÉΓòÉΓòÉ
  1745.  
  1746. Select the Call stack choice to display the order in which the functions were 
  1747. called at a selected point. 
  1748.  
  1749. To display a call stack: 
  1750.  
  1751.  1. Select Call stack from the Options menu. The pointer turns into a plus 
  1752.     icon. 
  1753.  
  1754.  2. Select a point in the diagram. A Call Stack action window is displayed that 
  1755.     shows the function you selected and the order in which the functions were 
  1756.     called. 
  1757.  
  1758.  3. Select the OK push button to close the action window. 
  1759.  
  1760.  
  1761. ΓòÉΓòÉΓòÉ 11.2.2. Correlation Choice ΓòÉΓòÉΓòÉ
  1762.  
  1763. Select the Correlation choice to mark a point in the Call Nesting diagram, 
  1764. Execution Density diagram, or Time Line diagram and then find that same point 
  1765. in another Call Nesting diagram, Execution Density diagram, or Time Line 
  1766. diagram. You can correlate more than two diagrams at a time. 
  1767.  
  1768. There are two ways to correlate diagrams: using the mouse and using the menus. 
  1769. The following explains both methods: 
  1770.  
  1771.  1. Using the mouse: 
  1772.  
  1773.     a. Open a Call Nesting, Execution Density, or Time Line window and then 
  1774.        open at least one other window with a different diagram or the same 
  1775.        diagram at a different scale. 
  1776.  
  1777.     b. Select Correlation from the Options menu. The pointer turns into a 
  1778.        double-headed arrow. 
  1779.  
  1780.     c. Press and hold mouse button two on the point in the diagram you want to 
  1781.        correlate, drag the mouse pointer into the window of a second diagram, 
  1782.        and release mouse button two. EXTRA highlights the correlated point. 
  1783.  
  1784.  2. Using the menus 
  1785.  
  1786.     a. Open a Call Nesting, Execution Density, or Time Line window and then 
  1787.        open at least one other window with a different diagram or the same 
  1788.        diagram at a different scale. 
  1789.  
  1790.     b. Select Correlation from the Options menu. The pointer turns into a 
  1791.        double-headed arrow. 
  1792.  
  1793.     c. Move the double-headed arrow to the point in the diagram that you want 
  1794.        to correlate, press the spacebar, and then the Enter key. EXTRA 
  1795.        highlights the correlated point and a  Correlation list box is 
  1796.        displayed. 
  1797.  
  1798.     d. Select the name of each diagram you want to correlate and select OK. 
  1799.        EXTRA highlights the correlated points in the diagrams. 
  1800.  
  1801.  
  1802. ΓòÉΓòÉΓòÉ <hidden> Correlation List Box ΓòÉΓòÉΓòÉ
  1803.  
  1804. Use the Correlation list box to select the name of each diagram you want to 
  1805. correlate and select OK. EXTRA opens a diagram and highlights the correlated 
  1806. point. For more information, see Push Buttons. 
  1807.  
  1808.  
  1809. ΓòÉΓòÉΓòÉ 11.2.3. Font Choice ΓòÉΓòÉΓòÉ
  1810.  
  1811. Select the Font choice to change the font, font style, and font size for the 
  1812. diagram. A Font action window is displayed. 
  1813.  
  1814.  
  1815. ΓòÉΓòÉΓòÉ 11.2.4. Scale Choice ΓòÉΓòÉΓòÉ
  1816.  
  1817. Use the Scale choice to select the size of the diagram and to control which 
  1818. functions are displayed in the diagram. Scaling is the process of changing the 
  1819. granularity of the detail in a trace diagram: to step back from a diagram to 
  1820. get a bigger picture or to zoom in to see the finer points. 
  1821.  
  1822. When you select Scale, a Scale action window is displayed. 
  1823.  
  1824.  
  1825. ΓòÉΓòÉΓòÉ <hidden> Scale Action Window ΓòÉΓòÉΓòÉ
  1826.  
  1827. When you select  Scale, a Scale action window is displayed. 
  1828.  
  1829. This action window lets you select the size of the diagram and control which 
  1830. functions are displayed in the diagram. The total execution time of the 
  1831. application is displayed at the top. The number of pages that the diagram is 
  1832. using are displayed above the top slider. The number of pages and their size 
  1833. are based on the current window size. 
  1834.  
  1835. The first sentence in the action window shows the total execution time in 
  1836. seconds. 
  1837.  
  1838. You can prevent the Time Line diagram from becoming cluttered with many short 
  1839. calls by selecting how long a call must take before it is displayed in the 
  1840. diagram. 
  1841.  
  1842. To use the Scale action window: 
  1843.  
  1844.  1. Use the Pages slider to control how many pages or screens are used to 
  1845.     display your diagram. The current number of pages is displayed above the 
  1846.     Pages slider. When you increase the number of pages, the diagram is 
  1847.     displayed in more detail. 
  1848.  
  1849.    o Slide the slider arm to the right to increase the number of pages. 
  1850.    o Slide the slider arm to the left to decrease the number of pages. 
  1851.  
  1852.      Note:  Page size is based on the height and width of the current window. 
  1853.     As you move the slider, the page field increases or decreases. 
  1854.  
  1855.  2. The Time Calls slider controls which calls are displayed based on their 
  1856.     active time. This bar lets you limit the function calls that are displayed 
  1857.     in the diagram. 
  1858.  
  1859.    o Slide the slider arm to the right to increase the time in usec of the 
  1860.      calls. 
  1861.    o Slide the slider arm to the left to decrease the time in usec of the 
  1862.      calls. 
  1863.  
  1864.  3. Select the OK push button to save the changes and close the action window 
  1865.     or select the Cancel push button to close the action window without saving 
  1866.     the changes. 
  1867.  
  1868.  
  1869. ΓòÉΓòÉΓòÉ 11.2.5. Thread Layout Choice ΓòÉΓòÉΓòÉ
  1870.  
  1871. Select the Thread layout choice to control thread indentation and to control 
  1872. drawing of thread separator bars between the threads. A Thread Layout  action 
  1873. window is displayed. 
  1874.  
  1875.  
  1876. ΓòÉΓòÉΓòÉ <hidden> Thread Layout Action Window ΓòÉΓòÉΓòÉ
  1877.  
  1878. Select the Thread layout choice to control thread indentation and to control 
  1879. whether separator bars are drawn between the threads. The default is to indent 
  1880. each thread 8 pels and to have separator bars. 
  1881.  
  1882. To use the Thread Layout action window: 
  1883.  
  1884.  1. Type a new value or select the spin buttons in the Indents per thread entry 
  1885.     field until the value you want is displayed. The maximum indent value is 99 
  1886.     pels. 
  1887.  
  1888.  2. Select the check box to draw separator lines between the threads. A ΓêÜ 
  1889.     symbol in the box indicates to draw separator bars and an empty box 
  1890.     indicates not to draw the separator bars. 
  1891.  
  1892.  3. Select the OK push button to save the changes and close the action window 
  1893.     or select the Cancel push button to close the action window without saving 
  1894.     the changes. 
  1895.  
  1896.  
  1897. ΓòÉΓòÉΓòÉ 11.2.6. Ruler Choice ΓòÉΓòÉΓòÉ
  1898.  
  1899. Select the Ruler choice to show how much time elapsed between two points of 
  1900. interest in the diagram. 
  1901.  
  1902. There are two ways to display the time: using the menu and using the keyboard. 
  1903. The following explains both methods: 
  1904.  
  1905. o Using the mouse: 
  1906.  
  1907.     1. Select Ruler from the Options menu. The mouse pointer turns into a plus 
  1908.        icon. 
  1909.  
  1910.     2. Press and hold mouse button one on the first point of interest in the 
  1911.        diagram, then drag the mouse pointer to the second point of interest, 
  1912.        and release mouse button one. 
  1913.  
  1914. o Using the keyboard: 
  1915.  
  1916.     1. Select Ruler from the Options menu. A plus icon is displayed. 
  1917.  
  1918.     2. Press the spacebar to select the first point of interest in the diagram. 
  1919.  
  1920.     3. Use the  or  key to move to the second point of interest. 
  1921.  
  1922.     4. Press the Esc key. 
  1923.  
  1924.  
  1925. ΓòÉΓòÉΓòÉ 11.3. Help Menu ΓòÉΓòÉΓòÉ
  1926.  
  1927. The choices available from the Help menu are: 
  1928.  
  1929. Help index 
  1930.           Shows an alphabetical index of all available EXTRA help topics. 
  1931.  
  1932. General help 
  1933.           Provides help information for the current action window. 
  1934.  
  1935. Using help 
  1936.           Explains how to use the EXTRA help facility. 
  1937.  
  1938.  
  1939. ΓòÉΓòÉΓòÉ 11.3.1. Help Index Choice ΓòÉΓòÉΓòÉ
  1940.  
  1941. Select the Help index choice to display an alphabetical list of index entries 
  1942. for EXTRA. Use the Search push button to locate topics in the index. 
  1943.  
  1944.  
  1945. ΓòÉΓòÉΓòÉ 11.3.2. Using Help Choice ΓòÉΓòÉΓòÉ
  1946.  
  1947. Select the Using help choice to learn how to use the EXTRA help facility. To 
  1948. get help, select Using help from the Help menu. 
  1949.  
  1950.  
  1951. ΓòÉΓòÉΓòÉ 11.3.3. General Help Choice ΓòÉΓòÉΓòÉ
  1952.  
  1953. Select the General help choice to display online help for the active EXTRA 
  1954. window. 
  1955.  
  1956.  
  1957. ΓòÉΓòÉΓòÉ 12. Call Nesting Diagram ΓòÉΓòÉΓòÉ
  1958.  
  1959. The Call Nesting diagram shows the application execution as a vertical series 
  1960. of function calls and returns. Each thread has its own starting column of 
  1961. functions. A call is drawn as a step to the right and a return as a line back 
  1962. to the left. The calls are labeled with the function name being called. Context 
  1963. switches between threads are shown by dashed horizontal lines. 
  1964.  
  1965. While the vertical lines do not show elapsed times to scale in this diagram, 
  1966. you can clearly see the flow of control and the interactions among the various 
  1967. threads. Problems with critical sections, sequencing protocols, application 
  1968. deadlocks and crashes, and thread delays can be diagnosed with this diagram. 
  1969.  
  1970. Menu Bar Summary 
  1971.  
  1972. The menu choices in the Call Nesting diagram are: 
  1973.  
  1974. o File 
  1975. o Edit 
  1976. o Options 
  1977. o Draw 
  1978. o Help. 
  1979.  
  1980.  
  1981. ΓòÉΓòÉΓòÉ 12.1. File Menu ΓòÉΓòÉΓòÉ
  1982.  
  1983. The choice from the File menu is: 
  1984.  
  1985. Open 
  1986.           Displays a new or an additional diagram. 
  1987.  
  1988. Print 
  1989.           Prints the information that is displayed in the current window. 
  1990.  
  1991.  
  1992. ΓòÉΓòÉΓòÉ 12.1.1. Open Choice ΓòÉΓòÉΓòÉ
  1993.  
  1994. Select the Open choice to view another diagram. You can open as many new 
  1995. diagram windows as you want. 
  1996.  
  1997. To select a new diagram: 
  1998.  
  1999.  1. Select Open from the File menu. A cascaded menu is displayed with the 
  2000.     following choices: 
  2001.  
  2002.    Statistics 
  2003.  
  2004.    Time Line 
  2005.  
  2006.    Execution Density 
  2007.  
  2008.    Call Nesting 
  2009.  
  2010.    Dynamic Call Graph 
  2011.  
  2012.  2. Select the name of the diagram you want to view. A new window opens and 
  2013.     displays the diagram you selected. 
  2014.  
  2015.  
  2016. ΓòÉΓòÉΓòÉ 12.1.2. Print Choice ΓòÉΓòÉΓòÉ
  2017.  
  2018. Select Print to print the information from the Call Nesting diagram. 
  2019.  
  2020. To print the Call Nesting diagram, select Print from the File menu. The Call 
  2021. Nesting diagram is printed on the default printer. 
  2022.  
  2023. Note:  If you are printing over a network, see your LAN administrator about 
  2024. creating a printer object. 
  2025.  
  2026.  
  2027. ΓòÉΓòÉΓòÉ 12.2. Edit Menu ΓòÉΓòÉΓòÉ
  2028.  
  2029. The following choices are available from the Edit menu: 
  2030.  
  2031. Search 
  2032.           Search for a function call or return, an annotation, a user event, or 
  2033.           a file access. 
  2034.  
  2035. Find Next 
  2036.           Find the next occurrence of the last item you searched for. 
  2037.  
  2038. Annotate 
  2039.           Lets you insert comments in your diagram. 
  2040.  
  2041.  
  2042. ΓòÉΓòÉΓòÉ 12.2.1. Search Choice ΓòÉΓòÉΓòÉ
  2043.  
  2044. Select the Search choice to search for a function call or return, annotation, 
  2045. user event, or file access. To search for a file access, you must have set the 
  2046. File Access choice before tracing your application. For more information, see 
  2047. tracing file accesses. To search for a user event, you must have included the 
  2048. necessary information in the source code of your application. For more 
  2049. information, see including user events. 
  2050.  
  2051. When you select Search, the Search action window is displayed. 
  2052.  
  2053.  
  2054. ΓòÉΓòÉΓòÉ <hidden> Search Action Window ΓòÉΓòÉΓòÉ
  2055.  
  2056. When you select Search, the Search action window is displayed. 
  2057.  
  2058. You can use the Search action window to do the following: 
  2059.  
  2060.  1. Search for Functions 
  2061.  
  2062.  2. Search for Annotations 
  2063.  
  2064.  3. Search for User Events and File Accesses 
  2065.  
  2066.  
  2067. ΓòÉΓòÉΓòÉ <hidden> Searching for Functions ΓòÉΓòÉΓòÉ
  2068.  
  2069.  1. To search for a function call or return: 
  2070.  
  2071.     a. Use mouse button one to select the spin buttons in the entry field and 
  2072.        select a function from the menu. 
  2073.     b. Select the Function radio button. 
  2074.  
  2075.  2. Select to find when the function is called or returned: 
  2076.  
  2077.     a. Select the Call radio button to find when a function was called. 
  2078.     b. Select the Return radio button to find when a function returned. 
  2079.  
  2080.  3. To search for a thread: 
  2081.  
  2082.     a. Type the thread number in the Thread entry field. 
  2083.  
  2084.        OR 
  2085.     b. Press and hold mouse button one on the list button in the entry field 
  2086.        and select a number from the list. 
  2087.  
  2088.     Note:  This entry field displays in gray when there is only one thread or 
  2089.     when you have selected a specific thread from the Draw menu. 
  2090.  
  2091.  4. Select the Search push button to search. The string is highlighted when 
  2092.     found. Otherwise, a beep indicates that EXTRA could not find the string. 
  2093.  
  2094.  
  2095. ΓòÉΓòÉΓòÉ <hidden> Searching for Annotations ΓòÉΓòÉΓòÉ
  2096.  
  2097. To search for an annotation: 
  2098.  
  2099.  1. Type the annotation you want to search for in the Find annotation entry 
  2100.     field. 
  2101.  
  2102.     Notes: 
  2103.  
  2104.     a. Select the Case sensitive check box if you want EXTRA to search for the 
  2105.        string as typed in the entry field. 
  2106.     b. Make sure the other entry fields are cleared. 
  2107.  
  2108.  2. Select the Annotation radio button. 
  2109.  
  2110.  3. Select the Search push button to search. The string is highlighted when 
  2111.     found. Otherwise, a beep indicates that EXTRA could not find the string. 
  2112.  
  2113.  
  2114. ΓòÉΓòÉΓòÉ <hidden> Searching for User Events and File Accesses ΓòÉΓòÉΓòÉ
  2115.  
  2116. To search for a file access, you must have set the File Access choice before 
  2117. tracing your application. For more information, see tracing file accesses. To 
  2118. search for a user event, you must have included the necessary information in 
  2119. the source code of your application. For more information, see including user 
  2120. events. 
  2121.  
  2122. To search for a user event or file access: 
  2123.  
  2124.  1. Type the string you want to search for in the Find user event entry field. 
  2125.  
  2126.     Notes: 
  2127.  
  2128.     a. Select the Case sensitive check box if you want EXTRA to search for the 
  2129.        string as typed in the entry field. 
  2130.     b. Make sure the other entry fields are cleared. 
  2131.     c. Select the User event radio button. 
  2132.  
  2133.  2. Select the Search push button to begin the search. The string is 
  2134.     highlighted when found. Otherwise, a beep indicates that EXTRA could not 
  2135.     find the string. 
  2136.  
  2137.  
  2138. ΓòÉΓòÉΓòÉ 12.2.2. Find Next Choice ΓòÉΓòÉΓòÉ
  2139.  
  2140. Select the Find Next choice to search for the next occurrence of the last 
  2141. string for which you searched. 
  2142.  
  2143. To find the next occurrence, select Find Next from the Edit menu. Press the 
  2144. Enter key to start the search. The string is highlighted when found. A beep 
  2145. indicates that EXTRA could not find the string. 
  2146.  
  2147.  
  2148. ΓòÉΓòÉΓòÉ 12.2.3. Annotate Choice ΓòÉΓòÉΓòÉ
  2149.  
  2150. Select the Annotate choice to add comments to the Call Nesting diagram. The 
  2151. annotated comments that are added to the diagram are saved. 
  2152.  
  2153. Note:  If Pattern Recognition has been enabled, then the Annotate choice is not 
  2154. available. Turn Pattern recognition off to use Annotate. 
  2155.  
  2156. To annotate a comment: 
  2157.  
  2158.  1. Select Annotate from the Edit menu. A plus icon is displayed. 
  2159.  
  2160.  2. To select add a comment to the diagram, move the plus icon to the point 
  2161.     where you want to add the comment, and then click on the point or press the 
  2162.     spacebar and the Enter key. An  Annotate action window is displayed. 
  2163.  
  2164.  
  2165. ΓòÉΓòÉΓòÉ <hidden> Annotate Action Window ΓòÉΓòÉΓòÉ
  2166.  
  2167. When you select the Annotate choice, a Annotate action window is displayed. The 
  2168. annotated comments that are added to the diagram are saved. 
  2169.  
  2170. To use the Annotate action window: 
  2171.  
  2172.  1. Type the comment in the action window. The comment is limited to 64 
  2173.     characters. 
  2174.  
  2175.  2. Select the OK push button to save the changes and close the action window 
  2176.     or select the Cancel push button to close the action window without saving 
  2177.     the changes. 
  2178.  
  2179. Note:  If Pattern Recognition has been enabled, then the Annotate choice is not 
  2180. available. Turn Pattern recognition off to use Annotate. 
  2181.  
  2182. To delete an annotated comment: 
  2183.  
  2184.  1. Select Annotate from the Edit menu. 
  2185.  
  2186.  2. Select the point in the Call Nesting diagram where you added the comment 
  2187.     that you now want deleted. An Annotate action window is displayed with the 
  2188.     comment. 
  2189.  
  2190.  3. Backspace over the comment in the action window. 
  2191.  
  2192.  4. Press the Enter key to delete the comment or press the Esc key to cancel 
  2193.     the choice. 
  2194.  
  2195.  
  2196. ΓòÉΓòÉΓòÉ 12.3. Options Menu ΓòÉΓòÉΓòÉ
  2197.  
  2198. The following choices are available from the Options menu: 
  2199.  
  2200. Call stack 
  2201.           Displays all the functions currently on the call stack from a 
  2202.           selected point. 
  2203.  
  2204. Correlation 
  2205.           Uses a selected point to find a correlating point in another diagram. 
  2206.  
  2207. Font 
  2208.           Selects the font, font style, and font size for the function names. 
  2209.  
  2210. Pattern recognition 
  2211.           Shows where a function pattern occurs and the number of times it 
  2212.           occurs. 
  2213.  
  2214. Select functions 
  2215.           Isolates specific functions to view in your application. 
  2216.  
  2217. Thread layout 
  2218.           Selects the indentation amount for each thread column and draws 
  2219.           separator bars between threads. 
  2220.  
  2221.  
  2222. ΓòÉΓòÉΓòÉ 12.3.1. Call Stack Choice ΓòÉΓòÉΓòÉ
  2223.  
  2224. Select the Call stack choice to display the order in which the functions were 
  2225. called at a selected point. 
  2226.  
  2227. When you select Call stack, the pointer turns into a plus icon. Select a point 
  2228. in the diagram by clicking on the point with the mouse or by pressing the 
  2229. spacebar and then the Enter key. A Call Stack action window is displayed. 
  2230.  
  2231.  
  2232. ΓòÉΓòÉΓòÉ <hidden> Call Stack Action Window ΓòÉΓòÉΓòÉ
  2233.  
  2234. When you select Call stack, the pointer turns into a plus icon. Select a point 
  2235. in the diagram to display the Call Stack action window. 
  2236.  
  2237. To display a call stack: 
  2238.  
  2239.  1. Select a point in the diagram by using the mouse or pressing the spacebar 
  2240.     and then the Enter key. A Call Stack action window is displayed that shows 
  2241.     the function you selected and the order in which the functions were called. 
  2242.  
  2243.  2. Select the OK push button. 
  2244.  
  2245.  
  2246. ΓòÉΓòÉΓòÉ 12.3.2. Correlation Choice ΓòÉΓòÉΓòÉ
  2247.  
  2248. Select the Correlation choice to mark a point in the Call Nesting diagram, 
  2249. Execution Density diagram, or Time Line diagram and then find that same point 
  2250. in another Call Nesting diagram, Execution Density diagram, or Time Line 
  2251. diagram. You can correlate more than two diagrams at a time. 
  2252.  
  2253. There are two ways to correlate diagrams: using the mouse and using the menus. 
  2254. The following explains both methods: 
  2255.  
  2256.  1. Using the mouse: 
  2257.  
  2258.     a. Open a Call Nesting, Execution Density, or Time Line window and then 
  2259.        open at least one other window with a different diagram or the same 
  2260.        diagram at a different scale. 
  2261.  
  2262.     b. Select Correlation from the Options menu. The pointer turns into a 
  2263.        double-headed arrow. 
  2264.  
  2265.     c. Press and hold mouse button two on the point in the diagram you want to 
  2266.        correlate, drag the mouse pointer into the window of a second diagram, 
  2267.        and release mouse button two. EXTRA highlights the correlated point. 
  2268.  
  2269.  2. Using the menus 
  2270.  
  2271.     a. Open a Call Nesting, Execution Density, or Time Line window and then 
  2272.        open at least one other window with a different diagram or the same 
  2273.        diagram at a different scale. 
  2274.  
  2275.     b. Select Correlation from the Options menu. The pointer turns into a 
  2276.        double-headed arrow. 
  2277.  
  2278.     c. Move the double-headed arrow to the point in the diagram that you want 
  2279.        to correlate, press the spacebar, and then the Enter key. EXTRA 
  2280.        highlights the correlated point and a  Correlation list box is 
  2281.        displayed. 
  2282.  
  2283.     d. Select the name of each diagram you want to correlate and select OK. 
  2284.        EXTRA highlights the correlated points in the diagrams. 
  2285.  
  2286.  
  2287. ΓòÉΓòÉΓòÉ <hidden> Correlation List Box ΓòÉΓòÉΓòÉ
  2288.  
  2289. Use the Correlation list box to select the name of each diagram you want to 
  2290. correlate and select OK. EXTRA opens a diagram and highlights the correlated 
  2291. point. For more information, see Push Buttons. 
  2292.  
  2293.  
  2294. ΓòÉΓòÉΓòÉ 12.3.3. Font Choice ΓòÉΓòÉΓòÉ
  2295.  
  2296. Select the Font choice to change the font, font style, and font size for the 
  2297. diagram. 
  2298.  
  2299. When you select Font, a Font action window is displayed. 
  2300.  
  2301.  
  2302. ΓòÉΓòÉΓòÉ 12.3.4. Pattern Recognition Choice ΓòÉΓòÉΓòÉ
  2303.  
  2304. Select the Pattern recognition choice to combine all consecutive, repeated 
  2305. patterns of calls and returns into one sequence with the number of times the 
  2306. pattern occurred displayed to the right of the pattern. This choice reduces the 
  2307. size of the diagram. 
  2308.  
  2309. Note:  You must select a single thread using the Draw menu before this choice 
  2310. is available. 
  2311.  
  2312. To set pattern recognition, select Pattern recognition from the Options menu. 
  2313. The thread is displayed showing where the patterns occur. A loop is drawn to 
  2314. the right of the patterns and a number is shown indicating how many times the 
  2315. pattern is repeated. When this choice is selected, a ΓêÜ symbol displays next to 
  2316. the choice in the menu. 
  2317.  
  2318. To turn off pattern recognition, select Pattern recognition from the Options 
  2319. menu again. The ΓêÜ symbol is no longer displayed. 
  2320.  
  2321. Note:  EXTRA recognizes up to 8,000 patterns. If your trace file contains more 
  2322. than 8,000 patterns, EXTRA does not display the additional patterns. 
  2323.  
  2324.  
  2325. ΓòÉΓòÉΓòÉ 12.3.5. Select Functions Choice ΓòÉΓòÉΓòÉ
  2326.  
  2327. Select the Select functions choice to isolate specific functions to view in 
  2328. your application. 
  2329.  
  2330. When you select Select functions, a Select Functions action window is displayed 
  2331.  
  2332. Note:  If Select functions is not available, select All Threads from the Draw 
  2333. menu. 
  2334.  
  2335.  
  2336. ΓòÉΓòÉΓòÉ <hidden> Select Functions Action Window ΓòÉΓòÉΓòÉ
  2337.  
  2338. When you select Select functions, a Select Functions action window is 
  2339. displayed. From this action window you can isolate specific functions or view 
  2340. all functions. 
  2341.  
  2342. Isolating Specific Functions 
  2343.  
  2344. To select functions: 
  2345.  
  2346.  1. To select a specific function, select the Clear all push button. 
  2347.  
  2348.  2. Scroll the list to find the function or functions you want displayed. 
  2349.  
  2350.  3. Select each function you want displayed. 
  2351.  
  2352.  4. Select the OK push button to save the changes and close the action window 
  2353.     or select the Cancel push button to close the action window without saving 
  2354.     the changes. 
  2355.  
  2356. Note:  All calls which called the selected function are also displayed. 
  2357.  
  2358. Viewing All Functions 
  2359.  
  2360.  1. To select all functions, select the Select all push button. 
  2361.  
  2362.  2. Select the OK push button to save the changes and close the action window 
  2363.     or select the Cancel push button to close the action window without saving 
  2364.     the changes. 
  2365.  
  2366. For more information, see Push Buttons. 
  2367.  
  2368.  
  2369. ΓòÉΓòÉΓòÉ 12.3.6. Thread Layout Choice ΓòÉΓòÉΓòÉ
  2370.  
  2371. Select the Thread layout choice to control the thread indentation and to 
  2372. control whether separator bars are drawn between the threads. 
  2373.  
  2374. When you select Thread layout, a Thread Layout action window is displayed. 
  2375.  
  2376. Note:  This choice is only available when all threads are displayed. 
  2377.  
  2378.  
  2379. ΓòÉΓòÉΓòÉ <hidden> Thread Layout Action Window ΓòÉΓòÉΓòÉ
  2380.  
  2381. When you select Thread layout, a Thread Layout action window is displayed. 
  2382.  
  2383. To use the Thread Layout action window: 
  2384.  
  2385.  1. Type a new value or select the spin buttons in the Indents per thread entry 
  2386.     field until the value you want is displayed. The maximum indentation value 
  2387.     is 99 pels. 
  2388.  
  2389.  2. Select the check box to draw separator lines between the threads. A ΓêÜ 
  2390.     symbol in the box indicates to draw separator bars and an empty box 
  2391.     indicates not to draw the separator bars. 
  2392.  
  2393.  3. Select the OK push button to save the changes and close the action window 
  2394.     or select the Cancel push button to close the action window without saving 
  2395.     the changes. 
  2396.  
  2397.  
  2398. ΓòÉΓòÉΓòÉ 12.4. Draw Menu ΓòÉΓòÉΓòÉ
  2399.  
  2400. The following choices are available from the Draw menu: 
  2401.  
  2402. All threads 
  2403.           Draws all threads. 
  2404.  
  2405. Thread n 
  2406.           Draws only the selected thread. There is a menu choice for each 
  2407.           thread. 
  2408.  
  2409.  
  2410. ΓòÉΓòÉΓòÉ 12.4.1. All Threads Choice ΓòÉΓòÉΓòÉ
  2411.  
  2412. Select the All threads menu choice to draw all the threads in the diagram. 
  2413.  
  2414.  
  2415. ΓòÉΓòÉΓòÉ 12.4.2. Thread n Choice ΓòÉΓòÉΓòÉ
  2416.  
  2417. Select the Thread n menu choice to draw a particular thread, where n represents 
  2418. the thread number in the application that you want drawn. 
  2419.  
  2420.  
  2421. ΓòÉΓòÉΓòÉ 12.5. Help Menu ΓòÉΓòÉΓòÉ
  2422.  
  2423. The choices available from the Help menu are: 
  2424.  
  2425. Help index 
  2426.           Shows an alphabetical index of all available EXTRA help topics. 
  2427.  
  2428. General help 
  2429.           Provides help information for the current action window. 
  2430.  
  2431. Using help 
  2432.           Explains how to use the EXTRA help facility. 
  2433.  
  2434.  
  2435. ΓòÉΓòÉΓòÉ 12.5.1. Help Index Choice ΓòÉΓòÉΓòÉ
  2436.  
  2437. Select the Help index choice to display an alphabetical list of index entries 
  2438. for EXTRA. Use the Search push button to locate topics in the index. 
  2439.  
  2440.  
  2441. ΓòÉΓòÉΓòÉ 12.5.2. General Help Choice ΓòÉΓòÉΓòÉ
  2442.  
  2443. Select the General help choice to display online help for the active EXTRA 
  2444. window. 
  2445.  
  2446.  
  2447. ΓòÉΓòÉΓòÉ 12.5.3. Using Help Choice ΓòÉΓòÉΓòÉ
  2448.  
  2449. Select the Using help choice to learn how to use the EXTRA help facility. To 
  2450. get help, select Using help from the Help menu. 
  2451.  
  2452.  
  2453. ΓòÉΓòÉΓòÉ 13. Execution Density Diagram ΓòÉΓòÉΓòÉ
  2454.  
  2455. The Execution Density diagram displays trace data in a vertical dimension 
  2456. scaled by the execution time just like the Time Line diagram, but calls and 
  2457. returns are not shown. Instead, the entire execution time is divided into a 
  2458. fixed number of horizontal slices, or scan lines, as determined by the number 
  2459. of pages to be used for the entire diagram. Each function that logs events is 
  2460. assigned to a fixed column of the diagram. EXTRA draws the diagram by coloring 
  2461. each slice of the column depending on the percentage of the slice that the 
  2462. corresponding function used. For instance in the default setting, yellow 
  2463. represents 0 to 1 percent of the time slice was used in the function and pink 
  2464. represents that 2 to 5 percent of the time slice was used. 
  2465.  
  2466. Current Column Indicator 
  2467.  
  2468. An arrow called the current column indicator is displayed at the top of each 
  2469. column. The current column indicator lets you move to each column and also lets 
  2470. you search for functions. For more information, see current column indicator 
  2471. and searching for functions 
  2472.  
  2473. Note: 
  2474.  
  2475.  1. When a thread switch occurs in the Execution Density diagram, the first 
  2476.     event of the new thread may have its time allotted to the previous thread. 
  2477.  
  2478.  2. Events that take small amounts of time may not be displayed until the 
  2479.     number of pages has been increased. 
  2480.  
  2481. Menu Bar Summary 
  2482.  
  2483. The following lists the choices available from the Execution Density diagram 
  2484. menu bar: 
  2485.  
  2486. o File 
  2487. o Options 
  2488. o Help. 
  2489.  
  2490.  
  2491. ΓòÉΓòÉΓòÉ 13.1. Using the Current Column Indicator ΓòÉΓòÉΓòÉ
  2492.  
  2493. An arrow called the current column indicator is displayed at the top of each 
  2494. column. The current column indicator lets you move to each column and also lets 
  2495. you search for functions. You can use the mouse or the keyboard to move to each 
  2496. column and EXTRA automatically scrolls the diagram to show the columns. 
  2497.  
  2498. o To use the mouse, press and drag the current column indicator. 
  2499. o To use the keyboard, press the Tab key to move to the right and press Shift 
  2500.   and Backtab to move to the left. 
  2501.  
  2502. To search for functions, double-click on the current column indicator or press 
  2503. the spacebar to display the Search function  action window. 
  2504.  
  2505.  
  2506. ΓòÉΓòÉΓòÉ 13.1.1. Search Function Action Window ΓòÉΓòÉΓòÉ
  2507.  
  2508. When you select current column indicator a Search Function action window is 
  2509. displayed. 
  2510.  
  2511. The Search Function action window lets you search for a function. 
  2512.  
  2513. To use the Search Function action window: 
  2514.  
  2515.  1. Scroll the list until the function you want to search for displays. 
  2516.  
  2517.  2. Select the function. 
  2518.  
  2519.  3. Select OK to find the function or Cancel to close the action window. 
  2520.  
  2521.  
  2522. ΓòÉΓòÉΓòÉ 13.2. File Menu ΓòÉΓòÉΓòÉ
  2523.  
  2524. The choice from the File menu is: 
  2525.  
  2526. Open 
  2527.           Shows a new or an additional diagram. 
  2528.  
  2529. Print 
  2530.           Prints the information that is displayed in the current window. 
  2531.  
  2532.  
  2533. ΓòÉΓòÉΓòÉ 13.2.1. Open Choice ΓòÉΓòÉΓòÉ
  2534.  
  2535. Select the Open choice to view another diagram. You can open as many new 
  2536. diagram windows as you want. 
  2537.  
  2538. To select a new diagram: 
  2539.  
  2540.  1. Select Open from the File menu. A cascaded menu is displayed with the 
  2541.     following choices: 
  2542.  
  2543.    Statistics 
  2544.  
  2545.    Time Line 
  2546.  
  2547.    Execution Density 
  2548.  
  2549.    Call Nesting 
  2550.  
  2551.    Dynamic Call Graph 
  2552.  
  2553.  2. Select the name of the diagram you want to view. A new window opens and 
  2554.     displays the diagram you selected. 
  2555.  
  2556.  
  2557. ΓòÉΓòÉΓòÉ 13.2.2. Print Choice ΓòÉΓòÉΓòÉ
  2558.  
  2559. Select Print to print the information from the Execution Density diagram. 
  2560.  
  2561. To print the Execution Density diagram, select Print from the File menu. The 
  2562. Execution Density diagram is printed on the default printer. 
  2563.  
  2564. Note:  If you are printing over a network, see your LAN administrator about 
  2565. creating a printer object. 
  2566.  
  2567.  
  2568. ΓòÉΓòÉΓòÉ 13.3. Options Menu ΓòÉΓòÉΓòÉ
  2569.  
  2570. The following choices are available from the Options menu: 
  2571.  
  2572. Correlation 
  2573.           Uses a selected point to find a correlating point in another diagram. 
  2574.  
  2575. Color 
  2576.           Selects the colors used to display the percentage of time used by 
  2577.           each function and the percentage of time the color represents. 
  2578.  
  2579. Select functions 
  2580.           Isolates specific functions to view in your application. 
  2581.  
  2582. Select Threads 
  2583.           Select which threads are displayed in the diagram. 
  2584.  
  2585. Scale pages 
  2586.           Controls the number of pages the diagram uses. 
  2587.  
  2588. Scale columns 
  2589.           Controls the width (in pels) for each function column in the diagram. 
  2590.  
  2591. Ruler 
  2592.           Displays the time between two points of interest on the diagram. 
  2593.  
  2594.  
  2595. ΓòÉΓòÉΓòÉ 13.3.1. Correlation Choice ΓòÉΓòÉΓòÉ
  2596.  
  2597. Select the Correlation choice to mark a point in the Call Nesting diagram, 
  2598. Execution Density diagram, or Time Line diagram and then find that same point 
  2599. in another Call Nesting diagram, Execution Density diagram, or Time Line 
  2600. diagram. You can correlate more than two diagrams at a time. 
  2601.  
  2602. There are two ways to correlate diagrams: using the mouse and using the menus. 
  2603. The following explains both methods: 
  2604.  
  2605.  1. Using the mouse: 
  2606.  
  2607.     a. Open a Call Nesting, Execution Density, or Time Line window and then 
  2608.        open at least one other window with a different diagram or the same 
  2609.        diagram at a different scale. 
  2610.  
  2611.     b. Select Correlation from the Options menu. The pointer turns into a 
  2612.        double-headed arrow. 
  2613.  
  2614.     c. Press and hold mouse button two on the point in the diagram you want to 
  2615.        correlate, drag the mouse pointer into the window of a second diagram, 
  2616.        and release mouse button two. EXTRA highlights the correlated point. 
  2617.  
  2618.  2. Using the menus 
  2619.  
  2620.     a. Open a Call Nesting, Execution Density, or Time Line window and then 
  2621.        open at least one other window with a different diagram or the same 
  2622.        diagram at a different scale. 
  2623.  
  2624.     b. Select Correlation from the Options menu. The pointer turns into a 
  2625.        double-headed arrow. 
  2626.  
  2627.     c. Move the double-headed arrow to the point in the diagram that you want 
  2628.        to correlate, press the spacebar, and then the Enter key. EXTRA 
  2629.        highlights the correlated point and a  Correlation list box is 
  2630.        displayed. 
  2631.  
  2632.     d. Select the name of each diagram you want to correlate and select OK. 
  2633.        EXTRA highlights the correlated points in the diagrams. 
  2634.  
  2635.  
  2636. ΓòÉΓòÉΓòÉ <hidden> Correlation List Box ΓòÉΓòÉΓòÉ
  2637.  
  2638. Use the Correlation list box to select the name of each diagram you want to 
  2639. correlate and select OK. EXTRA opens a diagram and highlights the correlated 
  2640. point. For more information, see Push Buttons. 
  2641.  
  2642.  
  2643. ΓòÉΓòÉΓòÉ 13.3.2. Color Choice ΓòÉΓòÉΓòÉ
  2644.  
  2645. Select the Color choice to control the colors and time slices that are used in 
  2646. the diagram. Each color represents a time slice. When you select Color, a Color 
  2647. action window  is displayed. 
  2648.  
  2649.  
  2650. ΓòÉΓòÉΓòÉ <hidden> Color Action Window ΓòÉΓòÉΓòÉ
  2651.  
  2652. When you select  Color, a Color action window is displayed. 
  2653.  
  2654. The Color action window shows the current colors and time slices. For each 
  2655. color, a value is displayed to the left that shows the amount of time the color 
  2656. represents. For instance, in the default setting, yellow represents 0 to 1 
  2657. percent, pink represents 2 to 5 percent, and so on. You can change the color 
  2658. and the percentage time each color represents. 
  2659.  
  2660. To use the Color action window: 
  2661.  
  2662.  1. Select the list button at the end of the Color entry field to display a 
  2663.     list of available colors. Select a color from the list. The color name is 
  2664.     displayed over each color. There are 17 colors available. 
  2665.  
  2666.  2. Select a spin button to the left of the color entry fields to change the 
  2667.     time percentage that each color represents. As you select a spin button, 
  2668.     the value below the list box to the left changes also. 
  2669.  
  2670.  3. Select the OK push button to save the changes and close the action window 
  2671.     or select the Cancel push button to close the action window without saving 
  2672.     the changes. 
  2673.  
  2674.     Note:  Select the Default push button to set the colors and time to the 
  2675.     preset choices. 
  2676.  
  2677.  
  2678. ΓòÉΓòÉΓòÉ 13.3.3. Select Functions Choice ΓòÉΓòÉΓòÉ
  2679.  
  2680. Select the Select functions choice to isolate specific functions to view in 
  2681. your application. 
  2682.  
  2683.  When you select Select functions, a Select Functions action window is 
  2684. displayed. 
  2685.  
  2686.  
  2687. ΓòÉΓòÉΓòÉ <hidden> Select Functions Action Window ΓòÉΓòÉΓòÉ
  2688.  
  2689. When you select the  Select functions choice, a Select Functions action window 
  2690. is displayed. 
  2691.  
  2692. From the Select Functions action window, you can select specific functions to 
  2693. view or you can view all functions. 
  2694.  
  2695. Selecting Specific Functions 
  2696.  
  2697. To select functions: 
  2698.  
  2699.  1. To select a specific function, select the Clear all push button. 
  2700.  
  2701.  2. Scroll the list to find the function or functions you want displayed. 
  2702.  
  2703.  3. Select each function you want displayed. 
  2704.  
  2705.  4. Select the OK push button to save the changes and close the action window 
  2706.     or select the Cancel push button to close the action window without saving 
  2707.     the changes. 
  2708.  
  2709. Note:  All calls leading to the selected function are displayed. 
  2710.  
  2711. Selecting All Functions 
  2712.  
  2713.  1. To select all functions, select the Select all push button. 
  2714.  
  2715.  2. Select the OK push button to save the changes and close the action window 
  2716.     or select the Cancel push button to close the action window without saving 
  2717.     the changes. 
  2718.  
  2719.  
  2720. ΓòÉΓòÉΓòÉ 13.3.4. Select Threads Choice ΓòÉΓòÉΓòÉ
  2721.  
  2722. Select the Select threads choice to select which threads are displayed in the 
  2723. diagram. When you select Select threads, a Select Threads action window is 
  2724. displayed. 
  2725.  
  2726.  
  2727. ΓòÉΓòÉΓòÉ <hidden> Select Threads Action Window ΓòÉΓòÉΓòÉ
  2728.  
  2729. When you select the Select threads, a Select Threads action window is 
  2730. displayed. The Select Threads action window shows an entry field for each 
  2731. thread. The application thread numbers are displayed in black, while the others 
  2732. are displayed in gray. The threads selected to display have a ΓêÜ symbol in the 
  2733. box. 
  2734.  
  2735. Selecting Specific Threads 
  2736.  
  2737. To select a specific thread: 
  2738.  
  2739.  1. Select the Clear all push button to clear all the ΓêÜ symbols. 
  2740.  
  2741.  2. Select the specific threads you want displayed. A ΓêÜ symbol is displayed in 
  2742.     the box to indicate it is selected. 
  2743.  
  2744.  3. Select the OK push button to save the changes and close the action window 
  2745.     or select the Cancel push button to close the action window without saving 
  2746.     the changes. 
  2747.  
  2748. Selecting All Threads 
  2749.  
  2750. To select all threads: 
  2751.  
  2752.  1. Select the Select all push button to select all threads. 
  2753.  
  2754.  2. Select the OK push button to save the changes and close the action window 
  2755.     or select the Cancel push button to close the action window without saving 
  2756.     the changes. 
  2757.  
  2758.  
  2759. ΓòÉΓòÉΓòÉ 13.3.5. Scale Pages Choice ΓòÉΓòÉΓòÉ
  2760.  
  2761. Select the Scale pages choice to choose how many pages you want used to display 
  2762. the diagram. When you select Scale pages, a Scale Pages action window is 
  2763. displayed. 
  2764.  
  2765.  
  2766. ΓòÉΓòÉΓòÉ <hidden> Scale Pages Action Window ΓòÉΓòÉΓòÉ
  2767.  
  2768. When you select Scale pages, a Scale Pages action window is displayed. 
  2769.  
  2770. From the Scale Pages action window you can choose how many pages are used to 
  2771. display the diagram. When you allow more pages, the diagram shows more detailed 
  2772. information. 
  2773.  
  2774. Note:  Scaling adjusts the number that you select to get an integral number of 
  2775. full display screens. 
  2776.  
  2777. EXTRA shows the total execution time for your application above the slider and 
  2778. beneath the slider it shows the current page size based on the size of the 
  2779. current window. 
  2780.  
  2781. The page size is determined by the height and depth of the current window. 
  2782.  
  2783. To use the Scale Pages action window: 
  2784.  
  2785.  1. Use the slider to set the number of pages: 
  2786.  
  2787.    o Slide the slider arm to the right to increase the number of pages in the 
  2788.      diagram. 
  2789.    o Slide the slider arm to the left to decrease the number of pages in the 
  2790.      diagram. 
  2791.      When you move the slider arm, the page number changes to show the new 
  2792.      selection. 
  2793.  
  2794.  2. Select the OK push button to save the changes and close the action window 
  2795.     or select the Cancel push button to close the action window without saving 
  2796.     the changes. 
  2797.  
  2798.  
  2799. ΓòÉΓòÉΓòÉ 13.3.6. Scale Columns Choice ΓòÉΓòÉΓòÉ
  2800.  
  2801. Select the Scale columns choice to choose how many columns that you want 
  2802. displayed. 
  2803.  
  2804. When you select the Scale columns choice, Scale Columns action window is 
  2805. displayed. 
  2806.  
  2807.  
  2808. ΓòÉΓòÉΓòÉ <hidden> Scale Columns Action Window ΓòÉΓòÉΓòÉ
  2809.  
  2810. When you select the Scale columns  choice, a Scale Columns action window is 
  2811. displayed. 
  2812.  
  2813. To use the Scale Columns action window: 
  2814.  
  2815.  1. Use the spin buttons to change the numbers. You can set the number between 
  2816.     1 and 32 pels per column. The default is 16. Select the top spin button to 
  2817.     increase the value and select the bottom spin button to decrease the value. 
  2818.  
  2819.     Note:  When you select the value, the sentence to the right of the spin 
  2820.     buttons displays how many columns are allowed based on the value shown in 
  2821.     the entry field. The number of logged events for the application is 
  2822.     displayed in parentheses. 
  2823.  
  2824.  2. Select the OK push button to save the changes and close the action window 
  2825.     or select the Cancel push button to close the action window without saving 
  2826.     the changes. The diagram is redrawn to reflect the changes. 
  2827.  
  2828.  
  2829. ΓòÉΓòÉΓòÉ 13.3.7. Ruler Choice ΓòÉΓòÉΓòÉ
  2830.  
  2831. Select the Ruler choice to show how much time elapsed between two points of 
  2832. interest in the diagram. 
  2833.  
  2834. There are two ways to display the time: using the menu and using the keyboard. 
  2835. The following explains both methods: 
  2836.  
  2837. o Using the mouse: 
  2838.  
  2839.     1. Select Ruler from the Options menu. The mouse pointer turns into a plus 
  2840.        icon. 
  2841.  
  2842.     2. Press and hold mouse button one on the first point of interest in the 
  2843.        diagram, drag the mouse pointer to the second point of interest, and 
  2844.        release mouse button one. 
  2845.  
  2846. o Using the keyboard: 
  2847.  
  2848.     1. Select Ruler from the Options menu. A plus icon is displayed. 
  2849.  
  2850.     2. Press the spacebar to select the first point of interest in the diagram. 
  2851.  
  2852.     3. Use the  or  key to move to the second point of interest. 
  2853.  
  2854.     4. Press the Esc key. 
  2855.  
  2856.  
  2857. ΓòÉΓòÉΓòÉ 13.4. Help Menu ΓòÉΓòÉΓòÉ
  2858.  
  2859. The choices available from the Help menu are: 
  2860.  
  2861. Help index 
  2862.           Shows an alphabetical index of all available EXTRA help topics. 
  2863.  
  2864. General help 
  2865.           Provides help information for the current action window. 
  2866.  
  2867. Using help 
  2868.           Explains how to use the EXTRA help facility. 
  2869.  
  2870.  
  2871. ΓòÉΓòÉΓòÉ 13.4.1. Help Index Choice ΓòÉΓòÉΓòÉ
  2872.  
  2873. Select the Help index choice to display an alphabetical list of index entries 
  2874. for EXTRA. Use the Search push button to locate topics in the index. 
  2875.  
  2876.  
  2877. ΓòÉΓòÉΓòÉ 13.4.2. General Help Choice ΓòÉΓòÉΓòÉ
  2878.  
  2879. Select the General help choice to display online help for the active EXTRA 
  2880. window. 
  2881.  
  2882.  
  2883. ΓòÉΓòÉΓòÉ 13.4.3. Using Help Choice ΓòÉΓòÉΓòÉ
  2884.  
  2885. Select the Using help choice to learn how to use the EXTRA help facility. To 
  2886. get help, select Using help from the Help menu. 
  2887.  
  2888.  
  2889. ΓòÉΓòÉΓòÉ 14. Dynamic Call Graph ΓòÉΓòÉΓòÉ
  2890.  
  2891. The Dynamic Call Graph is a graphical view of the execution of the target 
  2892. application. A node represents a function and an arc, which is displayed 
  2893. between a pair of nodes, represents a call from one function to another. Only 
  2894. calls made during the given execution of the application are displayed. 
  2895.  
  2896. Colors and sizes of nodes and arcs depict the time spent in the node and the 
  2897. number of calls between nodes. The colors values are gray for the least amount 
  2898. of time, blue for a larger amount of time, yellow for a larger amount of time, 
  2899. and red for the largest amount of time. The color and width of the arc is 
  2900. proportional to the number of calls made between functions. 
  2901.  
  2902. Menu Bar Summary 
  2903.  
  2904. The following choices are available from the Dynamic Call Graph menu bar: 
  2905.  
  2906. o File 
  2907. o Views 
  2908. o Help. 
  2909.  
  2910. Using Action Windows 
  2911.  
  2912. The following action windows are available by using the mouse or keyboard: 
  2913.  
  2914. o Function Information action window 
  2915. o Who Calls Whom action window 
  2916.  
  2917. Note:  When the trace file has just one function for each thread, the Dynamic 
  2918. Call Graph does not display. 
  2919.  
  2920.  
  2921. ΓòÉΓòÉΓòÉ 14.1. File Menu ΓòÉΓòÉΓòÉ
  2922.  
  2923. The following choices are available from the File menu: 
  2924.  
  2925. Open 
  2926.           Shows a new or an additional graph. 
  2927.  
  2928. Print 
  2929.           Prints the information that is displayed in the current window. 
  2930.  
  2931.  
  2932. ΓòÉΓòÉΓòÉ 14.1.1. Open Choice ΓòÉΓòÉΓòÉ
  2933.  
  2934. Select the Open choice to view another diagram. You can open as many new 
  2935. windows as you want. 
  2936.  
  2937. To select a new diagram: 
  2938.  
  2939.  1. Select Open from the File menu. A cascaded menu is displayed with the 
  2940.     following choices: 
  2941.  
  2942.    Statistics 
  2943.  
  2944.    Time Line 
  2945.  
  2946.    Execution Density 
  2947.  
  2948.    Call Nesting 
  2949.  
  2950.    Dynamic Call Graph 
  2951.  
  2952.  2. Select the name of the graph you want to view. A new window opens and 
  2953.     displays the graph you selected. 
  2954.  
  2955.  
  2956. ΓòÉΓòÉΓòÉ 14.1.2. Print Choice ΓòÉΓòÉΓòÉ
  2957.  
  2958. Select Print to print the information from the Dynamic Call Graph. 
  2959.  
  2960. To print the Dynamic Call Graph, select Print from the File menu. The Dynamic 
  2961. Call Graph is printed on the default printer. 
  2962.  
  2963. Note:  If you are printing over a network, see your LAN administrator about 
  2964. creating a printer object. 
  2965.  
  2966.  
  2967. ΓòÉΓòÉΓòÉ 14.2. Views Menu ΓòÉΓòÉΓòÉ
  2968.  
  2969. The following choices are available from the View menu: 
  2970.  
  2971. Re-lay graph 
  2972.           Centers the graph in the window. 
  2973.  
  2974. Restore graph 
  2975.           Restores the graph to the default view. 
  2976.  
  2977. Select threads 
  2978.           Controls the threads to include or exclude in the graph. 
  2979.  
  2980. Search functions 
  2981.           Controls the functions to include or exclude in the graph. 
  2982.  
  2983. Overview 
  2984.           Shows an overview window for the total graph. 
  2985.  
  2986. Zoom in 
  2987.           Enlarges the size of the graph without changing the size of the 
  2988.           window. 
  2989.  
  2990. Zoom out 
  2991.           Decreases the size of the graph without changing the size of the 
  2992.           window. 
  2993.  
  2994.  
  2995. ΓòÉΓòÉΓòÉ 14.2.1. Re-lay Graph Choice ΓòÉΓòÉΓòÉ
  2996.  
  2997. Select the Re-lay graph choice to center and resize the nodes. See Dynamic Call 
  2998. Graph for more information about isolating nodes and arcs. 
  2999.  
  3000. To re-lay the graph, select Re-lay graph from the View menu. The graph is 
  3001. centered in the window with all selected elements sized to fit. 
  3002.  
  3003.  
  3004. ΓòÉΓòÉΓòÉ 14.2.2. Restore Graph Choice ΓòÉΓòÉΓòÉ
  3005.  
  3006. Select the Restore graph choice to return the graph to the default view. 
  3007.  
  3008. To restore a graph, select Restore graph from the View menu. The entire graph 
  3009. is restored to the default view. 
  3010.  
  3011.  
  3012. ΓòÉΓòÉΓòÉ 14.2.3. Overview Choice ΓòÉΓòÉΓòÉ
  3013.  
  3014. Select the Overview choice to display a scaled-down image of the diagram you 
  3015. are viewing. The Overview window lets you navigate through large diagrams. 
  3016.  
  3017. Switching Views 
  3018.  
  3019. To change the view of the graph, use the following: 
  3020.  
  3021.  1. View a larger or smaller area of the graph. 
  3022.  
  3023.     Press and hold mouse button one while pointing to any edge of the shaded 
  3024.     rectangle in the Overview window. By moving the mouse forward or backward, 
  3025.     the rectangle becomes larger or smaller. When you release mouse button one, 
  3026.     the main window is redrawn to reflect the new view. 
  3027.  
  3028.  2. View a different area of the graph. 
  3029.  
  3030.     Press and hold mouse button one in the center of the shaded rectangle in 
  3031.     the Overview window. Move the rectangle over the part of the graph that you 
  3032.     want to view. When you release mouse button one, the main window is redrawn 
  3033.     to reflect the new view. 
  3034.  
  3035.  
  3036. ΓòÉΓòÉΓòÉ 14.2.4. Zoom In Choice ΓòÉΓòÉΓòÉ
  3037.  
  3038. Select the Zoom in choice to enlarge the graph without changing the window 
  3039. size. If a node or an arc is selected, the Zoom in centers that node in the 
  3040. window while enlarging the diagram. You can enlarge the diagram up to five 
  3041. times its default size. 
  3042.  
  3043. To enlarge the graph, select Zoom in from the View menu or press the Ctrl and 
  3044. the  key. Each time you choose the choice or press Ctrl and the  key, the 
  3045. window displays a larger view of the graph. 
  3046.  
  3047.  
  3048. ΓòÉΓòÉΓòÉ 14.2.5. Zoom Out Choice ΓòÉΓòÉΓòÉ
  3049.  
  3050. Select the Zoom out choice to decrease the size of the graph without changing 
  3051. the window size. The original default view is as small as the graph can be 
  3052. displayed. 
  3053.  
  3054. To decrease the view of the graph, select Zoom out from the View menu or press 
  3055. the Ctrl key and the  key. Each time you choose the choice or press the Ctrl 
  3056. key and the  key, the window displays a smaller view of the graph. 
  3057.  
  3058.  
  3059. ΓòÉΓòÉΓòÉ 14.2.6. Select Threads Choice ΓòÉΓòÉΓòÉ
  3060.  
  3061. Select the Select threads choice to select which threads are displayed in the 
  3062. diagram. When you select this choice, a Select Threads action window is 
  3063. displayed. 
  3064.  
  3065.  
  3066. ΓòÉΓòÉΓòÉ <hidden> Select Threads Action Window ΓòÉΓòÉΓòÉ
  3067.  
  3068. Select the Select threads choice to choose which threads are displayed in the 
  3069. graph. When you select this choice, an action window is displayed that shows a 
  3070. check box for each thread. The application thread numbers in your application 
  3071. are displayed in black while the others are displayed in gray. The threads 
  3072. selected to display have a ΓêÜ symbol in the box. 
  3073.  
  3074. To select a thread: 
  3075.  
  3076.  1. Select the specific thread you want displayed. A ΓêÜ symbol is displayed in 
  3077.     the box to indicate it is selected. 
  3078.  
  3079.  2. Select the OK push button to save the changes and close the action window 
  3080.     or select the Cancel push button to close the action window without saving 
  3081.     the changes. 
  3082.  
  3083. To select all threads: 
  3084.  
  3085.  1. Select the Select all push button to select all threads. 
  3086.  
  3087.  2. Select the OK push button to save the changes and close the action window 
  3088.     or select the Cancel push button to close the action window without saving 
  3089.     the changes. 
  3090.  
  3091.  
  3092. ΓòÉΓòÉΓòÉ 14.2.7. Search Functions Choice ΓòÉΓòÉΓòÉ
  3093.  
  3094. Select the Search function choice to search for a function in the diagram. When 
  3095. you select this choice, a Select Functions action window is displayed. 
  3096.  
  3097.  
  3098. ΓòÉΓòÉΓòÉ <hidden> Search Functions Action Window ΓòÉΓòÉΓòÉ
  3099.  
  3100. Select the Search function choice to search and display a specific function in 
  3101. the graph. When you select this choice, an action window is displayed that 
  3102. lists every function. 
  3103.  
  3104. To search for a function: 
  3105.  
  3106.  1. Scroll the list until you find the function you want to search for and the 
  3107.     select the function. 
  3108.  
  3109.  2. Select the OK push button to save the changes and close the action window 
  3110.     or select the Cancel push button to close the action window without saving 
  3111.     the changes. When you select OK, the diagram selects and centers the 
  3112.     function. 
  3113.  
  3114.  
  3115. ΓòÉΓòÉΓòÉ <hidden> Function Information Action Window ΓòÉΓòÉΓòÉ
  3116.  
  3117. The Function Information action window displays information about a selected 
  3118. function, the total execution time and active time in seconds and percentages, 
  3119. and lets you show which function called the selected function and the functions 
  3120. that the selected function called. 
  3121.  
  3122. Displaying the Function Information Action Window 
  3123.  
  3124. There are two ways to display the Function Information action window. Use one 
  3125. of the following: 
  3126.  
  3127. o Double-click on a node using the mouse button one 
  3128.  
  3129.   OR 
  3130. o Use the right or left arrow keys to move the plus icon over a node, select it 
  3131.   using the space bar, and press the Enter key. 
  3132.  
  3133.  
  3134. ΓòÉΓòÉΓòÉ 14.2.8. Function Information Action Window ΓòÉΓòÉΓòÉ
  3135.  
  3136. The Function Information action window displays the name of the selected 
  3137. function. Underneath the name is information about the total execution time and 
  3138. the active time in actual time and as a percentage. 
  3139.  
  3140. The following lists the push buttons and gives an explanation of each push 
  3141. button: 
  3142.  
  3143. Who calls me 
  3144.           Select this push button to display only the selected node and the 
  3145.           nodes that called the selected node. To return to the graph, select 
  3146.           Restore graph from the Options menu. 
  3147.  
  3148. Whom do I call 
  3149.           Select this push button to display only the selected node and the 
  3150.           nodes that the selected node calls. To return to the graph, select 
  3151.           Restore graph from the Options menu. 
  3152.  
  3153. Cancel 
  3154.           Exits the action window. 
  3155.  
  3156.  
  3157. ΓòÉΓòÉΓòÉ <hidden> Who Calls Whom Action Window ΓòÉΓòÉΓòÉ
  3158.  
  3159. The Who Call Whom action window displays information about a selected arc. 
  3160.  
  3161. Displaying the Who Calls Whom Action Window 
  3162.  
  3163. There are two ways to display the Who Calls Whom action window. Use one of the 
  3164. following: 
  3165.  
  3166.  1. Double-click on an arc. 
  3167.  
  3168.  2. Use the right or left arrow key to move the plus icon over an arc, select 
  3169.     it by pressing the spacebar, and then press the Enter key. 
  3170.  
  3171.  
  3172. ΓòÉΓòÉΓòÉ <hidden> Who Calls Whom Action Window ΓòÉΓòÉΓòÉ
  3173.  
  3174. The Who Calls Whom action window displays the name of the calling function, the 
  3175. called function, and the number of times the call is made. 
  3176.  
  3177. The following lists the push buttons and how to use the push button: 
  3178.  
  3179. Find caller 
  3180.           Select this push button to select and center the node that makes the 
  3181.           call represented by the selected arc. 
  3182.  
  3183. Find callee 
  3184.           Select this push button to select and center the node that is called 
  3185.           by the call represented in the selected arc. 
  3186.  
  3187. Cancel 
  3188.           Exits the action window. 
  3189.  
  3190.  
  3191. ΓòÉΓòÉΓòÉ 14.3. Help Menu ΓòÉΓòÉΓòÉ
  3192.  
  3193. The choices available from the Help menu are: 
  3194.  
  3195. Help index 
  3196.           Shows an alphabetical index of all available EXTRA help topics. 
  3197.  
  3198. General help 
  3199.           Provides help information for the current action window. 
  3200.  
  3201. Using help 
  3202.           Explains how to use the EXTRA help facility. 
  3203.  
  3204.  
  3205. ΓòÉΓòÉΓòÉ 14.3.1. Help Index Choice ΓòÉΓòÉΓòÉ
  3206.  
  3207. Select the Help index choice to display an alphabetical list of index entries 
  3208. for EXTRA Use the Search push button to locate topics in the index. 
  3209.  
  3210.  
  3211. ΓòÉΓòÉΓòÉ 14.3.2. General Help Choice ΓòÉΓòÉΓòÉ
  3212.  
  3213. Select the General help choice to display online help for the active EXTRA 
  3214. window. 
  3215.  
  3216.  
  3217. ΓòÉΓòÉΓòÉ 14.3.3. Using Help Choice ΓòÉΓòÉΓòÉ
  3218.  
  3219. Select the Using help choice to learn how to use the EXTRA help facility. To 
  3220. get help, select Using help from the Help menu. 
  3221.  
  3222.  
  3223. ΓòÉΓòÉΓòÉ 15. Problem Solving ΓòÉΓòÉΓòÉ
  3224.  
  3225. This topic lists the problems you may encounter while running EXTRA. To see how 
  3226. to solve the problem, double-click on the problem and a solution displays in 
  3227. the right-hand window. 
  3228.  
  3229. Compiling and Linking Your Program 
  3230.  
  3231. o When I compile and link my C++ program, I receive the following error 
  3232.   message: 
  3233.   :'EXTRA(char*)': 
  3234.  
  3235. Using the Trace Generation Window 
  3236.  
  3237. o My program executables display in cyan. 
  3238.  
  3239. o My executable is shown in black, but EXTRA cannot show the objects. 
  3240.  
  3241. Tracing Your Program 
  3242.  
  3243. o EXTRA cannot trace my program. 
  3244.  
  3245. o EXTRA cannot trace the library calls to the system. 
  3246.  
  3247. o EXTRA cannot trace dynamically-loaded DLLs. 
  3248.  
  3249. o The trace file logged 0 events. 
  3250.  
  3251. o EXTRA cannot generate or analyze child processes in a multi-process 
  3252.   application. 
  3253.  
  3254. Viewing the Trace File 
  3255.  
  3256. o I cannot open my trace file. 
  3257.  
  3258. o The Statistical Summary, Call Nesting, and Dynamic Call Graph are the only 
  3259.   available diagrams. 
  3260.  
  3261. o The Statistical Summary and Dynamic Call Graph cannot display the trace file. 
  3262.  
  3263. o The trace file does not show all functions. 
  3264.  
  3265. o The trace file is very large. 
  3266.  
  3267. o The trace file is incomplete. 
  3268.  
  3269. Using the Statistical Summary 
  3270.  
  3271. o "---" displays next to a function in the Statistical Summary. 
  3272.  
  3273. o Multiple different user events are incorrectly displayed as the same string. 
  3274.  
  3275. o User events display with unintelligible information. 
  3276.  
  3277. Using the Call Nesting Diagram 
  3278.  
  3279. o Multiple different user events are incorrectly displayed as the same string. 
  3280.  
  3281. o User events display with unintelligible information. 
  3282.  
  3283. o The Annotate choice is disabled. 
  3284.  
  3285. o The Pattern Recognition choice does not show all patterns. 
  3286.  
  3287. o The Select functions choice is not available. 
  3288.  
  3289. o The Thread Layout choice is not available. 
  3290.  
  3291. Using the Execution Density Diagram 
  3292.  
  3293. o The Execution Density diagram is not displaying all of the events. 
  3294.  
  3295. Using the Time Line Diagram 
  3296.  
  3297. o There are functions or threads that are not displaying. 
  3298.  
  3299. Using the Dynamic Call Graph 
  3300.  
  3301. o The Dynamic Call Graph does not display. 
  3302.  
  3303. o When I try to open the Dynamic Call Graph, I receive an API error. 
  3304.  
  3305.  
  3306. ΓòÉΓòÉΓòÉ <hidden> Solutions ΓòÉΓòÉΓòÉ
  3307.  
  3308. Solutions display here. 
  3309.  
  3310.  
  3311. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3312.  
  3313. Your program must be compiled and linked properly before you can use EXTRA. 
  3314.  
  3315. See Adding Debugging Information to Your Application for more information. 
  3316.  
  3317.  
  3318. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3319.  
  3320. None of the objects in the executable were compiled with the proper profile 
  3321. hook (Gh) options. Compile the programs you want to trace with the proper 
  3322. options. 
  3323.  
  3324. See Adding Debugging Information to Your Application for more information. 
  3325.  
  3326.  
  3327. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3328.  
  3329.  1. Your program must be properly compiled and linked before you can use EXTRA. 
  3330.  
  3331.     See Adding Debugging Information to Your Application for more information. 
  3332.  
  3333.  2. EXTRA only supports 32-bit IBM C/C++ code. 
  3334.  
  3335.  
  3336. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3337.  
  3338. You must link the libraries properly. 
  3339.  
  3340. See Tracing the System Calls for more information. 
  3341.  
  3342.  
  3343. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3344.  
  3345. One of two things has happened: 
  3346.  
  3347.  1. The dynamic link library (DLL) was not compiled with the program. 
  3348.  
  3349.  2. You may not have properly compiled and linked your program so that it can 
  3350.     be traced. 
  3351.  
  3352.     See Adding Debugging Information to Your Application for more information. 
  3353.  
  3354.  
  3355. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3356.  
  3357. EXTRA does not support this. 
  3358.  
  3359.  
  3360. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3361.  
  3362. Before the Statistical Summary or Dynamic Call Graph can display a trace file, 
  3363. the EXTRA dynamic link libraries (DLL) must be available. 
  3364.  
  3365. Ensure all the EXTRA DLLs are available by checking the LIBPATH environment 
  3366. variable. 
  3367.  
  3368.  
  3369. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3370.  
  3371. Use the Select Functions or Select Threads menu choice to reduce the viewable 
  3372. information. 
  3373.  
  3374. See the Select functions action window for more information. 
  3375.  
  3376. See the Select threads action window for more information. 
  3377.  
  3378.  
  3379. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3380.  
  3381. When you traced your application, there was not enough timing information 
  3382. available for EXTRA to analyze the function. You need to allow more time for 
  3383. the function to run. Use the Timeout Control in the Trace Generation window. 
  3384.  
  3385. See the Timeout control action window for more information. 
  3386.  
  3387.  
  3388. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3389.  
  3390. Check your settings in the diagram. If you have Select Functions set to display 
  3391. a certain function, change the selection to show the all functions.. 
  3392.  
  3393. See the Select functions action window for more information. 
  3394.  
  3395. If you have Thread n set to display a certain thread, select All Threads from 
  3396. the Draw menu. 
  3397.  
  3398. See the All Threads action window for more information. 
  3399.  
  3400.  
  3401. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3402.  
  3403. There are several things that could have happened: 
  3404.  
  3405.  1. All functions were disabled in the Trace Generation window from the Edit 
  3406.     menu. 
  3407.  
  3408.     See disabling functions for more information. 
  3409.  
  3410.  2. You need to allow more time for the function to run. Use the Timeout 
  3411.     Control choice in the Trace Generation window. 
  3412.  
  3413.     See the Timeout Control action window for more information. 
  3414.  
  3415.  3. If you set a trigger on a function, the triggered function may not have 
  3416.     been reached. 
  3417.  
  3418.  4. Your program must be compiled and linked with the proper options before you 
  3419.     can use EXTRA. 
  3420.  
  3421.     See Adding Debugging Information to Your Application for more information. 
  3422.  
  3423.  
  3424. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3425.  
  3426. Your buffer may be set to overwrite the older events. 
  3427.  
  3428. See the Buffer Control action window for more information. 
  3429.  
  3430.  
  3431. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3432.  
  3433. If you are trying to open a diagram from the command line, you may not be 
  3434. typing the correct command. 
  3435.  
  3436. See Opening Diagrams for more information. 
  3437.  
  3438.  
  3439. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3440.  
  3441.  1. A trigger may have been set from the Trace Generation window. 
  3442.  
  3443.     See Resetting Triggers for more information. 
  3444.  
  3445.  
  3446.  2. The call depth may be set to null or a low number. 
  3447.  
  3448.     See Set Call Depth action window for more information. 
  3449.  
  3450.  
  3451.  3. Some of the functions may have been disabled before the trace. 
  3452.  
  3453.     See disabling functions for more information. 
  3454.  
  3455.  
  3456. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3457.  
  3458. The string used to declare the prototype must be unique static alphanumeric 
  3459. characters. 
  3460.  
  3461. See Creating EXTRA C and C++ Prototypes  for more information. 
  3462.  
  3463.  
  3464. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3465.  
  3466. You must declare a prototype for C++ programs in the following way: 
  3467.  
  3468. extern "C"
  3469. {
  3470. VOID EXTRA (PSZ string);
  3471. }
  3472.  
  3473. See Creating EXTRA C and C++ Prototypes  for more information. 
  3474.  
  3475.  
  3476. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3477.  
  3478. You may have chosen to disable the time stamps from the Trace Generation 
  3479. window. 
  3480.  
  3481. See the Select Clock action window for more information. 
  3482.  
  3483.  
  3484. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3485.  
  3486. When Pattern Recognition is enabled, the Annotate choice is not available. 
  3487. Disable Pattern Recognition before selecting Annotate. 
  3488.  
  3489. See the Annotate. action window for more information. 
  3490.  
  3491.  
  3492. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3493.  
  3494. The trace file contains over 8,000 patterns and EXTRA recognizes up to 8,000 
  3495. patterns. 
  3496.  
  3497. To correct this, limit the number of functions traced, limit the call depth of 
  3498. the threads traced, or both. 
  3499.  
  3500.  
  3501. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3502.  
  3503. This choice is only available when all threads are displayed. If you have 
  3504. enabled a specific thread from the Draw menu, you must select All Threads 
  3505. before you can use the Select functions choice. 
  3506.  
  3507.  
  3508. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3509.  
  3510. This choice is only available when all threads are displayed. If you have 
  3511. enabled a specific thread from the Draw menu, you must select All Threads 
  3512. before you can use the Select functions choice. 
  3513.  
  3514.  
  3515. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3516.  
  3517. Events that take small amounts of time may not be displayed until the number of 
  3518. pages has been increased. 
  3519.  
  3520.  
  3521. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3522.  
  3523. When the trace file contains just one function per thread, the Dynamic Call 
  3524. Graph does not display. 
  3525.  
  3526.  
  3527. ΓòÉΓòÉΓòÉ <hidden> Solution ΓòÉΓòÉΓòÉ
  3528.  
  3529. You have duplicate functions with the same name. You may have compiled your 
  3530. program without the inline option. 
  3531.  
  3532. If you received this error for a C++ program, compile the program again using 
  3533. the /Oi+ option. 
  3534.  
  3535. If you received this error for a C program, make sure all your functions have 
  3536. unique names. 
  3537.  
  3538.  
  3539. ΓòÉΓòÉΓòÉ 16. Glossary ΓòÉΓòÉΓòÉ
  3540.  
  3541. Double-click on any term for a definition: 
  3542.  
  3543. o Active time 
  3544. o Annotations 
  3545. o Arc 
  3546. o Buffer wrap 
  3547. o Call 
  3548. o Call nesting 
  3549. o Call stack 
  3550. o Correlation 
  3551. o Dos calls 
  3552. o Environment variable 
  3553. o Event 
  3554. o Executable 
  3555. o Execution Trace Analyzer 
  3556. o Flush 
  3557. o Hot spot 
  3558. o Node 
  3559. o Overview 
  3560. o Pels 
  3561. o Function 
  3562. o Return 
  3563. o Ruler 
  3564. o Run time 
  3565. o Scaling 
  3566. o Shortcut keys 
  3567. o Thread 
  3568. o Tic 
  3569. o Timeout control 
  3570. o Time stamp 
  3571. o Trace 
  3572. o Trace file 
  3573. o Trigger functions 
  3574. o User event. 
  3575.  
  3576.  
  3577. ΓòÉΓòÉΓòÉ 16.1. Active Time ΓòÉΓòÉΓòÉ
  3578.  
  3579. Active time is the total time a function is on the call stack while its thread 
  3580. is executing. The time is displayed in the Statistical Summary and Dynamic Call 
  3581. Graph. 
  3582.  
  3583.  
  3584. ΓòÉΓòÉΓòÉ 16.2. Annotation ΓòÉΓòÉΓòÉ
  3585.  
  3586. An annotation is a descriptive comment or an explanatory note added by the user 
  3587. to the Call Nesting diagram. 
  3588.  
  3589.  
  3590. ΓòÉΓòÉΓòÉ 16.3. Arc ΓòÉΓòÉΓòÉ
  3591.  
  3592. An arc is a directed line connecting two nodes in the Dynamic Call Graph. It 
  3593. displays the relationship between the two nodes. 
  3594.  
  3595.  
  3596. ΓòÉΓòÉΓòÉ 16.4. Buffer Wrap ΓòÉΓòÉΓòÉ
  3597.  
  3598. A buffer wrap occurs when the trace buffer overflows so that subsequent events 
  3599. are written to the beginning of the buffer. When this happens,  older events 
  3600. are overwritten. The trace file size is limited by the number of events 
  3601. contained in the buffer. You can control the size of the buffer from the Trace 
  3602. Generation window using the Set buffer wrap choice. 
  3603.  
  3604.  
  3605. ΓòÉΓòÉΓòÉ 16.5. Call ΓòÉΓòÉΓòÉ
  3606.  
  3607. To call is to bring a function into effect, such as specifying the entry 
  3608. conditions and then jumping to an entry point in the function. 
  3609.  
  3610.  
  3611. ΓòÉΓòÉΓòÉ 16.6. Call nesting ΓòÉΓòÉΓòÉ
  3612.  
  3613. Call nesting describes the relationships between calling and called functions. 
  3614. For example, if function A calls function B, then EXTRA defines calls to B as 
  3615. being nested under call A. 
  3616.  
  3617.  
  3618. ΓòÉΓòÉΓòÉ 16.7. Call stack ΓòÉΓòÉΓòÉ
  3619.  
  3620. A call stack is a display of the call nesting in a given application. For 
  3621. example, if function A calls function B, which calls function C, then the call 
  3622. stack for function C would show function C as the first element, function B as 
  3623. the second element, and function A as the last element. 
  3624.  
  3625.  
  3626. ΓòÉΓòÉΓòÉ 16.8. Correlation ΓòÉΓòÉΓòÉ
  3627.  
  3628. Correlation allows you to mark a point in a Call Nesting diagram, Execution 
  3629. Density diagram, or Time Line diagram and then find that same point in another 
  3630. Call Nesting diagram, Execution Density diagram, or Time Line diagram. 
  3631.  
  3632.  
  3633. ΓòÉΓòÉΓòÉ 16.9. Dos calls ΓòÉΓòÉΓòÉ
  3634.  
  3635. Dos calls are calls made to the operating system through functions with names 
  3636. beginning with a Dos prefix, such as, DosExit and DosOpen. 
  3637.  
  3638.  
  3639. ΓòÉΓòÉΓòÉ 16.10. Environment variable ΓòÉΓòÉΓòÉ
  3640.  
  3641. An environment variable is a variable associated with a given process and is 
  3642. inherited from its parent process. For example, PATH. 
  3643.  
  3644.  
  3645. ΓòÉΓòÉΓòÉ 16.11. Event ΓòÉΓòÉΓòÉ
  3646.  
  3647. An event is an entry or exit from a function. Also, EXTRA allows for 
  3648. user-defined calls that are also defined as events. 
  3649.  
  3650.  
  3651. ΓòÉΓòÉΓòÉ 16.12. Executable ΓòÉΓòÉΓòÉ
  3652.  
  3653. An executable is a file of compressed images of an application that includes: 
  3654.  
  3655. o Each of the application segments, such as code, data, and stack. 
  3656.  
  3657. o Control records that tell the loader how to tie all of the application 
  3658.   segments together. 
  3659.  
  3660.  
  3661. ΓòÉΓòÉΓòÉ 16.13. Execution Trace Analyzer ΓòÉΓòÉΓòÉ
  3662.  
  3663. An Execution Trace Analyzer is a tool used to obtain and present information 
  3664. about an application's behavior during its execution. 
  3665.  
  3666.  
  3667. ΓòÉΓòÉΓòÉ 16.14. Flush ΓòÉΓòÉΓòÉ
  3668.  
  3669. A flush occurs when the virtual logging buffer for a trace is full and the 
  3670. Buffer wrap choice in the Trace Generation window has not been selected. EXTRA 
  3671. processes the contents of the virtual logging buffer and the events are written 
  3672. to the trace file. After the buffer is flushed, EXTRA resumes tracing the 
  3673. application. 
  3674.  
  3675.  
  3676. ΓòÉΓòÉΓòÉ 16.15. Function ΓòÉΓòÉΓòÉ
  3677.  
  3678. A function is defined by EXTRA to be a callable section within the application. 
  3679. For EXTRA, procedures and functions are synonyms of functions. 
  3680.  
  3681.  
  3682. ΓòÉΓòÉΓòÉ 16.16. Hot spot ΓòÉΓòÉΓòÉ
  3683.  
  3684. A hot spot is an area within an application where a disproportionate amount of 
  3685. time is spent. 
  3686.  
  3687.  
  3688. ΓòÉΓòÉΓòÉ 16.17. Node ΓòÉΓòÉΓòÉ
  3689.  
  3690. A node is the representation of an individual function in the Dynamic Call 
  3691. Graph. 
  3692.  
  3693.  
  3694. ΓòÉΓòÉΓòÉ 16.18. Overview ΓòÉΓòÉΓòÉ
  3695.  
  3696. An Overview is the compressed representation of the entire diagram presented in 
  3697. the Dynamic Call Graph. 
  3698.  
  3699.  
  3700. ΓòÉΓòÉΓòÉ 16.19. Pels ΓòÉΓòÉΓòÉ
  3701.  
  3702. Pels are picture elements of a display area. 
  3703.  
  3704.  
  3705. ΓòÉΓòÉΓòÉ 16.20. Return ΓòÉΓòÉΓòÉ
  3706.  
  3707. A return is a language construct within a function designating the end of the 
  3708. execution sequence in the function. 
  3709.  
  3710.  
  3711. ΓòÉΓòÉΓòÉ 16.21. Ruler ΓòÉΓòÉΓòÉ
  3712.  
  3713. A ruler is a mechanism in the Time Line and Execution Density diagrams to 
  3714. display the amount of time between two points in the diagram. 
  3715.  
  3716.  
  3717. ΓòÉΓòÉΓòÉ 16.22. Run time ΓòÉΓòÉΓòÉ
  3718.  
  3719. Run time is the time during which an application is being executed. 
  3720.  
  3721.  
  3722. ΓòÉΓòÉΓòÉ 16.23. Scaling ΓòÉΓòÉΓòÉ
  3723.  
  3724. Scaling is the process of changing the granularity of the detail in a trace 
  3725. diagram:  to step back from a diagram to get a bigger picture or to zoom in to 
  3726. see the finer points. 
  3727.  
  3728.  
  3729. ΓòÉΓòÉΓòÉ 16.24. Shortcut keys ΓòÉΓòÉΓòÉ
  3730.  
  3731. Shortcut keys are keys you use to invoke menu choices. When two key names are 
  3732. joined by a plus sign (+), use these two keys together. Hold down the first key 
  3733. and then press the second key. 
  3734.  
  3735. You can use shortcut keys for most of the menu choices in the EXTRA. 
  3736.  
  3737. For a list of shortcut keys, select any of the following: 
  3738.  
  3739. o Trace Generation window 
  3740.  
  3741. o Statistical Summary 
  3742.  
  3743. o Time Line Diagram 
  3744.  
  3745. o Execution Density Diagram 
  3746.  
  3747. o Call Nesting Diagram 
  3748.  
  3749. o Dynamic Call Graph 
  3750.  
  3751.  
  3752. ΓòÉΓòÉΓòÉ 16.24.1. Shortcut Keys for Trace Generation Window ΓòÉΓòÉΓòÉ
  3753.  
  3754. Trace Generation window 
  3755.  
  3756. The following lists the shortcut keys available from the Trace Generation 
  3757. window: 
  3758.  
  3759. o Double-click on an executable and an object file to toggle between showing 
  3760.   and hiding. 
  3761.  
  3762. o Double-click on a function to disable and enable the function. 
  3763.  
  3764. o Use the PageUp and PageDown keys to move through the names of the 
  3765.   executables, object files, and functions on the screen. 
  3766.  
  3767. For choices in the Edit menu, use the following keys: 
  3768.  
  3769. Show                          Alt+S 
  3770.  
  3771. Hide                          Alt+H 
  3772.  
  3773. Enable                        Alt+E 
  3774.  
  3775. Disable                       Alt+D 
  3776.  
  3777. Enables items below selected item Alt+N 
  3778.  
  3779. Disables items below selected item Alt+I 
  3780.  
  3781. Set trigger                   Alt+T 
  3782.  
  3783. For choices in the Options menu, use the following keys: 
  3784.  
  3785. Select clock             Alt+C 
  3786.  
  3787. Buffer control           Alt+B 
  3788.  
  3789. Set call depth           Alt+S 
  3790.  
  3791. Name trace file          Alt+N 
  3792.  
  3793. Timeout control          Alt+T 
  3794.  
  3795. File access              Alt+F 
  3796.  
  3797. Default setup            Alt+D 
  3798.  
  3799.  
  3800. ΓòÉΓòÉΓòÉ 16.24.2. Shortcut Keys for the Statistical Summary ΓòÉΓòÉΓòÉ
  3801.  
  3802. For choices in the File menu, use the following keys: 
  3803.  
  3804. Open                     Alt+O 
  3805.  
  3806. Statistics               Alt+S 
  3807.  
  3808. Time Line                Alt+T 
  3809.  
  3810. Execution Density        Alt+E 
  3811.  
  3812. Call Nesting             Alt+C 
  3813.  
  3814. Dynamic Call Graph       Alt+D 
  3815.  
  3816. Save as                  Alt+S 
  3817.  
  3818. Print                    Alt+P 
  3819.  
  3820. For choices in the Options menu, use the following keys: 
  3821.  
  3822. Font                     Alt+F 
  3823.  
  3824. Summary                  Alt+S 
  3825.  
  3826. Details                  Alt+D 
  3827.  
  3828. Horz. split bar          Alt+H 
  3829.  
  3830. Vert. split bar          Alt+V 
  3831.  
  3832. To move between the Details and Summary windows, use the Tab key. To move 
  3833. between the Details panes, use the F6 key. 
  3834.  
  3835.  
  3836. ΓòÉΓòÉΓòÉ 16.24.3. Shortcut Keys for the Time Line Diagram ΓòÉΓòÉΓòÉ
  3837.  
  3838. For choices in the File menu, use the following keys: 
  3839.  
  3840. Open                     Alt+O 
  3841.  
  3842. Statistics               Alt+S 
  3843.  
  3844. Time Line                Alt+T 
  3845.  
  3846. Execution Density        Alt+E 
  3847.  
  3848. Call Nesting             Alt+C 
  3849.  
  3850. Dynamic Call Graph       Alt+D 
  3851.  
  3852. Print                    Alt+P 
  3853.  
  3854. For choices in the Options menu, use the following keys: 
  3855.  
  3856. Call stack               Alt+S 
  3857.  
  3858. Correlation              Alt+C 
  3859.  
  3860. Font                     Alt+F 
  3861.  
  3862. Scale                    Alt+L 
  3863.  
  3864. Thread layout            Alt+T 
  3865.  
  3866. Ruler                    Alt+R 
  3867.  
  3868.  
  3869. ΓòÉΓòÉΓòÉ 16.24.4. Shortcut Keys for the Call Nesting Diagram ΓòÉΓòÉΓòÉ
  3870.  
  3871. For choices in the File menu, use the following keys: 
  3872.  
  3873. Open                     Alt+O 
  3874.  
  3875. Statistics               Alt+S 
  3876.  
  3877. Time Line                Alt+T 
  3878.  
  3879. Execution Density        Alt+E 
  3880.  
  3881. Call Nesting             Alt+C 
  3882.  
  3883. Dynamic Call Graph       Alt+D 
  3884.  
  3885. Print                    Alt+P 
  3886.  
  3887. For choices in the Edit menu, use the following keys: 
  3888.  
  3889. Search                   Alt+S 
  3890.  
  3891. Find next                Alt+F 
  3892.  
  3893. Annotate                 Alt+A 
  3894.  
  3895. For choices in the Options menu, use the following keys: 
  3896.  
  3897. Call stack               Alt+S 
  3898.  
  3899. Correlation              Alt+C 
  3900.  
  3901. Font                     Alt+F 
  3902.  
  3903. Pattern recognition      Alt+R 
  3904.  
  3905. Select functions         Alt+L 
  3906.  
  3907. Thread layout            Alt+T 
  3908.  
  3909. For choices in the Draw menu, use the following keys: 
  3910.  
  3911. All Threads              Alt+A 
  3912.  
  3913.  
  3914. ΓòÉΓòÉΓòÉ 16.24.5. Shortcut Keys for the Dynamic Call Graph ΓòÉΓòÉΓòÉ
  3915.  
  3916. For choices in the File menu, use the following keys: 
  3917.  
  3918. Open                     Alt+O 
  3919.  
  3920. Statistics               Alt+S 
  3921.  
  3922. Time Line                Alt+T 
  3923.  
  3924. Execution Density        Alt+E 
  3925.  
  3926. Call Nesting             Alt+C 
  3927.  
  3928. Dynamic Call Graph       Alt+D 
  3929.  
  3930. Print                    Alt+P 
  3931.  
  3932. For choices in the Views menu, use the following keys: 
  3933.  
  3934. Re-lay graph             Alt+L 
  3935.  
  3936. Restore graph            Alt+R 
  3937.  
  3938. Select threads           Alt+S 
  3939.  
  3940. Overview                 Alt+V 
  3941.  
  3942. Zoom in                  .Ctrl+ 
  3943.  
  3944. Zoom out                 .Ctrl+ 
  3945.  
  3946.  
  3947. ΓòÉΓòÉΓòÉ 16.24.6. Shortcut Keys for the Execution Density Diagram ΓòÉΓòÉΓòÉ
  3948.  
  3949. For choices in the File menu, use the following keys: 
  3950.  
  3951. Open                     Alt+O 
  3952.  
  3953. Statistics               Alt+S 
  3954.  
  3955. Time Line                Alt+T 
  3956.  
  3957. Execution Density        Alt+E 
  3958.  
  3959. Call Nesting             Alt+C 
  3960.  
  3961. Dynamic Call Graph       Alt+D 
  3962.  
  3963. Print                    Alt+P 
  3964.  
  3965. For choices in the Options menu, use the following keys: 
  3966.  
  3967. Color                    Alt+L 
  3968.  
  3969. Correlation              Alt+C 
  3970.  
  3971. Select Functions         Alt+F 
  3972.  
  3973. Select threads           Alt+T 
  3974.  
  3975. Scale pages              Alt+P 
  3976.  
  3977. Scale columns            Alt+M 
  3978.  
  3979. Ruler                    Alt+R 
  3980.  
  3981.  
  3982. ΓòÉΓòÉΓòÉ 16.25. Thread ΓòÉΓòÉΓòÉ
  3983.  
  3984. A thread is the basic OS/2* unit of execution. A thread gives an application 
  3985. its context, including registers, stack, and processor mode. Multiple threads 
  3986. can be running at the same time, and any particular thread can start another 
  3987. thread. 
  3988.  
  3989.  
  3990. ΓòÉΓòÉΓòÉ 16.26. Tic ΓòÉΓòÉΓòÉ
  3991.  
  3992. A tic is the smallest unit of time measured by the EXTRA counter. A tic 
  3993. measures approximately 838 nanoseconds. 
  3994.  
  3995.  
  3996. ΓòÉΓòÉΓòÉ 16.27. Timeout control ΓòÉΓòÉΓòÉ
  3997.  
  3998. Timeout control lets you select the maximum number of seconds your application 
  3999. can run without logging events. This choice is available in the Trace 
  4000. Generation window from the Options Choice. This choice is helpful if your 
  4001. application is in a continuous loop or is stalled. 
  4002.  
  4003.  
  4004. ΓòÉΓòÉΓòÉ 16.28. Time stamp ΓòÉΓòÉΓòÉ
  4005.  
  4006. A time stamp is the actual time an event occurred when the application was 
  4007. being traced. 
  4008.  
  4009.  
  4010. ΓòÉΓòÉΓòÉ 16.29. Trace ΓòÉΓòÉΓòÉ
  4011.  
  4012. A trace is a record of events obtained during the execution of an application. 
  4013. It contains the sequences and timing of the events during application 
  4014. execution. 
  4015.  
  4016.  
  4017. ΓòÉΓòÉΓòÉ 16.30. Trace file ΓòÉΓòÉΓòÉ
  4018.  
  4019. A trace file is a file that contains a chronological sequence of records 
  4020. describing events which occurred during the execution of the application. The 
  4021. trace file contains the trace analysis information from your application and is 
  4022. displayed by the diagrams. 
  4023.  
  4024.  
  4025. ΓòÉΓòÉΓòÉ 16.31. Trigger function ΓòÉΓòÉΓòÉ
  4026.  
  4027. A trigger function turns tracing on when it is called and then turns tracing 
  4028. off when it returns. If a trigger function is nested within another trigger 
  4029. function, tracing is turned off only after the outer function returns. 
  4030.  
  4031.  
  4032. ΓòÉΓòÉΓòÉ 16.32. User event ΓòÉΓòÉΓòÉ
  4033.  
  4034. A user event is a call to EXTRA defined by the user in the application. EXTRA 
  4035. inserts text strings into the trace diagrams given by the parameter supplied by 
  4036. this call. User events can help diagnose problem areas in the application. 
  4037.  
  4038.  
  4039. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4040.  
  4041. A user event is a call to EXTRA defined by the user in the application. EXTRA 
  4042. inserts text strings into the diagrams given by the parameter supplied by this 
  4043. call. User events can help you diagnose problem areas in your application. 
  4044.  
  4045.  
  4046. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4047.  
  4048. A trace file is a file that contains a chronological sequence of records 
  4049. describing events which occurred during the application execution. The trace 
  4050. file contains the trace analysis information from your application and is 
  4051. displayed by the diagrams. 
  4052.  
  4053.  
  4054. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4055.  
  4056. The Call Nesting diagram shows the application execution as a vertical series 
  4057. of function calls and returns. Each thread has its own starting column of 
  4058. functions. A call is drawn as a step to the right and a return as a line back 
  4059. to the left. The calls are labeled with the name of the function being called. 
  4060. Context switches between threads are shown by dashed horizontal lines. 
  4061.  
  4062.  
  4063. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4064.  
  4065. This summary provides a textual report of execution time by function. It also 
  4066. provides summary information. 
  4067.  
  4068.  
  4069. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4070.  
  4071. Object files are compiler output files that are linked to comprise an 
  4072. executable. 
  4073.  
  4074.  
  4075. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4076.  
  4077. A function is defined by EXTRA to be a callable section within the application. 
  4078. For EXTRA, procedures and functions are synonyms of functions. 
  4079.  
  4080.  
  4081. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4082.  
  4083. A time stamp is the actual time at which an event occurred when the application 
  4084. was being traced. 
  4085.  
  4086.  
  4087. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4088.  
  4089. The Dynamic Call Graph shows a graphical view of the target application 
  4090. executions. Each function called is displayed as a node. Calls are shown as 
  4091. arcs between nodes. The color and size of nodes and arcs show the amount of 
  4092. time spent in the function and the number of calls between functions. 
  4093.  
  4094.  
  4095. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4096.  
  4097. A thread is the basic OS/2* unit of execution. A thread gives an application 
  4098. its context, including registers, stack, and processor mode. Multiple threads 
  4099. can be running at the same time, and any particular thread can start another 
  4100. thread. 
  4101.  
  4102.  
  4103. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4104.  
  4105. A trigger function turns tracing on when it is called and then turns tracing 
  4106. off when it returns. If a trigger function is nested within another trigger 
  4107. function, tracing is turned off only after the outer function returns. 
  4108.  
  4109.  
  4110. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4111.  
  4112. The plus icon is displayed beside an executable and object file in the Trace 
  4113. Generation window when the file can be shown or expanded. 
  4114.  
  4115.  
  4116. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4117.  
  4118. The minus icon is displayed beside an executable and object file in the Trace 
  4119. Generation window when the file can not be shown or expanded. 
  4120.  
  4121.  
  4122. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4123.  
  4124. A node is the representation of an individual function in the Dynamic Call 
  4125. Graph. 
  4126.  
  4127.  
  4128. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4129.  
  4130. An arc is a directed line connecting two nodes in the Dynamic Call Graph. It 
  4131. displays the relationship between the two nodes. 
  4132.  
  4133.  
  4134. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4135.  
  4136. A trace file is a file that contains a chronological sequence of records 
  4137. describing events which occurred during the application execution. The trace 
  4138. file contains the trace analysis information from your application.  This file 
  4139. can be displayed by diagrams. 
  4140.  
  4141.  
  4142. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4143.  
  4144. Correlation allows you to mark a point in a Call Nesting diagram, Execution 
  4145. Density diagram, or Time Line diagram and then find that same point in another 
  4146. Call Nesting diagram, Execution Density diagram, or Time Line diagram. 
  4147.  
  4148.  
  4149. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4150.  
  4151. Hot spots are areas within an application where a disproportionate amount of 
  4152. time was spent. Plus, this information helps to determine which functions 
  4153. caused those hot spots. 
  4154.  
  4155.  
  4156. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4157.  
  4158. An executable is a file of compressed images of an application that includes 
  4159. each of the application segments, such as code, data, and stack and control 
  4160. records that tell the loader how to tie all of the application segments 
  4161. together. 
  4162.  
  4163.  
  4164. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4165.  
  4166. Overhead is the time it takes to log events in the trace file. EXTRA measures 
  4167. its overhead and adjusts the timing information accordingly. 
  4168.  
  4169.  
  4170. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4171.  
  4172. Active time is the total time a function is on the call stack while its thread 
  4173. is executing. The time is displayed in the Statistical Summary and Dynamic Call 
  4174. Graph. 
  4175.  
  4176.  
  4177. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4178.  
  4179. To call is to bring a function into effect, such as specifying the entry 
  4180. conditions and then jumping to an entry point in the function. 
  4181.  
  4182.  
  4183. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4184.  
  4185. An annotation is a descriptive comment or an explanatory note that you can add 
  4186. to the Call Nesting diagram. 
  4187.  
  4188.  
  4189. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  4190.  
  4191. File access occurs when a given file is opened, read, written, or closed in an 
  4192. application.