4

有谁知道prlimit64()C函数是做什么的?我的 x86_64 Ubuntu 机器上似乎没有它,但它存在于 Arch 中,我似乎找不到任何人或事物知道它的作用。

4

2 回答 2

4

这是一个棘手的问题;但它是 ; 的 64 位版本(无论这意味着什么prlimit()getrlimit(2)家族中特定于 Linux 的函数。

它似乎对 64 位应用程序没有用处,因为它与在不可用时模拟 64 位环境有关。

于 2012-01-15T11:15:23.140 回答
4

prlimit允许您为另一个进程设置或获取 rlimit 资源限制(例如文件句柄数、内存等) 。它是特定于 Linux 的。

通常,您可以设置的限制取决于_FILE_OFFSET_BITS宏,在所有现代系统上都是 64。因此,prlimit和朋友使用的结构的成员总是 64 位宽,无论您是在 32 位还是 64 位系统上。

但是,在_FILE_OFFSET_BITS32 的晦涩情况下(这意味着您无法正确处理大于 2GiB 的文件),您仍然需要替代prlimit64系统调用来使用 64 位 rlimit。

于 2012-01-15T11:37:39.577 回答