ulimit() - プロセス・ファイル・サイズ制限の取得または設定

標準

標準/拡張機能 C/C++ 依存項目

XPG4
XPG4.2
Single UNIX Specification、バージョン 3

両方  

形式

#define _XOPEN_SOURCE
#include <ulimit.h>

long int ulimit(int cmd, …);

機能説明

ulimit() 関数は、プロセス・ファイル・サイズ限界を制御します。cmd 引数は、ファイル・サイズ限界を取得するかまたは設定するかを制御します。cmd 引数には、<ulimit.h> に定義されているとおり、次のいずれかの値を指定することができます。
UL_GETFSIZE
プロセスのソフト (現行) ファイル・サイズ限界を 戻します。戻された限界は、512 バイトのブロックの単位になって います。戻り値は、512 バイト別に分割されたソフト・ファイル・ サイズの整数部分です。詳細は、setrlimit() 関数の RLIMIT_FSIZE リソースの説明を 参照してください。
UL_SETFSIZE
プロセスの出力操作のためにハード (最大) およびソフト (現行) ファイル・サイズ限界を設定します。2 番目の引数の値が使用され、長整数として扱われます。詳細は、setrlimit() 関数、RLIMIT_FSIZE リソースの説明およびファイル・サイズ限界の上げ下げに関する制約事項を参照してください。ハードおよびソフト・ ファイル・サイズ限界は、512 を掛けた指定値に設定されます。新規の ファイル・サイズ限界 (512 バイト増分した) が戻されます。

戻り値

正常に実行された場合には、ulimit() は要求された限界の値を 戻します。

正常に実行されなかった場合、ulimit() は -1 を戻して、errno を次のいずれかの 値に設定します。
エラー・コード
説明
EINVAL
cmd 引数は無効です。
EPERM
ファイル・サイズ限界を増やすには、スーパーユーザー権限が必要です。

関連情報