Add an idea for groups of processes with collective resource limits

(aka jobs).
This commit is contained in:
Brooks Davis 2009-03-16 10:17:31 +00:00
parent 3f73e99e4c
commit 7b884f2706
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=33953

View file

@ -15,7 +15,7 @@ Ideas//EN"
<ideas>
<cvs:keywords xmlns:cvs="http://www.FreeBSD.org/XML/CVS" version="1.0">
<cvs:keyword name="freebsd">
$FreeBSD: www/en/projects/ideas/ideas.xml,v 1.115 2009/03/16 00:27:38 brooks Exp $
$FreeBSD: www/en/projects/ideas/ideas.xml,v 1.116 2009/03/16 00:38:27 brooks Exp $
</cvs:keyword>
</cvs:keywords>
@ -712,6 +712,41 @@ href="http://info.iet.unipi.it/~luigi/FreeBSD/linux_bsd_kld.html">here</a>.
</desc>
</idea>
<idea id="per-job-limits" class="soc">
<title>Collective limits on set of processes (a.k.a. jobs)</title>
<desc>
<p><strong>Technical contact</strong>: <a
href="mailto:brooks@freebsd.org">Brooks Davis</a></p>
<p>In SGI's Irix operating system, there is a concept of a job which is
a collection of processes. These processes share a set of resource
limits similar to those accessible through the set/getrlimit and
getrusage system calls. Schedulers such as Sun Grid Engine currently
implement tracking the processes that make up a job and enforcing
collective limits on them in an adhoc manner. Having first class
kernel support would be useful.</p>
<p>It seems most likely that implementing something like the Irix
interface would be the most useful approach since that would enable us
to leverage existing code. Implementers will need to make sure that
the job construct has no negative performance implications when not
enabled (ideally, processes that are not part of jobs should be
unaffected) and quantify the impact on perfomance when enabled.</p>
<p><strong>References</strong>: <a
href="http://techpubs.sgi.com/library/tpl/cgi-bin/browse.cgi?cmd=search&coll=0650&db=man&pth=&srch=jid_t&searchpth=man&rpt=20">Irix
Man Pages mentioning jid_t</a></p>
<p><strong>Requirements</strong>:</p>
<ul>
<li>Good knowledge of C.</li>
<li>Kernel awareness.</li>
<li>Ability to implement functionality from interface specifications.</li>
</ul>
</desc>
</idea>
<idea id="psched" class="soc">
<title>Geom-based Disk Schedulers</title>