ABORTPROC

Generated from C.60.01 /SYS/PUB/CICAT last modified on Thu Jan 11 09:18:52 2001

Back to Main Index


ABORTPROC


     The ABORTPROC command aborts the specified process(es).
     This command requires OP or SM capability.

SYNTAX


     ABORTPROC [ [PIN=]{pinspec                 }]
                       {(pinspec [,pinspec ]...)}
               [;SYSTEM]


PARAMETERS


pinspec             The process(es) to abort.  This is a required
                    parameter.  The syntax for pinspec is:
                         [#P]pin[.tid]

                    where PIN is the Process ID number and TID is
                    an optional thread ID number.  A leading "#P"
                    is optional.

                    To abort more than one process, a list of PINSPECs
                    can be specified.  The list is enclosed in
                    parenthesis and individual PINSPECs are separated by
                    commas.  If a list is specified it is processed in
                    order, from left to right.  ABORTPROC stops
                    processing the list if an error is detected.
                    Duplicate PINs are not detected.

                    Although a PIN value of zero has meaning in the
                    SHOWPROC and ALTPROC commands, it is invalid in
                    ABORTPROC.  To kill yourself use the HPPIN variable,
                    e.g.,    ABORTPROC !hppin


SYSTEM              The SYSTEM option is necessary if the target
                    process is a detached system process.  SM capability
                    is required to use the SYSTEM option.

                    All processes in MPE/iX of fall into one of six
                    process types shown below.  Processes with a process
                    type greater than or equal to four are considered
                    system processes.  System processes are not
                    abortable unless they have a process type of five
                    indicating they are "detached".

                    Process
                    Type        Abortable  Restrictions
                    -----------------------------------------------
                    0 User      Y          SM or OP capability.
                    1 Son       Y          SM or OP capability.
                    2 Usermain  Y          SM or OP capability.
                       (CI)
                    3 reserved  n/a        n/a
                    4 System    N          Not Abortable
                    5 Detached  Y          Must specify ;SYSTEM. SM
                                           capability is required.
                    6 Ucop      N          Not Abortable
                       (JSMAIN)
                    7 reserved  n/a        n/a

                    Processes with a process type of 0, 1 or 2 are
                    considered user processes, and are abortable by any
                    user with SM or OP capabilities.  However, see the
                    exceptions described in the Operation section.

                    The Command Interpreter (CI) process for all jobs
                    and sessions has a process type of 2.  Any process
                    that is an immediate child of a CI process has a
                    process type of one.  Processes which are
                    descendants of processes with process type 1 or 0,
                    have a process type of 0.

                    If a user specifies the SYSTEM option, and the
                    process is not a system process (process type < 4),
                    the SYSTEM option is silently ignored.


OPERATION


     The ABORTPROC command attempts to abort the specified process(es)
     and all of their children processes.  MPE/iX currently does not
     support a means for children processes to survive the death of
     the parent process.  If one or more child processes cannot be
     aborted, their parent process cannot be terminated either.

     There are specific circumstances where a user process is not
     abortable.  Examples discussed below involve "critical" processes,
     session processes in break mode and certain network server
     processes.

     The MPE/iX Operating System uses a mechanism known as SETCRITICAL
     to prevent a process from being aborted.  The SETCRITICAL method is
     used to protect the integrity of system data structures.  A
     process that is SETCRITICAL cannot be aborted.  It is normal for
     all processes to periodically be SETCRITICAL (e.g., when executing
     system code), and they will RESETCRITICAL when it is safe for them
     to be aborted.  The ABORTPROC command works in conjunction with the
     SETCRITICAL mechanism and is designed so that it will never abort
     a process which is SETCRITICAL.  If a process is critical,
     ABORTPROC will notify the process that it should abort as soon as
     it is possible to terminate safely.

     If the target process, or any of its children processes, are in
     break mode they cannot be aborted, and an error is reported.  This
     is due to the MPE implementation of break, and because all
     processes in the same session process tree share the same terminal
     LDEV.  An exception to this exception is when the target process is
     the usermain process, typically the CI.  In this case it is
     abortable by ABORTPROC, even when it is in break mode.

     If the target process is a direct child of JSMAIN and is a user
     process type (0 or 1) it also cannot be aborted.  The problem here
     is that these processes are typically networking server processes
     that are associated to a peer CI (usermain) process.  If they are
     killed the associated CI is not notified and the CI and its
     children processes are not terminated.  An example of these kinds
     of processes are the NS/VT servers.

     The above three cases (critical, break, network server) are
     anticipated situations where ABORTPROC displays a CI error message
     and does not try to kill the process.  In all other cases ABORTPROC
     attempts to abort the target process, and if the abort fails the
     process the target process is marked as having an "abort pending".
     Processes with aborts pending are terminated when the condition
     that prevented the successful abort is resolved.  When ABORTPROC is
     used on a process that is already marked as dying, a CI warning is
     reported.

     System supervisor (OP) or System Manager (SM) capability is
     required to execute the ABORTPROC command.  SM capability is
     necessary to abort detached system processes.

     The ABORTPROC command may be issued from a session, job, program,
     or in BREAK.  Pressing [Break] aborts the execution of this
     command.


EXAMPLE(S)


     To abort process 133 and its current descendants, enter:

     ABORTPROC #P133   or
     ABORTPROC 133

     To abort processes 122, 133 and 175, enter:

     ABORTPROC (122, 133, 175)

     NOTE: To specify a list of processes, enclose the list in
     parenthesis and separate the pinspecs with commas.

     To abort process 85 (assuming PIN 85 is a detached system process),
     enter:

     ABORTPROC 85;SYSTEM

     NOTE: SM capability is required to abort system processes.

ADDITIONAL INFORMATION


Commands:   ABORTJOB, ALTPROC, BREAKJOB, RESUME, SHOWPROC

Manuals :   MPE/iX Intrinsics Reference Manual (32650-90028)

Back to Main Index