[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference vaxaxp::vmsnotes

Title:VAX and Alpha VMS
Notice:This is a new VMSnotes, please read note 2.1
Moderator:VAXAXP::BERNARDO
Created:Wed Jan 22 1997
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:703
Total number of notes:3722

365.0. "Strange results from F$GETJPI and BIOLM" by CSC32::B_YOUNGWIRTH () Fri Mar 21 1997 13:58

    I just received the following question from a customer and don't have
    an answer.  Does anyone know why my customer is seeing this behavior?
    
    I have a command procedure that I run at 10 minute intervals to
    monitor the performance of a process.  In this monitor sequence
    is are the following two lines.
    
    $ biolm = f$getjpi(pid,"biolm")
    
    $ bioused = biolm - f$getjpi(pid,"biocnt")
    
    For some reason that I don't understand, this sequence will some
    times return a negative value for "bioused".  To me, this implies
    that either "biolm" is being lowered at some point between these
    two commands or "biocnt" is going above "biolm".  I'm not
    changing "biolm" which only leaves "biocnt" going above "biolm".
    Is this possible?  If so, how, since I thought trying to go above
    a limit would cause the error message, "you have exhausted your quota".
    Can you shed any light on this?
    
    Any help would be appreciated
    Barbara Youngwirth
    
T.RTitleUserPersonal
Name
DateLines
365.1WAGAUSS::GARSONDECcharity Program OfficeSun Mar 23 1997 22:0030
re .0
    
    Looks strange.
    
> In this monitor sequence is are the following two lines.
    
    Are the two lines consecutive? E.g. are we sure that "pid" does not
    change meantime, for example, by programming error.
    
    The obvious thing to do would be to check for bioused .lt. 0 in the
    code and write out the actual values of biolm and biocnt (which one
    would need to capture explicitly).
    
> I'm not changing "biolm"
    
    I don't believe there is a supported means of changing biolm (dynamically)
    anyway.
    
>  which only leaves "biocnt" going above "biolm". Is this possible?  If so,
>    how, since I thought trying to go above a limit would cause the error
>    message, "you have exhausted your quota".
    
    BIOCNT above BIOLM would mean that the amount free was above the quota
    so one would not expect any "quota exhaustion" message. Quota
    exhaustion corresponds to the CNT getting down to zero.      
    
    The only long shot that I can offer is that due to some condition the
    information cannot be obtained from the process (as $GETJPI is known to
    do if the target process is in certain scheduling states) and that this
    is not handled correctly. Maybe LM ends up as 0 or something.