Linux 中的 ulimit 和 rlimit,它们是一回事吗?

Rya*_*yan 18 linux performance kernel resources ulimit

我看到人们交替使用术语ulimit & rlimit,我可以说他们指的是同一件事吗?

slm*_*slm 12

我认为混淆来自于 ulimit 包装的底层系统调用被称为setrlimit

摘自ulimit 手册页

ulimit() 函数应控制进程限制。此函数可控制的进程限制包括可写入的单个文件的最大大小(这等效于使用 setrlimit() 和 RLIMIT_FSIZE)。

此外,如果您查看setrlimit手册页,则会调用包含限制信息的基础数据结构rlimit

摘自setrlimit 手册页

getrlimit 和 setrlimit 分别获取和设置资源限制。每个资源都有一个关联的软限制和硬限制,由 rlimit 结构(getrlimit() 和 setrlimit() 的 rlim 参数)定义:

struct rlimit {
    rlim_t rlim_cur;   /* Soft limit */
    rlim_t rlim_max;   /* Hard limit (ceiling 
                          for rlim_cur) */
};
Run Code Online (Sandbox Code Playgroud)

参考