home *** CD-ROM | disk | FTP | other *** search
- Date: 06 Oct 85 18:53:05 +1000 (Sun)
- >From: Robert Elz <munnari!kre@seismo.CSS.GOV>
-
- Section 2.7 of P1003 draft 4 [ Section 2.8 of Draft 5 -jsq ]
- requires that implementations must define values of certain
- constants in <limits.h>.
-
- One of the required constants is CHILD_MAX, the maximum number
- of offspring per userid.
-
- This definition is a little to vague to be useable (it most likely
- intends to specify the maximum number of processes per userid, it may
- be debated whether the first process for a userid is an "offspring",
- it is also unlear whether this applies to "offspring" from some
- particular process - perhaps the maximum number of processes a user
- is permitted to run per login session?)
-
- This can easily be fixed, but I have a more serious complaint:
-
- Specifying per-userid limits as constants (that is, requiring
- an implementation to specify such a constant, and constraining
- it to a minimum value of that constant) does not seem to be
- an intelligent thing to do.
-
- Ideally, per-userid limits are exactly that, set individually
- for individual users. In an enviroment like this (again, mine)
- am I to set CHILD_MAX to the maximum number of processes that
- any user may may have running (which would be the same as PROC_MAX,
- as userid == 0 may run this many, and as such would be a meaningless
- value), or should I set it to the mininum value that any user
- will ever have for the maximum number of process permitted to be
- running (for some users, that will be 1 [aside: I can give
- entirely reasonable justifications for this limit - for some
- userids who do not represent humans], again making the constant useless.
- I could set it to an arbitrary approximate value - one that
- applies to many, or most, users, but that hardly seems satisfactory
- either.
-
- So, I recommend doing away with this constant from <limits.h>,
- which is not to say that implementations may not impose such
- a limit, merely that attempting to specify the value of the
- limit as a system wide constant is not reasonable.
-
- [ I think the justification for CHILD_MAX was that some
- implementations do have such a limit (for UIDs other than 0),
- and they wanted to guarantee a "minimum limit" of 4 offspring.
- Your argument against CHILD_MAX is a good one, though.
- For more general objections to <limits.h>, see farther on..
- -Gwyn ]
-
- Robert Elz seismo!munnari!kre kre%munnari.oz@seismo.css.gov
-
- [ Note that the X3J11 draft has the same problems as the P1003 draft,
- since they have many of the same constants defined, and where that is so,
- they have the same definitions (I think P1003 got them from X3J11).
- X3J11 has a copy of the original mail items through Don Kretsch. -jsq ]
-
- Volume-Number: Volume 3, Number 7
-
-