naobe @ ウィキ

Posixシステムコール

最終更新:

naobe

- view
管理者のみ編集可
Unix/Linuxに戻る

インタフェース

インタフェース 引数 説明
sighandler_t signal(int signum, sighandler_t sighandler) signum: シグナル番号、sighandler: シグナルハンドラ シグナル番号で指定したシグナルにシグナルハンドラを設定する。シグナルハンドラには、SIG_IGN(シグナルを無視), SIG_DFL(デフォルトのシグナル動作)がシステムで用意されている。自作のハンドラを登録することも可能。
int fstat(int filedes, struct stat *buf) filedes:ファイルデスクリプタ、buf: ファイルの状態 ファイルデスクリプタを指定して、ファイルの状態を取得する。成功すると0を失敗すると-1を返す。
int open(const char *pathname, int flags, mode_t mode) pathname: パス名, flags: 以下参照, mode: 以下参照, 戻り値: ファイルディスクリプタ 指定したfalfs, modeでpathnameのファイルを開く
pid_t getpid(void) 現在のプロセスIDを返す。getppid(void)は親プロセスのプロセスIDを返す。

open flags

項目 説明
O_RDONLY 読み込み専用
O_WRONLY 書き込み専用
O_RDWR 読み書き用
O_APPEND ファイルを追加モードで開く
O_ASYNC シグナル駆動 I/O (signal-driven I/O) を有効にする。入出力が可能になった時にシグナルを生成する。端末、疑似端末、ソケットのみ可能。
O_CREAT フ ァイルが存在しなかった場合は作成 (create) する。
O_EXCL O_CREAT と一緒に使用された場合、ファイルが既に存在した場合はエラーとなる。これを使ってロック機構を作成しようとした場合、race conditionを含む(使わないのが良い)。対応するためにはlink()を使ってリンクを作成する。
O_TRUNC ファイルが既に存在し、通常ファイルであり、書き込み可モードでオープンされている (つ まり、O_RDWR または O_WRONLY の) 場合、長さ 0 に切り詰め (truncate) られる。

open mode

項目 説明
S_IRWXU 00700 ユーザー (ファイルの所有者) に読み込み、書き込み、実行の許可がある。
S_IRUSR 00400 ユーザーに読み込みの許可がある。
S_IWUSR 00200 ユーザーに書き込みの許可がある。
S_IXUSR 00100 ユーザーに実行の許可がある。
S_IRWXG 00070 グループに読み込み、書き込み、実行の許可がある。
S_IRGRP 00040 グループに読み込みの許可がある。
S_IWGRP 00020 グループに書き込みの許可がある。
S_IXGRP 00010 グループに実行の許可がある。
S_IRWXO 00007 他人 (others) に読み込み、書き込み、実行の許可がある。
S_IROTH 00004 他人に読み込みの許可がある。
S_IWOTH 00002 他人に書き込みの許可がある。
S_IXOTH 00001 他人に実行の許可がある。
S_ISUID 実行時にファイル所有者のユーザIDをセット

statのs_mode

項目 説明
S_IFMT 0170000 ファイル種別を示すビット領域を表すビットマスク
S_IFSOCK 0140000 ソケット
S_IFLNK 0120000 シンボリック・リンク
S_IFREG 0100000 通常のファイル
人気記事ランキング
ウィキ募集バナー