home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_a_c / draft-ietf-applmib-sysapplmib-09.txt < prev    next >
Text File  |  1997-10-31  |  99KB  |  3,008 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.   Definitions of System-Level Managed Objects for Applications
  8.  
  9.                         October 20, 1997
  10.  
  11.  
  12.              <draft-ietf-applmib-sysapplmib-09.txt>
  13.  
  14.  
  15.                         Cheryl Krupczak
  16.                    Empire Technologies, Inc.
  17.                      cheryl@empiretech.com
  18.  
  19.                         Jonathan Saperia
  20.                         BGS Systems Inc.
  21.                     saperia@networks.bgs.com
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.                       Status of this Memo
  29.  
  30.  This document is an Internet-Draft.  Internet-Drafts are
  31.  working documents of the Internet Engineering Task Force
  32.  (IETF), its areas, and its working groups.  Note that other
  33.  groups may also distribute working documents as Internet-
  34.  Drafts.
  35.  
  36.  Internet-Drafts are draft documents valid for a maximum of six
  37.  months and may be updated, replaced, or obsoleted by other
  38.  documents at any time.  It is inappropriate to use Internet-
  39.  Drafts as reference material or to cite them other than as
  40.  ``work in progress.''
  41.  
  42.  To learn the current status of any Internet-Draft, please
  43.  check the ``1id-abstracts.txt'' listing contained in the
  44.  Internet- Drafts Shadow Directories on ds.internic.net (US
  45.  East Coast), nic.nordu.net (Europe), ftp.isi.edu (US West
  46.  Coast), or munnari.oz.au (Pacific Rim).
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  Internet Draft      System Application MIB    October 20, 1997
  64.  
  65.  
  66.  Table of Contents
  67.  
  68.  1 Abstract ..............................................    3
  69.  2 The SNMPv2 Network Management Framework ...............    3
  70.  2.1 Object Definitions ..................................    4
  71.  3 Overview ..............................................    5
  72.  4 Architecture for Application Management ...............    6
  73.  5 The Structure of the MIB ..............................    7
  74.  5.1 System Application Installed Group ..................    7
  75.  5.2 System Application Run Group ........................    8
  76.  5.2.1 sysApplRunTable and sysApplPastRunTable ...........    8
  77.  5.2.2 sysApplElmtRunTable and  sysApplElmtPastRunTable
  78.       ....................................................    9
  79.  5.3 System Application Map Group ........................   10
  80.  6 Definitions ...........................................   11
  81.  7 Implementation Issues .................................   45
  82.  7.1 Implementation with Polling Agents ..................   45
  83.  7.2 sysApplElmtPastRunTable Entry Collisions ............   46
  84.  8 Security Considerations ...............................   47
  85.  9 Copyright .............................................   48
  86.  10 Acknowledgements .....................................   49
  87.  11 Editor's Address .....................................   50
  88.  12 References ...........................................   50
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  Expires April 20, 1998                                [Page 2]
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  Internet Draft      System Application MIB    October 20, 1997
  123.  
  124.  
  125.  1.  Abstract
  126.  
  127.  This memo defines a portion of the Management Information Base
  128.  (MIB) for use with network management protocols in the
  129.  Internet community. In particular, it describes a basic set of
  130.  managed objects for fault, configuration and performance
  131.  management of applications from a systems perspective.  More
  132.  specifically, the managed objects are restricted to
  133.  information that can be determined from the system itself and
  134.  which does not require special instrumentation within the
  135.  applications to make the information available.
  136.  
  137.  This memo does not specify a standard for the Internet
  138.  community.
  139.  
  140.  
  141.  
  142.  2.  The SNMPv2 Network Management Framework
  143.  
  144.  The SNMPv2 Network Management Framework consists of the
  145.  following major components:
  146.  
  147.  o    RFC 1902 Structure of Management Information for Version
  148.       2 of the Simple Network Management Protocol (SNMPv2) [2]
  149.  
  150.  o    RFC 1903 Textual Conventions for Version 2 of the Simple
  151.       Network Management Protocol (SNMPv2) [3]
  152.  
  153.  o    RFC 1904 Conformance Statements for Version 2 of the
  154.       Simple Network Management Protocol (SNMPv2) [4]
  155.  
  156.  o    RFC 1905 Protocol Operations for Version 2 of the Simple
  157.       Network Management Protocol (SNMPv2) [5]
  158.  
  159.  o    RFC 1906 Transport Mappings for Version 2 of the Simple
  160.       Network Management Protocol (SNMPv2) [6]
  161.  
  162.  o    RFC 1907 Management Information Base for Version 2 of the
  163.       Simple Network Management Protocol (SNMPv2) [7]
  164.  
  165.  o    RFC 1908 Coexistence between Version 1 and Version 2 of
  166.       the Internet-standard Network Management Framework [8]
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  Expires April 20, 1998                                [Page 3]
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  Internet Draft      System Application MIB    October 20, 1997
  182.  
  183.  
  184.  The Framework permits new objects to be defined for the
  185.  purpose of experimentation and evaluation.
  186.  
  187.  
  188.  2.1.  Object Definitions
  189.  
  190.  Managed objects are accessed via a virtual information store,
  191.  termed the Management Information Base or MIB. Objects in the
  192.  MIB are defined using the subset of Abstract Syntax Notation
  193.  One (ASN.1) [1], defined in the Structure of Management
  194.  Information (SMI)  (See RFC 1902 [2]). In particular, each
  195.  object type is named by an OBJECT IDENTIFIER, an
  196.  administratively assigned name. The object type together with
  197.  an object instance serves to uniquely identify a specific
  198.  instantiation of the object. For human convenience, we often
  199.  use a textual string, termed the object descriptor, to refer
  200.  to the object type.
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  Expires April 20, 1998                                [Page 4]
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  Internet Draft      System Application MIB    October 20, 1997
  241.  
  242.  
  243.  3.  Overview
  244.  
  245.  The primary purpose of computing technologies is the execution
  246.  of application software. These applications, typically
  247.  specialized collections of executables, files, and
  248.  interprocess communications, exist to solve business,
  249.  scientific or other "problems". The configuration, fault
  250.  detection, performance monitoring and control of application
  251.  software across its life on a host computer is of great
  252.  economic importance. For the purposes of our work, we define
  253.  applications as one or more units of executable code and other
  254.  resources, installed on a single host system that a manager
  255.  may think of as a single object for management purposes.
  256.  
  257.  
  258.  The information described by the objects in the System
  259.  Application MIB support configuration, fault, and performance
  260.  management; they represent some of the basic attributes of
  261.  application software from a systems (non-application specific)
  262.  perspective.  The information allows for the description of
  263.  applications as collections of executables and files installed
  264.  and executing on a host computer.
  265.  
  266.  This draft is concerned primarily with, and defines a model
  267.  for, application information resident on a host computer which
  268.  can be determined from the system itself, and not from the
  269.  individual applications.  This system-level view of
  270.  applications is designed to provide information about software
  271.  applications installed and running on the host system without
  272.  requiring modifications and code additions to the applications
  273.  themselves.  This approach was taken to insure ease and speed
  274.  of implementation, while allowing room for future growth.
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  Expires April 20, 1998                                [Page 5]
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  Internet Draft      System Application MIB    October 20, 1997
  300.  
  301.  
  302.  4.  Architecture for Application Management
  303.  
  304.  In the area of application management it is fully acknowledged
  305.  and even expected that additional MIB modules will be defined
  306.  over time to provide an even greater level of detail regarding
  307.  applications. This MIB module presents the most general case:
  308.  a set of management objects for providing generic information
  309.  about applications and whose object values can be determined
  310.  from the computer system itself without requiring
  311.  instrumentation within the application.
  312.  
  313.  A finer-grained level of detail is planned for the future
  314.  "appl MIB" which will be a common set of management objects
  315.  relating to generic applications, but which require some type
  316.  of instrumentation in the application in order to be
  317.  determined.  Since the applmib MIB module will provide a finer
  318.  level of detail, any connection to the sysAppl MIB should be
  319.  made by having references from the more detailed appl MIB back
  320.  to the more generic sysAppl MIB.  Likewise, as application-
  321.  specific MIB modules such as the WWW MIB, etc., are developed
  322.  over time, these more specific MIBs should reference back to
  323.  the more generic MIBs.
  324.  
  325.  While this MIB module does not attempt to provide every
  326.  detailed piece of information for managing applications, it
  327.  does provide a basic systems-level view of the applications
  328.  and their components on a single host system.
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  Expires April 20, 1998                                [Page 6]
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  Internet Draft      System Application MIB    October 20, 1997
  359.  
  360.  
  361.  5.  The Structure of the MIB
  362.  
  363.  The System Application MIB structure models application
  364.  packages as a whole, and also models the individual elements
  365.  (files and executables) which collectively form an
  366.  application.  The MIB is structured to model information
  367.  regarding installed application packages and the elements
  368.  which make up each application package. The MIB also models
  369.  activity information on applications (and in turn, their
  370.  components) that are running or have previously run on the
  371.  host system.  In modeling applications and their elements,
  372.  this MIB module provides the necessary link for associating
  373.  executing processes with the applications of which they are a
  374.  part.
  375.  
  376.  The objects are arranged into the following groups:
  377.  
  378.      -  System Application Installed Group
  379.             - sysApplInstallPkgTable
  380.             - sysApplInstallElmtTable
  381.  
  382.      -  System Application Run Group
  383.             - sysApplRunTable
  384.             - sysApplPastRunTable
  385.             - sysApplElmtRunTable
  386.             - sysApplElmtPastRunTable
  387.             - (scalars for restricting table sizes)
  388.  
  389.      -  System Application Map Group
  390.             - sysApplMapTable
  391.  
  392.  As can be seen by the arrangement above, for each category,
  393.  the MIB first treats an application package as a whole, and
  394.  then breaks down the package to provide information about each
  395.  of the elements (executable and non-executable files) of the
  396.  package.
  397.  
  398.  
  399.  5.1.  System Application Installed Group
  400.  
  401.  The System Application Installed group consists of two tables.
  402.  Through these two tables, administrators will be able to
  403.  determine which applications have been installed on a system
  404.  and what their constituent components are.  The first table,
  405.  the sysApplInstallPkgTable, lists the application packages
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  Expires April 20, 1998                                [Page 7]
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  Internet Draft      System Application MIB    October 20, 1997
  418.  
  419.  
  420.  installed on a particular host. The second, the
  421.  sysApplInstallElmtTable, provides information regarding the
  422.  executables and non-executable files, or elements, which
  423.  collectively compose an application.
  424.  
  425.  NOTE: This MIB is intended to work with applications that have
  426.  been installed on a particular host, where "installed" means
  427.  that the existence of the application and the association
  428.  between an application and its component files can be
  429.  discovered without requiring additional instrumentation of the
  430.  application itself.  This may require that certain conventions
  431.  be used, such as using a central software installation
  432.  mechanism or registry, when installing application packages.
  433.  For example, many UNIX systems utilize a "pkgadd" utility to
  434.  track installed application packages, while many PC systems
  435.  utilize a global registry.
  436.  
  437.  
  438.  5.2.  System Application Run Group
  439.  
  440.  This group models activity information for applications that
  441.  have been invoked and are either currently running, or have
  442.  previously run, on the host system.  Likewise, the individual
  443.  elements of an invoked application are also modeled to show
  444.  currently running processes, and processes that have run in
  445.  the past.  This information is modeled using two pairs of
  446.  tables: a pair of tables for currently running applications
  447.  and past run applications, and a pair of tables for the
  448.  currently running elements and the past run elements.  Seven
  449.  scalars are also defined to control the size of the past run
  450.  tables.
  451.  
  452.  
  453.  
  454.  5.2.1.  sysApplRunTable and sysApplPastRunTable
  455.  
  456.  The sysApplRunTable and the sysApplPastRunTable make up the
  457.  first pair of tables.  The sysApplRunTable contains the
  458.  application instances which are currently running on the host.
  459.  Each time an application is invoked, a new entry is created in
  460.  the sysApplRunTable to provide information about that
  461.  particular invocation of the application.  An entry will
  462.  remain in this table until the application instance
  463.  terminates, at which time the entry will be deleted from the
  464.  sysApplRunTable and placed in the sysApplPastRunTable.
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  Expires April 20, 1998                                [Page 8]
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  Internet Draft      System Application MIB    October 20, 1997
  477.  
  478.  
  479.  The sysApplPastRunTable maintains a history of instances of
  480.  applications which have previously executed on the host.
  481.  Entries to this table are made when an invoked application
  482.  from the sysApplRunTable terminates; the table entry which
  483.  represents the application instance is removed from the
  484.  SysApplRunTable and a corresponding entry is added to the
  485.  sysApplPastRunTable.
  486.  
  487.  Because the sysApplPastRunTable will continuously grow as
  488.  applications are executed and terminate, two scalars are
  489.  defined to control the aging-out of table entries. The value
  490.  of sysApplPastRunMaxRows specifies the maximum number of
  491.  entries the table may contain, while the
  492.  sysApplPastRunTblTimeLimit specifies the maximum age of the
  493.  table entries.  Oldest entries are removed first.
  494.  
  495.  It is important to note that the sysApplRunTable and
  496.  sysApplPastRunTable contain entries for each INVOCATION of an
  497.  application. A single application package might be invoked
  498.  multiple times; each invocation is properly recorded by a
  499.  separate entry in the sysApplRunTable.
  500.  
  501.  In order to implement this group, the agent must be able to
  502.  recognize that an application has been invoked, and be able to
  503.  determine when that invocation terminates.  This poses a
  504.  complex problem since a single application invocation may
  505.  involve numerous processes, some of which may be required to
  506.  remain running throughout the duration of the application,
  507.  others which might come and go.  The sysApplInstallElmtRole
  508.  columnar object in the sysApplInstallElmtTable is meant to
  509.  assist in this task by indicating which element is the
  510.  application's primary executable, which elements must be
  511.  running in order for the application to be running, which
  512.  elements are dependent on required elements, etc.  See the
  513.  description of sysApplInstallElmtRole for more details.
  514.  
  515.  
  516.  
  517.  5.2.2.  sysApplElmtRunTable and sysApplElmtPastRunTable
  518.  
  519.  While the sysApplRunTable and sysApplPastRunTable focus on
  520.  applications as a whole, the sysApplElmtRunTable and
  521.  sysApplElmtPastRunTable provide information regarding an
  522.  application's executable elements, (processes), which are
  523.  either currently executing or have executed in the past.
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  Expires April 20, 1998                                [Page 9]
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  Internet Draft      System Application MIB    October 20, 1997
  536.  
  537.  
  538.  The sysApplElmtRunTable contains an entry for every process
  539.  currently running on the host.  An entry is created in this
  540.  table for each process at the time it is started, and will
  541.  remain in the table until the process terminates.  Note that
  542.  in order to provide complete information on the load on the
  543.  system, this table lists EVERY running process, not just those
  544.  processes that are running as part of an identified
  545.  application.  However, when processes terminate, only
  546.  information from entries corresponding to elements of an
  547.  identified application are moved to the
  548.  sysApplElmtPastRunTable.
  549.  
  550.  
  551.  The sysApplElmtPastRunTable maintains a history of processes
  552.  which have previously executed on the host as part of an
  553.  application. When a process from the sysApplElmtRunTable
  554.  terminates, the entry's information is moved to this
  555.  sysApplElmtPastRunTable provided that the process was part of
  556.  an identified application.  If the process cannot be
  557.  associated with any 'parent' application, then it is simply
  558.  removed from the sysApplElmtRunTable.  This allows for
  559.  processes like 'ps' or 'grep' to show up in the
  560.  sysApplElmtRunTable, (where they are consuming resources and
  561.  are thus "interesting"), but not in the
  562.  sysApplElmtPastRunTable.
  563.  
  564.  Because the sysApplElmtPastRunTable will continuously grow as
  565.  processes are executed and terminate, two scalars are defined
  566.  to control the aging-out of table entries.  The value of
  567.  sysApplElmtPastRunMaxRows specifies the maximum number of
  568.  entries the table may contain, while the
  569.  sysApplElmtPastRunTblTimeLimit specifies the maximum age of
  570.  the table entries.  Oldest entries are removed first.
  571.  
  572.  
  573.  
  574.  5.3.  System Application Map Group
  575.  
  576.  The System Application Map group contains a single table, the
  577.  sysApplMapTable, whose sole purpose is to provide a backwards
  578.  mapping for determining the invoked application, installed
  579.  element, and installed application package given a known
  580.  process identification number.
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  Expires April 20, 1998                               [Page 10]
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  Internet Draft      System Application MIB    October 20, 1997
  595.  
  596.  
  597.  6.  Definitions
  598.  
  599.    SYSAPPL-MIB DEFINITIONS ::= BEGIN
  600.  
  601.    IMPORTS
  602.        MODULE-IDENTITY, OBJECT-TYPE,
  603.        Unsigned32, TimeTicks, Counter32, Gauge32
  604.            FROM SNMPv2-SMI
  605.        DateAndTime, TEXTUAL-CONVENTION
  606.            FROM SNMPv2-TC
  607.        MODULE-COMPLIANCE, OBJECT-GROUP
  608.            FROM SNMPv2-CONF
  609.        mib-2 FROM SNMPv2-SMI;
  610.  
  611.  
  612.  
  613.    -- System Application MIB
  614.  
  615.    sysApplMIB MODULE-IDENTITY
  616.        LAST-UPDATED "9710200000Z"
  617.        ORGANIZATION "IETF Applications MIB Working Group"
  618.        CONTACT-INFO
  619.              "Cheryl Krupczak (Editor, WG Advisor)
  620.               Postal: Empire Technologies, Inc.
  621.               541 Tenth Street NW
  622.               Suite 169
  623.               Atlanta, GA 30318
  624.               USA
  625.               Phone: (770) 384-0184
  626.               Email: cheryl@empiretech.com
  627.  
  628.               Jon Saperia (WG Chair)
  629.               Postal:  BGS Systems, Inc.
  630.               One First Avenue
  631.               Waltham, MA 02254-9111
  632.               USA
  633.               Phone: (617) 891-0000
  634.               Email: saperia@networks.bgs.com"
  635.        DESCRIPTION
  636.            "The MIB module defines management objects that model
  637.            applications as collections of executables and files
  638.            installed and executing on a host system.  The MIB
  639.            presents a system-level view of applications; i.e.,
  640.            objects in this MIB are limited to those attributes
  641.            that can typically be obtained from the system itself
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  Expires April 20, 1998                               [Page 11]
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  Internet Draft      System Application MIB    October 20, 1997
  654.  
  655.  
  656.            without adding special instrumentation to the applications."
  657.        ::= { mib-2 9999  }
  658.  
  659.  
  660.    sysApplOBJ               OBJECT IDENTIFIER ::= { sysApplMIB 1 }
  661.    sysApplInstalled         OBJECT IDENTIFIER ::= { sysApplOBJ 1 }
  662.    sysApplRun               OBJECT IDENTIFIER ::= { sysApplOBJ 2 }
  663.    sysApplMap               OBJECT IDENTIFIER ::= { sysApplOBJ 3 }
  664.    sysApplNotifications     OBJECT IDENTIFIER ::= { sysApplMIB 2 }
  665.    sysApplConformance       OBJECT IDENTIFIER ::= { sysApplMIB 3 }
  666.  
  667.    -- Textual Conventions
  668.  
  669.    RunState ::= TEXTUAL-CONVENTION
  670.        STATUS      current
  671.        DESCRIPTION
  672.            "This TC describes the current execution state of
  673.            a running application or process.  The possible
  674.            values are:
  675.              running(1),
  676.              runnable(2),  - waiting for a resource (CPU, etc.)
  677.              waiting(3),   - waiting for an event
  678.              exiting(4),
  679.              other(5)      - other invalid state"
  680.        SYNTAX      INTEGER {
  681.                    running (1),
  682.                    runnable (2), -- waiting for resource (CPU, etc.)
  683.                    waiting (3),  -- waiting for event
  684.                    exiting (4),
  685.                    other (5)     -- other invalid state
  686.                    }
  687.  
  688.  LongUtf8String ::= TEXTUAL-CONVENTION
  689.          DISPLAY-HINT "1024a"
  690.          STATUS  current
  691.          DESCRIPTION
  692.                  "To facilitate internationalization, this TC
  693.                   represents information taken from the ISO/IEC IS
  694.                   10646-1 character set, encoded as an octet string
  695.                   using the UTF-8 character encoding scheme described
  696.                   in RFC 2044 [10].  For strings in 7-bit US-ASCII,
  697.                   there is no impact since the UTF-8 representation
  698.                   is identical to the US-ASCII encoding."
  699.          SYNTAX  OCTET STRING (SIZE (0..1024))
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  Expires April 20, 1998                               [Page 12]
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  Internet Draft      System Application MIB    October 20, 1997
  713.  
  714.  
  715.  Utf8String ::= TEXTUAL-CONVENTION
  716.          DISPLAY-HINT "255a"
  717.          STATUS  current
  718.          DESCRIPTION
  719.                  "To facilitate internationalization, this TC
  720.                   represents information taken from the ISO/IEC IS
  721.                   10646-1 character set, encoded as an octet string
  722.                   using the UTF-8 character encoding scheme described
  723.                   in RFC 2044 [10].  For strings in 7-bit US-ASCII,
  724.                   there is no impact since the UTF-8 representation
  725.                   is identical to the US-ASCII encoding."
  726.          SYNTAX  OCTET STRING (SIZE (0..255))
  727.  
  728.  
  729.  
  730.    -- sysApplInstalled Group
  731.    -- This group provides information about application packages
  732.    -- that have been installed on the host computer.  The group
  733.    -- contains two tables.  The first, the sysApplInstallPkgTable,
  734.    -- describes the application packages, the second, the
  735.    -- sysApplInstallElmtTable, describes the constituent elements
  736.    -- (files and executables) which compose an application package.
  737.    --
  738.    -- In order to appear in this group, an application and its
  739.    -- component files must be discoverable by the system itself,
  740.    -- possibly through some type of software installation mechanism
  741.    -- or registry.
  742.  
  743.    -- sysApplInstallPkgTable
  744.    -- The system installed application packages table provides
  745.    -- information on the software packages installed on a system.
  746.    -- These packages may consist of many different files including
  747.    -- executable and non-executable files.
  748.  
  749.    sysApplInstallPkgTable OBJECT-TYPE
  750.        SYNTAX      SEQUENCE OF SysApplInstallPkgEntry
  751.        MAX-ACCESS  not-accessible
  752.        STATUS      current
  753.        DESCRIPTION
  754.            "The table listing the software application packages
  755.            installed on a host computer. In order to appear in
  756.            this table, it may be necessary for the application
  757.            to be installed using some type of software
  758.            installation mechanism or global registry so that its
  759.            existence can be detected by the agent implementation."
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  Expires April 20, 1998                               [Page 13]
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  Internet Draft      System Application MIB    October 20, 1997
  772.  
  773.  
  774.        ::= { sysApplInstalled 1 }
  775.  
  776.    sysApplInstallPkgEntry OBJECT-TYPE
  777.        SYNTAX      SysApplInstallPkgEntry
  778.        MAX-ACCESS  not-accessible
  779.        STATUS      current
  780.        DESCRIPTION
  781.            "The logical row describing an installed application
  782.            package."
  783.        INDEX    { sysApplInstallPkgIndex }
  784.        ::= { sysApplInstallPkgTable 1 }
  785.  
  786.    SysApplInstallPkgEntry ::= SEQUENCE {
  787.        sysApplInstallPkgIndex               Unsigned32,
  788.        sysApplInstallPkgManufacturer        Utf8String,
  789.        sysApplInstallPkgProductName         Utf8String,
  790.        sysApplInstallPkgVersion             Utf8String,
  791.        sysApplInstallPkgSerialNumber        Utf8String,
  792.        sysApplInstallPkgDate                DateAndTime,
  793.        sysApplInstallPkgLocation            LongUtf8String
  794.    }
  795.  
  796.    sysApplInstallPkgIndex OBJECT-TYPE
  797.        SYNTAX      Unsigned32 (1..'ffffffff'h)
  798.        MAX-ACCESS  not-accessible
  799.        STATUS      current
  800.        DESCRIPTION
  801.            "An integer used only for indexing purposes.
  802.            Generally monotonically increasing from 1 as new
  803.            applications are installed.
  804.  
  805.            The value for each installed application must
  806.            remain constant at least from one re-initialization of
  807.            the network management entity which implements this
  808.            MIB module to the next re-initialization.
  809.  
  810.            The specific value is meaningful only within a given SNMP
  811.            entity. A sysApplInstallPkgIndex value must not be re-used
  812.            until the next agent entity restart in the event the
  813.            installed application entry is deleted."
  814.        ::= { sysApplInstallPkgEntry 1 }
  815.  
  816.    sysApplInstallPkgManufacturer OBJECT-TYPE
  817.        SYNTAX      Utf8String
  818.        MAX-ACCESS  read-only
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  Expires April 20, 1998                               [Page 14]
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  Internet Draft      System Application MIB    October 20, 1997
  831.  
  832.  
  833.        STATUS      current
  834.        DESCRIPTION
  835.            "The Manufacturer of the software application package."
  836.        ::= { sysApplInstallPkgEntry 2 }
  837.  
  838.    sysApplInstallPkgProductName OBJECT-TYPE
  839.        SYNTAX      Utf8String
  840.        MAX-ACCESS  read-only
  841.        STATUS      current
  842.        DESCRIPTION
  843.            "The name assigned to the software application package
  844.            by the Manufacturer."
  845.        ::= { sysApplInstallPkgEntry 3 }
  846.  
  847.    sysApplInstallPkgVersion OBJECT-TYPE
  848.        SYNTAX      Utf8String
  849.        MAX-ACCESS  read-only
  850.        STATUS      current
  851.        DESCRIPTION
  852.            "The version number assigned to the application package
  853.            by the manufacturer of the software."
  854.        ::= { sysApplInstallPkgEntry 4 }
  855.  
  856.    sysApplInstallPkgSerialNumber OBJECT-TYPE
  857.        SYNTAX      Utf8String
  858.        MAX-ACCESS  read-only
  859.        STATUS      current
  860.        DESCRIPTION
  861.            "The serial number of the software assigned by the
  862.            manufacturer."
  863.        ::= { sysApplInstallPkgEntry 5 }
  864.  
  865.    sysApplInstallPkgDate OBJECT-TYPE
  866.        SYNTAX      DateAndTime
  867.        MAX-ACCESS  read-only
  868.        STATUS      current
  869.        DESCRIPTION
  870.            "The date and time this software application was installed
  871.            on the host."
  872.        ::= { sysApplInstallPkgEntry 6 }
  873.  
  874.    sysApplInstallPkgLocation OBJECT-TYPE
  875.        SYNTAX      LongUtf8String
  876.        MAX-ACCESS  read-only
  877.        STATUS      current
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  Expires April 20, 1998                               [Page 15]
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  Internet Draft      System Application MIB    October 20, 1997
  890.  
  891.  
  892.        DESCRIPTION
  893.            "The complete path name where the application package
  894.            is installed.  For example, the value would be
  895.            '/opt/MyapplDir' if the application package was installed
  896.            in the /opt/MyapplDir directory."
  897.        ::= { sysApplInstallPkgEntry 7 }
  898.  
  899.  
  900.    -- sysApplInstallElmtTable
  901.    -- The table describing the individual application package
  902.    -- elements (files and executables) installed on the host computer.
  903.  
  904.    sysApplInstallElmtTable OBJECT-TYPE
  905.        SYNTAX      SEQUENCE OF SysApplInstallElmtEntry
  906.        MAX-ACCESS  not-accessible
  907.        STATUS      current
  908.        DESCRIPTION
  909.            "This table details the individual application package
  910.            elements (files and executables) which comprise the
  911.            applications defined in the sysApplInstallPkg Table.
  912.            Each entry in this table has an index to the
  913.            sysApplInstallPkg table to identify the application
  914.            package of which it is a part. As a result, there may
  915.            be many entries in this table for each instance in the
  916.            sysApplInstallPkg Table.
  917.  
  918.            Table entries are indexed by sysApplInstallPkgIndex,
  919.            sysApplInstallElmtIndex to facilitate retrieval of
  920.            all elements associated with a particular installed
  921.            application package."
  922.        ::= { sysApplInstalled 2 }
  923.  
  924.    sysApplInstallElmtEntry OBJECT-TYPE
  925.        SYNTAX      SysApplInstallElmtEntry
  926.        MAX-ACCESS  not-accessible
  927.        STATUS      current
  928.        DESCRIPTION
  929.            "The logical row describing an element of an installed
  930.            application.  The element may be an executable or
  931.            non-executable file."
  932.        INDEX    {sysApplInstallPkgIndex, sysApplInstallElmtIndex}
  933.        ::= { sysApplInstallElmtTable 1 }
  934.  
  935.    SysApplInstallElmtEntry ::= SEQUENCE {
  936.        sysApplInstallElmtIndex                 Unsigned32,
  937.  
  938.  
  939.  
  940.  
  941.  
  942.  Expires April 20, 1998                               [Page 16]
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  Internet Draft      System Application MIB    October 20, 1997
  949.  
  950.  
  951.        sysApplInstallElmtName                  Utf8String,
  952.        sysApplInstallElmtType                  INTEGER,
  953.        sysApplInstallElmtDate                  DateAndTime,
  954.        sysApplInstallElmtPath                  LongUtf8String,
  955.        sysApplInstallElmtSizeHigh              Unsigned32,
  956.        sysApplInstallElmtSizeLow               Unsigned32,
  957.        sysApplInstallElmtRole                  BITS,
  958.        sysApplInstallElmtModifyDate            DateAndTime,
  959.        sysApplInstallElmtCurSizeHigh           Unsigned32,
  960.        sysApplInstallElmtCurSizeLow            Unsigned32
  961.  
  962.    }
  963.  
  964.    sysApplInstallElmtIndex OBJECT-TYPE
  965.        SYNTAX      Unsigned32 (1..'ffffffff'h)
  966.        MAX-ACCESS  not-accessible
  967.        STATUS      current
  968.        DESCRIPTION
  969.            "An arbitrary integer used for indexing.  The value
  970.            of this index is unique among all rows in this table
  971.            that exist or have existed since the last agent restart."
  972.        ::= { sysApplInstallElmtEntry 1 }
  973.  
  974.  
  975.    sysApplInstallElmtName OBJECT-TYPE
  976.        SYNTAX      Utf8String
  977.        MAX-ACCESS  read-only
  978.        STATUS      current
  979.        DESCRIPTION
  980.            "The name of this element which is contained in the
  981.            application."
  982.        ::= { sysApplInstallElmtEntry 2 }
  983.  
  984.    sysApplInstallElmtType OBJECT-TYPE
  985.        SYNTAX      INTEGER {
  986.                    unknown(1),
  987.                    nonexecutable(2),
  988.                    operatingSystem(3),  -- executable
  989.                    deviceDriver(4),     -- executable
  990.                    application(5)       -- executable
  991.                    }
  992.        MAX-ACCESS  read-only
  993.        STATUS      current
  994.        DESCRIPTION
  995.            "The type of element that is part of the installed
  996.  
  997.  
  998.  
  999.  
  1000.  
  1001.  Expires April 20, 1998                               [Page 17]
  1002.  
  1003.  
  1004.  
  1005.  
  1006.  
  1007.  Internet Draft      System Application MIB    October 20, 1997
  1008.  
  1009.  
  1010.            application."
  1011.        ::= { sysApplInstallElmtEntry 3 }
  1012.  
  1013.    sysApplInstallElmtDate OBJECT-TYPE
  1014.        SYNTAX      DateAndTime
  1015.        MAX-ACCESS  read-only
  1016.        STATUS      current
  1017.        DESCRIPTION
  1018.            "The date and time that this component was installed on
  1019.            the system."
  1020.        ::= { sysApplInstallElmtEntry 4 }
  1021.  
  1022.    sysApplInstallElmtPath OBJECT-TYPE
  1023.        SYNTAX      LongUtf8String
  1024.        MAX-ACCESS  read-only
  1025.        STATUS      current
  1026.        DESCRIPTION
  1027.            "The full directory path where this element is installed.
  1028.            For example, the value would be '/opt/EMPuma/bin' for an
  1029.            element installed in the directory '/opt/EMPuma/bin'.
  1030.            Most application packages include information about the
  1031.            elements contained in the package. In addition, elements
  1032.            are typically installed in sub-directories under the
  1033.            package installation directory.  In cases where the
  1034.            element path names are not included in the package
  1035.            information itself, the path can usually be determined
  1036.            by a simple search of the sub-directories.  If the
  1037.            element is not installed in that location and there is
  1038.            no other information available to the agent implementation,
  1039.            then the path is unknown and null is returned."
  1040.        ::= { sysApplInstallElmtEntry 5}
  1041.  
  1042.    sysApplInstallElmtSizeHigh OBJECT-TYPE
  1043.        SYNTAX      Unsigned32
  1044.        MAX-ACCESS  read-only
  1045.        STATUS      current
  1046.        DESCRIPTION
  1047.            "The installed file size in 2^32 byte blocks. This is
  1048.            the size of the file on disk immediately after installation.
  1049.  
  1050.            For example, for a file with a total size of 4,294,967,296
  1051.            bytes, this variable would have a value of 1; for a file
  1052.            with a total size of 4,294,967,295 bytes this variable
  1053.            would be 0."
  1054.        ::= { sysApplInstallElmtEntry 6 }
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  Expires April 20, 1998                               [Page 18]
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066.  Internet Draft      System Application MIB    October 20, 1997
  1067.  
  1068.  
  1069.  
  1070.    sysApplInstallElmtSizeLow OBJECT-TYPE
  1071.        SYNTAX      Unsigned32
  1072.        MAX-ACCESS  read-only
  1073.        STATUS      current
  1074.        DESCRIPTION
  1075.            "The installed file size modulo 2^32 bytes.  This is
  1076.            the size of the file on disk immediately after installation.
  1077.  
  1078.            For example, for a file with a total size of 4,294,967,296
  1079.            bytes this variable would have a value of 0; for a file with
  1080.            a total size of 4,294,967,295 bytes this variable would be
  1081.            4,294,967,295."
  1082.        ::= { sysApplInstallElmtEntry 7 }
  1083.  
  1084.    sysApplInstallElmtRole  OBJECT-TYPE
  1085.        SYNTAX      BITS {
  1086.                    executable(0),
  1087.                       -- An application may have one or
  1088.                       -- more executable elements.  The rest of the
  1089.                       -- bits have no meaning if the element is not
  1090.                       -- executable.
  1091.                    exclusive(1),
  1092.                       -- Only one copy of an exclusive element may be
  1093.                       -- running per invocation of the running
  1094.                       -- application.
  1095.                    primary(2),
  1096.                       -- The primary executable.  An application can
  1097.                       -- have one, and only one element that is designated
  1098.                       -- as the primary executable.  The execution of
  1099.                       -- this element constitutes an invocation of
  1100.                       -- the application.  This is used by the agent
  1101.                       -- implementation to determine the initiation of
  1102.                       -- an application.  The primary executable must
  1103.                       -- remain running long enough for the agent
  1104.                       -- implementation to detect its presence.
  1105.                    required(3),
  1106.                       -- An application may have zero or more required
  1107.                       -- elements. All required elements must be running
  1108.                       -- in order for the application to be judged to be
  1109.                       -- running and healthy.
  1110.                    dependent(4),
  1111.                       -- An application may have zero or more
  1112.                       -- dependent elements. Dependent elements may
  1113.                       -- not be running unless required elements are.
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  Expires April 20, 1998                               [Page 19]
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  Internet Draft      System Application MIB    October 20, 1997
  1126.  
  1127.  
  1128.                    unknown(5)
  1129.                       -- Default value for the case when an operator
  1130.                       -- has not yet assigned one of the other values.
  1131.                       -- When set, bits 1, 2, 3, and 4 have no meaning.
  1132.                    }
  1133.        MAX-ACCESS  read-write
  1134.        STATUS      current
  1135.        DESCRIPTION
  1136.            "An operator assigned value used in the determination of
  1137.            application status. This value is used by the agent to
  1138.            determine both the mapping of started processes to the
  1139.            initiation of an application, as well as to allow for a
  1140.            determination of application health. The default value,
  1141.            unknown(5), is used when an operator has not yet assigned
  1142.            one of the other values.  If unknown(5) is set, bits
  1143.            1 - 4 have no meaning.  The possible values are:
  1144.  
  1145.                    executable(0),
  1146.                        An application may have one or
  1147.                        more executable elements.  The rest of the
  1148.                        bits have no meaning if the element is not
  1149.                        executable.
  1150.                    exclusive(1),
  1151.                        Only one copy of an exclusive element may be
  1152.                        running per invocation of the running
  1153.                        application.
  1154.                    primary(2),
  1155.                        The primary executable.  An application can
  1156.                        have one, and only one element that is designated
  1157.                        as the primary executable.  The execution of
  1158.                        this element constitutes an invocation of
  1159.                        the application.  This is used by the agent
  1160.                        implementation to determine the initiation of
  1161.                        an application.  The primary executable must
  1162.                        remain running long enough for the agent
  1163.                        implementation to detect its presence.
  1164.                    required(3),
  1165.                        An application may have zero or more required
  1166.                        elements. All required elements must be running
  1167.                        in order for the application to be judged to be
  1168.                        running and healthy.
  1169.                    dependent(4),
  1170.                        An application may have zero or more
  1171.                        dependent elements. Dependent elements may
  1172.                        not be running unless required elements are.
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  Expires April 20, 1998                               [Page 20]
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  Internet Draft      System Application MIB    October 20, 1997
  1185.  
  1186.  
  1187.                    unknown(5)
  1188.                        Default value for the case when an operator
  1189.                        has not yet assigned one of the other values.
  1190.                        When set, bits 1, 2, 3, and 4 have no meaning.
  1191.  
  1192.             sysApplInstallElmtRole is used by the agent implementation
  1193.             in determining the initiation of an application, the
  1194.             current state of a running application (see
  1195.             sysApplRunCurrentState), when an application invocation is
  1196.             no longer running, and the exit status of a terminated
  1197.             application invocation (see sysApplPastRunExitState)."
  1198.  
  1199.        DEFVAL { { unknown } }
  1200.        ::= { sysApplInstallElmtEntry 8 }
  1201.  
  1202.    sysApplInstallElmtModifyDate OBJECT-TYPE
  1203.        SYNTAX      DateAndTime
  1204.        MAX-ACCESS  read-only
  1205.        STATUS      current
  1206.        DESCRIPTION
  1207.            "The date and time that this element was last modified.
  1208.            Modification of the sysApplInstallElmtRole columnar
  1209.            object does NOT constitute a modification of the element
  1210.            itself and should not affect the value of this object."
  1211.        ::= { sysApplInstallElmtEntry 9 }
  1212.  
  1213.    sysApplInstallElmtCurSizeHigh OBJECT-TYPE
  1214.        SYNTAX      Unsigned32
  1215.        MAX-ACCESS  read-only
  1216.        STATUS      current
  1217.        DESCRIPTION
  1218.            "The current file size in 2^32 byte blocks.
  1219.            For example, for a file with a total size of 4,294,967,296
  1220.            bytes, this variable would have a value of 1; for a file
  1221.            with a total size of 4,294,967,295 bytes this variable
  1222.            would be 0."
  1223.        ::= { sysApplInstallElmtEntry 10 }
  1224.  
  1225.    sysApplInstallElmtCurSizeLow OBJECT-TYPE
  1226.        SYNTAX      Unsigned32
  1227.        MAX-ACCESS  read-only
  1228.        STATUS      current
  1229.        DESCRIPTION
  1230.            "The current file size modulo 2^32 bytes.
  1231.            For example, for a file with a total size of 4,294,967,296
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  Expires April 20, 1998                               [Page 21]
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  Internet Draft      System Application MIB    October 20, 1997
  1244.  
  1245.  
  1246.            bytes this variable would have a value of 0; for a file with
  1247.            a total size of 4,294,967,295 bytes this variable would be
  1248.            4,294,967,295."
  1249.        ::= { sysApplInstallElmtEntry 11 }
  1250.  
  1251.  
  1252.  
  1253.    -- sysApplRun Group
  1254.    -- This group models activity information for applications
  1255.    -- that have been invoked and are either currently running,
  1256.    -- or have previously run on the host system.  Likewise,
  1257.    -- the individual elements of an invoked application are
  1258.    -- also modeled to show currently running processes, and
  1259.    -- processes that have run in the past.
  1260.  
  1261.    -- sysApplRunTable
  1262.    -- The sysApplRunTable contains the application instances
  1263.    -- which are currently running on the host.  Since a single
  1264.    -- application might be invoked multiple times, an entry is
  1265.    -- added to this table for each INVOCATION of an application.
  1266.    -- The table is indexed by sysApplInstallPkgIndex, sysApplRunIndex
  1267.    -- to enable managers to easily locate all invocations of
  1268.    -- a particular application package.
  1269.  
  1270.    sysApplRunTable OBJECT-TYPE
  1271.        SYNTAX      SEQUENCE OF SysApplRunEntry
  1272.        MAX-ACCESS  not-accessible
  1273.        STATUS      current
  1274.        DESCRIPTION
  1275.            "The table describes the applications which are executing
  1276.            on the host.  Each time an application is invoked,
  1277.            an entry is created in this table. When an application ends,
  1278.            the entry is removed from this table and a corresponding
  1279.                    entry is created in the SysApplPastRunTable.
  1280.  
  1281.            A new entry is created in this table whenever the agent
  1282.            implementation detects a new running process that is an
  1283.            installed application element whose sysApplInstallElmtRole
  1284.            designates it as being the application's primary executable
  1285.            (sysApplInstallElmtRole = primary(2) ).
  1286.  
  1287.            The table is indexed by sysApplInstallPkgIndex,
  1288.            sysApplRunIndex to enable managers to easily locate all
  1289.            invocations of a particular application package."
  1290.        ::= { sysApplRun 1 }
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  Expires April 20, 1998                               [Page 22]
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  Internet Draft      System Application MIB    October 20, 1997
  1303.  
  1304.  
  1305.  
  1306.    sysApplRunEntry OBJECT-TYPE
  1307.        SYNTAX      SysApplRunEntry
  1308.        MAX-ACCESS  not-accessible
  1309.        STATUS      current
  1310.        DESCRIPTION
  1311.            "The logical row describing an application which is
  1312.            currently running on this host."
  1313.        INDEX    { sysApplInstallPkgIndex, sysApplRunIndex }
  1314.        ::= { sysApplRunTable   1 }
  1315.  
  1316.    SysApplRunEntry ::= SEQUENCE {
  1317.        sysApplRunIndex                         Unsigned32,
  1318.        sysApplRunStarted                       DateAndTime,
  1319.        sysApplRunCurrentState                  RunState
  1320.    }
  1321.  
  1322.    sysApplRunIndex OBJECT-TYPE
  1323.        SYNTAX      Unsigned32 (1..'ffffffff'h)
  1324.        MAX-ACCESS  not-accessible
  1325.        STATUS      current
  1326.        DESCRIPTION
  1327.            "Part of the index for this table. An arbitrary
  1328.            integer used only for indexing purposes. Generally
  1329.            monotonically increasing from 1 as new applications are
  1330.            started on the host, it uniquely identifies application
  1331.            invocations.
  1332.  
  1333.            The numbering for this index increases by 1 for each
  1334.            INVOCATION of an application, regardless of which
  1335.            installed application package this entry represents a
  1336.            running instance of.
  1337.  
  1338.            An example of the indexing for a couple of entries is
  1339.            shown below.
  1340.  
  1341.                          :
  1342.                     sysApplRunStarted.17.14
  1343.                     sysApplRunStarted.17.63
  1344.                     sysApplRunStarted.18.13
  1345.                          :
  1346.  
  1347.            In this example, the agent has observed 12 application
  1348.            invocations when the application represented by entry 18
  1349.            in the sysApplInstallPkgTable is invoked.  The next
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  Expires April 20, 1998                               [Page 23]
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  Internet Draft      System Application MIB    October 20, 1997
  1362.  
  1363.  
  1364.            invocation detected by the agent is an invocation of
  1365.            installed application package 17.  Some time later,
  1366.            installed application 17 is invoked a second time.
  1367.  
  1368.            NOTE: this index is not intended to reflect a real-time
  1369.            (wall clock time) ordering of application invocations;
  1370.            it is merely intended to uniquely identify running
  1371.            instances of applications.  Although the
  1372.            sysApplInstallPkgIndex is included in the INDEX clause
  1373.            for this table, it serves only to ease searching of
  1374.            this table by installed application and does not
  1375.            contribute to uniquely identifying table entries."
  1376.        ::= { sysApplRunEntry 1 }
  1377.  
  1378.    sysApplRunStarted OBJECT-TYPE
  1379.        SYNTAX      DateAndTime
  1380.        MAX-ACCESS  read-only
  1381.        STATUS      current
  1382.        DESCRIPTION
  1383.            "The date and time that the application was started."
  1384.        ::= { sysApplRunEntry 2 }
  1385.  
  1386.    sysApplRunCurrentState OBJECT-TYPE
  1387.        SYNTAX      RunState
  1388.        MAX-ACCESS  read-only
  1389.        STATUS      current
  1390.        DESCRIPTION
  1391.            "The current state of the running application instance.
  1392.            The possible values are running(1), runnable(2) but waiting
  1393.            for a resource such as CPU, waiting(3) for an event,
  1394.            exiting(4), or other(5). This value is based on an evaluation
  1395.            of the running elements of this application instance (see
  1396.            sysApplElmRunState) and their Roles as defined by
  1397.            sysApplInstallElmtRole.  An agent implementation may
  1398.            detect that an application instance is in the process of
  1399.            exiting if one or more of its REQUIRED elements are no
  1400.            longer running.  Most agent implementations will wait until
  1401.            a second internal poll has been completed to give the
  1402.            system time to start REQUIRED elements before marking the
  1403.            application instance as exiting."
  1404.        ::= { sysApplRunEntry 3 }
  1405.  
  1406.  
  1407.    -- sysApplPastRunTable
  1408.    -- The sysApplPastRunTable provides a history of applications
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.  Expires April 20, 1998                               [Page 24]
  1415.  
  1416.  
  1417.  
  1418.  
  1419.  
  1420.  Internet Draft      System Application MIB    October 20, 1997
  1421.  
  1422.  
  1423.    -- previously run on the host computer. Entries are removed from
  1424.    -- the sysApplRunTable and corresponding entries are added to this
  1425.    -- table when an application becomes inactive. Entries remain in
  1426.    -- this table until they are aged out when either the table size
  1427.    -- reaches a maximum as determined by the sysApplPastRunMaxRows,
  1428.    -- or when an entry has aged to exceed a time limit as set be
  1429.    -- sysApplPastRunTblTimeLimit.
  1430.    --
  1431.    -- When aging out entries, the oldest entry, as determined by
  1432.    -- the value of sysApplPastRunTimeEnded, will be removed first.
  1433.  
  1434.    sysApplPastRunTable OBJECT-TYPE
  1435.        SYNTAX      SEQUENCE OF SysApplPastRunEntry
  1436.        MAX-ACCESS  not-accessible
  1437.        STATUS      current
  1438.        DESCRIPTION
  1439.            "A history of the applications that have previously run
  1440.            on the host computer.  An entry's information is moved to
  1441.            this table from the sysApplRunTable when the invoked
  1442.            application represented by the entry ceases to be running.
  1443.  
  1444.            An agent implementation can determine that an application
  1445.            invocation is no longer running by evaluating the running
  1446.            elements of the application instance and their Roles as
  1447.            defined by sysApplInstallElmtRole.  Obviously, if there
  1448.            are no running elements for the application instance,
  1449.            then the application invocation is no longer running.
  1450.            If any one of the REQUIRED elements is not running,
  1451.            the application instance may be in the process of exiting.
  1452.            Most agent implementations will wait until a second internal
  1453.            poll has been completed to give the system time to either
  1454.            restart partial failures or to give all elements time to
  1455.            exit.  If, after the second poll, there are REQUIRED
  1456.            elements that are not running, then the application
  1457.            instance may be considered by the agent implementation
  1458.            to no longer be running.
  1459.  
  1460.            Entries remain in the sysApplPastRunTable until they
  1461.            are aged out when either the table size reaches a maximum
  1462.            as determined by the sysApplPastRunMaxRows, or when an entry
  1463.            has aged to exceed a time limit as set by
  1464.            sysApplPastRunTblTimeLimit.
  1465.  
  1466.            Entries in this table are indexed by sysApplInstallPkgIndex,
  1467.            sysApplPastRunIndex to facilitate retrieval of all past
  1468.  
  1469.  
  1470.  
  1471.  
  1472.  
  1473.  Expires April 20, 1998                               [Page 25]
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.  Internet Draft      System Application MIB    October 20, 1997
  1480.  
  1481.  
  1482.            run invocations of a particular installed application."
  1483.        ::= { sysApplRun 2 }
  1484.  
  1485.    sysApplPastRunEntry OBJECT-TYPE
  1486.        SYNTAX      SysApplPastRunEntry
  1487.        MAX-ACCESS  not-accessible
  1488.        STATUS      current
  1489.        DESCRIPTION
  1490.            "The logical row describing an invocation of an application
  1491.            which was previously run and has terminated.  The entry
  1492.            is basically copied from the sysApplRunTable when the
  1493.            application instance terminates.  Hence, the entry's
  1494.            value for sysApplPastRunIndex is the same as its value was
  1495.            for sysApplRunIndex."
  1496.        INDEX    { sysApplInstallPkgIndex, sysApplPastRunIndex }
  1497.        ::= { sysApplPastRunTable   1 }
  1498.  
  1499.    SysApplPastRunEntry ::= SEQUENCE {
  1500.        sysApplPastRunIndex                     Unsigned32,
  1501.        sysApplPastRunStarted                   DateAndTime,
  1502.        sysApplPastRunExitState                 INTEGER,
  1503.        sysApplPastRunTimeEnded                 DateAndTime
  1504.    }
  1505.  
  1506.    sysApplPastRunIndex OBJECT-TYPE
  1507.        SYNTAX      Unsigned32 (1..'ffffffff'h)
  1508.        MAX-ACCESS  not-accessible
  1509.        STATUS      current
  1510.        DESCRIPTION
  1511.            "Part of the index for this table. An integer
  1512.            matching the value of the removed sysApplRunIndex
  1513.            corresponding to this row."
  1514.        ::= { sysApplPastRunEntry 1 }
  1515.  
  1516.    sysApplPastRunStarted OBJECT-TYPE
  1517.        SYNTAX      DateAndTime
  1518.        MAX-ACCESS  read-only
  1519.        STATUS      current
  1520.        DESCRIPTION
  1521.            "The date and time that the application was started."
  1522.        ::= { sysApplPastRunEntry 2 }
  1523.  
  1524.    sysApplPastRunExitState OBJECT-TYPE
  1525.        SYNTAX      INTEGER {
  1526.                    complete (1), -- normal exit at sysApplRunTimeEnded
  1527.  
  1528.  
  1529.  
  1530.  
  1531.  
  1532.  Expires April 20, 1998                               [Page 26]
  1533.  
  1534.  
  1535.  
  1536.  
  1537.  
  1538.  Internet Draft      System Application MIB    October 20, 1997
  1539.  
  1540.  
  1541.                    failed (2),   -- abnormal exit
  1542.                    other (3)
  1543.                    }
  1544.        MAX-ACCESS  read-only
  1545.        STATUS      current
  1546.        DESCRIPTION
  1547.          "The state of the application instance when it terminated.
  1548.           This value is based on an evaluation of the running elements
  1549.           of an application and their Roles as defined by
  1550.           sysApplInstallElmtRole.  An application instance is said to
  1551.           have exited in a COMPLETE state and its entry is removed
  1552.           from the sysApplRunTable and added to the sysApplPastRunTable
  1553.           when the agent detects that ALL elements of an application
  1554.           invocation are no longer running.  Most agent implementations
  1555.           will wait until a second internal poll has been completed to
  1556.           give the system time to either restart partial failures or
  1557.           to give all elements time to exit.  A failed state occurs if,
  1558.           after the second poll, any elements continue to run but
  1559.           one or more of the REQUIRED elements are no longer running.
  1560.           All other combinations MUST be defined as OTHER."
  1561.        ::= { sysApplPastRunEntry 3 }
  1562.  
  1563.    sysApplPastRunTimeEnded OBJECT-TYPE
  1564.        SYNTAX      DateAndTime
  1565.        MAX-ACCESS  read-only
  1566.        STATUS      current
  1567.        DESCRIPTION
  1568.            "The DateAndTime the application instance was determined
  1569.            to be no longer running."
  1570.        ::= { sysApplPastRunEntry 4 }
  1571.  
  1572.    -- sysApplElmtRunTable
  1573.    -- The sysApplElmtRunTable contains an entry for each process that
  1574.    -- is currently running on the host.  An entry is created in
  1575.    -- this table for each process at the time it is started, and will
  1576.    -- remain in the table until the process terminates.
  1577.    --
  1578.    -- The table is indexed by sysApplElmtRunInstallPkg,
  1579.    -- sysApplElmtRunInvocID, and sysApplElmtRunIndex to make it easy
  1580.    -- to locate all running elements of a particular invoked application
  1581.    -- which has been installed on the system.
  1582.  
  1583.  
  1584.    sysApplElmtRunTable OBJECT-TYPE
  1585.        SYNTAX      SEQUENCE OF SysApplElmtRunEntry
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  Expires April 20, 1998                               [Page 27]
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.  Internet Draft      System Application MIB    October 20, 1997
  1598.  
  1599.  
  1600.        MAX-ACCESS  not-accessible
  1601.        STATUS      current
  1602.        DESCRIPTION
  1603.            "The table describes the processes which are
  1604.            currently executing on the host system. Each entry
  1605.            represents a running process and is associated with
  1606.            the invoked application of which that process is a part, if
  1607.            possible.  This table contains an entry for every process
  1608.            currently running on the system, regardless of whether its
  1609.            'parent' application can be determined.  So, for example,
  1610.            processes like 'ps' and 'grep' will have entries though they
  1611.            are not associated with an installed application package.
  1612.  
  1613.            Because a running application may involve
  1614.            more than one executable, it is possible to have
  1615.            multiple entries in this table for each application.
  1616.            Entries are removed from this table when the process
  1617.            terminates.
  1618.  
  1619.            The table is indexed by sysApplElmtRunInstallPkg,
  1620.            sysApplElmtRunInvocID, and sysApplElmtRunIndex to
  1621.            facilitate the retrieval of all running elements of a
  1622.            particular invoked application which has been installed on
  1623.            the system."
  1624.        ::= { sysApplRun 3 }
  1625.  
  1626.    sysApplElmtRunEntry OBJECT-TYPE
  1627.        SYNTAX      SysApplElmtRunEntry
  1628.        MAX-ACCESS  not-accessible
  1629.        STATUS      current
  1630.        DESCRIPTION
  1631.            "The logical row describing a process currently
  1632.            running on this host.  When possible, the entry is
  1633.            associated with the invoked application of which it
  1634.            is a part."
  1635.        INDEX    { sysApplElmtRunInstallPkg, sysApplElmtRunInvocID,
  1636.                   sysApplElmtRunIndex }
  1637.        ::= { sysApplElmtRunTable   1 }
  1638.  
  1639.    SysApplElmtRunEntry ::= SEQUENCE {
  1640.        sysApplElmtRunInstallPkg        Unsigned32,
  1641.        sysApplElmtRunInvocID           Unsigned32,
  1642.        sysApplElmtRunIndex             Unsigned32,
  1643.        sysApplElmtRunInstallID         Unsigned32,
  1644.        sysApplElmtRunTimeStarted       DateAndTime,
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  Expires April 20, 1998                               [Page 28]
  1651.  
  1652.  
  1653.  
  1654.  
  1655.  
  1656.  Internet Draft      System Application MIB    October 20, 1997
  1657.  
  1658.  
  1659.        sysApplElmtRunState             RunState,
  1660.        sysApplElmtRunName              LongUtf8String,
  1661.        sysApplElmtRunParameters        Utf8String,
  1662.        sysApplElmtRunCPU               TimeTicks,
  1663.        sysApplElmtRunMemory            Gauge32,
  1664.        sysApplElmtRunNumFiles          Gauge32,
  1665.        sysApplElmtRunUser              Utf8String
  1666.    }
  1667.  
  1668.    sysApplElmtRunInstallPkg OBJECT-TYPE
  1669.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  1670.        MAX-ACCESS  not-accessible
  1671.        STATUS      current
  1672.        DESCRIPTION
  1673.            "Part of the index for this table, this value
  1674.            identifies the installed software package for
  1675.            the application of which this process is a part.
  1676.            Provided that the process's 'parent' application can be
  1677.            determined, the value of this object is the same
  1678.            value as the sysApplInstallPkgIndex for the
  1679.            entry in the sysApplInstallPkgTable that corresponds
  1680.            to the installed application of which this process
  1681.            is a part.
  1682.  
  1683.            If, however, the 'parent' application cannot be
  1684.            determined, (for example the process is not part
  1685.            of a particular installed application), the value
  1686.            for this object is then '0', signifying that this
  1687.            process cannot be related back to an application,
  1688.            and in turn, an installed software package."
  1689.        ::= { sysApplElmtRunEntry 1 }
  1690.  
  1691.    sysApplElmtRunInvocID OBJECT-TYPE
  1692.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  1693.        MAX-ACCESS  not-accessible
  1694.        STATUS      current
  1695.        DESCRIPTION
  1696.            "Part of the index for this table, this value
  1697.            identifies the invocation of an application of which
  1698.            this process is a part.  Provided that the 'parent'
  1699.            application can be determined, the value of this object
  1700.            is the same value as the sysApplRunIndex for the
  1701.            corresponding application invocation in the
  1702.            sysApplRunTable.
  1703.  
  1704.  
  1705.  
  1706.  
  1707.  
  1708.  
  1709.  Expires April 20, 1998                               [Page 29]
  1710.  
  1711.  
  1712.  
  1713.  
  1714.  
  1715.  Internet Draft      System Application MIB    October 20, 1997
  1716.  
  1717.  
  1718.            If, however, the 'parent' application cannot be
  1719.            determined, the value for this object is then '0',
  1720.            signifying that this process cannot be related back
  1721.            to an invocation of an application in the
  1722.            sysApplRunTable."
  1723.        ::= { sysApplElmtRunEntry 2 }
  1724.  
  1725.    sysApplElmtRunIndex OBJECT-TYPE
  1726.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  1727.        MAX-ACCESS  not-accessible
  1728.        STATUS      current
  1729.        DESCRIPTION
  1730.            "Part of the index for this table.  A unique value
  1731.            for each process running on the host.  Wherever
  1732.            possible, this should be the system's native, unique
  1733.            identification number."
  1734.        ::= { sysApplElmtRunEntry 3 }
  1735.  
  1736.  
  1737.    sysApplElmtRunInstallID OBJECT-TYPE
  1738.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  1739.        MAX-ACCESS  read-only
  1740.        STATUS      current
  1741.        DESCRIPTION
  1742.            "The index into the sysApplInstallElmtTable. The
  1743.            value of this object is the same value as the
  1744.            sysApplInstallElmtIndex for the application element
  1745.            of which this entry represents a running instance.
  1746.            If this process cannot be associated with an installed
  1747.            executable, the value should be '0'."
  1748.        ::= { sysApplElmtRunEntry 4 }
  1749.  
  1750.    sysApplElmtRunTimeStarted OBJECT-TYPE
  1751.        SYNTAX      DateAndTime
  1752.        MAX-ACCESS  read-only
  1753.        STATUS      current
  1754.        DESCRIPTION
  1755.            "The time the process was started."
  1756.        ::= { sysApplElmtRunEntry 5 }
  1757.  
  1758.    sysApplElmtRunState OBJECT-TYPE
  1759.        SYNTAX      RunState
  1760.        MAX-ACCESS  read-only
  1761.        STATUS      current
  1762.        DESCRIPTION
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.  Expires April 20, 1998                               [Page 30]
  1769.  
  1770.  
  1771.  
  1772.  
  1773.  
  1774.  Internet Draft      System Application MIB    October 20, 1997
  1775.  
  1776.  
  1777.            "The current state of the running process. The
  1778.            possible values are running(1), runnable(2) but waiting
  1779.            for a resource such as CPU, waiting(3) for an event,
  1780.            exiting(4), or other(5)."
  1781.        ::= { sysApplElmtRunEntry 6 }
  1782.  
  1783.    sysApplElmtRunName OBJECT-TYPE
  1784.        SYNTAX      LongUtf8String
  1785.        MAX-ACCESS  read-only
  1786.        STATUS      current
  1787.        DESCRIPTION
  1788.            "The full path and filename of the process.
  1789.            For example, '/opt/MYYpkg/bin/myyproc' would
  1790.            be returned for process 'myyproc' whose execution
  1791.            path is '/opt/MYYpkg/bin/myyproc'."
  1792.        ::= { sysApplElmtRunEntry 7 }
  1793.  
  1794.    sysApplElmtRunParameters OBJECT-TYPE
  1795.        SYNTAX      Utf8String
  1796.        MAX-ACCESS  read-only
  1797.        STATUS      current
  1798.        DESCRIPTION
  1799.            "The starting parameters for the process."
  1800.    ::= { sysApplElmtRunEntry 8 }
  1801.  
  1802.    sysApplElmtRunCPU OBJECT-TYPE
  1803.        SYNTAX      TimeTicks
  1804.        MAX-ACCESS  read-only
  1805.        STATUS      current
  1806.        DESCRIPTION
  1807.             "The number of centi-seconds of the total system's
  1808.             CPU resources consumed by this process.  Note that
  1809.             on a multi-processor system, this value may
  1810.             have been incremented by more than one centi-second
  1811.             in one centi-second of real (wall clock) time."
  1812.        ::= { sysApplElmtRunEntry 9 }
  1813.  
  1814.    sysApplElmtRunMemory OBJECT-TYPE
  1815.        SYNTAX      Gauge32
  1816.        UNITS       "Kbytes"
  1817.        MAX-ACCESS  read-only
  1818.        STATUS      current
  1819.        DESCRIPTION
  1820.            "The total amount of real system memory measured in
  1821.            Kbytes currently allocated to this process."
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.  Expires April 20, 1998                               [Page 31]
  1828.  
  1829.  
  1830.  
  1831.  
  1832.  
  1833.  Internet Draft      System Application MIB    October 20, 1997
  1834.  
  1835.  
  1836.        ::= { sysApplElmtRunEntry 10 }
  1837.  
  1838.    sysApplElmtRunNumFiles OBJECT-TYPE
  1839.        SYNTAX      Gauge32
  1840.        MAX-ACCESS  read-only
  1841.        STATUS      current
  1842.        DESCRIPTION
  1843.            "The number of regular files currently open by the
  1844.            process.  Transport connections (sockets)
  1845.            should NOT be included in the calculation of
  1846.            this value, nor should operating system specific
  1847.            special file types."
  1848.        ::= { sysApplElmtRunEntry 11 }
  1849.  
  1850.    sysApplElmtRunUser OBJECT-TYPE
  1851.        SYNTAX      Utf8String
  1852.        MAX-ACCESS  read-only
  1853.        STATUS      current
  1854.        DESCRIPTION
  1855.            "The process owner's login name (e.g. root)."
  1856.        ::= { sysApplElmtRunEntry 12 }
  1857.  
  1858.    -- sysApplElmtPastRunTable
  1859.    -- The sysApplElmtPastRunTable maintains a history of
  1860.    -- processes which have previously executed on
  1861.    -- the host as part of an application. Upon termination
  1862.    -- of a process, the entry representing the process is removed from
  1863.    -- the sysApplElmtRunTable and a corresponding entry is created in
  1864.    -- this table provided that the process was part of an
  1865.    -- identifiable application.  If the process could not be associated
  1866.    -- with an invoked application, no corresponding entry is created.
  1867.    -- Hence, whereas the sysApplElmtRunTable contains an entry for
  1868.    -- every process currently executing on the system, the
  1869.    -- sysApplElmtPastRunTable only contains entries for processes
  1870.    -- that previously executed as part of an invoked application.
  1871.    --
  1872.    -- Entries remain in this table until they are aged out when
  1873.    -- either the number of entries in the table reaches a
  1874.    -- maximum as determined by sysApplElmtPastRunMaxRows, or
  1875.    -- when an entry has aged to exceed a time limit as set by
  1876.    -- sysApplElmtPastRunTblTimeLimit.  When aging out entries,
  1877.    -- the oldest entry, as determined by the value of
  1878.    -- sysApplElmtPastRunTimeEnded, will be removed first.
  1879.    --
  1880.    -- The table is indexed by sysApplInstallPkgIndex (from the
  1881.  
  1882.  
  1883.  
  1884.  
  1885.  
  1886.  Expires April 20, 1998                               [Page 32]
  1887.  
  1888.  
  1889.  
  1890.  
  1891.  
  1892.  Internet Draft      System Application MIB    October 20, 1997
  1893.  
  1894.  
  1895.    -- sysApplInstallPkgTable), sysApplElmtPastRunInvocID, and
  1896.    -- sysApplElmtPastRunIndex to make it easy to locate all
  1897.    -- previously executed processes of a particular invoked application
  1898.    -- that has been installed on the system.
  1899.  
  1900.  
  1901.    sysApplElmtPastRunTable OBJECT-TYPE
  1902.        SYNTAX      SEQUENCE OF SysApplElmtPastRunEntry
  1903.        MAX-ACCESS  not-accessible
  1904.        STATUS      current
  1905.        DESCRIPTION
  1906.            "The table describes the processes which have previously
  1907.            executed on the host system as part of an application.
  1908.            Each entry represents a process which has previously
  1909.            executed and is associated with the invoked application
  1910.            of which it was a part.  Because an invoked application
  1911.            may involve more than one executable, it is possible
  1912.            to have multiple entries in this table for
  1913.            each application invocation. Entries are added
  1914.            to this table when the corresponding process in the
  1915.            sysApplElmtRun Table terminates.
  1916.  
  1917.            Entries remain in this table until they are aged out when
  1918.            either the number of entries in the table reaches a
  1919.            maximum as determined by sysApplElmtPastRunMaxRows, or
  1920.            when an entry has aged to exceed a time limit as set by
  1921.            sysApplElmtPastRunTblTimeLimit.  When aging out entries,
  1922.            the oldest entry, as determined by the value of
  1923.            sysApplElmtPastRunTimeEnded, will be removed first.
  1924.  
  1925.            The table is indexed by sysApplInstallPkgIndex (from the
  1926.            sysApplInstallPkgTable), sysApplElmtPastRunInvocID,
  1927.            and sysApplElmtPastRunIndex to make it easy to locate all
  1928.            previously executed processes of a particular invoked
  1929.            application that has been installed on the system."
  1930.        ::= { sysApplRun 4 }
  1931.  
  1932.    sysApplElmtPastRunEntry OBJECT-TYPE
  1933.        SYNTAX      SysApplElmtPastRunEntry
  1934.        MAX-ACCESS  not-accessible
  1935.        STATUS      current
  1936.        DESCRIPTION
  1937.            "The logical row describing a process which was
  1938.            previously executed on this host as part of an
  1939.            installed application.  The entry is basically copied
  1940.  
  1941.  
  1942.  
  1943.  
  1944.  
  1945.  Expires April 20, 1998                               [Page 33]
  1946.  
  1947.  
  1948.  
  1949.  
  1950.  
  1951.  Internet Draft      System Application MIB    October 20, 1997
  1952.  
  1953.  
  1954.            from the sysApplElmtRunTable when the process
  1955.            terminates.  Hence, the entry's value for
  1956.            sysApplElmtPastRunIndex is the same as its value
  1957.            was for sysApplElmtRunIndex.  Note carefully: only those
  1958.            processes which could be associated with an
  1959.            identified application are included in this table."
  1960.        INDEX    { sysApplInstallPkgIndex, sysApplElmtPastRunInvocID,
  1961.                   sysApplElmtPastRunIndex }
  1962.        ::= { sysApplElmtPastRunTable   1 }
  1963.  
  1964.    SysApplElmtPastRunEntry ::= SEQUENCE {
  1965.        sysApplElmtPastRunInvocID           Unsigned32,
  1966.        sysApplElmtPastRunIndex             Unsigned32,
  1967.        sysApplElmtPastRunInstallID         Unsigned32,
  1968.        sysApplElmtPastRunTimeStarted       DateAndTime,
  1969.        sysApplElmtPastRunTimeEnded         DateAndTime,
  1970.        sysApplElmtPastRunName              LongUtf8String,
  1971.        sysApplElmtPastRunParameters        Utf8String,
  1972.        sysApplElmtPastRunCPU               TimeTicks,
  1973.        sysApplElmtPastRunMemory            Unsigned32,
  1974.        sysApplElmtPastRunNumFiles          Unsigned32,
  1975.        sysApplElmtPastRunUser              Utf8String
  1976.    }
  1977.  
  1978.    sysApplElmtPastRunInvocID OBJECT-TYPE
  1979.        SYNTAX      Unsigned32 (1..'ffffffff'h)
  1980.        MAX-ACCESS  not-accessible
  1981.        STATUS      current
  1982.        DESCRIPTION
  1983.            "Part of the index for this table, this value
  1984.            identifies the invocation of an application of which
  1985.            the process represented by this entry was a part.
  1986.            The value of this object is the same value as the
  1987.            sysApplRunIndex for the corresponding application
  1988.            invocation in the sysApplRunTable.  If the invoked
  1989.            application as a whole has terminated, it will be the
  1990.            same as the sysApplPastRunIndex."
  1991.        ::= { sysApplElmtPastRunEntry 1 }
  1992.  
  1993.    sysApplElmtPastRunIndex OBJECT-TYPE
  1994.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  1995.        MAX-ACCESS  not-accessible
  1996.        STATUS      current
  1997.        DESCRIPTION
  1998.            "Part of the index for this table. An integer
  1999.  
  2000.  
  2001.  
  2002.  
  2003.  
  2004.  Expires April 20, 1998                               [Page 34]
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  Internet Draft      System Application MIB    October 20, 1997
  2011.  
  2012.  
  2013.            assigned by the agent equal to the corresponding
  2014.            sysApplElmtRunIndex which was removed from the
  2015.            sysApplElmtRunTable and moved to this table
  2016.            when the element terminated.
  2017.  
  2018.            Note: entries in this table are indexed by
  2019.            sysApplElmtPastRunInvocID, sysApplElmtPastRunIndex.
  2020.            The possibility exists, though unlikely, of a
  2021.            collision occurring by a new entry which was run
  2022.            by the same invoked application (InvocID), and
  2023.            was assigned the same process identification number
  2024.            (ElmtRunIndex) as an element which was previously
  2025.            run by the same invoked application.
  2026.  
  2027.            Should this situation occur, the new entry replaces
  2028.            the old entry.
  2029.  
  2030.            See Section: 'Implementation Issues -
  2031.            sysApplElmtPastRunTable Entry Collisions' for the
  2032.            conditions that would have to occur in order for a
  2033.            collision to occur."
  2034.        ::= { sysApplElmtPastRunEntry 2 }
  2035.  
  2036.  
  2037.    sysApplElmtPastRunInstallID OBJECT-TYPE
  2038.        SYNTAX      Unsigned32 (1..'ffffffff'h)
  2039.        MAX-ACCESS  read-only
  2040.        STATUS      current
  2041.        DESCRIPTION
  2042.            "The index into the installed element table. The
  2043.            value of this object is the same value as the
  2044.            sysApplInstallElmtIndex for the application element
  2045.            of which this entry represents a previously executed
  2046.            process."
  2047.        ::= { sysApplElmtPastRunEntry 3 }
  2048.  
  2049.    sysApplElmtPastRunTimeStarted OBJECT-TYPE
  2050.        SYNTAX      DateAndTime
  2051.        MAX-ACCESS  read-only
  2052.        STATUS      current
  2053.        DESCRIPTION
  2054.            "The time the process was started."
  2055.        ::= { sysApplElmtPastRunEntry 4 }
  2056.  
  2057.    sysApplElmtPastRunTimeEnded OBJECT-TYPE
  2058.  
  2059.  
  2060.  
  2061.  
  2062.  
  2063.  Expires April 20, 1998                               [Page 35]
  2064.  
  2065.  
  2066.  
  2067.  
  2068.  
  2069.  Internet Draft      System Application MIB    October 20, 1997
  2070.  
  2071.  
  2072.        SYNTAX      DateAndTime
  2073.        MAX-ACCESS  read-only
  2074.        STATUS      current
  2075.        DESCRIPTION
  2076.            "The time the process ended."
  2077.        ::= { sysApplElmtPastRunEntry 5 }
  2078.  
  2079.    sysApplElmtPastRunName OBJECT-TYPE
  2080.        SYNTAX      LongUtf8String
  2081.        MAX-ACCESS  read-only
  2082.        STATUS      current
  2083.        DESCRIPTION
  2084.            "The full path and filename of the process.
  2085.            For example, '/opt/MYYpkg/bin/myyproc' would
  2086.            be returned for process 'myyproc' whose execution
  2087.            path was '/opt/MYYpkg/bin/myyproc'."
  2088.        ::= { sysApplElmtPastRunEntry 6 }
  2089.  
  2090.    sysApplElmtPastRunParameters OBJECT-TYPE
  2091.        SYNTAX      Utf8String
  2092.        MAX-ACCESS  read-only
  2093.        STATUS      current
  2094.        DESCRIPTION
  2095.            "The starting parameters for the process."
  2096.        ::= { sysApplElmtPastRunEntry 7 }
  2097.  
  2098.    sysApplElmtPastRunCPU OBJECT-TYPE
  2099.        SYNTAX      TimeTicks
  2100.        MAX-ACCESS  read-only
  2101.        STATUS      current
  2102.        DESCRIPTION
  2103.             "The last known number of centi-seconds of the total
  2104.             system's CPU resources consumed by this process.
  2105.             Note that on a multi-processor system, this value may
  2106.             increment by more than one centi-second in one
  2107.             centi-second of real (wall clock) time."
  2108.        ::= { sysApplElmtPastRunEntry 8 }
  2109.  
  2110.    sysApplElmtPastRunMemory OBJECT-TYPE
  2111.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  2112.        UNITS       "Kbytes"
  2113.        MAX-ACCESS  read-only
  2114.        STATUS      current
  2115.        DESCRIPTION
  2116.            "The last known total amount of real system memory
  2117.  
  2118.  
  2119.  
  2120.  
  2121.  
  2122.  Expires April 20, 1998                               [Page 36]
  2123.  
  2124.  
  2125.  
  2126.  
  2127.  
  2128.  Internet Draft      System Application MIB    October 20, 1997
  2129.  
  2130.  
  2131.            measured in Kbytes allocated to this process before it
  2132.            terminated."
  2133.        ::= { sysApplElmtPastRunEntry 9 }
  2134.  
  2135.    sysApplElmtPastRunNumFiles OBJECT-TYPE
  2136.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  2137.        MAX-ACCESS  read-only
  2138.        STATUS      current
  2139.        DESCRIPTION
  2140.            "The last known number of files open by the
  2141.            process before it terminated.  Transport
  2142.            connections (sockets) should NOT be included in
  2143.            the calculation of this value."
  2144.        ::= { sysApplElmtPastRunEntry 10 }
  2145.  
  2146.    sysApplElmtPastRunUser OBJECT-TYPE
  2147.        SYNTAX      Utf8String
  2148.        MAX-ACCESS  read-only
  2149.        STATUS      current
  2150.        DESCRIPTION
  2151.            "The process owner's login name (e.g. root)."
  2152.        ::= { sysApplElmtPastRunEntry 11 }
  2153.  
  2154.  
  2155.    -- Additional Scalar objects to control table sizes
  2156.  
  2157.    sysApplPastRunMaxRows OBJECT-TYPE
  2158.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  2159.        MAX-ACCESS  read-write
  2160.        STATUS      current
  2161.        DESCRIPTION
  2162.            "The maximum number of entries allowed in the
  2163.            sysApplPastRunTable.  Once the number of rows in
  2164.            the sysApplPastRunTable reaches this value, the
  2165.            management subsystem will remove the oldest entry
  2166.            in the table to make room for the new entry to be added.
  2167.            Entries will be removed on the basis of oldest
  2168.            sysApplPastRunTimeEnded value first.
  2169.  
  2170.            This object may be used to control the amount of
  2171.            system resources that can used for sysApplPastRunTable
  2172.            entries. A conforming implementation should attempt
  2173.            to support the default value, however, a lesser value
  2174.            may be necessary due to implementation-dependent issues
  2175.            and resource availability."
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  Expires April 20, 1998                               [Page 37]
  2182.  
  2183.  
  2184.  
  2185.  
  2186.  
  2187.  Internet Draft      System Application MIB    October 20, 1997
  2188.  
  2189.  
  2190.        DEFVAL      { 500 }
  2191.        ::= { sysApplRun 5 }
  2192.  
  2193.    sysApplPastRunTableRemItems OBJECT-TYPE
  2194.        SYNTAX      Counter32
  2195.        MAX-ACCESS  read-only
  2196.        STATUS      current
  2197.        DESCRIPTION
  2198.            "A counter of the number of entries removed from
  2199.            the sysApplPastRunTable because of table size limitations
  2200.            as set in sysApplPastRunMaxRows.  This counter is the
  2201.            number of entries the management subsystem has had to
  2202.            remove in order to make room for new entries (so as not
  2203.            to exceed the limit set by sysApplPastRunMaxRows) since
  2204.            the last initialization of the management subsystem."
  2205.        ::= { sysApplRun 6 }
  2206.  
  2207.    sysApplPastRunTblTimeLimit OBJECT-TYPE
  2208.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  2209.        UNITS       "seconds"
  2210.        MAX-ACCESS  read-write
  2211.        STATUS      current
  2212.        DESCRIPTION
  2213.            "The maximum time in seconds which an entry in the
  2214.             sysApplPastRunTable may exist before it is removed.
  2215.             Any entry that is older than this value will be
  2216.             removed (aged out) from the table.
  2217.  
  2218.             Note that an entry may be aged out prior to reaching
  2219.             this time limit if it is the oldest entry in the
  2220.             table and must be removed to make space for a new
  2221.             entry so as to not exceed sysApplPastRunMaxRows."
  2222.        DEFVAL      { 7200 }
  2223.        ::= { sysApplRun 7 }
  2224.  
  2225.    sysApplElemPastRunMaxRows OBJECT-TYPE
  2226.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  2227.        MAX-ACCESS  read-write
  2228.        STATUS      current
  2229.        DESCRIPTION
  2230.            "The maximum number of entries allowed in the
  2231.            sysApplElmtPastRunTable.  Once the number of rows in
  2232.            the sysApplElmtPastRunTable reaches this value,
  2233.            the management subsystem will remove the oldest entry
  2234.            to make room for the new entry to be added.  Entries
  2235.  
  2236.  
  2237.  
  2238.  
  2239.  
  2240.  Expires April 20, 1998                               [Page 38]
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.  Internet Draft      System Application MIB    October 20, 1997
  2247.  
  2248.  
  2249.            will be removed on the basis of oldest
  2250.            sysApplElmtPastRunTimeEnded value first.
  2251.  
  2252.            This object may be used to control the amount of
  2253.            system resources that can used for sysApplElemPastRunTable
  2254.            entries. A conforming implementation should attempt
  2255.            to support the default value, however, a lesser value
  2256.            may be necessary due to implementation-dependent issues
  2257.            and resource availability."
  2258.        DEFVAL      { 500 }
  2259.        ::= { sysApplRun 8 }
  2260.  
  2261.    sysApplElemPastRunTableRemItems OBJECT-TYPE
  2262.        SYNTAX      Counter32
  2263.        MAX-ACCESS  read-only
  2264.        STATUS      current
  2265.        DESCRIPTION
  2266.            "A counter of the number of entries removed from the
  2267.            sysApplElemPastRunTable because of table size limitations
  2268.            as set in sysApplElemPastRunMaxRows.  This counter is the
  2269.            number of entries the management subsystem has had to
  2270.            remove in order to make room for new entries (so as not
  2271.            to exceed the limit set by sysApplElemPastRunMaxRows) since
  2272.            the last initialization of the management subsystem."
  2273.        ::= { sysApplRun 9 }
  2274.  
  2275.    sysApplElemPastRunTblTimeLimit OBJECT-TYPE
  2276.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  2277.        UNITS       "seconds"
  2278.        MAX-ACCESS  read-write
  2279.        STATUS      current
  2280.        DESCRIPTION
  2281.            "The maximum time in seconds which an entry in the
  2282.             sysApplElemPastRunTable may exist before it is removed.
  2283.             Any entry that is older than this value will be
  2284.             removed (aged out) from the table.
  2285.  
  2286.             Note that an entry may be aged out prior to reaching
  2287.             this time limit if it is the oldest entry in the
  2288.             table and must be removed to make space for a new
  2289.             entry so as to not exceed sysApplElemPastRunMaxRows."
  2290.        DEFVAL      { 7200 }
  2291.        ::= { sysApplRun 10 }
  2292.  
  2293.    sysApplAgentPollInterval  OBJECT-TYPE
  2294.  
  2295.  
  2296.  
  2297.  
  2298.  
  2299.  Expires April 20, 1998                               [Page 39]
  2300.  
  2301.  
  2302.  
  2303.  
  2304.  
  2305.  Internet Draft      System Application MIB    October 20, 1997
  2306.  
  2307.  
  2308.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  2309.        UNITS       "seconds"
  2310.        MAX-ACCESS  read-write
  2311.        STATUS      current
  2312.        DESCRIPTION
  2313.            "The minimum interval in seconds that the management
  2314.            subsystem implementing this MIB will poll the status
  2315.            of the managed resources. Because of the non-trivial
  2316.            effort involved in polling the managed resources,
  2317.            and because the method for obtaining the status of
  2318.            the managed resources is implementation-dependent,
  2319.            a conformant implementation may chose a lower bound
  2320.            greater than 0.
  2321.  
  2322.            A value of 0 indicates that there is no delay
  2323.            in the passing of information from the managed
  2324.            resources to the agent."
  2325.        DEFVAL      { 60 }
  2326.        ::= { sysApplRun 11 }
  2327.  
  2328.  
  2329.    -- sysApplMap Group
  2330.    -- This group contains a table, the sysApplMapTable,
  2331.    -- whose sole purpose is to provide a 'backwards'
  2332.    -- mapping so that, given a known sysApplElmtRunIndex
  2333.    -- (process identification number), the corresponding invoked
  2334.    -- application (sysApplRunIndex), installed element
  2335.    -- (sysApplInstallElmtIndex), and installed application
  2336.    -- package (sysApplInstallPkgIndex) can be quickly determined.
  2337.    --
  2338.    -- The table will contain one entry for each process
  2339.    -- currently running on the system.
  2340.    --
  2341.    -- A backwards mapping is extremely useful since the tables
  2342.    -- in this MIB module are typically indexed with the
  2343.    -- installed application package (sysApplInstallPkgIndex)
  2344.    -- as the primary key, and on down as required by the
  2345.    -- specific table, with the process ID number (sysApplElmtRunIndex)
  2346.    -- being the least significant key.
  2347.    --
  2348.    -- It is expected that management applications will use
  2349.    -- this mapping table by doing a 'GetNext' operation with
  2350.    -- the known process ID number (sysApplElmtRunIndex) as the partial
  2351.    -- instance identifier.  Assuming that there is an entry for
  2352.    -- the process, the result should return a single columnar value,
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.  Expires April 20, 1998                               [Page 40]
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  Internet Draft      System Application MIB    October 20, 1997
  2365.  
  2366.  
  2367.    -- the sysApplMapInstallPkgIndex, with the sysApplElmtRunIndex,
  2368.    -- sysApplRunIndex, and sysApplInstallElmtIndex contained in the
  2369.    -- instance identifier for the returned MIB object value.
  2370.    --
  2371.    -- NOTE: if the process can not be associated back to an
  2372.    -- invoked application installed on the system, then the
  2373.    -- value returned for the columnar value sysApplMapInstallPkgIndex
  2374.    -- will be '0' and the instance portion of the object-identifier
  2375.    -- will be the process ID number (sysApplElmtRunIndex) followed
  2376.    -- by 0.0.
  2377.  
  2378.    sysApplMapTable OBJECT-TYPE
  2379.        SYNTAX      SEQUENCE OF SysApplMapEntry
  2380.        MAX-ACCESS  not-accessible
  2381.        STATUS      current
  2382.        DESCRIPTION
  2383.            "The sole purpose of this table is to provide a
  2384.            'backwards' mapping so that, given a known
  2385.            sysApplElmtRunIndex (process identification number),
  2386.            the corresponding invoked application (sysApplRunIndex),
  2387.            installed element (sysApplInstallElmtIndex), and
  2388.            installed application package (sysApplInstallPkgIndex)
  2389.            can be quickly determined.
  2390.  
  2391.            This table will contain one entry for each process
  2392.            that is currently executing on the system.
  2393.  
  2394.            It is expected that management applications will use
  2395.            this mapping table by doing a 'GetNext' operation with
  2396.            the known process ID number (sysApplElmtRunIndex) as the
  2397.            partial instance identifier.  Assuming that there is an
  2398.            entry for the process, the result should return a single
  2399.            columnar value, the sysApplMapInstallPkgIndex, with the
  2400.            sysApplElmtRunIndex, sysApplRunIndex, and
  2401.            sysApplInstallElmtIndex contained in the instance identifier
  2402.            for the returned MIB object value.
  2403.  
  2404.            NOTE: if the process can not be associated back to an
  2405.            invoked application installed on the system, then the
  2406.            value returned for the columnar value
  2407.            sysApplMapInstallPkgIndex will be '0' and the instance
  2408.            portion of the object-identifier will be the process ID
  2409.            number (sysApplElmtRunIndex) followed by 0.0."
  2410.        ::= { sysApplMap 1 }
  2411.  
  2412.  
  2413.  
  2414.  
  2415.  
  2416.  
  2417.  Expires April 20, 1998                               [Page 41]
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.  Internet Draft      System Application MIB    October 20, 1997
  2424.  
  2425.  
  2426.    sysApplMapEntry OBJECT-TYPE
  2427.        SYNTAX      SysApplMapEntry
  2428.        MAX-ACCESS  not-accessible
  2429.        STATUS      current
  2430.        DESCRIPTION
  2431.            "A logical row representing a process currently running
  2432.             on the system.  This entry provides the index mapping from
  2433.             process identifier, back to the invoked application,
  2434.             installed element, and finally, the installed application
  2435.             package.  The entry includes only one accessible columnar
  2436.             object, the sysApplMapInstallPkgIndex, but the
  2437.             invoked application and installed element can be
  2438.             determined from the instance identifier since they form
  2439.             part of the index clause."
  2440.        INDEX  { sysApplElmtRunIndex, sysApplElmtRunInvocID,
  2441.                 sysApplMapInstallElmtIndex }
  2442.        ::= { sysApplMapTable 1 }
  2443.  
  2444.    SysApplMapEntry ::= SEQUENCE {
  2445.        sysApplMapInstallElmtIndex    Unsigned32,
  2446.        sysApplMapInstallPkgIndex     Unsigned32
  2447.    }
  2448.  
  2449.    sysApplMapInstallElmtIndex OBJECT-TYPE
  2450.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  2451.        MAX-ACCESS  not-accessible
  2452.        STATUS      current
  2453.        DESCRIPTION
  2454.            "The index into the sysApplInstallElmtTable. The
  2455.            value of this object is the same value as the
  2456.            sysApplInstallElmtIndex for the application element
  2457.            of which this entry represents a running instance.
  2458.            If this process cannot be associated to an installed
  2459.            executable, the value should be '0'."
  2460.        ::= { sysApplMapEntry 1 }
  2461.  
  2462.    sysApplMapInstallPkgIndex OBJECT-TYPE
  2463.        SYNTAX      Unsigned32 (0..'ffffffff'h)
  2464.        MAX-ACCESS  read-only
  2465.        STATUS      current
  2466.        DESCRIPTION
  2467.            "The value of this object identifies the installed
  2468.            software package for the application of which this
  2469.            process is a part.  Provided that the process's 'parent'
  2470.            application can be determined, the value of this object
  2471.  
  2472.  
  2473.  
  2474.  
  2475.  
  2476.  Expires April 20, 1998                               [Page 42]
  2477.  
  2478.  
  2479.  
  2480.  
  2481.  
  2482.  Internet Draft      System Application MIB    October 20, 1997
  2483.  
  2484.  
  2485.            is the same value as the sysApplInstallPkgIndex for the
  2486.            entry in the sysApplInstallPkgTable that corresponds
  2487.            to the installed application of which this process
  2488.            is a part.
  2489.  
  2490.            If, however, the 'parent' application cannot be
  2491.            determined, (for example the process is not part
  2492.            of a particular installed application), the value
  2493.            for this object is then '0', signifying that this
  2494.            process cannot be related back to an application,
  2495.            and in turn, an installed software package."
  2496.        ::= { sysApplMapEntry 2 }
  2497.  
  2498.  
  2499.    -- Conformance Macros
  2500.  
  2501.    sysApplMIBCompliances  OBJECT IDENTIFIER ::= { sysApplConformance 1 }
  2502.    sysApplMIBGroups       OBJECT IDENTIFIER ::= { sysApplConformance 2 }
  2503.  
  2504.    sysApplMIBCompliance MODULE-COMPLIANCE
  2505.        STATUS  current
  2506.        DESCRIPTION
  2507.            "Describes the requirements for conformance to
  2508.            the System Application MIB"
  2509.        MODULE  -- this module
  2510.            MANDATORY-GROUPS { sysApplInstalledGroup,
  2511.                               sysApplRunGroup, sysApplMapGroup }
  2512.        ::= { sysApplMIBCompliances 1 }
  2513.  
  2514.    sysApplInstalledGroup OBJECT-GROUP
  2515.        OBJECTS { sysApplInstallPkgManufacturer,
  2516.                  sysApplInstallPkgProductName,
  2517.                  sysApplInstallPkgVersion,
  2518.                  sysApplInstallPkgSerialNumber,
  2519.                  sysApplInstallPkgDate,
  2520.                  sysApplInstallPkgLocation,
  2521.                  sysApplInstallElmtName,
  2522.                  sysApplInstallElmtType,
  2523.                  sysApplInstallElmtDate,
  2524.                  sysApplInstallElmtPath,
  2525.                  sysApplInstallElmtSizeHigh,
  2526.                  sysApplInstallElmtSizeLow,
  2527.                  sysApplInstallElmtRole,
  2528.                  sysApplInstallElmtModifyDate,
  2529.                  sysApplInstallElmtCurSizeHigh,
  2530.  
  2531.  
  2532.  
  2533.  
  2534.  
  2535.  Expires April 20, 1998                               [Page 43]
  2536.  
  2537.  
  2538.  
  2539.  
  2540.  
  2541.  Internet Draft      System Application MIB    October 20, 1997
  2542.  
  2543.  
  2544.                  sysApplInstallElmtCurSizeLow }
  2545.        STATUS  current
  2546.        DESCRIPTION
  2547.            "The system application installed group contains
  2548.            information about applications and their constituent
  2549.            components which have been installed on the host system."
  2550.        ::= { sysApplMIBGroups 1 }
  2551.  
  2552.    sysApplRunGroup OBJECT-GROUP
  2553.        OBJECTS { sysApplRunStarted,
  2554.                  sysApplRunCurrentState,
  2555.                  sysApplPastRunStarted,
  2556.                  sysApplPastRunExitState,
  2557.                  sysApplPastRunTimeEnded,
  2558.                  sysApplElmtRunInstallID,
  2559.                  sysApplElmtRunTimeStarted,
  2560.                  sysApplElmtRunState,
  2561.                  sysApplElmtRunName,
  2562.                  sysApplElmtRunParameters,
  2563.                  sysApplElmtRunCPU,
  2564.                  sysApplElmtRunMemory,
  2565.                  sysApplElmtRunNumFiles,
  2566.                  sysApplElmtRunUser,
  2567.                  sysApplElmtPastRunInstallID,
  2568.                  sysApplElmtPastRunTimeStarted,
  2569.                  sysApplElmtPastRunTimeEnded,
  2570.                  sysApplElmtPastRunName,
  2571.                  sysApplElmtPastRunParameters,
  2572.                  sysApplElmtPastRunCPU,
  2573.                  sysApplElmtPastRunMemory,
  2574.                  sysApplElmtPastRunNumFiles,
  2575.                  sysApplElmtPastRunUser,
  2576.                  sysApplPastRunMaxRows,
  2577.                  sysApplPastRunTableRemItems,
  2578.                  sysApplPastRunTblTimeLimit,
  2579.                  sysApplElemPastRunMaxRows,
  2580.                  sysApplElemPastRunTableRemItems,
  2581.                  sysApplElemPastRunTblTimeLimit,
  2582.                  sysApplAgentPollInterval }
  2583.        STATUS  current
  2584.        DESCRIPTION
  2585.            "The system application run group contains information
  2586.            about applications and associated elements which have
  2587.            run or are currently running on the host system."
  2588.        ::= { sysApplMIBGroups 2 }
  2589.  
  2590.  
  2591.  
  2592.  
  2593.  
  2594.  Expires April 20, 1998                               [Page 44]
  2595.  
  2596.  
  2597.  
  2598.  
  2599.  
  2600.  Internet Draft      System Application MIB    October 20, 1997
  2601.  
  2602.  
  2603.    sysApplMapGroup OBJECT-GROUP
  2604.        OBJECTS { sysApplMapInstallPkgIndex }
  2605.        STATUS  current
  2606.        DESCRIPTION
  2607.            "The Map Group contains a single table, sysApplMapTable,
  2608.            that provides a backwards mapping for determining the
  2609.            invoked application, installed element, and installed
  2610.            application package given a known process identification
  2611.            number."
  2612.    ::= { sysApplMIBGroups 3 }
  2613.  
  2614.    END
  2615.  
  2616.  
  2617.  
  2618.  
  2619.  
  2620.  7.  Implementation Issues
  2621.  
  2622.  This section discusses implementation issues that are
  2623.  important for both an agent developer, and a management
  2624.  application developer or user to understand with regards to
  2625.  this MIB module.  Although this section does not attempt to
  2626.  prescribe a particular implementation strategy, it does
  2627.  attempt to recognize some of the real world limitations that
  2628.  could effect an implementation of this MIB module.
  2629.  
  2630.  
  2631.  7.1.  Implementation with Polling Agents
  2632.  
  2633.  Implementations of the System Application MIB on popular
  2634.  operating systems might require some considerable processing
  2635.  power to obtain status information from the managed resources.
  2636.  It might also be difficult to determine when an application or
  2637.  a process starts or finishes. Implementors of this MIB might
  2638.  therefore choose an implementation approach where the agent
  2639.  polls the managed resources at regular intervals. The
  2640.  information retrieved by every poll is used to update a cached
  2641.  version of this MIB maintained inside of the agent. SNMP
  2642.  request are processed based on the information found in this
  2643.  MIB cache.
  2644.  
  2645.  A scalar sysApplAgentPollInterval is defined to give the
  2646.  manager control over the polling frequency. There is a trade-
  2647.  off between the amount of resources consumed during every poll
  2648.  
  2649.  
  2650.  
  2651.  
  2652.  
  2653.  Expires April 20, 1998                               [Page 45]
  2654.  
  2655.  
  2656.  
  2657.  
  2658.  
  2659.  Internet Draft      System Application MIB    October 20, 1997
  2660.  
  2661.  
  2662.  to update the MIB cache, and the accuracy of the information
  2663.  provided by the System Application MIB agent. A default value
  2664.  of 60 seconds is defined to keep the processing overhead low,
  2665.  while providing usable information for long-lived processes. A
  2666.  manager is expected to adjust this value if more accurate
  2667.  information about short-lived applications or processes is
  2668.  needed, or if the amount of resources consumed by the agent is
  2669.  too high.
  2670.  
  2671.  
  2672.  7.2.  sysApplElmtPastRunTable Entry Collisions
  2673.  
  2674.  The sysApplElmtPastRunTable maintains a history of processes
  2675.  which have previously executed on the host as part of an
  2676.  application.  Information is moved from the
  2677.  sysApplElmtRunTable to this PastRun table when the process
  2678.  represented by the entry terminates.
  2679.  
  2680.  The sysApplElmtPastRunTable is indexed by the tuple,
  2681.  (sysApplElmtPastRunInvocID, sysApplElmtPastRunIndex), where
  2682.  the first part identifies the application invocation of which
  2683.  the process was a part, and the second part identifies the
  2684.  process itself.
  2685.  
  2686.  Recall that the sysApplElmtRunIndex represents the system's
  2687.  unique identification number assigned to a running process and
  2688.  that this value is mapped to sysApplElmtPastRunIndex when the
  2689.  process terminates and the entry's information is moved from
  2690.  the sysApplElmtRunTable to the sysApplElmtPastRunTable.  Many
  2691.  systems re-use process ID numbers which are no longer assigned
  2692.  to running processes; typically, the process numbers wrap and
  2693.  the next available process number is used.
  2694.  
  2695.  It is therefore possible for two entries in the
  2696.  sysApplElmtPastRun Table to have the same value for
  2697.  sysApplElmtPastRunIndex.  For this reason, entries in the
  2698.  ElmtPastRun table are indexed by the tuple
  2699.  sysApplElmtPastRunInvocID, sysApplElmtPastRunIndex to reduce
  2700.  the chance of a collision by two past run elements with the
  2701.  same sysApplElmtPastRunIndex.
  2702.  
  2703.  However, it is still possible, though unlikely, for a
  2704.  collision to occur if the following happens:
  2705.  
  2706.  
  2707.  
  2708.  
  2709.  
  2710.  
  2711.  
  2712.  Expires April 20, 1998                               [Page 46]
  2713.  
  2714.  
  2715.  
  2716.  
  2717.  
  2718.  Internet Draft      System Application MIB    October 20, 1997
  2719.  
  2720.  
  2721.  1)   the invoked application (identified by InvocID), has an
  2722.       element which runs, terminates, and is moved into the
  2723.       sysApplElmtPastRun table (index: InvocID, RunIndex)
  2724.  
  2725.  
  2726.  2)   the numbers used for the system's process identification
  2727.       numbering wrap
  2728.  
  2729.  
  2730.  3)   that same invoked application (same InvocID), has another
  2731.       element process run, AND that process is assigned the
  2732.       same identification number as one of the processes
  2733.       previously run by that invoked application (same
  2734.       RunIndex), and finally,
  2735.  
  2736.  
  2737.  4)   that element process terminates and is moved to the
  2738.       sysApplElmtPastRun table prior to the old, duplicate
  2739.       (InvocID, RunIndex) entry being aged out of the table by
  2740.       settings defined for sysApplElmtPastRunMaxRows and
  2741.       sysApplElmtPastRunTblTimeLimit.
  2742.  
  2743.  
  2744.  
  2745.  In the event that a collision occurs, the new entry will
  2746.  replace the old entry.
  2747.  
  2748.  
  2749.  
  2750.  
  2751.  
  2752.  
  2753.  8.  Security Considerations
  2754.  
  2755.  In order to implement this MIB, an agent must make certain
  2756.  management information available about various logical and
  2757.  physical entities within a managed system which may be
  2758.  considered sensitive in some network environments.
  2759.  
  2760.  Therefore, a network administrator may wish to employ
  2761.  instance-level access control, and configure the access
  2762.  mechanism (i.e., community strings in SNMPv1 and SNMPv2C),
  2763.  such that certain instances within this MIB are excluded from
  2764.  particular MIB views.
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771.  Expires April 20, 1998                               [Page 47]
  2772.  
  2773.  
  2774.  
  2775.  
  2776.  
  2777.  Internet Draft      System Application MIB    October 20, 1997
  2778.  
  2779.  
  2780.  9.  Copyright
  2781.  
  2782.       Copyright (C) The Internet Society October 20, 1997. 
  2783.       All Rights Reserved.
  2784.  
  2785.       This document and translations of it may be copied and
  2786.       furnished to others, and derivative works that comment on 
  2787.       or otherwise explain it or assist in its implmentation may
  2788.       be prepared, copied, published and distributed, in whole or
  2789.       in part, without restriction of any kind, provided that the
  2790.       above copyright notice and this paragraph are included on 
  2791.       all such copies and derivative works.  However, this document
  2792.       itself may not be modified in any way, such as by removing 
  2793.       the copyright notice or references to the Internet Society 
  2794.       or other Internet organizations, except as needed for the  
  2795.       purpose of developing Internet standards in which case the 
  2796.       procedures for copyrights defined in the Internet Standards 
  2797.       process must be followed, or as required to translate it into 
  2798.       languages other than English.
  2799.  
  2800.  
  2801.       The limited permissions granted above are perpetual and will
  2802.       not be revoked by the Internet Society or its successors or
  2803.       assigns.
  2804.  
  2805.  
  2806.       This document and the information contained herein is provided
  2807.       on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET
  2808.       ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR
  2809.       IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE
  2810.       OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY
  2811.       IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
  2812.       PARTICULAR PURPOSE.
  2813.  
  2814.  
  2815.  
  2816.  
  2817.  
  2818.  
  2819.  
  2820.  
  2821.  
  2822.  
  2823.  
  2824.  
  2825.  
  2826.  
  2827.  
  2828.  
  2829.  
  2830.  Expires April 20, 1998                               [Page 48]
  2831.  
  2832.  
  2833.  
  2834.  
  2835.  
  2836.  Internet Draft      System Application MIB    October 20, 1997
  2837.  
  2838.  
  2839.  10.  Acknowledgements
  2840.  
  2841.  This document was produced by the Application MIB working
  2842.  group.  Special acknowledgement is made to:
  2843.  
  2844.       Rick Sturm
  2845.       Enterprise Management Professional Services, Inc.
  2846.       sturm@emi-summit.com
  2847.       For hosting the working group mailing list, and for his
  2848.       participation in the development of the initial draft.
  2849.  
  2850.  
  2851.       Jon Weinstock
  2852.       General Instrument Corporation
  2853.       jweinstock@gic.gi.com
  2854.       For his participation in the development of the initial drafts
  2855.       and for serving as editor for drafts 1 and 2.
  2856.  
  2857.       The editor would like to extend special thanks to the
  2858.       following working group members for their contributions
  2859.       to this effort.
  2860.  
  2861.       Harald Alvestrand, George Best, Ian Hanson, Harrie
  2862.       Hazewinkel, Carl Kalbfleisch, Bobby Krupczak, Randy
  2863.       Presuhn, Jon Saperia, Juergen Schoenwaelder
  2864.  
  2865.  
  2866.  
  2867.  11.  Editor's Address
  2868.  
  2869.       Cheryl Krupczak
  2870.       Empire Technologies, Inc.
  2871.       541 Tenth Street, NW Suite 169
  2872.       Atlanta, GA 30318
  2873.       Phone: 770.384.0184
  2874.       Email: cheryl@empiretech.com
  2875.  
  2876.  
  2877.  
  2878.  
  2879.  
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886.  
  2887.  
  2888.  
  2889.  Expires April 20, 1998                               [Page 49]
  2890. ^L
  2891.  
  2892.  
  2893.  
  2894.  
  2895.  Internet Draft      System Application MIB    October 20, 1997
  2896.  
  2897.  
  2898.  12.  References
  2899.  
  2900.  [1]  Information processing systems - Open Systems
  2901.       Interconnection - Specification of Abstract Syntax
  2902.       Notation One (ASN.1), International Organization for
  2903.       Standardization.  International Standard 8824, (December,
  2904.       1987).
  2905.  
  2906.  
  2907.  [2]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M.,
  2908.       and S. Waldbusser, "Structure of Management Information
  2909.       for Version 2 of the Simple Network Management Protocol
  2910.       (SNMPv2)", RFC 1902, January 1996.
  2911.  
  2912.  
  2913.  [3]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M.,
  2914.       and S. Waldbusser, "Textual Conventions for Version 2 of
  2915.       the Simple Network Management Protocol (SNMPv2)", RFC
  2916.       1903, January 1996.
  2917.  
  2918.  
  2919.  [4]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M.,
  2920.       and S. Waldbusser, "Conformance Statements for Version 2
  2921.       of the Simple Network Management Protocol (SNMPv2)", RFC
  2922.       1904, January 1996.
  2923.  
  2924.  
  2925.  [5]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M.,
  2926.       and S. Waldbusser, "Protocol Operations for Version 2 of
  2927.       the Simple Network Management Protocol (SNMPv2)", RFC
  2928.       1905, January 1996.
  2929.  
  2930.  
  2931.  [6]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M.,
  2932.       and S. Waldbusser, "Transport Mappings for SNMPv2", RFC
  2933.       1906, January 1996.
  2934.  
  2935.  
  2936.  [7]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M.,
  2937.       and S. Waldbusser, "Management Information Base for
  2938.       Version 2 of the Simple Network Management Protocol
  2939.       (SNMPv2)", RFC 1907, January 1996.
  2940.  
  2941.  
  2942.  
  2943.  
  2944.  
  2945.  
  2946.  
  2947.  
  2948.  Expires April 20, 1998                               [Page 50]
  2949. ^L
  2950.  
  2951.  
  2952.  
  2953.  
  2954.  Internet Draft      System Application MIB    October 20, 1997
  2955.  
  2956.  
  2957.  [8]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M.,
  2958.       and S. Waldbusser, "Coexistence between Version 1 and
  2959.       Version 2 of the Internet-standard Network Management
  2960.       Framework", RFC 1908, January 1996.
  2961.  
  2962.  
  2963.  [9]  P. Grillo, S. Waldbusser, "Host Resources MIB", RFC 1514,
  2964.       September 1993.
  2965.  
  2966.  
  2967.  [10] F. Yergeau, "UTF-8, a transformation format of Unicode
  2968.       and ISO 10646", RFC 2044, October 1996.
  2969.  
  2970.  
  2971.  [11] C. Krupczak, S. Waldbusser, "Applicability of Host
  2972.       Resources MIB to Application Management", Application MIB
  2973.       working group report, October 1995.
  2974.  
  2975.  
  2976.  
  2977.  
  2978.  
  2979.  
  2980.  
  2981.  
  2982.  
  2983.  
  2984.  
  2985.  
  2986.  
  2987.  
  2988.  
  2989.  
  2990.  
  2991.  
  2992.  
  2993.  
  2994.  
  2995.  
  2996.  
  2997.  
  2998.  
  2999.  
  3000.  
  3001.  
  3002.  
  3003.  
  3004.  
  3005.  
  3006.  
  3007.  Expires April 20, 1998                               [Page 51]
  3008.