/*
 * /proc metrics name space
 * All metrics have instances enumerated over the PROC instance domain
 * except the global metrics (proc.nprocs).
 *
 * $Id: root_proc,v 1.6 1997/12/12 04:53:32 markgw Exp $
 *
 */

root {
    proc
}

/*
 * the domain for the proc PMDA ...
 */
#ifndef PROC
#define PROC	3
#endif

proc {
    nprocs	PROC:0:0
    psinfo
    pstatus
    pscred
    psusage
    memory
    accounting
}

proc.psinfo {
    state		PROC:1:0
    sname		PROC:1:1
    zomb		PROC:1:2
    nice		PROC:1:3
    flag		PROC:1:4
    uid 		PROC:1:5
    gid 		PROC:1:6
    pid 		PROC:1:7
    ppid		PROC:1:8
    pgrp		PROC:1:9
    sid 		PROC:1:10
    addr		PROC:1:11
    size		PROC:1:12
    rssize		PROC:1:13
    wchan		PROC:1:15
    start		PROC:1:16
    time		PROC:1:17
    pri			PROC:1:18
    oldpri		PROC:1:19
    cpu			PROC:1:20
    ttydev		PROC:1:21
    clname		PROC:1:22
    fname		PROC:1:23
    psargs		PROC:1:24
    uname		PROC:1:25
    gname		PROC:1:26
    ttyname		PROC:1:27
    ttymajor		PROC:1:28
    ttyminor		PROC:1:29
    ctime		PROC:1:30
    shareuid		PROC:1:31
    pset		PROC:1:32
    sonproc		PROC:1:33
    spid		PROC:1:34
    qtime		PROC:1:35
    thds		PROC:1:36
    wname		PROC:1:37
}

proc.pstatus {
    flags		PROC:2:0
    why			PROC:2:1
    what		PROC:2:2
    cursig		PROC:2:3
    sigpend		PROC:2:4
    sighold		PROC:2:5
    info		PROC:2:6
    altstack		PROC:2:7
    action		PROC:2:8
    syscall		PROC:2:9
    nsysarg		PROC:2:10
    errno		PROC:2:11
    rval1		PROC:2:12
    rval2		PROC:2:13
    sysarg		PROC:2:14
    pid			PROC:2:15
    ppid		PROC:2:16
    pgrp		PROC:2:17
    sid			PROC:2:18
    utime		PROC:2:19
    stime		PROC:2:20
    cutime		PROC:2:21
    cstime		PROC:2:22
    clname		PROC:2:23
    instr		PROC:2:24
    reg			PROC:2:25
    nthreads		PROC:2:26
    thsigpend		PROC:2:27
    who			PROC:2:28
}

proc.pscred {
    euid		PROC:3:0
    ruid		PROC:3:1
    suid		PROC:3:2
    egid		PROC:3:3
    rgid		PROC:3:4
    sgid		PROC:3:5
    ngroups		PROC:3:6
}

proc.psusage {
    tstamp		PROC:4:0
    starttime		PROC:4:1
    utime		PROC:4:2
    stime		PROC:4:3
    minf		PROC:4:4
    majf		PROC:4:5
    utlb		PROC:4:6
    nswap		PROC:4:7
    gbread		PROC:4:8
    bread		PROC:4:9
    gbwrit		PROC:4:10
    bwrit		PROC:4:11
    sigs		PROC:4:12
    vctx		PROC:4:13
    ictx		PROC:4:14
    sysc		PROC:4:15
    syscr		PROC:4:16
    syscw		PROC:4:17
    syscps		PROC:4:18
    sysci		PROC:4:19
    graphfifo		PROC:4:20
    graph_req		PROC:4:21
    graph_wait		PROC:4:22
    size		PROC:4:23
    rss			PROC:4:24
    inblock		PROC:4:25
    oublock		PROC:4:26
    ktlb		PROC:4:27
    vfault		PROC:4:28
}

proc.memory {
    virtual
    physical
}

proc.memory.physical {
    txt			PROC:5:0
    dat			PROC:5:2
    bss 		PROC:5:4
    stack		PROC:5:6
    shm			PROC:5:8
}

proc.memory.virtual {
    txt			PROC:5:1
    dat			PROC:5:3
    bss 		PROC:5:5
    stack		PROC:5:7
    shm			PROC:5:9
}

proc.accounting {
    flag		PROC:6:0
    ash			PROC:6:1
    prid		PROC:6:2
    timers
    counts
}

proc.accounting.timers {
    utime		PROC:6:3
    stime		PROC:6:4
    bwtime		PROC:6:5
    rwtime		PROC:6:6
    qwtime		PROC:6:7
}

proc.accounting.counts {
    mem			PROC:6:8
    swaps		PROC:6:9
    chr			PROC:6:10
    chw			PROC:6:11
    br			PROC:6:12
    bw			PROC:6:13
    syscr		PROC:6:14
    syscw		PROC:6:15
/*  disk		PROC:6:16	available, but not functional in IRIX 6.1 */
}

#undef PROC
