ใช่แม้ว่าจะไม่ได้เปิดใช้งานโดยค่าเริ่มต้นในระบบของคุณ การsetrlimit
เรียกระบบกำหนดขีด จำกัด ของระบบ - รวมถึงจำนวนกระบวนการต่อผู้ใช้
มาดูกันก่อนใน kernel API (เนื่องจากคุณพูดถึง "linux"): คุณสามารถใช้ manpage สำหรับ setrlimit ซึ่งจะบอกให้คุณทำอะไรบางอย่างเช่น
#include <sys/resource.h>
...
struct rlimit r;
rnew.r_cur = 40;
rnew.r_max = 50;
setrlimit(RLIMIT_NPROC,&r);
สิ่งนี้จะกำหนดกระบวนการสูงสุดต่อผู้ใช้ ( RLIMIT_NPROC
) ถึง 40 (ซอฟต์ จำกัด ) และ 50 (ฮาร์ด จำกัด )
ตอนนี้จากเชลล์ถ้าคุณใช้ bash คุณสามารถใช้ulimit
คำสั่งในตัว:
ulimit -u
29089
คุณสามารถตั้งค่าขีด จำกัด โดยส่งผ่านเป็นอาร์กิวเมนต์:
ulimit -u 100
ulimit --help
จะแสดงให้คุณเห็นว่ามีข้อ จำกัด อื่น ๆ อีกมากมายที่คุณสามารถตั้งค่าได้ (อันที่น่าสนใจคือจำนวนตัวอธิบายไฟล์สูงสุดที่ผู้ใช้ใช้)