SWAPON
Section: System Calls (2)
索引
jman
BSD mandoc
索引
名称
swapon , swapoff
- インタリーブページング/スワップ用のスワップデバイスの制御
索引
ライブラリ
Lb libc
索引
書式
In unistd.h
Ft int
Fn swapon const char *special
Ft int
Fn swapoff const char *special
索引
解説
Fn swapon
システムコールは、システムがページングとスワッピングの割り当てに
ブロックデバイス
Fa special
を使用できるようにします。
潜在的に使用できるデバイスの名前はシステムに知られていて、
システム設定時に定義されます。
Fa special
のスワップ領域のサイズは、デバイスがスワッピングに
初めて使用できるようになるときに算出されます。
Fn swapoff
システムコールは、与えられたデバイスのページングとスワッピングを無効にします。
すべての関連したスワップのメタデータは割り当て解除され、そのデバイスは
他の用途で利用可能にされます。
索引
戻り値
エラーが発生した場合は -1 が返され、エラーを示すために
errno
が設定されます。
索引
エラー
Fn swapon
および
Fn swapoff
は共に以下の場合に失敗します:
- Bq Er ENOTDIR
-
パスの構成要素中にディレクトリ以外のものが含まれています。
- Bq Er ENAMETOOLONG
-
パス名の構成要素が 255 文字を越えているか、
またはパス名全体が 1023 文字を越えています。
- Bq Er ENOENT
-
指定したデバイスが存在しません。
- Bq Er EACCES
-
指定されたパスには、検索が許可されていないディレクトリが含まれています。
- Bq Er ELOOP
-
パス名を変換するときに検出されたシンボリックリンクが多すぎます。
- Bq Er EPERM
-
スーパユーザ以外のユーザによって呼び出されました。
- Bq Er EFAULT
-
Fa special
引数がプロセスに割り当てられたアドレス空間の外側を指しています。
加えて、
Fn swapon
は以下の理由で失敗します:
- Bq Er EINVAL
-
システムがブート時のスワップデバイス数
vm.nswapdev
の制限に達しています。
- Bq Er ENOTBLK
-
Fa special
引数はブロックデバイスではありません。
- Bq Er EBUSY
-
Fa special
で指定したデバイスは、すでにスワッピングに使用できるようになっています。
- Bq Er ENXIO
-
Fa special
のメジャーデバイス番号が範囲外になっています
(これは関連するハードウェアに対応するデバイスドライバが
存在しないことを表します)。
- Bq Er EIO
-
スワップデバイスをオープンする間に入出力エラーが発生しました。
最後に、
Fn swapoff
は以下の場合に失敗します:
- Bq Er EINVAL
-
現在、システムが
Fa special
にスワップしていません。
- Bq Er ENOMEM
-
与えられたデバイスのページングとスワッピングを安全に無効化するための
仮想メモリが十分に利用できません。
索引
関連項目
config(8),
swapon(8),
sysctl(8)
索引
歴史
Fn swapon
システムコールは、
BSD 4.0
で登場しました。
Fn swapoff
システムコールは、
Fx 5.0
で登場しました。
索引
Index
- 名称
-
- ライブラリ
-
- 書式
-
- 解説
-
- 戻り値
-
- エラー
-
- 関連項目
-
- 歴史
-
Time: 07:06:31 GMT, January 12, 2009