home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 11 Util / 11-Util.zip / sp103.zip / sp.doc < prev    next >
Text File  |  1995-05-17  |  5KB  |  149 lines

  1. SetPriority Version 1.03 by Jens Glathe 05-16-1995
  2.  
  3. This is a utility to start a program at a defined priority.  It is also able to
  4. start a VDM (DOS-session) at a defined priority.
  5.  
  6. What's new:
  7.  
  8. There was a bug in the VDD "VDOSPRIO.SYS" (Version 1.0).  It has been rewritten
  9. completely.  A bug fix for the IdleCall (AX=1680h, Int 2F) in OS/2 version 2.1
  10. has been added (Version 2.0 of VDOSPRIO.SYS)
  11. An interface to query the actual priority of a DOS-Session has been added 
  12. (Version 2.2 of VDOSPRIO.SYS).
  13. Some error messages have been added to spdos.exe.
  14.  
  15. The file sp103.zip contains:
  16.  
  17. sp.exe OS/2 executable
  18.  
  19. spdos.exe DOS executable to start a DOS session with other priority
  20.  
  21. vdosprio.sys Virtual Device Driver for the DOS sessions (MUST be loaded to
  22. change the priority)
  23.  
  24. setprio.pas, setprio.tpu,
  25.  
  26. prioint.asm, prioint.obj source for the library used by spdos.exe
  27.  
  28. setprio.c C header for communication with VDOSPRIO.SYS
  29.  
  30. sp.doc this file.
  31.  
  32. \emxdll\*.dll EMX- DLLs needed.  If these are not in your system or newer ones,
  33. copy them to a directory reachable by LIBPATH.  WARNING:  Do not use more than
  34. one version of EMX-DLLs!  This package was compiled using EMX-GCC 0.9a.
  35.  
  36. Usage of sp:
  37.  
  38. SP <class>[delta] <sessiontype> <program> [args...]
  39.  
  40. <class>:  n=no change, i=idle, r=regular, f=foreground, t=time critical
  41. [delta]:  Any number from -31 to 31, 0 to 31 for DOS sessions <sessiontype>:
  42. o=OS/2 Window or PM App, d=DOS-Window, D=DOS-Fullscreen <program>:  Executable
  43. or Batchfile (OS/2 only) with full path
  44.  
  45. The driver "VDOSPRIO.SYS" must have been loaded to change the priority of a DOS
  46. session.
  47.  
  48. If a DOS session shall be started, sp invokes spdos.exe, which sets the
  49. priority of the VDM and executes the program.
  50.  
  51. You can use spdos directly:
  52.  
  53. SPDOS <class>[delta] <program_with_path_and_extension> [args...]
  54.  
  55. If you want to run batch files, use:
  56.  
  57. SPDOS <class>[delta] <path>\command.com /c <batchfile> [options]
  58.  
  59. Requirements:
  60.  
  61. OS/2 version 2.x. or higher. sp.exe and spdos.exe must be reachable by PATH or
  62. in the same directory.  DEVICE=(path)vdosprio.sys in your config.sys file.
  63.  
  64. Notes:
  65.  
  66. The VDD hooks the DOS Int 45h to get a connection to the VDM.  I hope that
  67. nobody uses this Interrupt.  If there are problems with this Interrupt,
  68. recompile the VDD and the pascal library for another Interrupt. To obtain the 
  69. source code, just contact me by e-mail.
  70.  
  71. If you set a DOS session which has an idle loop consuming full cpu time (such
  72. as the Turbo IDE) to time critical (highest) priority, the system gets in
  73. trouble.  Setting the priority to r31 is enough, f is also allowed.
  74.  
  75. There is another priority class for VDM's:  SIMULATED INTERRUPT, but it doesn't
  76. seem to work.  Therefore the sp utility doesn't support it.
  77.  
  78. The Command-line parsing of SP is not very save:  You can get strange errors
  79. (such as illegal NPX instruction) when running SP with wrong arguments.
  80.  
  81. FOR PROGRAMMERS WHO WANT TO USE THE VDOSPRIO DRIVER DIRECTLY:
  82.  
  83. The driver can be called by Int 45h.  The parameters are:
  84.  
  85. AX:  Class
  86.  
  87. Possible values are:
  88.  
  89. 1H:  Idle Class.  2H:  Regular Class.  3H:  Time-Critical Class.  Highest
  90. Priority class 4H:  Foreground Server Class.  5H:  Simulated Interrupt Class.
  91. 1680H:  Perform a task switch to another task (Try to give up the CPU).
  92.  
  93. DX:  Offset
  94.  
  95. Possible values are:
  96.  
  97. 0..1Fh:  absolute Offset for this Class
  98.  
  99. Return values:
  100.  
  101. AX=1:  Success.  AX=0:  An error occured.  No actions taken.
  102.  
  103. There is a better description and a pascal/c interface included with this
  104. package (Files setprio.pas and setprio.h, but partially in german :-) ).
  105.  
  106. DISCLAIMER OF WARRANTIES:
  107.  
  108. (I don't write legal stuff in a foreign language, sorry):
  109. ----------------------------------------------------------------------
  110.  
  111. Ich uebernehme keinerlei Gewaehrleistung für korrekte Funktion oder
  112. irgendwelche daraus resultierenden Schaeden oder Folgeschaeden.  Es liegt in
  113. der Natur von Geraetettreibern, dass dadurch die Integritaet des Systems
  114. verletzt werden kann.
  115.  
  116. Licence:  --------
  117.  
  118. This is freeware. A postcard from your home town would be nice.
  119.  
  120. Bug reports, hints, sourcecode queries, suggestions etc.:
  121.  
  122. Send it to me:
  123.  
  124. Internet:  jensajce@w271zrz.ZRZ.TU-Berlin.de
  125.  
  126. Normal letter:
  127.  
  128. Jens Glathe
  129. Keithstr.  36 Apt.  604
  130. D-10787 Berlin
  131. Germany
  132.  
  133. Phone:  (030) 262 75 33
  134.  
  135.  
  136. Debug-O-History:
  137.  
  138. The Version 1.03 has a VDD for the DOS sessions with more functionality.
  139. Some error messages have been added to spdos.exe.
  140. No new bugs found.
  141.  
  142. The Version 1.02 contains a completely rewritten VDD for the DOS sessions
  143. (VDOSPRIO.SYS version 2.0).
  144.  
  145. The Version 1.01 has a minor bug fix in spdos.exe.  There was a problem passing
  146. argv[1] to the DOS program started.
  147.  
  148. The initial code used as a base for sp.exe is from Scott Dudley, thanks to him.
  149.