pid_max/ulimit 之间的差异。如何创建假进程?

pid_max/ulimit 之间的差异。如何创建假进程?

我正在尝试了解 pid_max 和通过 ulimit 设置用户限制之间的细微差别。我的理解是,无论你将用户限制设置多高(例如将用户最大进程设置为 120,000),如果你的 pid_max 设置为 32,000,理论上都不会执行任何操作。在这种情况下,pid_max 限制将在达到用户限制之前达到。这是正确的吗?

是否有一个 bash 脚本可以运行来启动一些假进程,以便我可以在虚拟机上进行一些测试?

答案1

是否有一个 bash 脚本可以运行来启动一些假进程,以便我可以在虚拟机上进行一些测试?

我会开始启动一系列sleep进程。除了 PID 之外,它们不使用大量资源,并且最终会自行消亡。

例如这个:

for i in {1..100}; do
    sleep 300 &
    disown
done

应该启动一百个进程。通常,shell 会跟踪后台进程,这可能会导致一些限制。可以disown防止这种情况发生。

相关内容