下图显示了与任务、进程和项目关联的资源控制集。
一种资源可以存在多个资源控制,每个资源控制都处在进程模型的包含级别上。资源控制可以在进程以及集合任务或集合项目的同一种资源中处于活动状态。在这种情况下,对进程的操作优先。例如,如果同时遇到 process.max-cpu-time 和 task.max-cpu-time 这两个控制,则首先对第一个控制执行操作。
与项目关联的资源控制包括以下各项:
授予此项目的 CPU 份额,用于公平共享调度程序 FSS(7)。
项目所允许的最大 System V 消息队列数。
项目所允许的最大 System V 信号数。
允许的最大事件端口数。
与任务关联的资源控制包括以下各项:
此任务进程可用的最长 CPU 时间(秒)。
此任务的进程可同时使用的最大 LWP 数。
与进程关联的资源控制包括以下各项:
此进程可用的最大地址空间量(字节),即段大小的总和。
此进程创建的最大核心转储文件大小(字节)。
此进程可用的最长 CPU 时间(秒)。
此进程可用的最大文件描述符索引。
此进程可写入的最大文件偏移(字节)。
消息队列中的最大消息数。该值是在 msgget() 时间从资源控制中复制的。
消息队列中的最大消息数(字节)。该值是在 msgget() 时间从资源控制中复制的。如果设置了新的 project.max-msg-qbytes 值,则仅对后续创建的值进行初始化。新的 project.max-msg-qbytes 值不影响现有值。
信号集允许的最大信号数。
semop() 调用允许的最大信号操作数。该值是在 msgget() 时间从资源控制中复制的。新的 project.max-sem-ops 值仅影响对后续创建值的初始化,对现有值没有任何影响。
每个事件端口允许的最大事件数。