Nios® V プロセッサー・ソフトウェア開発者ハンドブック

ID 743810
日付 7/08/2024
Public
ドキュメント目次

16.1.1.67. open()

プロトタイプ

int open (const char* pathname, int flags, mode_t mode)

一般的な呼び出し元

C/C++ プログラム

スレッドセーフ

説明を参照してください。

ISRから利用可能

いいえ

インクルード

<unistd.h>
<fcntl.h>

説明

open() 関数は、ファイルまたはデバイスを開き、ファイル・ディスクリプター (読み取り、書き込みなどで使用する小さい非負の整数) フラグを返します。

flags は、それぞれ読み取り専用、書き込み専用、または読み取り/書き込みモードでファイルを開くことを要求する O_RDONLYO_WRONLY、または O_RDWR のいずれかです。

O_NONBLOCK を使用したビット単位 OR flags も可能です。 との。これで、非ブロッキング・モードでファイルを開くことができるようになります。open() も、返されたファイル・ディスクリプターに対する後続の操作も、呼び出し元の関数を待機させることはありません。

すべてのファイルのシステム/デバイスがこのオプションを認識するわけではありません。

mode は、新しいファイルが作成される場合に使用するパーミッションを指定します。現在のファイルシステムでは使用されていませんが、互換性のために維持されています。

open() への呼び出しは、操作されるドライバーによって提供される open() の実装がスレッドセーフである場合にのみスレッドセーフになります。

戻り値

戻り値は新しいファイル・ディスクリプターで、それ以外の場合は -1 です。エラーが発生した場合、errno は原因を示すために設定されます。