此过程将名为 x-files 的项目添加到 /etc/project 文件,并为在此项目中创建的任务设置最大 LWP 数。
# projadd -K 'task.max-lwps=(privileged,3,deny)' x-files
键入:
# projects -l
system
projid : 0
comment: ""
users : (none)
groups : (none)
attribs:
.
.
.
x-files
projid : 100
comment: ""
users : (none)
groups : (none)
attribs: task.max-lwps=(privileged,3,deny)
键入:
# cat /etc/project system:0:System::: . . . x-files:100::::task.max-lwps=(privileged,3,deny)
执行完此过程中的步骤后,如果 root 用户在项目 x-files 中创建新任务(通过 newtask 加入项目),用户将无法在运行此任务时创建三个以上的 LWP。以下带有注释的会话样例显示了这一原则。
# newtask -p x-files csh
# prctl -n task.max-lwps $$
process: 111107: csh
NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT
task.max-lwps
usage 3
privileged 3 - deny -
system 2.15G max deny -
# id -p
uid=0(root) gid=1(other) projid=100(x-files)
# ps -o project,taskid -p $$
PROJECT TASKID
x-files 73
# csh /* creates second LWP */
# csh /* creates third LWP */
# csh /* cannot create more LWPs */
Vfork failed
#