Annotation of researchv10dc/man/manx/limits.2, revision 1.1

1.1     ! root        1: .TH LIMITS 2 SHARE-deprecated
        !             2: .SH NAME
        !             3: limits \- return or set limits structure
        !             4: .SH SYNOPSIS
        !             5: .B #include <sys/types.h>
        !             6: .br
        !             7: .B #include <sys/lnode.h>
        !             8: .br
        !             9: .B #include <sys/retlim.h>
        !            10: .br
        !            11: .B #include <sys/share.h>
        !            12: .P
        !            13: .B limits(address, function)
        !            14: .br
        !            15: .B struct lnode *address;
        !            16: .br
        !            17: .B int function;
        !            18: .SH DESCRIPTION
        !            19: This system call manipulates a kernel limits structure
        !            20: according to the value of
        !            21: .IR function .
        !            22: Except where indicated below,
        !            23: .I address
        !            24: points to an
        !            25: .I lnode
        !            26: or an array of
        !            27: .IR lnodes .
        !            28: .LP
        !            29: .RS 2
        !            30: .nf
        !            31: .ta \w'\s-1L_DEADGROUP\s0XX'u +\w'ValueXX'u
        !            32: Function       Value   Meaning
        !            33: \s-1L_MYLIM\s0 0       Get user's own limits structure.
        !            34: \s-1L_OTHLIM\s0        1       Get limits associated with uid in lnode.
        !            35: \s-1L_ALLLIM\s0        2       All active limits structures are returned.
        !            36: \s-1L_SETLIM\s0        3*      Connect to a new limits structure.
        !            37: \s-1L_DEADLIM\s0       4       Wait for dead limits belonging to child.
        !            38: \s-1L_CHNGLIM\s0       5*      Changes limits fields in existing limits.
        !            39: \s-1L_DEADGROUP\s0     6*      Pick up a dead limits structure.
        !            40: \s-1L_GETCOSTS\s0      7       Get contents of system ``shconsts'' table.
        !            41: \s-1L_SETCOSTS\s0      8*      Set contents of system ``shconsts'' table.
        !            42: \s-1L_MYKN\s0  9       Get user's own ``kern_lnode'' structure.
        !            43: \s-1L_OTHKN\s0 10      Get structure associated with uid.
        !            44: \s-1L_ALLKN\s0 11      All active structures are returned.
        !            45: .fi
        !            46: .RE
        !            47: .P
        !            48: The starred functions in the list are super\-user only.
        !            49: .P
        !            50: For 
        !            51: .SM L_MYKN,
        !            52: .SM L_OTHKN,
        !            53: and
        !            54: .SM L_ALLKN
        !            55: .I address
        !            56: should point to a ``struct kern_lnode''
        !            57: defined in
        !            58: .IR <sys/lnode.h> .
        !            59: For
        !            60: .SM L_SETCOSTS
        !            61: and
        !            62: .SM L_GETCOSTS
        !            63: .I address
        !            64: should point to a ``struct shconsts''
        !            65: defined in
        !            66: .IR <sys/share.h> .
        !            67: For
        !            68: .SM L_DEADLIM
        !            69: .I address
        !            70: should point to a ``struct retlim'' defined in
        !            71: .IR <sys/retlim.h> .
        !            72: .P
        !            73: .SM L_OTHLIM
        !            74: and
        !            75: .SM L_CHNGLIM
        !            76: require that the lnode pointed to by
        !            77: .I address
        !            78: contains the correct uid.
        !            79: .SM L_OTHKN
        !            80: requires that the kern_lnode pointed to by
        !            81: .I address
        !            82: contains the correct uid.
        !            83: .SM L_MYLIM,
        !            84: .SM L_MYKN,
        !            85: .SM L_OTHLIM,
        !            86: and
        !            87: .SM L_OTHKN
        !            88: all return the number of processes currently attached to the node.
        !            89: .SM L_ALLLIM
        !            90: and
        !            91: .SM L_ALLKN
        !            92: both return the number of active nodes returned.
        !            93: .P
        !            94: .SM L_SETLIM
        !            95: initialises a new limits structure with the passed lnode,
        !            96: and attaches the calling process to it.
        !            97: All children of that process will inherit the new structure.
        !            98: .P
        !            99: .SM L_DEADGROUP
        !           100: looks for a dead limits structure,
        !           101: removes it from the list of active limits,
        !           102: and returns the lnode.
        !           103: .P
        !           104: .SM L_DEADLIM
        !           105: performs a
        !           106: .IR wait (2)
        !           107: system call,
        !           108: then returns a structure containing both the limits and process zombie structures.
        !           109: The value returned is the number of processes still attached to the node.
        !           110: .P
        !           111: .SM L_SETCOST
        !           112: and 
        !           113: .SM L_GETCOST
        !           114: deal with the constants structure for the scheduling algorithm.
        !           115: .P
        !           116: Any other function is illegal, and will return an error of EINVAL.
        !           117: Unless otherwise specified the
        !           118: call returns the number of limits structures returned.
        !           119: .SH DIAGNOSTICS
        !           120: .B ESRCH
        !           121: can be returned in
        !           122: .I errno
        !           123: by functions
        !           124: .SM L_DEADGROUP,
        !           125: .SM L_OTHKN,
        !           126: .SM L_OTHLIM
        !           127: and
        !           128: .SM L_CHNGLIM
        !           129: to indicate that
        !           130: the desired limits structure does not exist.
        !           131: .B ESRCH
        !           132: can also be returned by
        !           133: .SM L_SETLIM
        !           134: to indicate that this lnode's group has not been set-up.
        !           135: .P
        !           136: .B ETOOMANYU
        !           137: is returned in errno for 
        !           138: .SM L_SETLIM
        !           139: if there is no space left in the kernel limits table.
        !           140: .P
        !           141: Any error causes a \-1 to be returned.
        !           142: .SH "SEE ALSO"
        !           143: setlimits(3),
        !           144: lnode(5),
        !           145: share(5).

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.