TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Nick Alcock
from: Darin McBride
date: 1997-01-09 19:22:48
subject: Re: pentium counter register

NA> Er, sorry to disagree, but no, it doesn't. Unless some radical remodelling
 NA> has gone on since OS/2 2.11, priority class 4xx (foreground server) is not
 NA> the highest priority level.

Hmmm... According to "Designing High-Powered OS/2 Warp Applications:
The Anatomy of Multithreaded Programs" by David E. Reich, that:

        There are four priority classes in OS/2, each having 31 sublevels.
        The classes, in order of highest priority to lowest, are Time
        Critical; Fixed High, which is also sometimes called the Server
        class; the Regular class; and the Idle Time class.

Further, according to IBM Developer's Toolkit for OS/2 Warp, the parameters
to DosSetPriority are (see ulClass):

   
  scope (ULONG) - input 
     The extent of the priority change. 

     The values of this field are shown in the following list: 

     0        PRTYS_PROCESS 
              All the threads of any process. 

     1        PRTYS_PROCESSTREE 
              All the threads of a process and any descendants. The indicated 
              process must be the current process or a process created by the 
              current process. Detached processes may not be specified. The 
              indicated process may have terminated. 

     2        PRTYS_THREAD 
              A single thread of the current process. 
  
  ulClass (ULONG) - input 
     Priority class of a process. 

     The values of this field are shown in the following list: 

     0        PRTYC_NOCHANGE 
              No change, leave as is 

     1        PRTYC_IDLETIME 
              Idle-time 

     2        PRTYC_REGULAR 
              Regular 

     3        PRTYC_TIMECRITICAL 
              Time-critical 

     4        PRTYC_FOREGROUNDSERVER 
              Fixed high 
  
  delta (LONG) - input 
     Change to apply to the current base priority level of the process. 

     This value must range from -31 (PRTYD_MINIMUM) to +31 
     (PRTYD_MAXIMUM). 
  
  PorTid (ULONG) - input 
     A process identifier (scope == PRTYS_PROCESS or PRTYS_PROCESSTREE) 
     or a thread identifier (scope == PRTYS_THREAD). 

     If this operand is equal to zero, the current process or thread is assumed. 
  
  ulrc (APIRET) - returns 
     Return Code. 

     DosSetPriority returns one of the following values: 

     0              NO_ERROR 
     303            ERROR_INVALID_PROCID 
     304            ERROR_INVALID_PDELTA 
     305            ERROR_NOT_DESCENDANT 
     307            ERROR_INVALID_PCLASS 
     308            ERROR_INVALID_SCOPE 
     309            ERROR_INVALID_THREADID 

     For a full list of error codes, see Errors. 
  



--- Maximus/2 3.01
* Origin: Tanktalus' Tower BBS (PVT) (1:342/708)
SEEN-BY: 50/99 54/99 270/101 620/243 625/0 160 640/201 711/401 409 410 413
SEEN-BY: 711/430 808 809 934 955 712/311 407 505 506 517 623 624 704 841
SEEN-BY: 713/317 800/1
@PATH: 342/5015 61 3615/50 396/1 270/101 712/624 711/808 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.