module function Kernel.#syscall
syscall(num, *arg) -> Integer
-
numで指定された番号のシステムコールを実行します。 第2引数以降をシステムコールの引数として渡します。
どの数値がどのシステムコールに対応するかは、 syscall(2) や /usr/include/sys/syscall.h を参照してください。
システムコールの慣習に従い、syscall(2) が -1 を返す場合には例外 Errno::EXXX が発生します。 それ以外では、返した値をそのまま数値で返します。
ライブラリ dl を使えばより高レベルな操作ができます。
- [PARAM] num:
- システムコール番号です。
- [PARAM] arg:
- 文字列か、整数です。最大 9 個まで渡すことができます。
- [EXCEPTION] Errno::EXXX:
- syscall(2) が -1 を返した場合に発生します。
- [EXCEPTION] NotImplementedError:
- 実行環境がこのメソッドに対応していないとき発生します。
[SEE_ALSO] dl, syscall(2freebsd), syscall(2linux)
module Kernel