home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: SysTools / SysTools.zip / pm25demo.exe / primast2.HLP (.txt) < prev    next >
OS/2 Help File  |  1999-01-29  |  113KB  |  3,649 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. About PRIORITY MASTER II ΓòÉΓòÉΓòÉ
  3.  
  4. CONGRATULATIONS! You have made an excellent decision to purchase a 
  5. revolutionary product which may set the user interface standards for all 
  6. priority preemptive operating systems. 
  7.  
  8. The novelty and usefulness of the concepts in the PRIORITY MASTER II 
  9. application are protected by the US Patent and Trademark Office # 5,428,789 
  10. which was granted on June 27, 1995. 
  11.  
  12. With PRIORITY MASTER II - YOU are in control of how you want your programs run. 
  13. You decide which application is more important and can prioritize applications 
  14. to YOUR needs. In heavy memory overload with multiple applications, the 
  15. performance benefit of using PRIORITY MASTER II can reduce processing times 
  16. significantly for background applications. 
  17.  
  18. PRIORITY MASTER II was designed to enhance the OS/2 operating system by giving 
  19. it what virtually all priority preemptive systems already have - the capability 
  20. to set the priority of user applications. 
  21.  
  22. PRIORITY MASTER II is a 32 Bit multi-threaded Presentation Manager application 
  23. which allows the USER to select the priority of an OS/2 Full Screen or Window. 
  24. Once the priority is selected, any programs that are run in that session will 
  25. start with the selected priority. The Find Program and Prioritize option allows 
  26. you to select the priority and run it using a standard Open File Dialog to 
  27. locate the executable. 
  28.  
  29. PRIORITY MASTER II is more than just a user friendly method to set the priority 
  30. of user applications. It is a total performance package designed to enhance 
  31. user response time and total system throughput in ALL scenarios. 
  32.  
  33. ScheduPerformance, Inc. Product Line 
  34.  
  35. The company markets the Priority Master application and multitasking related 
  36. consulting services. 
  37.  
  38. PRIORITY MASTER I (Discontinued - Information only) 
  39.  
  40. This product gives 32 priority levels for OS/2 programs in Full Screen or 
  41. Window mode in the Regular Class. The lowest level (Regular Class level 0) is 
  42. the SAME as DOS and Windows. The other 31 levels are higher than the DOS and 
  43. Windows but less than levels used by the LAN type programs. It is generally not 
  44. desirable to run Background OS/2 programs with default priorities on the same 
  45. priority level as DOS and Windows. The OS/2 operating system defaults to 
  46. placing them ALL on the same level and this gives you a way to increase the 
  47. priority of the well behaved OS/2 programs. This enables you to recover some of 
  48. the lost CPU cycles due to DOS pooling applications and actually run OS/2 
  49. applications which do real work. 
  50.  
  51. There are also 32 priority levels equal to and above the LAN in the Server 
  52. class and an additional 32 priority levels in the Time Critical Class. The Time 
  53. Critical Class was intended to be used for cases in which human life is at 
  54. stake and robotics/process control environments. There are a total of 96 
  55. priority levels. 
  56.  
  57. PRIORITY MASTER II 
  58.  
  59. This product contains everything in PRIORITY MASTER I and an additional 32 
  60. priority levels in the Idle Class and contains the auto scanning logic option 
  61. to find an Idle level. Using Idle Class programs insures "healthy" total system 
  62. performance, promotes the auto memory overload protection and insures zero 
  63. processor loss due to pooling applications in the Regular or higher classes. 
  64. There are a total of 128 priority levels. 
  65.  
  66. Why use the Priority Master Applications? 
  67.  
  68. The primary purpose for the ScheduPerformance, Inc product offerings is to 
  69. provide superior performance and control for OS/2 applications. 
  70.  
  71. Virtually every priority preemptive operating system provides some way for the 
  72. user to set the priority of their applications. The extremely powerful priority 
  73. preemptive scheduler on OS/2 always runs the highest priority thread in the 
  74. system. Any application that "locks on" to the CPU prevents all lower priority 
  75. applications from running. DOS and Windows applications inherently "lock on" to 
  76. the CPU and so the OS/2 scheduler gives them each a time-slice to execute and 
  77. then round-robins them. Unfortunately, DOS, Windows and default priority OS/2 
  78. applications all share the same level. That means that when you mix an OS/2 
  79. application in the background with DOS or Windows, the OS/2 application gets 
  80. very little CPU time. This has the effect of poor performance of background 
  81. OS/2 applications when DOS or Windows are running. All of ScheduPerformance, 
  82. Inc. products allow the user to raise the priority of the well behaved OS/2 
  83. applications and to give the remaining CPU cycles to the single and cooperative 
  84. tasking model applications. 
  85.  
  86.  
  87. ΓòÉΓòÉΓòÉ 2. Copyright and Trademark ΓòÉΓòÉΓòÉ
  88.  
  89. COPYRIGHT Information 
  90.  
  91. The PRIORITY MASTER II software is licensed property of ScheduPerformance, Inc. 
  92. and is copyright 1993 - 1999. 
  93.  
  94. ScheduPerformance, Inc. considers a single use of the product for the purchased 
  95. price and may at any time revoke the license without reimbursement. The license 
  96. may be revoked for abusing the product, intentionally attempting to hang a 
  97. machine, publicly speaking or writing anything against the product or any 
  98. reason so deemed by ScheduPerformance, Inc. 
  99.  
  100. PRIORITY MASTER II 
  101.  
  102. The PRIORITY MASTER II software and Online Help ("documentation") are licensed 
  103. property of ScheduPerformance, Inc. Use of the software and documentation 
  104. indicates your acceptance of the following LICENSE STATEMENT, DISCLAIMER OF 
  105. WARRANTY, and CHOICE OF LAW. 
  106.  
  107. The PRIORITY MASTER II application is an extremely powerful and revolutionary 
  108. product. Every effort has been made to provide a useful and powerful product at 
  109. an excellent bargain. Please read the entire contents of the Online Help 
  110. Information before proceeding. Your honesty will help ScheduPerformance, Inc. 
  111. stay in business. 
  112.  
  113. License Statement 
  114.  
  115. PRIORITY MASTER II ("this software and documentation") is licensed for the 
  116. exclusive use of the original purchaser ("you") for use on one computer system 
  117. only. 
  118.  
  119. This software is not copy protected. ScheduPerformance, Inc. authorizes you to 
  120. make any number of backup copies of PRIORITY MASTER II for archives only. 
  121.  
  122. PRIORITY MASTER II may be moved from one computer system to another computer 
  123. system so long as there is no possibility of its being used at two or more 
  124. locations at the same time. 
  125.  
  126. The documentation contained in the Online Help of all ScheduPerformance, Inc. 
  127. products may not copied or reproduced in whole or part, without prior written 
  128. permission. 
  129.  
  130. Disclaimer of Warranty 
  131.  
  132. ScheduPerformance, Inc. has made every reasonable effort to insure that the 
  133. PRIORITY MASTER II software and documentation is accurate and defect free. 
  134. However, given the enormous complexity involved in the dynamic prioritization 
  135. of a large potential number of concurrently executing applications, complete 
  136. testing is not possible. Therefore, you must be aware the PRIORITY MASTER II is 
  137. sold to you "as is", without warranty of any kind. The only exception is the 
  138. 30-day money back guarantee. 
  139.  
  140. IN NO EVENT SHALL ScheduPerformance, Inc. BE LIABLE OR RESPONSIBLE FOR ANY 
  141. PROBLEMS THAT ARISE FROM USING THE PRIORITY MASTER II SOFTWARE AND 
  142. DOCUMENTATION. 
  143.  
  144. Choice of Law 
  145.  
  146. This statement shall be construed, interpreted, and governed by the laws of the 
  147. state of Texas. 
  148.  
  149. TRADEMARK Information 
  150.  
  151. The following are trademarks of the International Business Machines Corporation 
  152.  
  153. OS/2 
  154.  
  155. Presentation Manager 
  156.  
  157. Other TRADEMARKS 
  158.  
  159. Windows is a trademark of the Microsoft Corporation. 
  160.  
  161.  
  162. ΓòÉΓòÉΓòÉ 3. Help Menu ΓòÉΓòÉΓòÉ
  163.  
  164. Use the choices on the Help pull-down to display: 
  165.  
  166. Help index 
  167.  
  168.  Displays the index of help menu. 
  169.  
  170. General Help 
  171.  
  172.  Provides detailed information on the types of help available and how to use 
  173. help. 
  174.  
  175. Using Help 
  176.  
  177.  Displays some information about PRIORITY MASTER II program. 
  178.  
  179. Keys Help 
  180.  
  181.  Displays a list of keys usage. 
  182.  
  183.  
  184. ΓòÉΓòÉΓòÉ 4. General Help ΓòÉΓòÉΓòÉ
  185.  
  186. Use this choice to obtain information on how to use the Help facility. 
  187.  
  188.  
  189. ΓòÉΓòÉΓòÉ 5. Extended ΓòÉΓòÉΓòÉ
  190.  
  191. Use this choice to get general help for the program. This provides general 
  192. information about the PRIORITY MASTER II program. 
  193.  
  194.  
  195. ΓòÉΓòÉΓòÉ 6. Tutorial of Keys ΓòÉΓòÉΓòÉ
  196.  
  197. Use this choice to see a list of keys and a description of the function of the 
  198. keys. 
  199.  
  200.  
  201. ΓòÉΓòÉΓòÉ 6.1. Key Assignments ΓòÉΓòÉΓòÉ
  202.  
  203. The list of keys is arranged in groups. 
  204.  
  205. ACCELERATOR KEYS 
  206.  
  207. HELP KEYS 
  208.  
  209.    F1 
  210.            Get help 
  211.  
  212.    Esc 
  213.            Previous Help Panel, or End help if only one panel 
  214.  
  215.    Alt 
  216.            Switch TO/OUT Action Bar 
  217.  
  218.    Alt+F4 
  219.            End help or End program 
  220.  
  221.   SYSTEM KEYS 
  222.  
  223.    Alt+Esc 
  224.            Switch to the next program, including full-screen programs 
  225.  
  226.    Ctrl+Esc 
  227.            Switch to the Task List 
  228.  
  229.   WINDOW KEYS 
  230.  
  231.    Underlined letter 
  232.            Move among the choices on the action bar and pull-downs submenu or 
  233.            execute the function chosen. 
  234.  
  235.    Alt+Underlined letter 
  236.            Execute the function chosen immediately 
  237.  
  238.  
  239. ΓòÉΓòÉΓòÉ 7. Index ΓòÉΓòÉΓòÉ
  240.  
  241. Use this choice to display the help index. 
  242.  
  243. The help index lists the titles of the help information that is available. 
  244.  
  245.  
  246. ΓòÉΓòÉΓòÉ 8. Information ΓòÉΓòÉΓòÉ
  247.  
  248. This dialog displays information about the application, such as version number 
  249. and copyright notice. 
  250.  
  251.  
  252. ΓòÉΓòÉΓòÉ 9. Information ΓòÉΓòÉΓòÉ
  253.  
  254. The OK button will close dialog box. 
  255.  
  256.  
  257. ΓòÉΓòÉΓòÉ 10. Options Menu ΓòÉΓòÉΓòÉ
  258.  
  259. The Options menu allows you to find a DOS or OS/2 program, start an OS/2 Full 
  260. Screen or Window, select information or warning messages and selectively Close 
  261. any generated programs at exit time. 
  262.  
  263. Auto Start Prioritized CMD.EXE 
  264.  
  265.  Automatically starts a prioritized CMD.EXE when PRIORITY MASTER II is loaded. 
  266.  
  267. Prioritized OS/2 Window/Full Screen 
  268.  
  269.  Starts another OS/2 Window with a standard command prompt 
  270.  
  271. Generate Multiple Sessions 
  272.  
  273.  Automatically generates up to 32 prioritized OS/2 Windows or Full Screens. 
  274.  
  275. Find Program and Prioritize 
  276.  
  277.  This will present a standard open file dialog to find an EXE and then run the 
  278. program at the priority in the main window title bar. 
  279.  
  280. Run Prioritized Programs From List 
  281.  
  282.  Runs stored program names created from the Find Program and Prioritize option. 
  283.  
  284. Run Prioritized Hot List 
  285.  
  286.  Runs stored programs that are frequently used. 
  287.  
  288. Auto Close Launched Programs on Exit 
  289.  
  290.  Any program started using this option will automatically close when Priority 
  291. Master II exits. 
  292.  
  293. Auto Close Program Status List 
  294.  
  295. Shows programs that were started using the Auto Close Launched Programs on Exit 
  296. Option. 
  297.  
  298. Overwrite Window Title with Priority 
  299.  
  300. Shows programs priority in the main window title by overwriting when the title 
  301. is over 60 characters. 
  302.  
  303. Information Messages 
  304.  
  305.  Provides information messages where appropriate in normal operation. 
  306.  
  307. Warning Messages 
  308.  
  309.  Provides warning messages where appropriate in normal operation. 
  310.  
  311. Warning Beeps 
  312.  
  313.  Select ON or OFF the warning beeps associated with some warning messages. 
  314.  
  315. Auto Recovery Window 
  316.  
  317.  Generates a Time Critical 31 OS/2 window when there are no Idle cycles for 15 
  318. seconds. 
  319.  
  320. Select User Option to Reset 
  321.  
  322.  Dialog box with options to reset to install state separated into groups for 
  323. easy selection. 
  324.  
  325. Banner 
  326.  
  327.  Test that appears in the main window when the program is started. 
  328.  
  329. Priority - Graphic Overview - Web Site 
  330.  
  331.  Quick overview for those who do not wish to read the Online Help in any detail 
  332. to get started. 
  333.  
  334. Exit 
  335.  
  336.  Terminates the program. Alternatively, F3 may be used. 
  337.  
  338.  
  339. ΓòÉΓòÉΓòÉ 11. Auto Start Prioritized OS/2 Window ΓòÉΓòÉΓòÉ
  340.  
  341. When set, this option will start a Prioritized OS/2 Window or Full Screen when 
  342. PRIORITY MASTER II is loaded. 
  343.  
  344. You must select the Activate the Session check box from the Misc Options group 
  345. to start the OS/2 Window or Full Screen. 
  346.  
  347. This is an independently controlled OS/2 Window or Full Screen that gives 
  348. immediate access to a prioritized session. 
  349.  
  350. The default Class is Server and the Level is 15. 
  351.  
  352.  The various options are explained as follows: 
  353.  
  354. Optional Title Identifier: 
  355.  
  356.  Choose up to 32 characters for the session title and it will appear in the 
  357. window title and in the CTRL+ESC Task list. You should always enter a title and 
  358. this title is saved and restored. 
  359.  
  360. Session Type: 
  361.  
  362.  Select OS/2 Window or Full Screen session. 
  363.  
  364. Execute in the. 
  365.  
  366.  Select Foreground if you want the generated OS/2 Window or Full Screen session 
  367. to have the input focus when Priority Master is started or select Background if 
  368. you want the Priority Master II program to have the input focus when it is 
  369. started. 
  370.  
  371. Priority/Override. 
  372.  
  373.  Select Set New Priority if you want the generated OS/2 Window or Full Screen 
  374. to be prompted for a title and priority when started. 
  375.  
  376.  Select Auto Increment if you want the generated OS/2 Window or Full Screen to 
  377. use the Class and Level stored plus one. 
  378.  
  379.  Select Auto Decrement if you want the generated OS/2 Window or Full Screen to 
  380. use the Class and Level stored minus one. 
  381.  
  382. Class. 
  383.  
  384.  Select Idle, Regular, Server or Critical for the Class. Additional information 
  385. about the Class is available from the main help menu. 
  386.  
  387. Level. 
  388.  
  389.  Select 0 to 31 for the Level. Higher levels execute ahead of lower levels. 
  390.  
  391. CMD Override. 
  392.  
  393.  The Warp 3 and Warp 4 CMD.EXE are the same ones that are shipped with their 
  394. corresponding versions. The installed CMD.EXE is the one on the boot drive in 
  395. the OS/2 directory. This is intended to give you a choice if you are using a 
  396. command replacement shell. 
  397.  
  398. Misc Options. 
  399.  
  400.  The Class and Level in the Title Bar is always selected so that you can know 
  401. that this is the startup window. 
  402.  
  403. Information Messages are global. 
  404.  
  405. Warning Messages are global. 
  406.  
  407. Auto Close Launched Programs on Exit closes the session when Priority Master II 
  408. exits and is specific to the this session. 
  409.  
  410. Activate the Session is required to be set if you want the session to be 
  411. started when Priority Master II is started. 
  412.  
  413. Prompt for Class and Level starts a dialog to set the title, class and level at 
  414. startup. 
  415.  
  416.  
  417. ΓòÉΓòÉΓòÉ 12. Prioritized OS/2 Window/Full Screen ΓòÉΓòÉΓòÉ
  418.  
  419. This option will start another OS/2 WINDOW or FULL SCREEN at the Class and 
  420. Level specified in the main window title bar or set a new Class and Level. 
  421.  
  422. Do NOT run any programs from the prioritized Widow or Full Screen especially in 
  423. the Critical Class. Use this option only to run commands recognized the CMD.EXE 
  424. processor. Use the Find Program an Prioritize or Run Prioritized Programs From 
  425. List to launch OS/2 programs. 
  426.  
  427. You may start as many PRIORITY MASTER OS/2 Window/Full Screen sessions as your 
  428. system can handle. Simply select the option again. 
  429.  
  430. For best results, increment the level by one for higher priority programs. This 
  431. will allow 32 levels per CLASS to prioritize the background programs. 
  432.  
  433. NOTE: Using the START command to start another Window or Full Screen session 
  434. will set the priority of the new Window or Full Screen to SAME priority as the 
  435. PRIORITY MASTER II window. However, it will NOT have the CLASS and LEVEL 
  436. identifiers on the top of the screen. Therefore, DO NOT use the START command 
  437. to avoid confusion. Instead, use the PRIORITY MASTER II to start ALL Full 
  438. Screen and Window sessions. 
  439.  
  440. The priority of a Foreground Window will always be higher than a Full Screen 
  441. when session in the default mode (ie REGULAR CLASS). A PRIORITY MASTER II 
  442. SERVER Class Level 31 Full Screen is still less than a PM foreground window. 
  443.  
  444. Applications using the PM Message Queue are inherently higher in priority than 
  445. applications that do not use the PM Message Queue. The PM Message Queue is 
  446. higher than SERVER class LEVEL 31. 
  447.  
  448. Use MYPRI (found in the PRIMAST2 directory of the installed drive) to verify 
  449. the priority of any given window. This will give the Class and Level associated 
  450. with the current window. 
  451.  
  452.  The various options are explained as follows: 
  453.  
  454. Sessions Type: 
  455.  
  456.  Select a Window or Full Screen. 
  457.  
  458. Execute in the: 
  459.  
  460.  Select foreground or background. 
  461.  
  462. Priority/Override: 
  463.  
  464.  Select Set New Priority if you want to change the priority. 
  465.  
  466.  The Auto Increment increment the level by one. 
  467.  
  468.  The Auto Decrement decreases the level by one. 
  469.  
  470. Class: 
  471.  
  472.  Select a class using the drop down box at the right side of the control. 
  473.  
  474. Level: 
  475.  
  476.  Select a level using the spin button at the right side of the control. 
  477.  
  478. CMD Override. 
  479.  
  480.  The Warp 3 and Warp 4 CMD.EXE are the same ones that are shipped with their 
  481. corresponding versions. The installed CMD.EXE is the one on the boot drive in 
  482. the OS/2 directory. This is intended to give you a choice if you are using a 
  483. command replacement shell. 
  484.  
  485. Misc Options: 
  486.  
  487.  Class and Level in title bar also displays in the CTRL+ESC Task list. 
  488.  
  489.  Information Messages display if any additional information is needed. 
  490.  
  491.  Warning Messages should always be turned on for a new user. 
  492.  
  493.  Auto Close Launched Programs on Exit will close the Window or Full Screen when 
  494. you close Priority Master II. You may start some sessions with this option ON 
  495. and some with the option turned OFF. All sessions started with Auto Exit ON are 
  496. tracked and checked when Priority Master II exits if either the Information or 
  497. Warning Messages are ON. 
  498.  
  499.  
  500. ΓòÉΓòÉΓòÉ 13. Generate Multiple Sessions ΓòÉΓòÉΓòÉ
  501.  
  502. Automatically generates up to 32 prioritized OS/2 Full Screens or Windows. 
  503.  
  504. The Starting Priority, Class, Class and Level in Title, Auto Increment, Same 
  505. Priority, Information Messages and Warning Messages options reset corresponding 
  506. options set from the Option Menu for the generated sessions. 
  507.  
  508.  The various options are explained as follows: 
  509.  
  510. Number of Sessions: 
  511.  
  512.  The maximum number of sessions that can be generated is 32. 
  513.  
  514. Starting Priority Level: 
  515.  
  516.  Generated sessions will begin with the selected level. 
  517.  
  518. Class: 
  519.  
  520.  Sets the Class in which the generated sessions will reside. 
  521.  
  522. Session Type: 
  523.  
  524.  Windows: 
  525.  
  526.  Selects all generated sessions to be prioritized OS/2 Windows. 
  527.  
  528.  Full Screens: 
  529.  
  530.  Selects all generated sessions to be prioritized OS/2 Full Screens. 
  531.  
  532. Last In Foreground: 
  533.  
  534.  Last session generated is automatically made the foreground session. 
  535.  
  536. Class and Level in Title: 
  537.  
  538.  Allows an extended title to appear in the main window title bar. 
  539.  
  540. Level Options: 
  541.  
  542.  Set Individually: 
  543.  
  544.  Presents a Dialog box to set the Class and Level individually. Also, it allows 
  545. an extended title for the generated session. 
  546.  
  547.  Auto Increment: 
  548.  
  549.  Automatically increments the level of each newly created session. 
  550.  
  551.  Same Priority: 
  552.  
  553.  All generated sessions will be of the same Class and Level. 
  554.  
  555.  Beep on Creation: 
  556.  
  557.  Each newly generated session will beep after creation. Large numbers of 
  558. generated sessions may be hidden behind other windows. This is a mechanism to 
  559. determine when all generated sessions have completed via when the beeping 
  560. stops. This is especially useful when generating large numbers of full screens. 
  561.  
  562.  Information: 
  563.  
  564.  Turns on information messages for the generated sessions and sets global 
  565. information messages on or off as selected. 
  566.  
  567.  Warning Messages: 
  568.  
  569.  Turns on warning messages for the generated sessions and sets global warning 
  570. messages on or off as selected. 
  571.  
  572.  
  573. ΓòÉΓòÉΓòÉ 14. Find Program and Prioritize ΓòÉΓòÉΓòÉ
  574.  
  575. A graphic sample on how to prioritize your programs can be found on the web at 
  576. http://www.prioritymaster.com/tour.html 
  577.  
  578. This option will present a standard open file dialog to locate a program and 
  579. then to run the program at the priority in the main window title bar. Note that 
  580. the Increment/Decrement option (or lack of) applies to the new program to be 
  581. started. 
  582.  
  583. You can get the pathname from any OS/2 applications that you normally launch 
  584. using an icon. Simply select the icon and open the Settings/Properties. The 
  585. pathname is on the first page of the notebook. However, if the 
  586. Settings/Properties do not show the executables path, you can add or run the 
  587. program because it actually runs from the PM Shell. 
  588.  
  589. This option will run ANY type of program, however, only the priority of OS/2 
  590. programs can be set. The selected file is verified to be an executable before 
  591. it is run. If the file selected is not a valid executable, then an error 
  592. message will be presented and and a graceful exit from only the option will 
  593. occur. 
  594.  
  595. If the file selected is a DOS program and the warning messages are turned ON, 
  596. then a warning message dialog will be presented. The program will still be run. 
  597.  
  598. The program to be run may be started in the Foreground or the Background as 
  599. desired. 
  600.  
  601. When the background option is specified, a message box will allow you to run 
  602. another OS/2 program using the current drive and directory. 
  603.  
  604. Note that some OS/2 programs (ie KLONDIKE.EXE) will take the foreground even 
  605. though a background was requested. The programs will also take the foreground 
  606. when started using the START command and specifying the background option. In 
  607. that event, the message box asking to run another OS/2 program may be behind 
  608. the foreground application. Simply move the foreground aside and select OK to 
  609. continue or CANCEL. 
  610.  
  611. OS/2 VIO programs will automatically have their priority class and level in 
  612. their window title and in the CTRL+ESC task list. 
  613.  
  614. OS/2 PM programs which do not set their window text title will have their 
  615. priority class and level in the window title and in the CTRL+ESC task list. 
  616.  
  617. Prioritizing command files: 
  618.  
  619. Select CMD.EXE in the OS/2 subdirectory in the drive letter that OS/2 was 
  620. installed onto for the executable. Use the name (or path+name if it is not in 
  621. your PATH line from CONFIG.SYS) in the parameters dialog. 
  622.  
  623.  
  624. ΓòÉΓòÉΓòÉ 15. Run Prioritized Programs From List ΓòÉΓòÉΓòÉ
  625.  
  626. NOTE: The demo only allows 6 entries and the retail version allows 128. 
  627.  
  628. Tip - This should be the most often used option of the program. 
  629.  
  630. Programs selected from the Find Program and Run Option build up to 128 entries 
  631. into the Run Prioritized Programs From List option. 
  632.  
  633. You may enter the same program multiple times with different priorities to 
  634. avoid having to set the priority. 
  635.  
  636. If you entered any data in the Parameters and/or Working Directory, then they 
  637. are stored internally and will be used when you select the program. 
  638.  
  639. You can double click the icon to start the prioritized application or just 
  640. double click the highlighted entry to run a single program. 
  641.  
  642. Multiple selection is also supported. The order in which you select the program 
  643. is the order in which the programs will be started. In most cases, it is faster 
  644. to start multiple programs using this feature than it is to start them from the 
  645. desktop. 
  646.  
  647. The number of items selected is displayed at the top of the dialog as a read 
  648. only field. 
  649.  
  650. The Scanning Logic is automatically disabled if two or more programs are 
  651. selected. This is done to prevent detection of lockout levels which is likely 
  652. due to the overlapping of processing involved in the launching of multiple 
  653. programs. 
  654.  
  655. The Scanning Logic can be used when launching a single program only if it is a 
  656. VIO or non-Presentation Manager(PM) program. This is because the system boost 
  657. applied to PM program is already higher than Server 31 and less than Time 
  658. Critical 0. However, if PRIORITY=ABSOLUTE is specified in the CONFIG.SYS, the 
  659. priority scanning logic will be active for launching a single PM program. 
  660.  
  661. Note that the state of the Scanning Logic is only reliable the first time a 
  662. selection is made. You must clear all selections and then the state is correct. 
  663.  
  664. The Processing field displays the program's path in launch order when launching 
  665. multiple programs at once. 
  666.  
  667. The selected program's icon will be displayed at the top of the dialog to 
  668. provide visual confirmation of the selected program. 
  669.  
  670.  The various options are explained as follows: 
  671.  
  672. Priority Options: 
  673.  
  674. Set Individually: 
  675.  
  676. Use this option if you want to run the program at different priority from the 
  677. one already stored in the entry. A dialog will prompt for the class, level and 
  678. optional title. The newly entered priority will automatically replace the old 
  679. one. This option is automatically disabled when two or more programs selected. 
  680.  
  681. Use Last Priority: 
  682.  
  683. Run the selected program at the previously stored priority Class and Level that 
  684. appears in the window. 
  685.  
  686. Sort List by: 
  687.  
  688.  Select program to sort the list by the program's name (not by path name). 
  689.  
  690.  Select Priority to sort the list by priority. 
  691.  
  692.  Select Higher on top for higher priorities or descending alphabetic sort. 
  693.  
  694.  Select Lower on top for lower priorities or ascending alphabetic sort. 
  695.  
  696.  Select Sort Now and the list will be resorted and the new list will overwrite 
  697. the old list in the window. 
  698.  
  699. Misc Options: 
  700.  
  701.  Auto Close Launched Programs on Exit will automatically close the session when 
  702. Priority Master II closes without any notification. You may start some sessions 
  703. with this option ON and some with the option turned OFF. All sessions started 
  704. with Auto Exit ON are tracked and checked when Priority Master II exits if 
  705. either the Information or Warning Messages are ON. 
  706.  
  707. Information MSG's: 
  708.  
  709. Turns ON information messages associated with the option. 
  710.  
  711. Warning Messages: 
  712.  
  713. Turns ON warning messages associated with the option. 
  714.  
  715. Pop Up on Startup will start the Run Prioritized Programs From List dialog when 
  716. Priority Master II is executed. You should use this option once you have 
  717. selected your programs to run using the Find Programs and Prioritize option. 
  718.  
  719. Push Buttons: 
  720.  
  721. Run: 
  722.  
  723. Run the selected program in the foreground. 
  724.  
  725. Run and Select Again: 
  726.  
  727. Run the selected program in the background and returns back to the dialog box 
  728. to run another program. You may select several programs and still use this 
  729. option. This is useful if you need a time delay between starting applications. 
  730.  
  731. Cancel or Exit: 
  732.  
  733. Use Cancel if you wish to cancel running a program with its stored priority, 
  734. use the button as an exit when only deleting entries from the list. 
  735.  
  736. Edit: 
  737.  
  738.  This activates another dialog that enables you to edit the class, level, 
  739. title, parameters and working directory. 
  740.  
  741. Delete Marked Entry: 
  742.  
  743. Deletes the selected entry from the list box. If you do not want to run any 
  744. programs, use the Cancel or Exit option. 
  745.  
  746. Selecting multiple entries can also be deleted all at once. 
  747.  
  748. Note that the entry will not be deleted until the PRIORITY MASTER II program 
  749. exits. You must select YES to saving the options to actually delete the entries 
  750. from the list. 
  751.  
  752. Add to Hot List: 
  753.  
  754. Adds selected entried directly to the Hot List. The current count of entries is 
  755. also displayed. 
  756.  
  757. Application Notes 
  758.  
  759. When launching several programs at once, do not attempt to minimize or maximize 
  760. any of the programs while other programs are being started. This could result 
  761. in one or more of the program titles being incorrect. 
  762.  
  763. Netscape is more likely than most programs to have it's title in other programs 
  764. main window title bar. Therefore, do not attempt anything until the other 
  765. programs have completed loading. 
  766.  
  767. This problem occurs because the CTRL+ESC task list entries are constructed 
  768. using a template of the previously launched program or the contents of Priority 
  769. Master II's main window. This appears to depend on a number of nondeterministic 
  770. factors. Sometimes, the window reporting is faster than the actual main 
  771. window's contents are reflected into the Switch List Entry. As a result, an 
  772. incorrect title is first displayed and then followed by the correct title. This 
  773. problem has been left to another release rather than delay the title reporting 
  774. for several seconds. 
  775.  
  776.  
  777. ΓòÉΓòÉΓòÉ 16. Edit Run Prioritized Programs From List Parameters ΓòÉΓòÉΓòÉ
  778.  
  779. This allows you to edit the the Run Prioritized Programs From List parameters 
  780.  
  781. This is useful if you want to change the priority, parameters or working 
  782. directory. The working directory path is verified to insure that a valid path 
  783. was entered. 
  784.  
  785. It is not neccessary to append a ":" to the working directory. 
  786.  
  787. Additional directories may be added. 
  788.  
  789. Note that the Dynamically Constructed Environment has the working directory 
  790. prepended to the major CONFIG.SYS settings. This includes the PATH, DPATH, 
  791. HELP, BOOKSHELF, and INCLUDE directories. This was provided to give better file 
  792. system performance, especially in systems with very long paths. 
  793.  
  794. Notes for using prioritized command files: 
  795.  
  796.  When you entered the program name, the path for CMD.EXE was entered. For 
  797. example, D:\OS2\CMD.EXE and at the Optional Parameters you entered the command 
  798. file (eg. F:\TOOLS\MYCMD.CMD). Now enter the path for the command file in the 
  799. working directory (eg. F:\TOOLS). 
  800.  
  801. Just a few application notes: 
  802.  
  803. Add the working directory for In-Joy. 
  804.  
  805. Add the working directory for PMMAIL (you will be prompted as a new user if you 
  806. do not). 
  807.  
  808. The -3 is automatically added for Netscape (this enables Version 3 features). 
  809. Also, add the web page address if you want to go directly to that web page. For 
  810. example, use -3 prioritymaster to engage Version 3 features and go directly to 
  811. the Priority Master II home page. Note that you do not have to enter the www or 
  812. the .com, that is done automatically. 
  813.  
  814.  
  815. ΓòÉΓòÉΓòÉ 17. Prioritized Hot List Programs ΓòÉΓòÉΓòÉ
  816.  
  817. NOTE: The demo only allows 3 entries and the retail version allows 10. 
  818.  
  819. This allows you to run up to 10 of your commonly used programs at once or 
  820. select from the list and run them in the order selected. 
  821.  
  822. The Pop Up on Start Up option will load this dialog when the program loads so 
  823. that the Hot List programs can be instantly accessed. 
  824.  
  825. Run All on Startup will start all of the Programs in the Hot List as soon as 
  826. Priority Master II is executed. You can also include Priority Master II to the 
  827. Start Up Folder and have all of the programs in the Hot List loaded while the 
  828. system is booting. Note that for unattended operation turn the warning and 
  829. information messages off so as to avoid having to respond to those panels. Once 
  830. the system is booted, turn this option off if you do not want to run the same 
  831. programs again. You should use this option once you have selected your programs 
  832. to run using the Find Programs and Prioritize option. 
  833.  
  834. This method is far faster than selecting the individual icons from the desktop 
  835. due to overlapping the of the loading process. 
  836.  
  837. Select an entry in the list and the program's icon will appear. 
  838.  
  839. The processing field displays programs when activated using the Run All, Run 
  840. Selected and Delete buttons. 
  841.  
  842.  The buttons are explained as follows: 
  843.  
  844. Run All: 
  845.  
  846. Run all of the programs contained in the list at once. 
  847.  
  848. Run Selected: 
  849.  
  850. Run the programs selected in the order selected. 
  851.  
  852. Cancel/Exit: 
  853.  
  854. Cancel or Exit the dialog. Changes are saved for the session and can be made 
  855. permanent when the program closes. 
  856.  
  857. Delete: 
  858.  
  859. Delete selected entries and multiple selections are supported. 
  860.  
  861. Edit: 
  862.  
  863. Edit the Hot List programs parameters. 
  864.  
  865. Store Prioritized Programs: 
  866.  
  867. Loads the list of stored prioritized programs so that you can select directly 
  868. from list. The list is automatically refreshed when you close the Run 
  869. Prioritized Programs from List dialog box. 
  870.  
  871.  
  872. ΓòÉΓòÉΓòÉ 18. Edit Hot List Programs Parameters ΓòÉΓòÉΓòÉ
  873.  
  874. This allows you to edit the the Hot List Programs parameters 
  875.  
  876. This is useful if you want to change the priority, parameters or working 
  877. directory. The working directory path is verified to insure that a valid path 
  878. was entered. 
  879.  
  880. It is not neccessary to append a ":" to the working directory. 
  881.  
  882. Additional directories may be added. 
  883.  
  884. Note that the Dynamically Constructed Environment has the working directory 
  885. prepended to the major CONFIG.SYS settings. This includes the PATH, DPATH, 
  886. HELP, BOOKSHELF, and INCLUDE directories. This was provided to give better file 
  887. system performance, especially in systems with very long paths. 
  888.  
  889. Notes for using prioritized command files: 
  890.  
  891.  When you entered the program name, the path for CMD.EXE was entered. For 
  892. example, D:\OS2\CMD.EXE and at the Optional Parameters you entered the command 
  893. file (eg. F:\TOOLS\MYCMD.CMD). Now enter the path for the command file in the 
  894. working directory (eg. F:\TOOLS). 
  895.  
  896. Just a few application notes: 
  897.  
  898. Add the working directory for In-Joy. 
  899.  
  900. Add the working directory for PMMAIL (you will be prompted as a new user if you 
  901. do not). 
  902.  
  903. The -3 is automatically added for Netscape (this enables Version 3 features). 
  904. Also, add the web page address if you want to go directly to that web page. For 
  905. example, use -3 prioritymaster to engage Version 3 features and go directly to 
  906. the Priority Master II home page. Note that you do not have to enter the www or 
  907. the .com, that is done automatically. 
  908.  
  909.  
  910. ΓòÉΓòÉΓòÉ 19. Auto Close Launched Programs on Exit ΓòÉΓòÉΓòÉ
  911.  
  912. Automatically Closes selected any sessions started when PRIORITY MASTER II 
  913. exits. Any sessions started while using this option will close when closing 
  914. PRIORITY MASTER II. You may start some sessions with this option ON and some 
  915. with the option turned OFF. All sessions started with Auto Exit ON are tracked 
  916. and checked when Priority Master II exits if either the Information or Warning 
  917. Messages are ON. 
  918.  
  919. Note that the normal OS/2 pop-up which asks you to verify that you want to 
  920. close the the session with an active program will NOT be displayed. Using this 
  921. option on all of your programs will give you a much faster shutdown. 
  922.  
  923. Note that sessions started using the Find Program and Prioritize or the Run 
  924. Prioritized Programs From List need to have this option ON to display their 
  925. priorities in the TASK LIST (CTRL+ESC) and the Main Window Title. 
  926.  
  927. Not using this option allows you to close the PRIORITY MASTER II application 
  928. and leave the generated Full Screens or Windows running. 
  929.  
  930. The Information Messages or Warning messages must be ON when using the Auto 
  931. Close Launched Programs on Exit option and exiting Priority Master II to search 
  932. for active launched programs. Otherwise, the exit will close all programs 
  933. without notification. 
  934.  
  935. In general, do not keep any open Full Screens or Windows that do not have 
  936. applications running in them because they consume memory. 
  937.  
  938.  
  939. ΓòÉΓòÉΓòÉ 20. Auto Close Program Status List ΓòÉΓòÉΓòÉ
  940.  
  941. This dialog is intended to allow you you to view the program names and icons of 
  942. the programs that were started with the Auto Close Launched Programs on Exit 
  943. option specified so that you may open the program to save options before you 
  944. exit the Priority Master II application. 
  945.  
  946. Most programs are OK to just close them. However, new programs may need their 
  947. option setting saved at least once. You may start some sessions with this 
  948. option ON and some with the option turned OFF. All sessions started with Auto 
  949. Exit ON are tracked and checked when Priority Master II exits if either the 
  950. Information or Warning Messages are ON. 
  951.  
  952. Note that this dialog will be presented if the Information or Warning Messages 
  953. are ON and you attempt to exit the Priority Master II application with one or 
  954. more programs started with the Auto Close Launched Programs on Exit option 
  955. turned ON. Once you become familiar with this option, turn off this Information 
  956. and Warning Messages so that you can close a large group of programs all at 
  957. once without the usual OK to close message for every program running that the 
  958. PM Shell presents at shutdown. This will give you faster shutdowns. 
  959.  
  960. This panel contains: 
  961.  
  962.  The number of applications started using the Auto Close Launched Programs on 
  963. Exit option. 
  964.  
  965.  The program's path. 
  966.  
  967.  The program's Class. 
  968.  
  969.  The program Level. 
  970.  
  971.  The program's icon. 
  972.  
  973.  If there are more than 5 entries, SCROLL UP and SCROLL DOWN are enabled. 
  974.  
  975. Note: Please wait for all of the entries to be presented before selecting the 
  976. SCROLL UP/SCROLL DOWN buttons. If you press them while entries are being 
  977. displayed, the mouse clicks can get lost. Simply scroll back up to the 1st 
  978. entry and it will be reset. 
  979.  
  980.  
  981. ΓòÉΓòÉΓòÉ 21. Overwrite Window Title with Priority ΓòÉΓòÉΓòÉ
  982.  
  983. This option shows the priority in the main window and the CTRL+ESC Task List 
  984. when the title length is over 60 characters. 
  985.  
  986. The Auto Close Launched Programs on Exit option must be ON to use this option. 
  987. OS/2 allocates 60 characters for the main window title by default. The program 
  988. can increase this limit (MAXNAMEL), however only the first 60 characters will 
  989. appear in the CTRL+ESC Task list. 
  990.  
  991. This option can be turned OFF and the full main window title will appear 
  992. without the priority. 
  993.  
  994. If the main window is less than 60 characters and the Auto Close Launched 
  995. Programs on Exit is ON, then the priority will appear in the main window title 
  996. by default. 
  997.  
  998. If the option was ON and the main window title length was over 60 characters 
  999. and then turned OFF, the first 60 characters of the main window will be 
  1000. restored and future main window updates over characters will appear in their 
  1001. complete form. 
  1002.  
  1003. Application Notes 
  1004.  
  1005. Netscape will not update the title with the Class and Level while the Bookmarks 
  1006. are open. Only the Bookmarks Class, Level and/or title can be updated at that 
  1007. time. To resume the title update, close the Bookmarks. 
  1008.  
  1009.  
  1010. ΓòÉΓòÉΓòÉ 22. Dynamically Change Program Priority and/or Title ΓòÉΓòÉΓòÉ
  1011.  
  1012. WARNING - Changing the programs priority may lead to unpredictable results. 
  1013. Therefore, it is highly reccommended that you select the Pre-Check Modify for 
  1014. any program that you are not certain about. This check should be performed at 
  1015. least once for any program and you should follow the reccommendation provided! 
  1016.  
  1017. This displays the number of programs started, their program paths, priority and 
  1018. icon. 
  1019.  
  1020. If the Modify button is enabled, then the program priority can be modified. 
  1021. This applies only to OS/2 Presentation Manager(PM) programs. 
  1022.  
  1023. If the Modify button is disabled, then the program's priority can not be 
  1024. dynamically changed. 
  1025.  
  1026. The new priority is reflected in the programs main window title bar and/or the 
  1027. CTRL=ESC Task List. 
  1028.  
  1029. The Pre-Check Modify scans the threads to determine if multiple levels and/or 
  1030. classes are used by the program. Please follow the reccommendation that is 
  1031. provided. This option is the first of it's kind. A ScheduPerformance, Inc. 
  1032. exclusive! We have always said the dynamic prioritization is dangerous. Not 
  1033. anymore - Now you are in CONTROL of your machine! 
  1034.  
  1035. Note: Please wait for all of the entries to be presented before selecting the 
  1036. SCROLL UP/SCROLL DOWN buttons. If you press them while entries are being 
  1037. displayed, the mouse clicks can get lost. Simply scroll back up to the 1st 
  1038. entry and it will be reset. 
  1039.  
  1040.  
  1041. ΓòÉΓòÉΓòÉ 23. Set Foreground Program Priority ΓòÉΓòÉΓòÉ
  1042.  
  1043. This option is intended for use on a file or application sever that is using 
  1044. PRIORITY=ABSOLUTE in the CONFIG.SYS. 
  1045.  
  1046. This acts just like the foreground boost that OS/2 gives to the foreground 
  1047. application in default configuration. 
  1048.  
  1049. This option is significantly more powerful because it gives the user 96 
  1050. priority levels from which to assign the power of the foreground boost. 
  1051. Standard OS/2 gives only one priority level. 
  1052.  
  1053. CAUTION: Do set to any Time Critical priority levels unless you are certain 
  1054. that there are no compute bound OS/2 programs launched from the Run Prioritized 
  1055. Programs from List Option. 
  1056.  
  1057. There are very few 100% compute bound OS/2 programs. A close example is the 
  1058. KLONDIKE program in auto-play mode. While it is playing, all keyboard and mouse 
  1059. inputs would be lost if at Time Critical priority. The application actually 
  1060. pauses after each game, so control could be diverted away to another program at 
  1061. that time. 
  1062.  
  1063. This option can be used on default systems. The system installation gives all 
  1064. of the boosts by default. If you use this option, it must be set to Time 
  1065. Critical Class to be effective, since the PM message boost is above Server 31 
  1066. and below Time Critical level zero. 
  1067.  
  1068.  
  1069. ΓòÉΓòÉΓòÉ 24. Information Messages ΓòÉΓòÉΓòÉ
  1070.  
  1071. This option provides relevant information message boxes where it may be needed 
  1072. when selecting any of the options. 
  1073.  
  1074. The intent of the information message is to provide the USER with relevant 
  1075. information to allow an intelligent decision when selecting the various 
  1076. options. You may still do whatever you want to do. The difference is that you 
  1077. will know in advance BEFORE you take the risk. The information contained in the 
  1078. information messages are simply not available anywhere else. 
  1079.  
  1080. This is intended to be a self teaching method to understand the various 
  1081. priority Classes and Levels in relation to the rest of the system. Performance 
  1082. implications are also presented. 
  1083.  
  1084. The Information Messages or Warning messages must be ON when using the Auto 
  1085. Close Launched Programs on Exit option and exiting Priority Master II to search 
  1086. for active launched programs. Otherwise, the exit will close all programs 
  1087. without notification. 
  1088.  
  1089.  
  1090. ΓòÉΓòÉΓòÉ 25. Warning Messages ΓòÉΓòÉΓòÉ
  1091.  
  1092. This option provides relevant warning message boxes where it may be needed when 
  1093. selecting any of the options. 
  1094.  
  1095. The intent of the warning message is to provide the USER with relevant 
  1096. information to allow an intelligent decision when selecting the various 
  1097. options. You may still do whatever you want to do. The difference is that you 
  1098. will know in advance BEFORE you take the risk. The information contained in the 
  1099. warning messages are simply not available anywhere else. 
  1100.  
  1101. This is intended to be a self teaching method to understand the various 
  1102. priority Classes and Levels in relation to the rest of the system. Performance 
  1103. implications are also presented. 
  1104.  
  1105. The Information Messages or Warning messages must be ON when using the Auto 
  1106. Close Launched Programs on Exit option and exiting Priority Master II to search 
  1107. for active launched programs. Otherwise, the exit will close all programs 
  1108. without notification. 
  1109.  
  1110.  
  1111. ΓòÉΓòÉΓòÉ 26. Warning Beeps ΓòÉΓòÉΓòÉ
  1112.  
  1113. This option allows you to turn on or off the warning beeps associated with some 
  1114. of the warning messages. In cases where there a lot of people in a small area, 
  1115. beeps can be annoying. 
  1116.  
  1117. Beeps can be turned ON even though the warning messages are turned OFF. 
  1118.  
  1119. If there is a check mark next to this item the beeps will be turned ON. 
  1120.  
  1121.  
  1122. ΓòÉΓòÉΓòÉ 27. Auto Recovery Window ΓòÉΓòÉΓòÉ
  1123.  
  1124. This is designed to allow you to recovery from an otherwise "hung" system. 
  1125.  
  1126. This option is for advanced users only. Please do not change any of the default 
  1127. values because it may generate an invalid time critical recovery when a hang 
  1128. condition does not exist. Ask yourself these questions: 
  1129.  
  1130. Any PM programs launched with Run Prioritized Programs from List will 
  1131. automatically be reduced to Server 31. You may change the priority after the 
  1132. possible hang has been resolved. 
  1133.  
  1134. A list of running programs will be presented so that you may use the KILL 
  1135. utility in the install drive and directory where Priority Master II was loaded. 
  1136. Try using the CTRL+ESC first. If the system does not respond, then KILL the 
  1137. highest priority PID first and the system still does not respond, continue down 
  1138. the list in decreasing priority order until the system is responsive. 
  1139.  
  1140. Have you started any PM programs in the IDLE class and then started any 
  1141. programs that may take up all of the CPU cycles? 
  1142.  
  1143. Is you system very overloaded to the point where performance is sluggish and 
  1144. you have swapfile over 20MB? 
  1145.  
  1146. If you think that you know what you are doing and really want to increase the 
  1147. default threshold to to a higher level, then OK. 
  1148.  
  1149. This feature is really meant for for severely overloaded systems (ie i386/i486 
  1150. or equivalent) with large swapfiles. 
  1151.  
  1152. If a Time Critical window keeps coming up on your desktop, then you should find 
  1153. the priority of the program that is causing the problem. Use the Utilities from 
  1154. the main window or F4. Press the F4 a few times and see which program is always 
  1155. in the list. Correct the program if possible. If it necessary to have this 
  1156. program, then adjust the Auto Recovery Window priority to be one level higher 
  1157. that the priority of the program which is always in the Ready state. 
  1158.  
  1159.  The various options are explained as follows: 
  1160.  
  1161. Class: 
  1162.  
  1163.  The higher the class the less likely that the emergency recovery time critical 
  1164. 31 window will be generated. 
  1165.  
  1166. Level: 
  1167.  
  1168. Higher levels will decrease the probability of the generated 
  1169.  
  1170. Delay: 
  1171.  
  1172. This is the amount of time that you think on you system that the system is 
  1173. hung. Please do not values less than 15 seconds, since that is about the 
  1174. correct time to use on a normal system. 
  1175.  
  1176. General information: 
  1177.  
  1178. This option will start a watchdog background process to check for idle cycles. 
  1179. If more than the specified number of seconds elapse without any idle cycles, 
  1180. then a Time Critical 31 (highest level in the system) OS/2 window will be 
  1181. generated. 
  1182.  
  1183. This does not mean that the system is hung, it means that it MAY be hung. It 
  1184. does mean that there have been no idle cycles for at least 15 seconds. It is 
  1185. suggested that if the program is not a Presentation Manager program, then start 
  1186. the program in the IDLE Class. 
  1187.  
  1188. If the the recovery window was generated due to a pending system hang, then the 
  1189. PM Message Queue is inoperative due to a PM program in the IDLE Class with a 
  1190. compute bound program in the REGULAR or higher Classes. 
  1191.  
  1192. First, determine if this is the cause. Do the following: 
  1193.  
  1194. On the PRIORITY MASTER II RECOVERY WINDOW go to the install drive letter and 
  1195. subdirectory (ie. d:\primast2). 
  1196.  
  1197. d:\primast2]pstat2 
  1198.  
  1199. d:\primast2]type pstat2.sup 
  1200.  
  1201. If there are any PM programs in the IDLE Class or any labeled (kernel), then 
  1202. you must choose one of them to be killed. 
  1203.  
  1204. d:\primast2]KILL Process 
  1205.  
  1206. This will recover your system. However, you may have ignored the warnings and 
  1207. can prevent this in the future by setting all DOS and Window's Setting to a 
  1208. maximum of 99% Idle Sensitivity. 
  1209.  
  1210.  
  1211. ΓòÉΓòÉΓòÉ 28. Select User Options to Reset ΓòÉΓòÉΓòÉ
  1212.  
  1213. Select stored options to reset to the installation state. This is intended to 
  1214. help the user in the event that the option settings become corrupt or if the 
  1215. user would like to refresh only a subset of the available options. 
  1216.  
  1217. A warning message is generated if you select Reset All or the Stored 
  1218. Prioritized programs to allow you to abort before deleting them. 
  1219.  
  1220.  The various options are explained as follows: 
  1221.  
  1222. Internal Counters/Intervals: 
  1223.  
  1224.  This includes the various intervals and counters used in the Utilities Option 
  1225. for the various Idle Cycle utilities and the Auto Compute Bound reporting. 
  1226.  
  1227. Stored Prioritized Programs: 
  1228.  
  1229.  This includes all of the program names and priorities that were stored using 
  1230. the Find Programs and Prioritize option. Use this with care since it does 
  1231. require a little effort to enter the programs again. 
  1232.  
  1233. Text Color: 
  1234.  
  1235.  The color of the text that appears in the main window. 
  1236.  
  1237. Background Color: 
  1238.  
  1239.  The color of the background that appears in the main window. 
  1240.  
  1241. Font: 
  1242.  
  1243.  The font type and point of the text that appears in the main window. 
  1244.  
  1245. Information Messages: 
  1246.  
  1247.  The Global Information Messages. It is strongly recommended that you leave 
  1248. this ON for about the first month or so. Additional information is available at 
  1249. this hypertext link: Information Messages 
  1250.  
  1251. Warning Messages: 
  1252.  
  1253.  The Global Warning Messages. It is strongly recommended that you leave this ON 
  1254. for about the first month or so. Additional information is available at this 
  1255. hypertext link: Warning Messages 
  1256.  
  1257. Warning Beep: 
  1258.  
  1259.  Audible alarm for the warning messages. Additional information is available at 
  1260. this hypertext link: Beep 
  1261.  
  1262. Generate Multiple Win/Full: 
  1263.  
  1264.  All of the options associated with Generate Multiple Windows or Full Screens 
  1265. dialog including the number type, priority and misc. options. Additional 
  1266. information is available at this hypertext link: Generate Multiple Sessions 
  1267.  
  1268. Set Foreground Class/Level/Activate: 
  1269.  
  1270. Resets the Class, Level and activate status to it's default. Additional 
  1271. information is available at this hypertext link: Set Foreground Program 
  1272. Priority 
  1273.  
  1274. Search String: 
  1275.  
  1276.  The search string in the Window_Controls Option. 
  1277.  
  1278. Save Text Drive Letter: 
  1279.  
  1280.  The last drive letter used when saving the window text to a file. 
  1281.  
  1282. Find and Prioritize Drive Letter: 
  1283.  
  1284.  The drive letter stored from the last Find Programs and Prioritize option. 
  1285.  
  1286. Auto Close Launched Programs on Exit: 
  1287.  
  1288.  Automatically close programs when Priority Master II exits. Additional 
  1289. information is available at this hypertext link: Auto Close Launched Programs 
  1290. on Exit 
  1291.  
  1292. Auto Recovery: 
  1293.  
  1294.  The Auto Recovery Window and the dialog options. Additional information is 
  1295. available at this hypertext link: Auto Recovery Window 
  1296.  
  1297. Class: 
  1298.  
  1299.  The Class that appears in the main window. Additional information is available 
  1300. at this hypertext link: Class 
  1301.  
  1302. Level: 
  1303.  
  1304.  The Level that appears in the main window. Additional information is available 
  1305. at this hypertext link: Level 
  1306.  
  1307. Auto Inc/Dec Level: 
  1308.  
  1309.  The default is not to automatically increment or decrement the priority level. 
  1310. Additional information is available at this hypertext link: Auto Increment Auto 
  1311. Decrement 
  1312.  
  1313. Auto Scanning: 
  1314.  
  1315.  The Auto Scanning Utility and the dialog options. Advanced users only. 
  1316. Additional information is available at this hypertext link: Auto Scanning 
  1317.  
  1318. Dynamic Modify Pre-Check: 
  1319.  
  1320. Resets the Pre-Check Modify option on the Dynamiclly Change Program Priority 
  1321. and/or Title. Additional information is available at this hypertext link: 
  1322. Dynamically Change Program Priority and/or Title 
  1323.  
  1324. Push Buttons: 
  1325.  
  1326. The push button operate in the standard manner. 
  1327.  
  1328. Reset All will reset all options. This will purge all stored programs and their 
  1329. environments. Use with CAUTION! 
  1330.  
  1331.  
  1332. ΓòÉΓòÉΓòÉ 29. Banner ΓòÉΓòÉΓòÉ
  1333.  
  1334. This is the banner that appears in the main window title. The default is ON so 
  1335. that you at least see it once. 
  1336.  
  1337. This gives the version number, patent number, date and time. 
  1338.  
  1339. The US Patent number is displayed to discourage piracy. 
  1340.  
  1341.  
  1342. ΓòÉΓòÉΓòÉ 30. Graphic Overview - Web Site ΓòÉΓòÉΓòÉ
  1343.  
  1344. This option is provided to give a quick overview of the OS/2 scheduling 
  1345. policies and how the PRIORITY MASTER II program interacts with these concepts. 
  1346.  
  1347. Link directly to the Priority Master II home page by selecting the large button 
  1348. at the top. Make sure that you start your internet provider. 
  1349.  
  1350. Additional information on OS/2's four Classes and the types of programs that 
  1351. should be in each of the four classes is available on a per Class basis. 
  1352.  
  1353. Hypertext links for the four CLASSes in order of increasing priority are: 
  1354.  
  1355. IDLE 
  1356.  
  1357. REGULAR 
  1358.  
  1359. SERVER 
  1360.  
  1361. CRITICAL 
  1362.  
  1363. NOTE: To return here after viewing a Class description, press ESC and view the 
  1364. other Classes. 
  1365.  
  1366. Additional hypertext information on OS/2's scheduling policies is available for 
  1367. the following topics: 
  1368.  
  1369. Scheduling Considerations 
  1370.  
  1371. Dos and Windows Prioritization 
  1372.  
  1373. Questions and Answers 
  1374.  
  1375. Tips 
  1376.  
  1377. Other Hypertext Information: 
  1378.  
  1379. Sample Session 
  1380.  
  1381. Virtual Function Keys 
  1382.  
  1383. Uses for Priority Master II 
  1384.  
  1385. Support 
  1386.  
  1387.  
  1388. ΓòÉΓòÉΓòÉ 31. Exit ΓòÉΓòÉΓòÉ
  1389.  
  1390. This option ends the PRIORITY MASTER II application. This is the same as 
  1391. closing the window by double clicking on the top left corner. If you have 
  1392. specified Auto-Close on Exit and have started any PRIORITY MASTER II OS/2 
  1393. Window or Full Screens, then a dialog box with a warning will be presented. In 
  1394. general, you should close the applications individually before you exit the 
  1395. PRIORITY MASTER II program. 
  1396.  
  1397. This does not apply to the Run PULSE Utility option. It is safe to close the 
  1398. PRIORITY MASTER II program after starting the PULSE program from the Utility 
  1399. Menu option while using the Auto-Close on Exit option. 
  1400.  
  1401.  
  1402. ΓòÉΓòÉΓòÉ 32. Set Class and Level ΓòÉΓòÉΓòÉ
  1403.  
  1404. The program's path and icon is displayed for visual confirmation. 
  1405.  
  1406. The Idle class is automatically disabled for PM programs. 
  1407.  
  1408. Class 
  1409.  
  1410. Select a class that will be appropriate to your needs. The lowest level is 
  1411. idle. This is followed by Regular, Server, and Time Critical (or just Critical) 
  1412. classes. 
  1413.  
  1414. Level 
  1415.  
  1416. Use the slider to set the priority level that you want to run the program. 
  1417. Higher levels execute before lower levels and programs of the same level get 
  1418. the CPU in a round-robin fashion. 
  1419.  
  1420. The priority (Class and Level) that you select will be pre-scanned to insure 
  1421. that the priority is high enough to execute without delay at the time that the 
  1422. program is launched when launching a single program. 
  1423.  
  1424.  
  1425. ΓòÉΓòÉΓòÉ 33. Set Parameters and/or Environment ΓòÉΓòÉΓòÉ
  1426.  
  1427. This functions similar to the Settings/Properties option on desktop for a 
  1428. WorkPlace Shell Object (icon). 
  1429.  
  1430. The program's path and icon is displayed for visual confirmation. 
  1431.  
  1432. If you want to prioritize a command file, then select CMD.EXE from the OS2 
  1433. subdirectory of the install drive letter. Be sure add the path and name of the 
  1434. command file in the Parameters section. 
  1435.  
  1436. If you want to prioritize a desktop object, open the Settings/Properties of the 
  1437. icon now. Use CTRL+INS to copy the text of the parameters and SHIFT+INS to 
  1438. paste them into the parameters of the dialog. Do this for the working directory 
  1439. if it is present. 
  1440.  
  1441. Parameters 
  1442.  
  1443. Include any parameters that are needed to start the program. Refer to the 
  1444. documentation included with your program. If you are entering a program from 
  1445. the desktop, then refer to its setting page for the correct parameters. 
  1446.  
  1447. Working Directory 
  1448.  
  1449. Most programs use the system default paths or enter directives directly into 
  1450. your CONFIG.SYS to support environment variables. However, they may also 
  1451. specify a working directory for HELP files, temporary files and the like. Refer 
  1452. to the documentation included with your program. If you are entering a program 
  1453. from the desktop, then refer to its Settings/Properties page for the correct 
  1454. Working Directory. 
  1455.  
  1456. Just a few application notes: 
  1457.  
  1458. The working directory for In-Joy is needed and supplied. 
  1459.  
  1460. The working directory for PMMAIL is needed and supplied (you will be prompted 
  1461. as a new user if you do not). 
  1462.  
  1463. A -3 is automatically added to the parameters for Netscape (this enables 
  1464. Version 3 features) Also, add the web page address if you want to go directly 
  1465. to that web page. For example, use -3 prioritymaster to engage Version 3 
  1466. features and go directly to the Priority Master II home page. Note that you do 
  1467. not have to enter the www or the .com, that is done automatically. 
  1468.  
  1469.  
  1470. ΓòÉΓòÉΓòÉ 34. Find and Run OS/2 Programs ΓòÉΓòÉΓòÉ
  1471.  
  1472. Notes for using prioritized command files: 
  1473.  
  1474.  Change the Open Filename to *.CMD if you need to search for command file. 
  1475.  
  1476.  When you enter the program name, use the path for CMD.EXE. For example, 
  1477. D:\OS2\CMD.EXE and at the next dialog - Optional Parameters you enter the 
  1478. command file (eg. F:\TOOLS\MYCMD.CMD). Later enter the path for the command 
  1479. file in the working directory (eg. F:\TOOLS) at the EDIT function of the Run 
  1480. Prioritized Programs From List. 
  1481.  
  1482. General Information about this dialog: 
  1483.  
  1484. If the drive letter that you want to select a program from is not displayed, 
  1485. then click the right most "down arrow" to view all of the configured drive 
  1486. letters and highlight one entry by clicking it with the left mouse button. 
  1487.  
  1488. The last used drive letter is stored for the next time you use the Find Program 
  1489. and Prioritize Option to make selecting programs from the same drive letter 
  1490. easier. 
  1491.  
  1492. Next select a directory entry and continue selecting directory entries until 
  1493. the program that you want to run appears on the left side of the dialog under 
  1494. File heading. 
  1495.  
  1496. Now use the left mouse button to select the executable. You may have to use the 
  1497. scroll down arrow to view the program that you want to prioritize. 
  1498.  
  1499. Finally, select the OK button. 
  1500.  
  1501. Note: Only OS/2 programs can be prioritized and the executables are pre-checked 
  1502. prior to starting. 
  1503.  
  1504.  
  1505. ΓòÉΓòÉΓòÉ 35. Save Window Contents ΓòÉΓòÉΓòÉ
  1506.  
  1507. The last used drive letter is stored for the next time you use the Find Program 
  1508. and Prioritize Option to make selecting programs from the same drive letter 
  1509. easier. 
  1510.  
  1511. If the drive letter that you want to select a program from is not displayed, 
  1512. then click the right most "down arrow" to view all of the configured drive 
  1513. letters and highlight one entry by clicking it with the left mouse button. 
  1514.  
  1515. Next select a directory entry and continue selecting directory entries until 
  1516. the program that you want to run appears on the left side of the dialog under 
  1517. File heading. 
  1518.  
  1519. Now use the left mouse button to select the executable. You may have to use the 
  1520. scroll down arrow to view the program that you want to prioritize. 
  1521.  
  1522. Finally, select the OK button. 
  1523.  
  1524. Note: Only OS/2 programs can be prioritized and the executables are pre-checked 
  1525. prior to starting. 
  1526.  
  1527.  
  1528. ΓòÉΓòÉΓòÉ 36. Set Interval ΓòÉΓòÉΓòÉ
  1529.  
  1530. Select the amount of time that you want between when starting one occurrence 
  1531. and then starting another occurrence of this option. 
  1532.  
  1533.  
  1534. ΓòÉΓòÉΓòÉ 37. Class Menu ΓòÉΓòÉΓòÉ
  1535.  
  1536. The Options menu allows you to select a Class for an OS/2 Full Screen or 
  1537. Window. 
  1538.  
  1539. Note that option values are automatically saved and restored. 
  1540.  
  1541. Idle 
  1542.  
  1543.  Starts an Idle Class OS/2 Foreground Full Screen or Window (N/A) 
  1544.  
  1545. Regular 
  1546.  
  1547.  Starts a Regular Class OS/2 Foreground Full Screen or Window 
  1548.  
  1549. Server 
  1550.  
  1551.  Starts a Server Class OS/2 Foreground Full Screen or Window 
  1552.  
  1553. Time Critical 
  1554.  
  1555.  Starts a Time Critical Class OS/2 Foreground Full Screen or Window 
  1556.  
  1557.  
  1558. ΓòÉΓòÉΓòÉ 37.1. Idle Class ΓòÉΓòÉΓòÉ
  1559.  
  1560. This option selects an IDLE CLASS Window or Full Screen. PRIORITY MASTER II 
  1561. checks background CPU cycles to determine if the program can run. If the level 
  1562. is too low to execute, the lowest available level may be automatically 
  1563. determined or a default to Regular Class will be presented when there are no 
  1564. Idle cycles available. 
  1565.  
  1566. If there are no idle cycles available at the requested level, then a pop-up 
  1567. will ask if you want PRIORITY MASTER II to find the first available level. 
  1568. Select OK to engage the auto scanning logic. 
  1569.  
  1570. Applications run in the Idle Class may NEVER get any execution time. Therefore, 
  1571. run only applications of very low importance in the Idle Class. 
  1572.  
  1573. For best results, increment the level by one for higher priority programs. This 
  1574. will allow 32 levels per CLASS to prioritize the background programs. Note that 
  1575. IDLE CLASS programs MAY NOT RUN if there are DOS or WINDOWS programs running. 
  1576.  
  1577. If you can successfully start an IDLE class Window or Full Screen, be sure to 
  1578. CLOSE the application before running any DOS or WINDOWS programs that are 
  1579. compute bound (ie. use up all available CPU cycles). 
  1580.  
  1581. Note that there is no concept of Foreground priority boost for the Idle Class. 
  1582. It will only get CPU cycles when there are no Regular, Server, or Time-Critical 
  1583. Class applications running. 
  1584.  
  1585. If you have started a PRIORITY MASTER II Full Screen or Window session and then 
  1586. start a DOS Window or Full Screen session before closing the IDLE class 
  1587. session, then the Idle Class Full Screen may appear dead. The session can not 
  1588. be closed. Don't worry, this situation is normal. The priority is just too low 
  1589. to execute. The MAXWAIT parameter in CONFIG.SYS does not work on Idle Class 
  1590. threads in OS/2 2.0 and 2.1. The Full Screen or Window will respond to keyboard 
  1591. input when Closing some or all of the DOS and/or Windows sessions and any 
  1592. compute bound applications. 
  1593.  
  1594. Note that applications run in the Idle Class are likely to "freeze up" for 
  1595. small periods of time in medium to heavy multitasking of other OS/2 Regular 
  1596. Class or higher applications. 
  1597.  
  1598. It is important for OS/2 to have occasional spare Idle cycles, especially on 
  1599. systems with 16MB or less. The less memory that you have, the more important 
  1600. that it becomes. This is because OS/2 priority preemptive scheduler performs 
  1601. specialized "house cleaning" functions when there are no threads to run. These 
  1602. functions may have patents pending on them, so they can not be mentioned. 
  1603. Suffice it to say that idle cycles allow OS/2 to anticipate user requests that 
  1604. it would not do otherwise. Therefore, refrain from using the Pulse applette all 
  1605. of the time or any other monitoring tool that is compute bound. 
  1606.  
  1607. Never run PM applications in the Idle Class. It is OK to run VIO 16 or 32 bit 
  1608. apps. 
  1609.  
  1610. This Class has been removed from all but PRIORITY MASTER II due to the 
  1611. difficult nature of avoiding a system hang. However, the PRIORITY MASTER II 
  1612. program has a wide array of built in safeguards that prevent hangs in the 
  1613. scanning logic and any prioritized programs that are generated. 
  1614.  
  1615.  
  1616. ΓòÉΓòÉΓòÉ 37.2. Regular Class ΓòÉΓòÉΓòÉ
  1617.  
  1618. This is your absolute BEST choice! The OS/2 priority preemptive scheduler is 
  1619. virtually bullet proof for programs executed in this CLASS. 
  1620.  
  1621. This is the default Class at start up time. 
  1622.  
  1623. This option selects a REGULAR CLASS Window or Full Screen. PRIORITY MASTER II 
  1624. does not check background CPU cycles because the REGULAR class programs receive 
  1625. a priority boost based on the MAXWAIT parameter in CONFIG.SYS for DYNAMIC 
  1626. PRIORITY VARIATION (Default). In light to medium loaded systems you may want to 
  1627. change the default from 3 seconds to 1 second for better overall system 
  1628. response. 
  1629.  
  1630. Use this class to prioritize the background programs. The default class is 
  1631. REGULAR and the default level is zero. Therefore, a class of REGULAR and a 
  1632. level of 1 will always run ahead of all other default background programs! 
  1633. Programs of the same CLASS and LEVEL share the CPU equally. 
  1634.  
  1635. This should always be your first choice, especially for beginners. 
  1636.  
  1637. For best results, increment the LEVEL by ONE for higher priority programs. 
  1638.  
  1639.  
  1640. ΓòÉΓòÉΓòÉ 37.3. Server Class ΓòÉΓòÉΓòÉ
  1641.  
  1642. This option selects a SERVER CLASS Window or Full Screen. PRIORITY MASTER II 
  1643. does not check background CPU cycles because the SERVER class programs receive 
  1644. a priority boost based on the MAXWAIT parameter in CONFIG.SYS for DYNAMIC 
  1645. PRIORITY VARIATION (Default). 
  1646.  
  1647. Use this class to prioritize the background programs. The default class is 
  1648. REGULAR and the default level is zero. SERVER class programs always run ahead 
  1649. of the REGULAR and IDLE class programs. The intent of the SERVER class was to 
  1650. make the program execution the same in the background as in the foreground. 
  1651.  
  1652. This class is provided for LAN users to give better response to background 
  1653. applications while the LAN is running. SERVER class and LEVEL 1 may suffice. 
  1654.  
  1655. Server Class and Level 1 will be higher in priority than a non-PM application 
  1656. running foreground in a Full Screen at default priority. In that case, the 
  1657. background Server Class Level 1 or greater will be higher in priority than the 
  1658. foreground application. This may be undesirable, especially if the Server Class 
  1659. Level 1 or higher background application is compute bound. Therefore, NEVER run 
  1660. a compute bound application in the SERVER Class. If there is any doubt, use the 
  1661. Run PULSE program in the Utilities Menu while the application is running. If 
  1662. the PULSE program draws the line at the top of the chart in a continuous 
  1663. manner, then it is a compute bound application. 
  1664.  
  1665. In general, the Server Class should not be used until all of the Regular Class 
  1666. levels are used. 
  1667.  
  1668. For best results, increment the LEVEL by ONE for higher priority programs. 
  1669.  
  1670.  
  1671. ΓòÉΓòÉΓòÉ 37.4. Critical Class ΓòÉΓòÉΓòÉ
  1672.  
  1673. This option selects a TIME CRITICAL CLASS Window or Full Screen. This is a VERY 
  1674. DANGEROUS option. Ultimately, it may reduce the powerful priority preemptive 
  1675. scheduler into a single tasking system. 
  1676.  
  1677. Use with extreme caution. First, insure that the program runs at the REGULAR 
  1678. class and IS NOT COMPUTE BOUND! Using this option could result in the temporary 
  1679. or permanent loss of keyboard, video and mouse inputs. In the worst case 
  1680. scenario, a Reboot may be required which may include DATA LOSS! If uncertain, 
  1681. close all applications and use the Run PULSE Utility. If the PULSE program is 
  1682. NOT at 100% CPU utilization, then it is probably safe to run. Optionally you 
  1683. may use the Static Idle Test, Audible Idle Cycle Heartbeat, and Inverse Audible 
  1684. Idle Cycle Heartbeat. 
  1685.  
  1686. The Time Critical Class was intended to be used for cases in which human like 
  1687. is at stake and robotics/process control environments. 
  1688.  
  1689. It is strongly recommended that you do not use disk caching when first using 
  1690. Time Critical Level Full Screen or Windows. Modify CONFIG.SYS to disable disk 
  1691. caching by inserting a "rem" before the DISKCACHE= directive. 
  1692.  
  1693. This option can be used for editing, compiling, linking, word processing, etc. 
  1694.  
  1695. Do NOT run the KLONDIKE or CHESS programs because they use all available CPU 
  1696. cycles and you will loose the keyboard, mouse, and video inputs until the game 
  1697. ends or resets. 
  1698.  
  1699. Do not use Level 31 under ANY conditions! Using Level 31 will interfere with 
  1700. the operating system's threads at that level. 
  1701.  
  1702. When using any of the Levels in the Time-Critical Class while on a LAN, you may 
  1703. drop the connection. Therefore, only run I/O bound applications in these 
  1704. levels. 
  1705.  
  1706. Note that the Time-Critical Class is higher in priority than the normal 
  1707. Foreground. Therefore, background Time-Critical Class applications will be 
  1708. higher in priority than Idle, Regular, or Server Class Foreground applications. 
  1709.  
  1710.  
  1711. ΓòÉΓòÉΓòÉ 38. Level Menu ΓòÉΓòÉΓòÉ
  1712.  
  1713. The Level menu allows you to select increment or decrement options. 
  1714.  
  1715. Auto Increment 
  1716.  
  1717.  Automatically increments the priority Level within the selected Class 
  1718.  
  1719. Increment Level 
  1720.  
  1721.  Increments the priority Level within the selected Class in the Main Window 
  1722.  
  1723. Auto Decrement 
  1724.  
  1725.  Automatically decrements the priority Level within the selected Class 
  1726.  
  1727. Decrement Level 
  1728.  
  1729.  Decrements the priority Level within the selected Class in the Main Window 
  1730.  
  1731.  
  1732. ΓòÉΓòÉΓòÉ 39. Auto Increment ΓòÉΓòÉΓòÉ
  1733.  
  1734. Automatically increment the priority Level. The minimum is Level 1. When Level 
  1735. 31 is reached, increments will stop. 
  1736.  
  1737. Increments will appear in the main window title bar. This will be the priority 
  1738. of the next generated OS/2 Window or Full Screen. 
  1739.  
  1740. This does not dynamically change the priority level of any session that is 
  1741. already started. Dynamically changing the priority of any running program is 
  1742. not supported. More information is contained in the Questions and Answers 
  1743. section. 
  1744.  
  1745. Note that you may at any time select the Increment Level or Decrement Level 
  1746. options. This will allow you to skip one or more Levels without having to 
  1747. manually enter the Level. 
  1748.  
  1749. You should order the priority of the jobs you want to run before you open the 
  1750. sessions. Sometimes that is not possible, so the default start level is 15. 
  1751. That should make it easy to start any Full Screen or Window session and then 
  1752. Increment/Decrement around the mid-priority zone. 
  1753.  
  1754. When switching from Auto-Decrement directly to Auto-Increment, the intent is 
  1755. not to give you the same level that you just came from. 
  1756.  
  1757.  
  1758. ΓòÉΓòÉΓòÉ 40. Increment Level ΓòÉΓòÉΓòÉ
  1759.  
  1760. Increment the priority Level in the Main Window title bar each time that the 
  1761. option is selected. This is to provide an easy way to skip a few levels. 
  1762.  
  1763. Note that you may at any time select the Increment Level or Decrement Level 
  1764. options. This will allow you to skip one or more Levels without having to 
  1765. manually enter the Level. 
  1766.  
  1767.  
  1768. ΓòÉΓòÉΓòÉ 41. Auto Decrement ΓòÉΓòÉΓòÉ
  1769.  
  1770. Automatically decrement the priority Level. The minimum is Level 0. When Level 
  1771. 0 is reached, decrements will stop. 
  1772.  
  1773. Decrements will appear in the main window title bar. This will be the priority 
  1774. of the next generated OS/2 Window or Full Screen. 
  1775.  
  1776. This does not dynamically change the priority level of any session that is 
  1777. already started. Dynamically changing the priority of any running program is 
  1778. not supported. More information is contained in the Questions and Answers 
  1779. section. 
  1780.  
  1781. Note that you may at any time select the Increment Level or Decrement Level 
  1782. options. This will allow you to skip one or more Levels without having to 
  1783. manually enter the Level. 
  1784.  
  1785. You should order the priority of the jobs you want to run before you open the 
  1786. sessions. Sometimes that is not possible, so the default start level is 15. 
  1787. That should make it easy to start any Full Screen or Window session and then 
  1788. Increment/Decrement around the mid-priority zone. 
  1789.  
  1790. When switching from Auto-Increment directly to Auto-Decrement, the intent is 
  1791. not to give you the same level that you just came from. 
  1792.  
  1793.  
  1794. ΓòÉΓòÉΓòÉ 42. Decrement Level ΓòÉΓòÉΓòÉ
  1795.  
  1796. Decrement the priority Level in the Main Window title bar each time that the 
  1797. option is selected. This is to provide an easy way to skip a few levels. 
  1798.  
  1799. Note that you may at any time select the Increment Level or Decrement Level 
  1800. options. This will allow you to skip one or more Levels without having to 
  1801. manually enter the Level. 
  1802.  
  1803.  
  1804. ΓòÉΓòÉΓòÉ 43. Miscellaneous Information Menu ΓòÉΓòÉΓòÉ
  1805.  
  1806. This menu provides additional related information. It is STRONGLY recommended 
  1807. that you read all sections carefully before proceeding. 
  1808.  
  1809. Tips 
  1810.  
  1811.  Selects tips about using PRIORITY MASTER II. 
  1812.  
  1813. Questions and Answers 
  1814.  
  1815.  Selects likely questions and answers. 
  1816.  
  1817. Scheduling Considerations 
  1818.  
  1819.  Explains the Class and Level relationships and additional information. 
  1820.  
  1821.  
  1822. ΓòÉΓòÉΓòÉ 44. Dos and Windows Prioritization ΓòÉΓòÉΓòÉ
  1823.  
  1824. ScheduPerformance, Inc. does NOT support the prioritization of DOS and 
  1825. Microsoft Windows programs. 
  1826.  
  1827. However, the freeware program SP is available on the demo page at 
  1828. www.prioritymaster.com/demo.html for download.  This can be used to prioritize 
  1829. DOS applications. 
  1830.  
  1831. Using IBM's OS/2 Warp, DOS and Windows programs can be prioritized using only 
  1832. the Regular class. This is included in the session Settings/Properties under 
  1833. "All DOS Settings". Values from 1 to 32 map to the Regular Class levels 0 to 
  1834. 31. Keep in mind while increasing the priority of any DOS and Windows programs, 
  1835. the performance of OS/2 programs using default priority (Regular Class, Level 
  1836. 0) will decrease rapidly. This is SCARY! Why? Because the well behaved OS/2 
  1837. programs executing in the background at Regular Class and Level 0 will get 
  1838. virtually no CPU time. This is based on the MAXWAIT parameter in CONFIG.SYS. A 
  1839. value of 3 (3 seconds is the default) means that the DOS and Windows programs 
  1840. at Regular Class Level 1 or above will get 90 times more CPU cycles! The 
  1841. relative performance of background OS/2 programs could give them a bad 
  1842. reputation and slow the development of native OS/2 32 bit multi-threaded 
  1843. programs. The goal of ScheduPerformance, Inc. is to give superior performance 
  1844. and control to OS/2 programs. 
  1845.  
  1846.  
  1847. ΓòÉΓòÉΓòÉ 45. Tips ΓòÉΓòÉΓòÉ
  1848.  
  1849. General Tips: 
  1850.  
  1851. Read the descriptions of all of the CLASSes before using PRIORITY MASTER II. 
  1852.  
  1853. Always consider the REGULAR class and LEVELs first. 
  1854.  
  1855. Avoid running more than one application at any given CLASS and LEVEL. 
  1856.  
  1857. Use the Auto-Increment and Auto-Decrement options for the majority of the time. 
  1858. Note that they reset to their previous levels when they are turned off and then 
  1859. turned back on. Also note that each Class is independently tracked. If you want 
  1860. a level higher or lower than the next or previous level and either the 
  1861. Auto-Increment or Auto-Decrement feature is ON, then simply turn on the option 
  1862. one or more times until the desire Level is reached. Any new Window or Full 
  1863. Screens will start at the last level in the PRIORITY MASTER II title bar. 
  1864. Subsequent selection will start the next higher priority when Auto-Increment is 
  1865. ON and the next lower level when Auto-Decrement is ON. 
  1866.  
  1867. Use Regular Class Level ZERO when you do NOT want to give a priority boost to 
  1868. the background application. 
  1869.  
  1870. Using the START command to start another Window or Full Screen session will set 
  1871. the priority of the new Window or Full Screen to SAME priority as the PRIORITY 
  1872. MASTER II Window. However, it will NOT have the CLASS and LEVEL identifiers. 
  1873. Therefore, DO NOT use the START command to avoid confusion. Instead, use the 
  1874. PRIORITY MASTER II to start ALL Full Screen and Window sessions. 
  1875.  
  1876. When using DOS Full Screen and Windows sessions and PRIORITY MASTER II Idle 
  1877. Class Full Screens and Windows, NEVER set the Idle Sensitivity in the DOS 
  1878. Settings to 100%. The default setting is 75%. Setting the Idle Sensitivity to a 
  1879. maximum of 99% will allow the Idle Class applications to get some CPU time when 
  1880. the DOS Full Screen or Window is at the Command prompt. 
  1881.  
  1882. Do not use the standard OS/2 Full Screen and Windows icons when using PRIORITY 
  1883. MASTER II. 
  1884.  
  1885. Do not leave PRIORITY MASTER II FULL SCREENs or WINDOWs open on the desktop 
  1886. when not running applications (they consume memory). This includes the PRIORITY 
  1887. MASTER II application. 
  1888.  
  1889. Do not use the PRIORITY MASTER II application to boost the priority of compute 
  1890. bound applications. This will lock out all lower priority programs and 
  1891. effectively reduce the number of levels to choose from. Use REGULAR level 0 or 
  1892. Idle Class for compute bound applications. If there is any doubt, use the Run 
  1893. PULSE option while the application is running. If the PULSE program draws the 
  1894. line at the top of the chart in a continuous manner, then it is a compute bound 
  1895. application. 
  1896.  
  1897. Depending on what is installed on your system, PULSE may show that there is 
  1898. some or all of the CPU cycles being used on an apparently idle system. In that 
  1899. event, it will draw the line at the top of the graph or somewhere in between. 
  1900. This may be the result of a program running in the Background that would be 
  1901. considered a "runaway" application. Possibly the result of a power failure or 
  1902. halt/hang. Check the SET AUTOSTART options used in CONFIG.SYS. If you are using 
  1903. the PROGRAMS option, then remove it and reboot the machine. Replace it after 
  1904. checking to see if PULSE now shows an idle system. 
  1905.  
  1906. It is important for OS/2 to have occasional spare Idle cycles, especially on 
  1907. systems with 16MB or less. The less memory that you have, the more important 
  1908. that it becomes. This is because OS/2 priority preemptive scheduler performs 
  1909. specialized "house cleaning" functions when there are no threads to run. These 
  1910. functions may have patents pending on them, so they can not be mentioned. 
  1911. Suffice it to say that idle cycles allow OS/2 to anticipate user requests that 
  1912. it would not do otherwise. Therefore, refrain from using the Pulse applette all 
  1913. of the time or any other monitoring tool that is compute bound. 
  1914.  
  1915. CONFIG.SYS Recommendations 
  1916.  
  1917. Modify the MAXWAIT parameter in your CONFIG.SYS to be MAXWAIT=1 (the default is 
  1918. MAXWAIT=3). This will give you better overall application response when you are 
  1919. running at different priority levels. This is VERY strongly recommended for 
  1920. PRIORITY=DYNAMIC (default) SYSTEMS. This gives better overall response for 
  1921. everything. The default value of 3 was to reduce the effects of starvation 
  1922. saturation which would occur if there were 90 concurrent compute bound threads. 
  1923. This value is high, and a value of 1 means that Regular threads would get a 
  1924. time slice of the CPU around once per second. This can also solve performance 
  1925. problems in the application due to priority inversions. 
  1926.  
  1927. If you are running DOS or Windows add TIMESLICE=32,32 at the bottom of the 
  1928. CONFIG.SYS file. This is especially important when running both DOS and OS/2 
  1929. programs concurrently. The default is DYNAMIC timeslicing which simply varies 
  1930. the timeslice based on system load. That is ideal for OS/2 only environments. 
  1931.  
  1932. Modify the DISKCACHE=X,Y,Z directive The "Z" parameter is size of the read. The 
  1933. default system does not include this parameter and therefore any disk reads 
  1934. that exceed 4K do not get cached. On 8MB or more systems, specify 128 as the 
  1935. read size. For example - DISKCACHE=1024,LW,128. On systems using 4MB or 6MB of 
  1936. memory do NOT adjust this value - the default is OK. 
  1937.  
  1938. If you have less than 32MB of memory then your next upgrade should be to add 
  1939. more memory! CPU performance is not a factor in how well OS/2 will respond in 
  1940. memory constrained systems. A 16MHz system with 8MB of main memory will 
  1941. outperform a 66MHz system with 4MB of main memory. OS/2 is a huge operating 
  1942. system which requires about 16MB of memory just to boot the system. The only 
  1943. reason that it can operate in less memory is because it is on the disk and is 
  1944. paged in as needed. In the CONFIG.SYS file is an option to disable swapping - 
  1945. MEMMAN=SWAP,PROTECT. If you change that to disable swapping with 
  1946. MEMMAN=NOSWAP,PROTECT and boot the system with less than 16MB of memory, then 
  1947. you will have a dead system. You will have to boot a DOS boot diskette and use 
  1948. a DOS editor to recover your system or a similar procedure using OS/2 install 
  1949. disks. Therefore, DO NOT attempt this unless you know to recover your system. 
  1950. Please check the Scheduling Considerations for additional information relating 
  1951. to how fast the CPU is and how slow the disk is in performance. 
  1952.  
  1953.  
  1954. ΓòÉΓòÉΓòÉ 46. Questions and Answers ΓòÉΓòÉΓòÉ
  1955.  
  1956. Questions and Answers 
  1957.  
  1958. Question: Can PRIORITY MASTER II be used on applications that install 
  1959. themselves as icons? 
  1960.  
  1961. Answer: Yes. For example, if you wanted to used PRIORITY MASTER II on KLONDIKE 
  1962. to set the priority, just get the path and type it in a PRIORITY MASTER II 
  1963. Window or Full Screen. Find the path as follows: open the SYSTEM folder, open 
  1964. the GAMES folder, select KLONDIKE with the left mouse button, press the right 
  1965. mouse button, use the left mouse button and select open, use the left mouse 
  1966. button and select Settings/Properties, that will show the application path and 
  1967. filename. You may have to use the find option if the path is not shown and not 
  1968. in the default path. Use a similar procedure for any of the installed 
  1969. applications. 
  1970.  
  1971. You may also use the Find Program and Prioritize Option after you have located 
  1972. the drive letter and directory of the executable. 
  1973.  
  1974. The Class and Level in the title bar will indicate the priority of the 
  1975. generated application. 
  1976.  
  1977. Question: How can I verify that the application is actually running at the 
  1978. priority specified for the Window or Full Screen? 
  1979.  
  1980. Answer: Use the Utilities Option Show All Priorities. This information may be 
  1981. printed or saved to a file from main window using the Window Controls. 
  1982.  
  1983. Question: When the system gets busy, why do the Idle Class Windows or Full 
  1984. Screen Sessions appear dead? 
  1985.  
  1986. Answer: There is no concept of a Foreground Focus for Idle Class threads. Idle 
  1987. Class threads are only run when there are no Regular, Server, or Time Critical 
  1988. threads to run. This only applies to the PRIORITY MASTER II version. 
  1989.  
  1990. Question: Why do Some applications have different priorities than the one 
  1991. selected for the Window or Full Screen? 
  1992.  
  1993. Answer: Some applications set their own priority using OS/2's standard 
  1994. programming calls. These are few in number. However, it is never desirable to 
  1995. alter their priority because it MAY cause internal application priority 
  1996. inversions. That simply means that the original programmer wanted a thread to 
  1997. run at a low priority and another thread to run at a high priority for the 
  1998. program to work correctly. For compatibility, the PRIORITY MASTER II 
  1999. application does not work on some of these applications. It depends on how the 
  2000. original programmer constructed the set priority calls. The actual calls have 
  2001. an option to keep the current Class or Level and to modify only one of these 
  2002. parameters. On those applications, the priority can be set using the PRIORITY 
  2003. MASTER II  Windows or Full Screens. When the original programmer intentionally 
  2004. set a particular Class or Level, PRIORITY MASTER II will not change their 
  2005. priority. If the priority of the application is not the same as the priority of 
  2006. the Window or Full Screen, then simply set the priority of other applications 
  2007. above, below or equal to the applications priority as desired. 
  2008.  
  2009. Question: Why doesn't the priority display at the top of the Full Screen 
  2010. Sessions like it does for the Window Sessions? 
  2011.  
  2012. Answer: The first line of a Full Screen Session is under control of the OS/2 
  2013. operating system, not the PRIORITY MASTER II application. That would take a 
  2014. joint effort to modify command.exe and other portions of the operating system. 
  2015. For now, the priority is displayed at the icon and the task list (CTRL+ESC). It 
  2016. can also be displayed using the Show All Priorities option in the Utilities 
  2017. menu. 
  2018.  
  2019. Question: Why doesn't PRIORITY MASTER II work on DOS and Windows applications? 
  2020.  
  2021. Answer: DOS and Windows applications inherently consume all processor cycles. 
  2022. That means that any lower priority applications can NOT run. This can 
  2023. effectively deprive you of the 32 Idle class Levels. There are DOS Settings and 
  2024. various tricks that can be performed to stop or reduce the amount of wasted 
  2025. machine power (CPU cycles). However, when upgrading to a faster processor, they 
  2026. need to be reset. Unless you are willing to individually "tune" the DOS 
  2027. applications and the faster the CPU, the more CPU cycles can be lost. DOS and 
  2028. Windows applications are not native to priority preemptive Multitasking and 
  2029. OS/2 applications are native. As the processors become more and more powerful 
  2030. and the cost continues to decline, priority preemptive multitasking operating 
  2031. systems will certainly become the default operating system of choice (hopefully 
  2032. OS/2!). 
  2033.  
  2034. Question: Using PRIORITY MASTER II, can I have the Foreground application lower 
  2035. in priority than the background applications? 
  2036.  
  2037. Answer: Yes! Start a Server or Time Critical Class Window or Full Screen and 
  2038. the background applications will get all of the CPU that they need and the 
  2039. Foreground application will get the remaining CPU power. This is very useful 
  2040. when you have an important application to run and would like to look at a file 
  2041. or play a game and not slow the important application down. In this case, the 
  2042. background application can complete just as fast as if it had the Foreground 
  2043. Focus. 
  2044.  
  2045. Question: Is there any additional overhead associated with using PRIORITY 
  2046. MASTER II? 
  2047.  
  2048. Answer: No. Unlike System Resource/CPU monitoring tools, there are no 
  2049. intermediate device drivers or probes used. A CPU monitoring tool presenting 
  2050. graphic statistics will consume a significant portion of the CPU. For example, 
  2051. a popular application measuring CPU utilization was presenting graphic data. 
  2052. Although it reports that it is using between 0 and 9% of the available time, 
  2053. the total impact is far worse. A 386DX 40 MHz, 128Kb cache with 8MB of memory 
  2054. was tested. While the program is running the time to start the Master Help 
  2055. Index goes from 5 seconds (monitoring tool not installed) to 9 seconds on 
  2056. repeated tests. That is because it takes a significant portion of the CPU just 
  2057. to do the monitoring. The effect on a 486 with 16MB of memory was 4 seconds to 
  2058. 5 seconds. 
  2059.  
  2060. However, when selecting an Idle Class Level(PRIORITY MASTER II), some overhead 
  2061. is incurred to find the lowest available level. The Utilities menu has two 
  2062. options, Show All Priorities and Active Program Snapshot. These options have 
  2063. very little (but some) overhead, since they are spread out over a relatively 
  2064. long time period (up to 6 seconds). 
  2065.  
  2066. Question: Since the PRIORITY MASTER II application does not work on some 
  2067. applications that set their own priority, and a user does not know if the 
  2068. application does set its own priority, what can be done? 
  2069.  
  2070. Answer: Identify applications that do set their priority. These applications 
  2071. effectively deny the user the ability to prioritize their programming 
  2072. environments. These applications may not work when ported to the emerging 
  2073. multi-processor environments if they rely on priority to work correctly. The 
  2074. vast majority of the relatively few applications that set their priority can be 
  2075. modified to use semaphores. Future applications being developed may include 
  2076. "Does NOT set priority" if enough people request that. So, start requesting 
  2077. application developers not to set the priority and ask them to state that on 
  2078. the label! However, some application MUST be high in priority to work 
  2079. correctly. You be the judge and react accordingly. 
  2080.  
  2081. Question: How safe is it to run application in the Idle, Regular, and Server 
  2082. Class and all of the Levels? 
  2083.  
  2084. Answer: It is 100% safe for applications which do not set their priority in the 
  2085. Regular and Server Classes. Any Application that is run in the Time Critical 
  2086. class must be I/O bound or you could lock up the Presentation Manager. Running 
  2087. applications in the Idle Class may not execute while there are DOS and/or 
  2088. Windows applications executing concurrently. That has already been covered. 
  2089. That does not represent a problem, closing the DOS and Windows application may 
  2090. resume the Idle Class applications. The Idle Class has the auto-search on the 
  2091. level feature intended for OS/2 only environments. However, if you wish to 
  2092. "play" with the DOS Settings, you can get Idle Class cycles available from most 
  2093. of the DOS applications which run in the Regular Class. 
  2094.  
  2095. Question: What does the ScheduPerformance mean? 
  2096.  
  2097. Answer: Scheduling and Performance. ScheduPerformance, Inc. specializes in 
  2098. scheduling and multitasking software. The company also offers performance 
  2099. tune-ups for applications or complete systems on single or multi-processor 
  2100. environments using OS/2 2.0 or above. Performance is the pricing basis and is 
  2101. guaranteed. If you are converting applications to OS/2 from DOS or Windows we 
  2102. also offer consulting/programming expertise on multi-threading your 
  2103. applications. 
  2104.  
  2105. Question: I am running both DOS and OS/2 applications at the same time and I 
  2106. noticed that when I have one or more OS/2 applications running at Regular 1 
  2107. (and a Regular 2), the DOS background applications get very little CPU time, 
  2108. why? 
  2109.  
  2110. Answer: That is correct. The more OS/2 applications that you have running in 
  2111. the background at Regular Class Level 1 or higher the less the CPU time is 
  2112. available to the DOS programs - even when they are in the foreground. In the 
  2113. Tips section, it is strongly recommended that you change the MAXWAIT parameter 
  2114. in CONFIG.SYS to MAXWAIT=1. This will help the DOS and OS/2 applications. The 
  2115. more powerful the system is (ie 50MHz 486 and 16MB of memory) the more CPU time 
  2116. can be wasted by the DOS applications. For example, you may need about 85% Idle 
  2117. Sensitivity on a 386 SX 16MHz and only 50% or less on a powerful machine. Many 
  2118. users may not know this, so when they upgrade to a 486 processor they do not 
  2119. recalibrate the various DOS Settings. The result is lost CPU cycles that could 
  2120. be used by the OS/2 applications. 
  2121.  
  2122. Question: How important is it to calibrate the DOS Settings? 
  2123.  
  2124. Answer: It is extremely important for performance. Lets look at a worse case 
  2125. scenario. Open a DOS Full Screen and set the Idle Sensitivity to 100% and save 
  2126. the settings. Start the Pulse found in the Utility Menu. Insure that nothing 
  2127. else is running. Note that Pulse shows an IDLE system. Start the DOS Full 
  2128. Screen and CTRL+ESC to the desktop. Note that Pulse is showing 100% utilized 
  2129. even though there is nothing running in the background DOS Full Screen! This is 
  2130. true for DOS Windows as well when at 100% Idle Sensitivity. The more DOS Full 
  2131. Screens and Windows that are open with 100% Idle Sensitivity, the greater the 
  2132. CPU cycles will be lost to normal OS/2 background (Regular 0). The point is 
  2133. that those background DOS applications are using up a significant amount of CPU 
  2134. time even when they are not running. When they are running it is difficult to 
  2135. determine whether they are doing application instructions or just pooling the 
  2136. keyboard or anything else. Decrease the Idle Sensitivity until the application 
  2137. no longer works, then increase just a few percent. Remember to do this again 
  2138. when you upgrade to a faster CPU. 
  2139.  
  2140. Question: Why PRIORITY MASTER II and why now? 
  2141.  
  2142. Answer: Todays average OS/2 user is looking deeper and deeper into the 
  2143. operating system for any clue as to how better take advantage of the features 
  2144. and functions provided. The concept of four Classes and 32 sub-levels is not 
  2145. very difficult to understand and using them certainly is not rocket science. 
  2146. The days of Time-Sharing (giving all applications an equal slice of the CPU 
  2147. pie) are certainly ending. The PRIORITY MASTER II application removes control 
  2148. of the machine away from the operating systems designers and application 
  2149. programmers and gives it to the USER in a "natural" fashion. 
  2150.  
  2151. The time is NOW because the machines are simply too powerful to waste valuable 
  2152. CPU cycles on programs written for a single tasking model. Consider that the 
  2153. "average" DOS application was written for a 286 8MHz machine. That would imply 
  2154. that a 386 8MHz is twice as fast, a 386 16MHz is four times faster, a 386 33MHz 
  2155. is eight times faster, a 486 33MHz is sixteen times faster and 486 66MHz is 
  2156. thirty two times faster! However, you will encounter great difficulty in 
  2157. running 32 DOS applications on a 486 66MHz that you would not encounter running 
  2158. native OS/2 programs. 
  2159.  
  2160. Question: Once I have started an application in a PRIORITY MASTER II Full 
  2161. Screen or Window, can the priority be changed while the application is running? 
  2162.  
  2163. Answer: No. Changing the priority of a running application may get you into 
  2164. trouble. For example, the PULSE program (found in the Productivity Folder or in 
  2165. the Utility Menu) calculates idle time using two threads (run PULSE and use 
  2166. Show All Priorities to verify). One thread is set at the lowest priority in the 
  2167. system (Idle Class Level 0). The other thread is set at the highest priority in 
  2168. the system (Time Critical Class, Level 31). The CPU graph is drawn based on how 
  2169. much the Idle Class thread runs. If you increase the priority or change it in 
  2170. any way, then the results of the graph will be incorrect. 
  2171.  
  2172. Some programs may have consumer/producer relationships using priority 
  2173. resolution. For example, one thread writes to a file at high priority. Another 
  2174. thread reads from the file at a lower priority. The program could assume that 
  2175. fresh data will always be written by the high priority thread before the lower 
  2176. priority thread reads the data. If you inadvertently switch the internal 
  2177. priorities, then old data will be presented for processing. That would likely 
  2178. break the application. 
  2179.  
  2180. Even if the program itself did not set its own priority, it may load a DLL 
  2181. which sets the priority and again you would have a priority inversion. It is 
  2182. virtually impossible to predict if dynamically changing the priority would be 
  2183. safe. Even if the original program did not change its priority and the first 
  2184. DLL loaded did not change its priority, it could still load other DLL's which 
  2185. do set the priority. Until we all get to the stage where the manufacture of the 
  2186. application puts "DOES NOT SET PRIORITY" on the label, dynamically changing 
  2187. priority is dangerous. 
  2188.  
  2189. All ScheduPerformance, Inc. products do not alter the priority of programs that 
  2190. set their own priority so that they can work properly. There are no provisions 
  2191. in the PRIORITY MASTER II application to dynamically alter the priority. You 
  2192. may stop the application, start another PRIORITY MASTER II Full Screen or 
  2193. Window at a different priority and then run the application at the new 
  2194. priority. You can achieve similar results by starting new applications above or 
  2195. below certain applications as desired. 
  2196.  
  2197. Question: How does setting PRIORITY=ABSOLUTE in CONFIG.SYS effect the the 
  2198. operation of PRIORITY MASTER II? 
  2199.  
  2200. Answer: This has a VERY significant impact on the system operation. Most 
  2201. importantly is the loss of the Foreground boost which would normally be applied 
  2202. to the Regular Class. When using the PRIORITY MASTER II application on Regular 
  2203. Class Full Screens or Windows with this option enabled, it brings new meaning 
  2204. the phrase "What you see is what you get". For example, start a Regular 1 and a 
  2205. Regular 2 PRIORITY MASTER II Window. In the Regular 2 window enter a TYPE 
  2206. command at the command prompt of a large text file. While the Regular 2 Window 
  2207. is displaying the text, switch the Foreground focus to the Regular 1 Window. 
  2208. Begin typing and you will note that the characters do not get echoed to the 
  2209. Regular 1 Window until the text is completely finished in the Regular 2 Window. 
  2210. The same test applied when PRIORITY=DYNAMIC in CONFIG.SYS would result in the 
  2211. characters displaying immediately in the Regular 1 Window. 
  2212.  
  2213. The MAXWAIT directive which limits the amount of time that a Regular Class 
  2214. ready to run has to wait will be disabled when using PRIORITY=ABSOLUTE in 
  2215. CONFIG.SYS. This may have undesirable effects on some applications. 
  2216. Specifically, applications which rely on priority to resolve internal priority 
  2217. inversions. This could result in a deadlock in the application in rare cases 
  2218. which would not occur when using PRIORITY=DYNAMIC in CONFIG.SYS. However, this 
  2219. should NOT be a major concern when selecting the ABSOLUTE option. The more 
  2220. important concern would be that background applications would not get a 
  2221. priority boost for a small time interval. 
  2222.  
  2223. Internal pseudo-system boosts, like I/O boost, are also disabled when using 
  2224. PRIORITY=ABSOLUTE in CONFIG.SYS. This would require some careful consideration. 
  2225. Printing, diskette formatting, or I/O bound jobs in general, could take 
  2226. significantly longer to complete. Therefore, these applications should be given 
  2227. the highest priority of all your applications to achieve good completion times. 
  2228.  
  2229. Due to the vast difference between using DYNAMIC or ABSOLUTE it is not 
  2230. recommended to change from which ever you are now using to the other without 
  2231. doing a non-production trial run first to observe the effects. 
  2232.  
  2233. Question: What is the biggest advantage of using the PRIORITY MASTER II 
  2234. application? 
  2235.  
  2236. Answer: Performance, especially in memory constrained environments. By 
  2237. assigning a different priority Level to each application, the total job time 
  2238. can be significantly decreased. 
  2239.  
  2240. Question: In simple terms, how does that work? 
  2241.  
  2242. Answer: Here is an example. Suppose that there are four applications and each 
  2243. needs 2MB to run and there are 8MB on the system. You assign the most important 
  2244. application to REGULAR Class level 4, the next to REGULAR 3, the next to 
  2245. REGULAR 2, and the least important application to REGULAR 1. Start all of them 
  2246. one after another, beginning with the REGULAR 4. The first application to run 
  2247. is the REGULAR 4. It will get all of the CPU that it needs. What is unused goes 
  2248. to the REGULAR 3 and so on. The effect is that the majority of the Regular 4 
  2249. application may complete before the REGULAR 1 gets to run and request memory. 
  2250. Contrast that to all four applications trying to get 2MB each at the same time 
  2251. and using the PRIORITY MASTER II application will save you a significant amount 
  2252. of disk thrashing. By prioritizing your OS/2 applications, every machine will 
  2253. only attempt as much as it can actually handle. This is independent of CPU 
  2254. speed or memory size. In effect it becomes a method/mechanism for memory 
  2255. overload protection! 
  2256.  
  2257. This is very important in light of the high cost of memory. If after using the 
  2258. PRIORITY MASTER II application in your environment and you experience 
  2259. significant performance gains in your typical operations on a memory 
  2260. constrained system, please send your performance data to ScheduPerformance, 
  2261. Inc. Selected submitters will receive either a number of free copies of the 
  2262. PRIORITY MASTER II application or free upgrades when available for a limited 
  2263. time. All submission will become the sole property of ScheduPerformance, Inc.. 
  2264.  
  2265. Question: What is the next biggest advantage of using the PRIORITY MASTER II 
  2266. application? 
  2267.  
  2268. Answer: Control. Typical is the scenario when you are already running several 
  2269. applications when the boss walks in and asks for something done immediately. 
  2270. Naturally you do not want to stop any of the applications that are already 
  2271. running because you would probably have to start them over again. You already 
  2272. know what the priorities are of the applications running, so you select one 
  2273. higher to run the important application and use a lower level Class Window or 
  2274. Full Screen to do normal work. Granted that the lower level application will be 
  2275. slow, but you can be assured that the other jobs are not lost and the most 
  2276. important application will get all of the CPU that it needs. Alternatively, you 
  2277. could select a level just below the highest level being used to do your normal 
  2278. work if you set PRIORITY=ABSOLUTE in CONFIG.SYS. With the existing OS/2 
  2279. architecture, you would have to keep the Foreground focus on the high priority 
  2280. application until it completed to achieve the same results as using a lower 
  2281. level Window. 
  2282.  
  2283.  
  2284. ΓòÉΓòÉΓòÉ 47. Scheduling Considerations ΓòÉΓòÉΓòÉ
  2285.  
  2286. The OS/2 priority preemptive scheduler supports four basic CLASSes with 32 
  2287. sub-levels each for a total of 128 selectable priorities. The scheduler first 
  2288. considers the CLASS and then the LEVEL. The lowest class is IDLE, the next 
  2289. higher class is REGULAR, the next higher class is SERVER, and the highest class 
  2290. is TIME CRITICAL. Within each class, the scheduler considers the LEVEL. The 
  2291. higher the LEVEL is selected, the greater the priority becomes. 
  2292.  
  2293. The single and certainly the most important concept that you need to understand 
  2294. is that DOS, Windows, and default priority OS/2 programs ALL SHARE THE *SAME* 
  2295. PRIORITY LEVEL IN THE BACKGROUND (Regular Class Level 0). You MUST get the OS/2 
  2296. programs out of that level and into a higher level or suffer massive 
  2297. performance looses on the OS/2 programs. The concept is very simple, DOS and 
  2298. Windows inherently use up all available CPU cycles and OS/2 programs inherently 
  2299. use only what they need and share the remaining CPU cycles. In the Tips 
  2300. section, it tells you to NEVER set the Idle Sensitivity 100% on DOS programs. 
  2301. For example, to build the PRIORITY MASTER II program takes about 1 min. If you 
  2302. run a DOS window at 100% Idle Sensitivity with the build of the PRIORITY MASTER 
  2303. II program, both in the Background, it takes over 2 min. By making the build of 
  2304. the PRIORITY MASTER II program at Regular Class and Level 1 it completes in 
  2305. about 1 min even though the DOS Window is at 100% Idle Sensitivity. That's a 
  2306. 50% performance improvement. This test was repeated with two DOS Windows at 
  2307. 100% Idle Sensitivity and three concurrent builds of the PRIORITY MASTER II 
  2308. program. Completion times on the three builds were 10 min., 10 min. 30 sec, and 
  2309. 11 min. Using the PRIORITY MASTER II application to build the PRIORITY MASTER 
  2310. II on Regular class levels 1, 2, and 3 changed the times to 1 min. 30 sec, 2 
  2311. min, 2 min. 20 sec. even though the two DOS Windows were also running. That's 
  2312. about a 500% performance improvement. That is why you need to get the OS/2 
  2313. programs out of the Regular Class level 0 when mixing DOS and Windows with OS/2 
  2314. programs. 
  2315.  
  2316. Try the REGULAR class and LEVEL 1 first. The OS/2 priority preemptive scheduler 
  2317. ALWAYS runs the highest priority thread in the system until it relinquishes the 
  2318. CPU or shares it with another thread of the SAME level. 
  2319.  
  2320. Applications started with REGULAR class and LEVEL 1 will always be serviced 
  2321. before all other default priority programs while running in the background. The 
  2322. system default priority is REGULAR class and LEVEL 0. 
  2323.  
  2324. Using PRIORITY MASTER II on some applications which set their own priority may 
  2325. in rare cases, cause internal application priority inversions. If the 
  2326. application experiences any unusual problems, don't use PRIORITY MASTER II to 
  2327. change their priority. Rather, use PRIORITY MASTER II to raise or lower other 
  2328. programs around such applications. 
  2329.  
  2330. PRIORITY MASTER II was designed to enhance the OS/2 operating system by giving 
  2331. it what virtually all priority preemptive systems already have - the capability 
  2332. to set the priority of user applications. 
  2333.  
  2334. This is particularly important in Local Area Network (LAN), Constrained and 
  2335. Loaded environments. 
  2336.  
  2337. In the case of LAN, application developers typically use the SERVER and TIME 
  2338. CRITICAL priorities in their threads. Generally, the USER only gets the CPU 
  2339. cycles for the background that the LAN does not need. Some of the CPU can be 
  2340. diverted to background applications by using the SERVER class. However, use the 
  2341. high priorities in the SERVER class sparingly. 
  2342.  
  2343. Constrained environments can be loosely defined as anytime the memory 
  2344. requirement of the operating system and the applications exceed the amount of 
  2345. available memory. In such cases, the high priority programs will be in memory 
  2346. and the low priority programs will most likely be rolled out to the disk. 
  2347.  
  2348. Accessing a data item in memory is many times faster than accessing the same 
  2349. data item on disk. CPU's operate in the 40 to 60 nanosecond range.  That means 
  2350. that it can get at the data, stack, or code in the program in 40 to 60 
  2351. nanoseconds on an i486 and about twice as long on an i386. Memory ads state 
  2352. that it is at least 200 times faster to access an item in memory than it is to 
  2353. get the same item from disk. Sure it is at least 200 times faster, in fact it 
  2354. is significantly more than 200 times faster.  Disk access is in the 10 to 20 
  2355. millisecond range. It takes 1000 nanoseconds to make one microsecond.  It takes 
  2356. 1000 microseconds to make one millisecond and it going to take at least 10 of 
  2357. those just to get the data!  That does not include the fact that OS/2 puts 
  2358. programs that do I/O to the disk into a wait state and runs other programs 
  2359. while the I/O is going on.  That means that there is a high degree of 
  2360. probability that when the I/O completes, something else is running and you have 
  2361. store away all of the contents of the currently executing program and switch 
  2362. everything over to get back to the original program that started the I/O 
  2363. operation.  That alone could take anywhere from about 250 microseconds (fast 
  2364. i486 and nothing else running) to over 32 milliseconds with as little as one 
  2365. other thread running and the operating system has at least 20. Still think that 
  2366. it takes 200 times longer?  It is more like 2 million times longer!  The fact 
  2367. that OS/2 can easily run a few applications well in 8 MB (1/2 of the operating 
  2368. system is on the disk) is a technical achievement that is completely 
  2369. understated. The good news is that OS/2 reads in at least 4K at once and there 
  2370. is good probability that the next item that you will need was in that read. 
  2371.  
  2372. Depending on the installation options, a constrained environment could be 
  2373. encountered in as little as 16MB of memory and a single application. When 
  2374. running as little as three applications only one may have the foreground. The 
  2375. other two will share the background. Consequently, both will have parts of 
  2376. their memory rolled out to disk. When the foreground application finishes, the 
  2377. two background applications will compete for memory. This could result in 
  2378. rolling in memory for first application, processing, switching to the second 
  2379. application, rolling the first applications memory out, rolling the second 
  2380. applications memory in, processing, and finally repeating the cycle until both 
  2381. jobs complete! By assigning a different priority to each application according 
  2382. to your needs (make the more important one higher), this situation may be 
  2383. avoided! Using PRIORITY MASTER II in this case will allow one application to 
  2384. get more of the memory that it needs, not have to compete by rolling it in and 
  2385. out of memory, complete, and start the second application which also does not 
  2386. have to compete for memory. 
  2387.  
  2388. Loaded environments can be loosely defined as simply being out of CPU power. 
  2389. Suppose that there are 32MB of memory and five compute bound applications that 
  2390. would take two  minutes each. Start them all at the same time. The one in the 
  2391. Foreground would complete in two minutes. The remaining four in the Background 
  2392. would all complete, nearly simultaneously, in ten minutes. Using these products 
  2393. you can prioritize the remaining four to complete in four, six, eight and ten 
  2394. minutes! 
  2395.  
  2396. OS/2's Priority Preemption Capabilities 
  2397.  
  2398. The OS/2 (2.0 and 2.1) scheduler gives all applications (DOS , Windows, and 
  2399. OS/2) at least 32 milliseconds to execute before running another program of the 
  2400. SAME priority level. If a higher priority program becomes ready to run (usually 
  2401. the result of an I/O completion, timer expiration, semaphore being cleared 
  2402. etc.) the higher priority program preempts before the 32 milliseconds of 
  2403. execution is completed. 
  2404.  
  2405. OS/2 can preempt a lower priority thread in the middle of a time slice. That's 
  2406. true on OS/2 2.0 and 2.1. Ultimately, it depends on if the lower priority 
  2407. program is executing in the application or inside of the operating system. When 
  2408. it is executing in the application and a higher priority program becomes ready, 
  2409. preemption is IMMEDIATE! 
  2410.  
  2411. There are rumors that the OS/2 kernel is "monolithic". That simply means that 
  2412. once a program request a system service (Application Interface - API) 
  2413. preemption can not occur until the operating system completes its job and 
  2414. passes control back to the application. Well, the fact is that OS/2 DOES 
  2415. preempt inside of the kernel. IBM has measured how long each API takes. About 
  2416. 90% of them execute very quickly (under 1/2 millisecond). The relatively few 
  2417. that do take longer to execute have been identified and broken up into smaller 
  2418. code fragments where the system is checked to see if a higher priority program 
  2419. is waiting. If a higher priority program is waiting then execution stops in the 
  2420. middle of the operating system and transfers control directly to the higher 
  2421. priority program. This is very similar to state of the art Real-Time operating 
  2422. systems. 
  2423.  
  2424. The only problem that needs to addressed is that the external interrupts may be 
  2425. blocked for long periods of time and the system could become unresponsive. IBM 
  2426. has measured the maximum time periods which interrupts are blocked. There are 
  2427. NO long interrupt blocking periods in OS/2. 
  2428.  
  2429. Windows employs an inferior concept known as "cooperative multitasking". That 
  2430. means that the programmer decides when to give up the CPU to move on to another 
  2431. program. Naturally, every programmer wants their program to look good when it 
  2432. runs. Translated, that means that the application is going to make sure it 
  2433. completes everything it wants to do without regard to what the user wants. You 
  2434. can NOT preempt a Windows program in the DOS operating system or in the 
  2435. application while running Windows! The Windows support on OS/2 can preempt in 
  2436. both the operating system and in the emulated Windows session. That should shed 
  2437. some light on the fact that Windows programs (even multimedia) may run better 
  2438. on OS/2 than they do on real Windows. 
  2439.  
  2440. Note that there have been reviews that state Windows programs will run faster 
  2441. on Windows than on OS/2 because OS/2 has a double scheduling overhead - one for 
  2442. Windows and one for OS/2. This is not the case. There is only ONE scheduler in 
  2443. OS/2 which does ALL of the scheduling. The DOS and Window counterparts are 
  2444. short circuited directly in the main scheduling routine. 
  2445.  
  2446. What is not commonly known is that OS/2's support for "fast threads" in support 
  2447. of multi-media and other time critical applications was successfully 
  2448. generalized for all applications. The support was intended to a be high 
  2449. performance path through the OS/2 scheduler when a high priority time critical 
  2450. thread preempted any lower priority thread. Before OS/2 2.0 shipped, the high 
  2451. performance path was used any time a thread preempted any other thread of lower 
  2452. priority and when a thread became ready to run and the CPU was idle. This means 
  2453. that when you prioritize your applications (ie Regular 1, 2, 3 etc), the high 
  2454. performance path through the OS/2 scheduler is taken as opposed to NOT being 
  2455. taken if all of the application were the *SAME* priority. That information 
  2456. alone should give you incentive to prioritize your background applications. 
  2457.  
  2458. Bog Down 
  2459.  
  2460. Exercise extreme caution when mixing DOS and OS/2 applications! Used 
  2461. improperly, your system could "bog down" in matter of just hours. The slow down 
  2462. is caused by decreasing resident memory and correspondingly growing the SWAP 
  2463. file. This occurs because some OS/2 applications contain Idle class threads and 
  2464. there may not be any Idle Class cycles. When you exit an OS/2 application that 
  2465. has Idle Class threads and you are running any DOS applications with the Idle 
  2466. Sensitivity at 100%, the Idle Class threads NEVER exit. You don't know that, so 
  2467. when you start the application again more Idle Class threads just hang around 
  2468. taking up resident memory and SWAP file space. After a period of time, 8MB 
  2469. systems perform like 6MB systems. This is easy to demonstrate. Start the PULSE 
  2470. Applette from the Utility Menu. Next, Open the DOS Settings of a DOS Window and 
  2471. set the Idle Sensitivity to 100%. Start the DOS Window. Close the PULSE 
  2472. Application. Now try to start the PULSE Application again. You will get a 
  2473. message "another copy already running". Use CTRL+ESC and you will NOT see the 
  2474. PULSE Applette there! That is because it has an Idle Class thread that can not 
  2475. exit the system. Use the Active Program Snapshot in the Utility menu and you 
  2476. will see the PULSE thread in the ready state. When you close the DOS Window, 
  2477. you can start the PULSE Application because the Idle Class thread was able to 
  2478. exit. The BIG difference is that most OS/2 programs allow multiple copies and 
  2479. opening and closing them just adds more Idle Class threads to clog up your 
  2480. system. Use the Static Idle Test or PULSE and insure that Idle Class threads 
  2481. from closed applications are not clogging up your system. If they are, then 
  2482. simple close the compute bound application until Idle cycles are detected and 
  2483. then the Idle Class threads will exit. 
  2484.  
  2485. DOS Scheduling Considerations 
  2486.  
  2487. Assuming that you have DOS applications and that there are no OS/2 equivalents, 
  2488. there is way to do "pseudo" prioritization. All DOS programs share the same 
  2489. base priority level. However, their priority is adjusted periodically based on 
  2490. system events. You can not deal with those internal reprioritizations so they 
  2491. are beyond this discussion. You can give more or less CPU cycles to selected 
  2492. DOS applications using the DOS Settings. First, list your applications in the 
  2493. order of importance. Next, tune them to match your prioritization scheme. The 
  2494. DOS_BACKGROUND_EXECUTION defaults to ON, select OFF if you need keyboard input 
  2495. to run the program or do not need it to execute in the background. The 
  2496. IDLE_SECONDS should be 0 for your most important application and set to 1 or 
  2497. more for less important applications. The IDLE_SENSITIVITY should be 99% for 
  2498. the most important application and less (90, 80, 70, etc) for the others. 
  2499. System load and various other conditions may effect the actual CPU time each 
  2500. DOS session will get, however, the relative CPU proportions per DOS application 
  2501. will remain more or less consistent using only these properties. 
  2502.  
  2503.  
  2504. ΓòÉΓòÉΓòÉ 48. About Registration ΓòÉΓòÉΓòÉ
  2505.  
  2506. If you purchased this product from BMT Micro or directly from 
  2507. ScheduPerformance, Inc., then you are automatically registered. 
  2508.  
  2509. This section is for reference only. 
  2510.  
  2511. Registered users will receive advance notification for all upgrades when 
  2512. available. These products are being continuously upgraded. Registration must be 
  2513. returned within 30 days of the purchase. This is required to receive support 
  2514. and upgrade notification. Simply complete the following form and email to 
  2515. waldront@prioritymaster.com or print it out and send to: 
  2516.  
  2517.  ScheduPerformance, Inc. 
  2518.  360 Indian Creek Dr. 
  2519.  Trophy Club, TX 76262 
  2520.  
  2521. Also, The installation diskette contains a text file, REGISTER.TXT. 
  2522.  
  2523. -------------------------------------------------------------------------- 
  2524.  
  2525. Name    _______________________________________________________________ 
  2526.  
  2527. Address   _______________________________________________________________ 
  2528.  
  2529. Address   _______________________________________________________________ 
  2530.  
  2531. Address   _______________________________________________________________ 
  2532.  
  2533. Address   _______________________________________________________________ 
  2534.  
  2535. Day Phone  (___) _________________________________________________________ 
  2536.  
  2537. Work Phone (___) _________________________________________________________ 
  2538.  
  2539. Where purchased from _____________________________________________________ 
  2540.  
  2541. Todays date ______________________________________________________________ 
  2542.  
  2543. Number of PRIORITY MASTER II purchased/price  ___________________________ 
  2544.  
  2545. Number of Registered copies of OS/2 (optional) ___________________________ 
  2546.  
  2547. Number of Machines 486 or > in use  (optional) ___________________________ 
  2548.  
  2549.  
  2550. ΓòÉΓòÉΓòÉ 49. About Support ΓòÉΓòÉΓòÉ
  2551.  
  2552. Question: What level of support can be expected for the product? 
  2553.  
  2554. Answer: The PRIORITY MASTER II application is fully supported at an additional 
  2555. nominal charge. All inquiries since 1993 have been of the nature: Now that I 
  2556. have loaded the application how do I use it? In that capacity, we simply read 
  2557. the Online Help to them on the phone. You will be encouraged to read the Online 
  2558. Help by the new support policy. If the information you seek is not covered in 
  2559. the Online Help or any of OS/2's documentation and is priority related a 
  2560. nominal charge of $50/hr. (1 hr minimum) may be charged - paid in advance. 
  2561. Please be warned that this is virtually impossible since the author of the 
  2562. Priority Master II application was the actual IBM developer responsible for the 
  2563. code development, documentation (Redbooks, Command Reference, and Control 
  2564. Program Reference), and the primary author of the multiple US Patent 
  2565. applications on OS/2's scheduling policies. This also includes the multitasking 
  2566. scheduling used in OS/2's Symmetric Multiprocessing(SMP) scheduling policies. 
  2567.  
  2568. However, if the problem is in the application, or in the OS/2 Operating System, 
  2569. or a user error, or it is working as documented, or it is already covered in 
  2570. the Online Help, then an extra charge will be incurred to resolve the problem 
  2571. or provide information. Pricing is on an individual basis and is expected to be 
  2572. relative to the difficulty of the problem. In over 5 years, not a single 
  2573. problem has escaped resolution. 
  2574.  
  2575. ScheduPerformance, Inc. believes that it has the highest level of expertise on 
  2576. OS/2 2.0 , 2.1, 3.0 and 4.0 scheduling/multitasking available anywhere in 
  2577. world. 
  2578.  
  2579. Support can be obtained email at webmaster@prioritymaster.com 
  2580.  
  2581. Every reasonable effort has been done to insure that the program is "bug free" 
  2582. and works as designed. However, if you find a bug, please email to 
  2583. webmaster@prioritymaster.com or mail it to: 
  2584.  
  2585.  ScheduPerformance, Inc. 
  2586.  360 Indian Creek Dr. 
  2587.  Trophy Club, TX 76262 
  2588.  
  2589. The PRIORITY MASTER II Version 2.4 program is sold exclusively by 
  2590. ScheduPerformance, Inc. and BMT Micro. If you purchased the program from any 
  2591. other source, please notify us at webmaster@prioritymaster.com. Rewards may be 
  2592. given for information leading to the arrest and conviction of software pirates 
  2593. or unauthorized resellers. 
  2594.  
  2595.  
  2596. ΓòÉΓòÉΓòÉ 50. Utilities Menu ΓòÉΓòÉΓòÉ
  2597.  
  2598. The Utility menu provides you with a means to look into the systems operation 
  2599. relevant to static or selected priorities. 
  2600.  
  2601. Note that option values are automatically saved and restored. 
  2602.  
  2603. Auto Scan 
  2604.  
  2605.  This will execute a series of the Show All Priorities, Show Active Program, 
  2606. Memory Status and Swapfile Size. 
  2607.  
  2608. Show All Priorities 
  2609.  
  2610.  This will query the system and format the results. The results can be viewed 
  2611. on the main window, printed, or both. 
  2612.  
  2613. Active Program Snapshot 
  2614.  
  2615.  This will query the system and format the results for active programs. The 
  2616. results can be viewed on the main window, printed, or both. 
  2617.  
  2618. Memory Status 
  2619.  
  2620.  This utility reports the total configured, resident, and available on demand 
  2621. memory. 
  2622.  
  2623. Report Swap File Size 
  2624.  
  2625.  This utility reports the actual size of the Swap File. 
  2626.  
  2627. Check CONFIG.SYS 
  2628.  
  2629.  This utility checks CONFIG.SYS for the multitasking parameters to give the 
  2630. best overall throughput and smooth multitasking. 
  2631.  
  2632. Run PULSE 
  2633.  
  2634.  This is to be used to determine if a program is compute bound in response to 
  2635. the warning messages for high priority Classes and levels. 
  2636.  
  2637. Static Idle Test 
  2638.  
  2639.  This utility provides a means to check for CPU idle cycles without using the 
  2640. PULSE program. 
  2641.  
  2642. Visual Idle Cycle Detection 
  2643.  
  2644.  This is to be used to determine if a program is compute bound in response to 
  2645. the warning messages for high priority Classes and levels. This is used to 
  2646. determine if a particular application is compute bound or pooling. If you are 
  2647. uncertain, then use the Active Program Snapshot to determine if additional 
  2648. programs are also pooling or compute bound. 
  2649.  
  2650. Visual Idle Cycle Detection Interval 
  2651.  
  2652.  This allows you select the time interval between the warning messages being 
  2653. posted in the window. 
  2654.  
  2655. Audible Idle Cycle Heartbeat 
  2656.  
  2657.  This utility beeps if there are idle cycles available and stops when no idle 
  2658. cycles are available. This is used to determine if a particular application is 
  2659. compute bound or pooling. If you are uncertain, then use the Active Program 
  2660. Snapshot to determine if additional programs are also pooling or compute bound. 
  2661.  
  2662. Audible Idle Beep Interval 
  2663.  
  2664.  This allows you select the time interval between the beeps. 
  2665.  
  2666. Inverse Audible Idle Cycle Heartbeat 
  2667.  
  2668.  This utility beeps if there are no idle cycles available and stops when idle 
  2669. cycles are available. This is used to determine if a particular application is 
  2670. compute bound or pooling. If you suspect multiple compute bound or pooling 
  2671. applications, then use the Active Program Snapshot to identify them all. 
  2672.  
  2673. Inverse Audible Idle Beep Interval 
  2674.  
  2675.  This allows you select the time interval between the beeps. 
  2676.  
  2677. Auto Compute Bound Reporting 
  2678.  
  2679.  This utility will automatically engage the Active Program Snapshot when there 
  2680. are no idle cycles available and stops when idle cycles are available. This is 
  2681. used to determine if a particular application is compute bound or pooling. If 
  2682. you suspect multiple compute bound or pooling applications, this is the easiest 
  2683. way to identify them all. Note that this has higher overhead. 
  2684.  
  2685. Auto Compute Bound Reporting Interval 
  2686.  
  2687.  This allows you select the time interval between the Active Program Snapshots. 
  2688. The Minimum is three seconds. 
  2689.  
  2690.  
  2691. ΓòÉΓòÉΓòÉ 51. Auto Scanning ΓòÉΓòÉΓòÉ
  2692.  
  2693. This is useful if you need to see more detail about what is running or how much 
  2694. of the system resources are being used. 
  2695.  
  2696.  Note that you not attempt to set all of the values to their maximum limit, 
  2697. since this would most likely overload your system. Typically, you would set 
  2698. only one of the the options to 1 and then use the Execute Selections to do it a 
  2699. number of times. More advanced users may use a count of more than 1 time per 
  2700. second to a closer scan. You may want to select a combination of options. For 
  2701. example, set the Active Programs to 1 and the Memory Status to 1. This would 
  2702. give an alternating report of active programs once per second and the amount of 
  2703. memory once per second. 
  2704.  
  2705. The options are executed in the following order: All Priorities, Active 
  2706. Programs, Memory Status, and Swapfile Size. 
  2707.  
  2708. A time/date stamp is included with each scan. Note that you may add notes into 
  2709. the window before you save them to a disk file or print them. 
  2710.  
  2711.  The various options are explained as follows: 
  2712.  
  2713. All Priorities. 
  2714.  
  2715.  This shows all of the threads and their priorities and states. 
  2716.  
  2717. Active Programs. 
  2718.  
  2719.  This shows the threads and which process it belongs to as well as its 
  2720. execution priority. 
  2721.  
  2722. Memory Status: 
  2723.  
  2724.  This shows the amount of resident (pinned) memory and swapfile space. 
  2725.  
  2726. Swapfile Size Type: 
  2727.  
  2728.  The size of the swapfile at the time reported. 
  2729.  
  2730. Execute Selections: 
  2731.  
  2732.  The number of time that you want the scan to be done. 
  2733.  
  2734. Starting Time: 
  2735.  
  2736.  This allows a delay so that you can start the program or a particular option 
  2737. of the program that you want to measure. Enter the value in seconds. 
  2738.  
  2739. Class: 
  2740.  
  2741.  Set the class at which you want the scan to be done. Usually this will be 
  2742. Critical or Idle. 
  2743.  
  2744. Level: 
  2745.  
  2746.  Set the Level at which you want the scan to be done. 
  2747.  
  2748.  
  2749. ΓòÉΓòÉΓòÉ 52. Show All Priorities (terse) ΓòÉΓòÉΓòÉ
  2750.  
  2751. This option is to be used when you need to find out what are the actual 
  2752. priorities being used. 
  2753.  
  2754. This will query the system and format the data. Some system data is removed to 
  2755. simplify the results. 
  2756.  
  2757. The results can optionally be viewed on the main window, printed, or both. 
  2758.  
  2759. Note that you may use the mouse to click and drag the entries if you wish to 
  2760. highlight them. 
  2761.  
  2762. Note that real-time software monitoring tools can significantly degrade total 
  2763. system performance. 
  2764.  
  2765.  
  2766. ΓòÉΓòÉΓòÉ 53. Show All Priorities (full) ΓòÉΓòÉΓòÉ
  2767.  
  2768. This option is to be used when you need to find out what are the actual 
  2769. priorities being used and you may need the additional data supplied by this 
  2770. option. 
  2771.  
  2772. The results can optionally be viewed on the main window, printed, or both. 
  2773.  
  2774. Note that you may use the mouse to click and drag the entries if you wish to 
  2775. highlight them. 
  2776.  
  2777. Note that real-time software monitoring tools can significantly degrade total 
  2778. system performance. 
  2779.  
  2780.  
  2781. ΓòÉΓòÉΓòÉ 54. Active Program Snapshot ΓòÉΓòÉΓòÉ
  2782.  
  2783. This option is to be used when you need to find out what runs most frequently 
  2784. on your system. If you see the same program in the Ready state after several 
  2785. invocations, then it is an indication of a compute bound application (never 
  2786. wants to give up the CPU). If this is a DOS program, you should check the Idle 
  2787. Sensitivity and insure that you are not running it at 100% (use 99% as the top 
  2788. limit). 
  2789.  
  2790. Although the PULSE program will draw the line at the top of the graph when 
  2791. there is ANY compute bound application, this option will allow you to identify 
  2792. them by name. 
  2793.  
  2794. This utility queries the system and formats the data. Some system data is 
  2795. removed to simplify the results. 
  2796.  
  2797. The results can optionally be viewed on the main window, printed, or both. 
  2798.  
  2799. Note that you may use the mouse to click and drag the entries if you wish to 
  2800. highlight them. 
  2801.  
  2802. Note that real-time software monitoring tools can significantly degrade total 
  2803. system performance. 
  2804.  
  2805. No attempt has been made to make this feature perform in real-time. Therefore, 
  2806. on VERY slow machines (386SX 20MHz or less), the results presented may be from 
  2807. the previous invocation. In that event, simply select again and visually 
  2808. compare the results. 
  2809.  
  2810.  
  2811. ΓòÉΓòÉΓòÉ 55. Static Idle Test ΓòÉΓòÉΓòÉ
  2812.  
  2813. This option is intended to provide you an alternative to the PULSE program to 
  2814. determine if there are any CPU idle cycles. When PULSE is running, there are NO 
  2815. spare CPU cycles. The CPU is running full speed. This is true of other CPU 
  2816. monitoring tools which give percentages of execution. These are considered NOT 
  2817. to be "well behaved" programs. However, this option uses extremely low overhead 
  2818. and facilitates good overall system operation. 
  2819.  
  2820. It is important NOT to run the PULSE program while selecting this test. Running 
  2821. the PULSE program before selecting this option may invalidate the results. 
  2822.  
  2823. It is important for OS/2 to have occasional spare Idle cycles, especially on 
  2824. systems with 16MB or less. The less memory that you have, the more important 
  2825. that it becomes. This is because OS/2 priority preemptive scheduler performs 
  2826. specialized "house cleaning" functions when there are no threads to run. These 
  2827. functions may have patents pending on them, so they can not be mentioned. 
  2828. Suffice it to say that CPU idle cycles allow OS/2 to anticipate user requests 
  2829. that it would not do otherwise. Therefore, refrain from using the Pulse 
  2830. applette all of the time or any other monitoring tool that is compute bound. 
  2831.  
  2832. Perhaps you have noticed that this is all part of a grand scheme. Once you 
  2833. begin to see what is actually running on your system over a period of time, you 
  2834. will begin to realize that pooling applications drain the life out of your 
  2835. machine. Specifically, the DOS programs. When the system is very busy, you may 
  2836. need to set the Idle Sensitivity to 99% (NEVER 100%!). However, when it becomes 
  2837. less loaded, the DOS programs will consume the spare CPU cycles. You can not 
  2838. reasonably continuously adjust the value, so by definition of pooling YOU WILL 
  2839. LOOSE VALUABLE CPU CYCLES AS LONG AS YOU RUN DOS PROGRAMS REQUIRING KEYBOARD 
  2840. INPUT. The theory of the ScheduPerformance, Inc. products is to set the 
  2841. priority of the good OS/2 programs higher than the DOS pooling programs. At 
  2842. least after the good programs have done real work, then the DOS programs can 
  2843. pool all that they want. However, over time it may become apparent to you that 
  2844. your best bet is a native OS/2 program. 
  2845.  
  2846.  
  2847. ΓòÉΓòÉΓòÉ 56. Run PULSE ΓòÉΓòÉΓòÉ
  2848.  
  2849. This option is intended to provide you an EASY way to determine if a program is 
  2850. compute bound over a period of time. It simply locates the program and executes 
  2851. it from inside PRIORITY MASTER II. 
  2852.  
  2853.  
  2854. ΓòÉΓòÉΓòÉ 57. Visual Idle Cycle Detection ΓòÉΓòÉΓòÉ
  2855.  
  2856. This option is intended to provide you an EASY way to determine if a program is 
  2857. compute bound over a period of time. 
  2858.  
  2859. When the option is selected (ON), The message " WARNING - CPU IS AT 100 PERCENT 
  2860. FOR  x  SECONDS" is displayed in the window when there are no idle cycles for 
  2861. the specified period. 
  2862.  
  2863. This will indicate that there are compute bound (or pooling) applications 
  2864. greater than the Idle Class Level one. 
  2865.  
  2866. Try running some of your favorite applications to see if the message will 
  2867. occur. If so, then you have discovered a compute bound or pooling application, 
  2868. program. Keep in mind that compute bound applications in memory overcommit 
  2869. scenarios reduce OS/2's ability to compact the swapfile and do other similar 
  2870. functions. 
  2871.  
  2872. If you suspect that there may be more than one pooling or compute bound 
  2873. application, or you wish to verify your findings, then use the Active Program 
  2874. Snapshot. Multiple selections of the Active Program Snapshot will show the same 
  2875. program in the ready state. That is your verification. 
  2876.  
  2877.  
  2878. ΓòÉΓòÉΓòÉ 58. Visual Idle Detection Interval ΓòÉΓòÉΓòÉ
  2879.  
  2880. This option allows you to select the time interval between the message  " 
  2881. WARNING - CPU IS AT 100 PERCENT FOR  x  SECONDS" being posted in the window. 
  2882.  
  2883.  
  2884. ΓòÉΓòÉΓòÉ 59. Auto Compute Bound Reporting ΓòÉΓòÉΓòÉ
  2885.  
  2886. This option is intended to provide you an EASY way to determine if a program is 
  2887. compute bound over a period of time. 
  2888.  
  2889. When the option is selected (ON), it will automatically engage the Active 
  2890. Program Snapshot when there are no idle cycles available and stops when idle 
  2891. cycles are available. This is used to determine if a particular application is 
  2892. compute bound or pooling. If you suspect multiple compute bound or pooling 
  2893. applications, this is the easiest way to identify them all. Note that this has 
  2894. higher overhead. 
  2895.  
  2896. This will indicate that there are compute bound (or pooling) applications 
  2897. greater than the Idle Class Level one and display the candidates path. 
  2898.  
  2899. Try running some of your favorite applications to see if the Active Program 
  2900. Snapshot is displayed in the applications window. If so, then you have 
  2901. discovered a compute bound or pooling application, program. Keep in mind that 
  2902. compute bound applications in memory overcommit scenarios reduce OS/2's ability 
  2903. to compact the swapfile and do other similar internal functions. 
  2904.  
  2905.  
  2906. ΓòÉΓòÉΓòÉ 60. Auto Compute Bound Reporting Interval ΓòÉΓòÉΓòÉ
  2907.  
  2908. This allows you select the time interval between the Active Program Snapshots. 
  2909. The Minimum is three seconds. Five seconds or more is recommended for slower 
  2910. machines. 
  2911.  
  2912.  
  2913. ΓòÉΓòÉΓòÉ 61. Audible Idle Cycle Heartbeat ΓòÉΓòÉΓòÉ
  2914.  
  2915. This option is intended to provide you an EASY way to determine if a program is 
  2916. compute bound over a period of time. The beeps will occur as long as there are 
  2917. no compute bound (or pooling) applications greater than the Idle Class Level 
  2918. one. 
  2919.  
  2920. This option generates a thread at the lowest Class and Level an executes 
  2921. (beeps) only if there is nothing higher in priority to execute. 
  2922.  
  2923. When the option is selected (ON), it should always beep. Try running some of 
  2924. your favorite applications to see if the beeps continue. If they stop 
  2925. completely and resume when you close the application, then you have discovered 
  2926. a compute bound or pooling program. Keep in mind that compute bound 
  2927. applications in memory overcommit scenarios reduce OS/2's ability to compact 
  2928. the swapfile and do other similar functions. 
  2929.  
  2930. If you suspect that there may be more than one pooling or compute bound 
  2931. application, or you wish to verify your findings, then use the Active Program 
  2932. Snapshot. Multiple selections of the Active Program Snapshot will show the same 
  2933. program in the ready state. That is your verification. 
  2934.  
  2935. When you exit with this utility turned ON, then it will be automatically 
  2936. restarted the next time that you start the PRIORITY MASTER II program. 
  2937.  
  2938. Note that it executes at the SAME Class and Level as the lowest thread in the 
  2939. PULSE application. Therefore, if PULSE is running, they will round-robin 
  2940. together. 
  2941.  
  2942.  
  2943. ΓòÉΓòÉΓòÉ 62. Audible Idle Beep Interval ΓòÉΓòÉΓòÉ
  2944.  
  2945. This option allows you to select the time interval between the beeps. 
  2946.  
  2947.  
  2948. ΓòÉΓòÉΓòÉ 63. Inverse Audible Idle Cycle Heartbeat ΓòÉΓòÉΓòÉ
  2949.  
  2950. This option is intended to provide you an EASY way to determine if a program is 
  2951. compute bound over a period of time. The beeps will occur as long as there are 
  2952. no idle cycles available. This will indicate that there are compute bound (or 
  2953. pooling) applications greater than the Idle Class Level one. 
  2954.  
  2955. This option generates a thread at the lowest Class and Level an executes 
  2956. (beeps) only if there idle NO cycles available. 
  2957.  
  2958. When the option is selected (ON), it will only beep when there are NO idle 
  2959. cycles available. Try running some of your favorite applications to see if the 
  2960. beeps occur. If the beeps begin when you start the application and stop 
  2961. completely when you close the application, then you have discovered a compute 
  2962. bound or pooling program. Keep in mind that compute bound applications in 
  2963. memory overcommit scenarios reduce OS/2's ability to compact the swapfile and 
  2964. do other similar functions. 
  2965.  
  2966. If you suspect that there may be more than one pooling or compute bound 
  2967. application, or you wish to verify your findings, then use the Active Program 
  2968. Snapshot. Multiple selections of the Active Program Snapshot will show the same 
  2969. program in the ready state. That is your verification. 
  2970.  
  2971. When you exit with this utility turned ON, then it will be automatically 
  2972. restarted the next time that you start the PRIORITY MASTER II program. 
  2973.  
  2974. Note that it executes at the SAME Class and Level as the lowest thread in the 
  2975. PULSE application. Therefore, if PULSE is running, they will round-robin 
  2976. together. 
  2977.  
  2978.  
  2979. ΓòÉΓòÉΓòÉ 64. Inverse Audible Idle Beep Interval ΓòÉΓòÉΓòÉ
  2980.  
  2981. This option allows you to select the time interval between the beeps. 
  2982.  
  2983.  
  2984. ΓòÉΓòÉΓòÉ 65. Memory Status ΓòÉΓòÉΓòÉ
  2985.  
  2986. This option reports the total memory configured (actual hardware), the amount 
  2987. of resident memory (used by OS/2 and device drivers), and the amount of memory 
  2988. on demand (includes Swapfile space). 
  2989.  
  2990. As the system becomes loaded, the last entry will decrease correspondingly. Use 
  2991. this option to monitor your overload. When the value becomes low (ie 4MB or 
  2992. less), be sure to keep idle cycles available. 
  2993.  
  2994. It is good practice to enter a short note about the name of the program that 
  2995. you are going to run directly into the window and then select this option. This 
  2996. will identify the resident memory and nonresident requirements of the program 
  2997. for later analysis. 
  2998.  
  2999. Note that some utilities that monitor system status (ie CPU idle cycles, 
  3000. Swapfile size, etc) will use up all CPU cycles and thus make the problems 
  3001. associated with overloads, worse. None of the utilities in this package fall 
  3002. into that category. However, in general, do as little monitoring as possible 
  3003. when overload conditions occur to help total system throughput. 
  3004.  
  3005.  
  3006. ΓòÉΓòÉΓòÉ 66. Report Swap File Size ΓòÉΓòÉΓòÉ
  3007.  
  3008. This option reports the actual size of the swap file. As the system becomes 
  3009. more loaded, the size of the swap file will increase. In general, the size of 
  3010. the swapfile should not be more than 1/2 of the swappable memory size. For 
  3011. example, a system with 16MB of memory and 4MB being resident should have no 
  3012. more than 6MB ((16-4)/2). 
  3013.  
  3014. It is good practice to enter a short note about the name of the program that 
  3015. you are going to run directly into the window and then select this option. This 
  3016. will identify the swapfile requirements of the program for later analysis. 
  3017.  
  3018.  
  3019. ΓòÉΓòÉΓòÉ 67. Check CONFIG.SYS ΓòÉΓòÉΓòÉ
  3020.  
  3021. This option checks the settings in the CONFIG.SYS for MAXWAIT, TIMESLICE, and 
  3022. DYNAMIC priority variation and gives recommendations. 
  3023.  
  3024. MAXWAIT 
  3025.  
  3026. MAXWAIT is the highest number of seconds that a ready to run thread in the 
  3027. Regular or Server Class has to wait before receiving a boost in priority. This 
  3028. boost is only temporary and is intended to give the thread a chance to execute. 
  3029.  
  3030. Note that this value does not effect threads in the Idle or Time Critical 
  3031. Classes. 
  3032.  
  3033. Note that Time Critical applications are higher in priority than the boost that 
  3034. can be applied to the Regular or Server Classes based on MAXWAIT. 
  3035.  
  3036. TIMESLICE 
  3037.  
  3038. TIMESLICE has two parameters. The first value is the maximum amount of time in 
  3039. milliseconds that a boost will be applied as the result of an internal system 
  3040. event (ie an I/O boost). The second value is the maximum number of milliseconds 
  3041. that a thread can execute before relinquishing control of the CPU to another 
  3042. ready to run thread at the SAME priority level. 
  3043.  
  3044. Note that the minimum values for both parameters is 32 milliseconds. Also, 
  3045. values are rounded up to the next increment of 32 milliseconds. 
  3046.  
  3047. Note that the system default is not to have a TIMESLICE directive in the 
  3048. CONFIG.SYS file. This is called dynamic timeslicing. This gives the best 
  3049. overall performance when only OS/2 programs are executing. However, 
  3050. TIMESLICE=32,32 gives the best overall performance when running DOS or Windows 
  3051. programs. 
  3052.  
  3053. DYNAMIC Priority Variation 
  3054.  
  3055. DYNAMIC priority variation is the system default. This means that a boost such 
  3056. as Foreground, I/O, Keyboard, and MAXWAIT is applied when appropriate. This is 
  3057. intended for general use. However, PRIORITY=ABSOLUTE is provided for strict 
  3058. Real-Time process control environments such as factory automation. In these 
  3059. environments, there is generally no user intervention while the programs are 
  3060. running. 
  3061.  
  3062.  
  3063. ΓòÉΓòÉΓòÉ 68. Window-Controls Menu ΓòÉΓòÉΓòÉ
  3064.  
  3065. The Window-Controls menu provides control over the output to the main window. 
  3066.  
  3067. Font 
  3068.  
  3069.  Presents a standard Font Dialog of only acceptable fonts for data output. 
  3070.  
  3071. Background Color 
  3072.  
  3073.  Presents a choice of 16 Window background colors. 
  3074.  
  3075. Text Color 
  3076.  
  3077.  Presents a choice of 16 Window text colors. 
  3078.  
  3079. Print Window Text 
  3080.  
  3081.  Prints the text generated in the window. 
  3082.  
  3083. Save Text in a File 
  3084.  
  3085.  Presents a standard open file dialog to save the text generated in the window. 
  3086.  
  3087. Clear Window Text 
  3088.  
  3089.  Clears the text generated by the Show All Priorities or the Active Program 
  3090. Snapshot Utilities. 
  3091.  
  3092. Search Displayed Text 
  3093.  
  3094.  Searches the text in the Window and highlights any found text. 
  3095.  
  3096.  
  3097. ΓòÉΓòÉΓòÉ 69. Clear Text on Window ΓòÉΓòÉΓòÉ
  3098.  
  3099. This option simply clears the text generated in the MLE window. 
  3100.  
  3101.  
  3102. ΓòÉΓòÉΓòÉ 70. Print Window Text ΓòÉΓòÉΓòÉ
  3103.  
  3104. This option simply prints all of the text in the window 
  3105.  
  3106.  
  3107. ΓòÉΓòÉΓòÉ 71. Save Text in a File ΓòÉΓòÉΓòÉ
  3108.  
  3109. This option saves all of the text in the window using the standard open file 
  3110. dialog. 
  3111.  
  3112.  
  3113. ΓòÉΓòÉΓòÉ 72. Font ΓòÉΓòÉΓòÉ
  3114.  
  3115. This option presents a standard Font Dialog and eliminates guesswork by 
  3116. providing only fixed width fonts. Using any of these fonts will always allow 
  3117. the window presented data to align properly. 
  3118.  
  3119.  
  3120. ΓòÉΓòÉΓòÉ 73. Search Displayed Text ΓòÉΓòÉΓòÉ
  3121.  
  3122. This option provides a search capability for the text displayed in the Window. 
  3123. You may limit the search by placing the cursor anywhere in the text and the 
  3124. search will begin at that point. 
  3125.  
  3126. Subsequent searches will present the last entered search string and the search 
  3127. will start from the last found search string. If a new string is entered, then 
  3128. the search will begin from the start of the text. The text searched is the 
  3129. output from the Show All Priorities, Active Program snapshot, and Memory Status 
  3130. Utilities. 
  3131.  
  3132. The F2 button can be used for repeat searches. 
  3133.  
  3134.  
  3135. ΓòÉΓòÉΓòÉ 74. Background Color ΓòÉΓòÉΓòÉ
  3136.  
  3137. This option presents some common background colors for the data output by the 
  3138. Show All Priorities, Active Program snapshot, and Memory Status Utilities. 
  3139.  
  3140.  
  3141. ΓòÉΓòÉΓòÉ 75. Text Color ΓòÉΓòÉΓòÉ
  3142.  
  3143. This option presents some common text colors for the data output by the Show 
  3144. All Priorities, Active Program snapshot, and Memory Status Utilities. 
  3145.  
  3146.  
  3147. ΓòÉΓòÉΓòÉ 76. Uninstall ΓòÉΓòÉΓòÉ
  3148.  
  3149. This option removes all files associated with the product and removes the 
  3150. Desktop Icon. A query dialog will be presented to confirm the Uninstall 
  3151. process. 
  3152.  
  3153.  
  3154. ΓòÉΓòÉΓòÉ 77. About Uses ΓòÉΓòÉΓòÉ
  3155.  
  3156. General Overview 
  3157.  
  3158. The standard OS/2 gives the user the choice of Foreground or Background 
  3159. execution of their programs. The Foreground application gets the "virtual" 
  3160. console - keyboard, mouse, video systems and a priority boost over Background 
  3161. applications in the default configuration. The idea is that the Foreground 
  3162. application gets all of the CPU time that it needs, and what is remaining gets 
  3163. divided up among the Background applications. This is generally the case when 
  3164. all of the programs running do not set their own priority internal to the 
  3165. application. 
  3166.  
  3167. What does it do? 
  3168.  
  3169. This program allows you to set the priority of OS/2 Windows, Full Screens, or 
  3170. any OS/2 VIO or PM applications. Additionally, it provides a virtually zero 
  3171. overhead method to find compute bound applications. 
  3172.  
  3173. Why set the priority of USER applications? 
  3174.  
  3175. It allows you to establish an order to the programs so that YOU decide which 
  3176. one gets done first, second, third and so on. If you only run one one program 
  3177. at a time, then it does not matter what the priority is assigned. 
  3178. Prioritization is important when there are two or more programs in the 
  3179. background competing for CPU time. 
  3180.  
  3181. Why is it important to find compute bound applications? 
  3182.  
  3183. Compute bound applications lock out all lower priority applications. Based on 
  3184. the MAXWAIT parameter in CONFIG.SYS, applications in the Regular and Server 
  3185. Classes will get a boost to "some" CPU time. However, the single most important 
  3186. element is that the settings associated with the DOS or Windows programs may be 
  3187. too high. Using the Audible Idle Cycle Heartbeat or Inverse Audible Idle Cycle 
  3188. Heartbeat, you may discover that the application is compute bound. You may 
  3189. recover "lost" CPU cycles and divert them to actual work simply by reducing the 
  3190. various settings. If the program requires full use of the CPU, then you may NOT 
  3191. want it on the desktop if no real work is being performed. 
  3192.  
  3193. What are some of the actual uses? 
  3194.  
  3195. * For those who are running multiple programs in the background and need to 
  3196. have one or more programs get favored execution status. 
  3197.  
  3198. * For those who need to run a background program ahead of the foreground 
  3199. application. 
  3200.  
  3201. * For those who are running on a LAN and want their background programs to get 
  3202. equal or favored execution status during heavy LAN transfers. 
  3203.  
  3204. * For those who want a single desktop icon to execute several programs at 
  3205. various priorities via a command file. 
  3206.  
  3207. * When you want to see what is executing without a lot of overhead. 
  3208.  
  3209. * When you want to see if a particular program is just too low in priority to 
  3210. execute. 
  3211.  
  3212. * When you want to look at the priority of all the programs on your system. 
  3213.  
  3214. * When you think that the system is hung, or unresponsive, and want to see if 
  3215. any program is hogging all of the CPU time. 
  3216.  
  3217. * When you have a large number of threads running, you can use the search 
  3218. feature to find a given thread. 
  3219.  
  3220. * When you want to verify that all of the threads of a given program have 
  3221. exited the system. This is the case with some applications that have Idle Class 
  3222. threads. For example, start the PULSE program, next, run a DOS Window at 100% 
  3223. Idle Sensitivity. Close the PULSE program. Use the Active Program Snapshot and 
  3224. you find an Idle Class thread that can not exit the system. That is because the 
  3225. DOS Window prevents the Idle Class thread of PULSE from exiting. Some OS/2 
  3226. programs will allow multiple copies so they may "clog" up. Simply identifying 
  3227. the compute bound applications and closing them will allow the Idle Class 
  3228. threads to exit and free up more memory. 
  3229.  
  3230. * When you want to find out how much memory is configured on your system, how 
  3231. much is resident, and how much is available (including swapfile space) by using 
  3232. Memory Status. You can also get the Memory Status, then start a large program 
  3233. and get the Memory Status again. This will tell you how much resident and 
  3234. swapfile space is used by the application. 
  3235.  
  3236. * When you want to start a group of programs at various priorities or all the 
  3237. same priority and close them all at once by using Auto-Close on Exit. 
  3238.  
  3239. Setting priority and starting programs a certain time. 
  3240.  
  3241. A number of calls have come in asking if the Priority Master program will start 
  3242. a program at certain time. The answer is no, because OS/2 already has that 
  3243. capability. It is in the ALARMS program of the PRODUCTIVITY folder. Start the 
  3244. program. Select Alarms / Set alarm. If you want to set the priority of the 
  3245. program, then in the Comment: field use the SP program followed by the parms 
  3246. and executable. For example, SP.EXE r15 o Backup.exe. Next, check the Execute 
  3247. comment as command at Alarm time. This example will start the Backup program at 
  3248. the Regular Class, Level 15 at the time which you set. The problem is that you 
  3249. need to be careful when assigning the Class and Level. You are encouraged to 
  3250. use the Priority Master II program with the Information and Warning messages 
  3251. turned ON for a while before you use the Alarms program and set the priority. 
  3252. Also, check (with the Idle detection utilities) for compute bound programs and 
  3253. follow the Class and Level recommendations. 
  3254.  
  3255. What are some of the actual uses specific to OS/2 developers? 
  3256.  
  3257. * Increase the priority of background compiles/links. This is especially true 
  3258. if you start a make and then view a file. Scrolling through the file will 
  3259. prevent the background compile/link. If you need convincing, then start a make 
  3260. and switch to an OS/2 window. Next, do a type readme (or any large text file) 
  3261. in an infinite loop. Go to lunch, you will be lucky if a large make completes 
  3262. before lunch is over. Therefore, set the priority of background compiles to 
  3263. Server Class, level 1. Doing this as a habit will give you faster compile/link 
  3264. times. 
  3265.  
  3266. Most of the time OS/2 developers build their programs when a single object file 
  3267. is being changed. However, at some point, they must build a product containing 
  3268. many objects. Unfortunately, makefiles process the objects sequentially until 
  3269. all of the objects are built and then links the objects together to produce the 
  3270. executable. This is just plain dumb! With very little effort, the makefile can 
  3271. be split into two makefiles. One makefile contains about 60% of the objects and 
  3272. does not perform the final link. The other makefile contains the remaining 
  3273. objects and does the final link. By setting the priority of the first makefile 
  3274. high and the one containing the final link low, fantastic performance benefits 
  3275. result! Use Idle and Regular or Regular and Time Critical for the best results. 
  3276. Well, how much of a difference does it make? Pentium 60MHz easily outperform 
  3277. Pentium 90 MHz using this technique. Now that you have both the PRIORITY MASTER 
  3278. II program and this new build technique - TRY IT! By the way, what do you think 
  3279. about OS/2 developers that do NOT use the PRIORITY MASTER II program and this 
  3280. new build technique? 
  3281.  
  3282. Does it make that much of a difference to increase the priority of background 
  3283. compile/links? 
  3284.  
  3285. Yes. For example, to build the PRIORITY MASTER II program takes about 1 min. If 
  3286. you run a DOS window at 100% Idle Sensitivity with the build of the PRIORITY 
  3287. MASTER II program, both in the Background, it takes over 2 min. By making the 
  3288. build of the PRIORITY MASTER II program at Regular Class and Level 1 it 
  3289. completes in about 1 min even though the DOS Window is at 100% Idle 
  3290. Sensitivity. That's a 50% performance improvement. This test was repeated with 
  3291. two DOS Windows at 100% Idle Sensitivity and three concurrent builds of the 
  3292. PRIORITY MASTER II program. Completion times on the three builds were 10 min., 
  3293. 10 min. 30 sec, and 11 min. Using the PRIORITY MASTER II application to build 
  3294. the PRIORITY MASTER II on Regular class levels 1, 2, and 3 changed the times to 
  3295. 1 min. 30 sec, 2 min, 2 min. 20 sec. even though the two DOS Windows were also 
  3296. running. That's about a 500% performance improvement. That is why you need to 
  3297. get the OS/2 programs out of the Regular Class level 0 when mixing DOS and/or 
  3298. Windows and/or compute bound background programs with OS/2 background 
  3299. compiles/links. 
  3300.  
  3301. * Use the Active Program Snapshot and verify that the application is only 
  3302. running when it should. Check for "runaway" threads that may be pooling 
  3303. anything in the application. This may not be easily apparent. To expose 
  3304. priority inversions within a multi-threaded application, set the MAXWAIT 
  3305. parameter to 10 and check if the program freezes up for the 10 seconds. 
  3306.  
  3307. Use the Idle Tests. Avoid any long compute bound code fragments. These will 
  3308. adversely affect background activity. 
  3309.  
  3310. Use the Show All Priorities option and verify that the applications priority is 
  3311. what you expect it to be. Avoid using any set priority calls inside of DLL's. 
  3312.  
  3313.  
  3314. ΓòÉΓòÉΓòÉ 78. About Virtual Function Keys ΓòÉΓòÉΓòÉ
  3315.  
  3316. There are 12 virtual function keys supported. 
  3317.  
  3318. The function keys and their corresponding functions are as follows: 
  3319.  
  3320. F1 - Online Help 
  3321.  
  3322. F2 - Search Text in the Window 
  3323.  
  3324. F3 - Exit 
  3325.  
  3326. F4 - Active Program Snapshot 
  3327.  
  3328. F5 - Memory Status 
  3329.  
  3330. F6 - Report Swapfile Size 
  3331.  
  3332. F7 - Show All Priorities 
  3333.  
  3334. F8 - Clear Text in Window 
  3335.  
  3336. F9 - Prioritized OS/2 Window/Full Screen 
  3337.  
  3338. F10 - Generate Multiple Sessions 
  3339.  
  3340. F11 - Find Program and Prioritize 
  3341.  
  3342. F12 - Run Prioritized Programs From List 
  3343.  
  3344.  
  3345. ΓòÉΓòÉΓòÉ 79. About Overview ΓòÉΓòÉΓòÉ
  3346.  
  3347. Priorities 
  3348.  
  3349. The title bar in the Priority Master II application always has a Class and 
  3350. Level displayed. That is the starting "priority" of any programs launched from 
  3351. within the application. If the application needs to set its own priority 
  3352. internally, then the Priority Master II will not work on those programs. This 
  3353. is for compatibility. Most OS/2 applications do not set their own priority and 
  3354. these will be set to the priority in the main window title bar. 
  3355.  
  3356. Run the OS/2 program that you want to adjust its priority. Use the Show All 
  3357. Priorities Option and verify that all of its threads are the default priority 
  3358. (REG 0). 
  3359.  
  3360. Select a Class. 
  3361.  
  3362. Use the Regular Class as your first option. Making a program very high (time 
  3363. critical) is not generally recommended. 
  3364.  
  3365. Select a Level. 
  3366.  
  3367. Note that the Auto-Increment and Auto-Decrement options will increase or 
  3368. decrease the priority level in the main window title bar. 
  3369.  
  3370. Use the Find Program and Prioritize, Run Prioritized Programs From List, 
  3371. Prioritized OS/2 Window, or Prioritized OS/2 Full Screen Option. 
  3372.  
  3373. The SP program (freeware) is located on the web site at 
  3374. www.prioritymaster.com/demo.html for download. Unzip and put this into your 
  3375. tools directory. This is a command line version to set the priority of 
  3376. programs. You can build a command file containing several "set priority" 
  3377. commands of your programs after you have determined the proper Class and Level. 
  3378. Next, you could make a duplicate copy of an OS/2 window and set the path to 
  3379. point to the command file. 
  3380.  
  3381. Other Uses 
  3382.  
  3383. Use the Audible Idle Cycle Heartbeat or the Inverse Audible Idle Cycle 
  3384. Heartbeat on all of your commonly used programs. Insure that the test show some 
  3385. Idle cycles. If not, then adjust the settings (DOS and Windows programs) or 
  3386. close the application when you are not using them. This will give better 
  3387. overall performance and is an easy exercise that only needs to be done once. 
  3388.  
  3389. The importance of this activity can NOT be overstated. Background compute bound 
  3390. programs will all but freeze background OS/2 programs. This is not just a 
  3391. property of the OS/2 scheduling policies, it is a property of ALL priority 
  3392. preemptive operating systems. The OS/2 schedulers gives at least 32 
  3393. milliseconds (1/30 of a second) to execute before switching to another program 
  3394. of the same priority. When the target is a compute bound code sequence, it will 
  3395. receive the full time slice. OS/2 programs naturally give up their time slice 
  3396. before the 32 milliseconds expire. For example, just to boot OS/2 there are 
  3397. roughly 400 schedules per second. That is 1/30 of a second for a compute bound 
  3398. program, 1/400 of a second for an OS/2 program. On the next scheduling, that is 
  3399. 1/30 + 1/30 for the compute bound, 1/400 + 1/400 for the OS/2 program. In just 
  3400. two scheduling events, that is 1/15 of a second vs 1/200 of a second. This is 
  3401. just an example. However, the effect is dramatic. OS/2 background programs will 
  3402. experience poor performance when there are ANY compute bound programs running 
  3403. at the same priority level due to their "well behaved" nature. Boosting the 
  3404. priority of the well behaved OS/2 background programs a single level (to 
  3405. Regular 1) will avert the problem. Removing compute bound background programs, 
  3406. by reducing their settings or not running them, is a better solution. 
  3407.  
  3408. Therefore, please take the time to perform the simple exercise of testing all 
  3409. of your commonly used programs for spare Idle cycles. 
  3410.  
  3411.  
  3412. ΓòÉΓòÉΓòÉ 80. About Performance ΓòÉΓòÉΓòÉ
  3413.  
  3414. You will be convinced, beyond any doubt, that in any priority preemptive 
  3415. multitasking operating system priority is very important. Priority is 
  3416. performance. 
  3417.  
  3418. Although this data was taken a long time ago (1993), the relative speed 
  3419. increase of todays machine does not invalidate the results. In effect, faster 
  3420. machines just "spin" faster. 
  3421.  
  3422. The following examples were performed on a custom i486 SX 33Mhz (running at 
  3423. 40Mhz) with 16Mb of memory,  256K Cache - using the FAT file system with 
  3424. DISKCACHE=512,LW,32 and MAXWAIT=3 (default values). 
  3425.  
  3426. Performance data using 16MB of memory. 
  3427.  
  3428. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  3429. ΓöéDESCRIPTION                             Γöé OS/2  Γöé  PMI  Γöé% DIFF Γöé
  3430. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3431. ΓöéMake                                    Γöé1 28   Γöé1 28   Γöé0      Γöé
  3432. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3433. ΓöéFDW / BOS2 Make                         Γöé2 34   Γöé1 26   Γöé1.79X  Γöé
  3434. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3435. ΓöéFDW / BOS2 Make + BDW                   Γöé7 26   Γöé1 32   Γöé4.85X  Γöé
  3436. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3437. ΓöéFDW / BOS2 Make + 2 BDW                 Γöé9 36   Γöé1 44   Γöé5.54X  Γöé
  3438. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3439.  
  3440. LEGEND: 
  3441.  
  3442.  FDW - Foreground DOS Window at 100% idle sensitivity (compute bound) 
  3443.  
  3444.  BDW - Background DOS Window at 100% idle sensitivity (compute bound) 
  3445.  
  3446.  BOS2 - Background OS/2 Window 
  3447.  
  3448.  Make - OS/2 program to build an application (some compute sections and I/O) 
  3449.  
  3450. Note: Times are presented in minutes and seconds 
  3451.  
  3452. The data shows that using a Priority Master II Prioritized OS/2 Window at the 
  3453. Regular Class Level 1 (one level above default) in the background to do the 
  3454. Make was 1.79 times faster. 
  3455.  
  3456. Notice that as more background DOS Windows with 100% Idle sensitivity are added 
  3457. to the background, the performance of background OS/2 programs decreases 
  3458. rapidly. This is because a compute bound program will always use up its entire 
  3459. time slice, whereas a well behaved OS/2 program will many times use very little 
  3460. of its time slice and give up the CPU. This behavior is not specific to the 
  3461. priority preemptive scheduler on OS/2, rather this is how all priority 
  3462. preemptive systems work. The idea behind this product is to allow the OS/2 
  3463. program to get into execution for the little time that it needs without waiting 
  3464. for the compute bound applications to expend their time slices. 
  3465.  
  3466. This is why it is so important to use the Idle detection test (Static Idle 
  3467. Test, Audible Idle Cycle Heartbeat or Inverse Idle Cycle Heartbeat) to identify 
  3468. compute bound programs. Decrease their settings or do not leave them on the 
  3469. desktop when they are not being used. DOS programs that need keyboard input 
  3470. should have their Background Execution to OFF (default is ON). 
  3471.  
  3472. The Make program is used by application developers to build OS/2 applications. 
  3473. These results would still be similar in any program which alternately did some 
  3474. work, then would read/write to the disk. 
  3475.  
  3476. Memory Considerations 
  3477.  
  3478. The above tests were repeated in 8MB of memory. 
  3479.  
  3480. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  3481. ΓöéDESCRIPTION                             Γöé OS/2  Γöé  PMI  Γöé% DIFF Γöé
  3482. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3483. ΓöéMake                                    Γöé1 44   Γöé1 44   Γöé0      Γöé
  3484. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3485. ΓöéFDW / BOS2 Make                         Γöé2 34   Γöé1 48   Γöé1.78X  Γöé
  3486. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3487. ΓöéFDW / BOS2 Make + BDW                   Γöé8 54   Γöé1 51   Γöé4.85X  Γöé
  3488. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3489. ΓöéFDW / BOS2 Make + 2 BDW                 Γöé11 05  Γöé1 54   Γöé5.54X  Γöé
  3490. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3491.  
  3492. LEGEND: 
  3493.  
  3494.  FDW - Foreground DOS Window at 100% idle sensitivity (compute bound) 
  3495.  
  3496.  BDW - Background DOS Window at 100% idle sensitivity (compute bound) 
  3497.  
  3498.  BOS2 - Background OS/2 Window 
  3499.  
  3500.  Make - OS/2 program to build an application (some compute sections and I/O) 
  3501.  
  3502. Note: Times are presented in minutes and seconds 
  3503.  
  3504. Note that the all times were longer, however, the relative performance gain was 
  3505. about the same. It needs to be pointed out that the DOS window in each case was 
  3506. not executing a program - only the cursor was flashing. If there were actual 
  3507. programs in the DOS windows, then the effect would become greater using 
  3508. prioritization. 
  3509.  
  3510. Finally, the above two tables would show better results with the following 
  3511. changes to CONFIG.SYS - DISKCACHE=2048,LW,128, MAXWAIT=1, TIMESLICE=32,32. The 
  3512. time for a single Make goes from 1 min. 28 sec. to 1 min 5 sec (20% faster) and 
  3513. all of the values would be correspondingly lower. 
  3514.  
  3515.  
  3516. ΓòÉΓòÉΓòÉ 81. About QUICK REFERENCE ΓòÉΓòÉΓòÉ
  3517.  
  3518. Getting Started 
  3519.  
  3520. Select a CLASS. Select OPTIONS. Choose Find Program and Prioritize, Run 
  3521. Prioritized Programs From List, Prioritized OS/2 Window, or Prioritized OS/2 
  3522. Full Screen. The priority of the target application will be reflected in the 
  3523. main title bar. 
  3524.  
  3525. Run the program and use the Show All Priorities Utility to insure that it does 
  3526. not set its own priority. The priority should be Regular Class Level zero. 
  3527.  
  3528. Put all of your programs on a separate priority level. This engages the 
  3529. automatic CPU/Memory overload protection logic when spare CPU time is 
  3530. available. 
  3531.  
  3532. CLASS DESCRIPTIONS (lowest to highest) 
  3533.  
  3534. IDLE CLASS - 32 priority levels (0 to 31). This is lowest execution class. 
  3535. Programs in the Idle Class are only run if there are not Regular, Server, or 
  3536. Time Critical threads ready to run. DO NOT run PM applications in the Idle 
  3537. Class unless you are certain that there will not be any compute bound programs 
  3538. running. Use the Static Idle Test, Audible Idle Cycle Heartbeat or the Inverse 
  3539. Audible Test on all programs to insure spare CPU cycles. 
  3540.  
  3541. REGULAR CLASS - 32 priority levels (0 to 31). Programs default to Regular Class 
  3542. level zero. This should be your first choice. 
  3543.  
  3544. SERVER CLASS - 32 priority levels (0 to 31). Level zero is used for OS/2 VIO 
  3545. applications. Use level 1 or higher if you want the program's priority to be 
  3546. higher than an OS/2 VIO application in the foreground. PM programs are higher 
  3547. than Server Class but less than the Time Critical Class. 
  3548.  
  3549. TIME CRITICAL - 32 priority levels (0 to 31). All levels are higher than 
  3550. keyboard, mouse, and video systems. Insure that the program is not compute 
  3551. bound using the Static Idle Test, Audible Idle Cycle Heartbeat or the Inverse 
  3552. Audible Test before using the Time Critical Class. A compute bound application 
  3553. in this class will lock out the keyboard and mouse inputs. 
  3554.  
  3555. PERFORMANCE SETUP 
  3556.  
  3557. Run all programs and test for spare CPU cycles using the Static Idle Test. Use 
  3558. the Audible Idle Cycle Heartbeat or the Inverse Audible Idle Cycle Heartbeat 
  3559. test for a maximum of 10 seconds for any program that fails the Static Idle 
  3560. Test. If the program uses all available CPU cycles, DO NOT RUN it the Server or 
  3561. Time Critical Classes. 
  3562.  
  3563. Use the Memory Status on all of your programs. Do not leave programs that 
  3564. consume large amounts of resident memory or swapfile space on your desktop if 
  3565. you are not using them. 
  3566.  
  3567.  
  3568. ΓòÉΓòÉΓòÉ 82. About SAMPLE SESSION *READ ME FIRST!* ΓòÉΓòÉΓòÉ
  3569.  
  3570. Getting Started 
  3571.  
  3572. Instruction on how to prioritize your OS/2 programs can also be found at 
  3573. www.prioritymaster.com. 
  3574.  
  3575. Select a frequently used OS/2 program that you normally start using a desktop 
  3576. icon. For the purposes of this example the OS/2 EPM Editor will be used. 
  3577. Proceed as follows: 
  3578.  
  3579.  1. Open the OS/2 System Folder. 
  3580.  
  3581.  2. Open the Productivity Folder from within the OS/2 System Folder. 
  3582.  
  3583.  3. Place the mouse pointer over the Enhanced Editor and depress the right 
  3584.     mouse button. This will show the WorkPlace options. 
  3585.  
  3586.  4. Select the Settings/Properties option. This will show the system path and 
  3587.     filename for the program on the first page. The target path for an OS/2 
  3588.     system installed on the C drive is C:\OS2\APPS\EPM.EXE as taken from the 
  3589.     first page of Settings/Properties for the Enhanced Editor. This path name 
  3590.     will be used later. You write it down or simply leave it on the desktop for 
  3591.     retrieval. 
  3592.  
  3593.  5. Select the Options from the main window of the PRIORITY MASTER II program. 
  3594.  
  3595.  6. Select the Find Program and Prioritize and choose either Foreground or the 
  3596.     Background option. 
  3597.  
  3598.  7. If none of the Level options are set (eg Auto Increment and Auto Decrement) 
  3599.     a Set Class and Level dialog will be presented. In the Current Class is: 
  3600.     option select CRITICAL, set the Level to zero and select OK. 
  3601.  
  3602.  8. The Find and Run OS/2 Programs dialog is then presented. Simply type the 
  3603.     filename - C:\OS2\APPS\EPM.EXE into the Filename: box, depress the enter 
  3604.     key, and proceed to step 12. If you do not know how to use the Open File 
  3605.     Dialog, then steps 9 through 11 are provided for this example. 
  3606.  
  3607.  9. When installed, the Drive selection in the dialog is preset to OS/2's 
  3608.     install drive letter and has a [OS2] following the drive letter. If this is 
  3609.     not the case then select the drive letter that has the [OS2] in the 
  3610.     selection. In the Directory: window scroll down to and select the OS2 
  3611.     directory by double clicking on it. Ignore the executables that will appear 
  3612.     in the File: window. 
  3613.  
  3614. 10. Again, double click on the APPS selection. 
  3615.  
  3616. 11. In the File: window scroll down to the EPM.EXE selection and click on the 
  3617.     left mouse button and select OK (or just double click with right mouse 
  3618.     button). 
  3619.  
  3620. 12. Select YES to the message box asking if you want to add this program to the 
  3621.     Run Prioritized Programs From List Option. The Enhanced Editor now runs at 
  3622.     the new priority - CRITICAL 0. 
  3623.  
  3624. Select the Run Prioritized Programs From List option from the Options in the 
  3625. main window of the PRIORITY MASTER II application and you will see 
  3626. C:\OS2\APPS\EPM.EXE * CRITICAL 0. This will give you an extremely high priority 
  3627. text editor which you can use to quickly edit files even under extremely 
  3628. overloaded conditions. However, normally do not make applications in the TIME 
  3629. CRITICAL Class before using one of six programs in the Utilities option to 
  3630. verify that the program is not compute bound. It is known that the well written 
  3631. OS/2 Enhanced Editor is not compute bound and this is generally true of most 
  3632. OS/2 applications. 
  3633.  
  3634. The entry will be saved when the exiting the PRIORITY MASTER II by selecting 
  3635. YES to the message box stating that some user options have changed and would 
  3636. you like to save them. 
  3637.  
  3638. Note:The Utilities option from the main window, Show All Priorities, should be 
  3639. used to verify the program's priority. If the program is multi-threaded and 
  3640. there are threads that do not have the priority that you set, then the program 
  3641. sets its own priority - DO NOT USE PRIORITY MASTER II on these programs. 
  3642.  
  3643. You may enter the program several times and have a selection of preset 
  3644. priorities which you can run them. Also, you may override the priorities by 
  3645. selecting the option to do so from within the Run Prioritized Programs From 
  3646. List option. 
  3647.  
  3648. This is ideal for many programs such as a fax, Web Browser, or programs run via 
  3649. networks.