CおよびC++プログラミング言語では、POSIXオペレーティングシステムAPIへのアクセスを提供するヘッダーファイルunistd.hの名前です。[1]これは、 Single Unix仕様のベースであるPOSIX.1標準で定義されているため、POSIX準拠のオペレーティングシステムとコンパイラで使用できます。たとえば、これには、GNUバリアント、LinuxおよびBSDのディストリビューション、macOSなどのUnixおよびUnixライクなオペレーティングシステム、およびGCCやLLVMなどのコンパイラが含まれます。
Unix 系システムでは、 で定義されるインターフェースは、通常、 、などのシステム コール ラッパー関数とI/Oプリミティブ ( 、、など)
unistd.hから大部分で構成されます。forkpipereadwriteclose
CygwinやMinGWなどの Unix 互換レイヤーも、独自の unistd.h バージョンを提供しています。実際、これらのシステムは、win32 関数の観点からその機能を実装する変換ライブラリとともにこれを提供しています。たとえば、Cygwin では、 にあるヘッダー ファイルがあり、/usr/includeその中には にある同じ名前のファイルがサブインクルードされています。そこですべてが定義されているわけではありませんが、一部の定義は、 size_t型などを提供する/usr/include/sysGNU C 標準ライブラリ ヘッダー ( stddef.hなど) への参照によって行われます。したがって、 unistd.h は、既存のシステムおよびコンパイラ固有の定義に基づく可能性のある、汎用的に定義された適応型レイヤーにすぎません。これには、定義されている可能性のあるヘッダー ファイルのセットが同じルート上に構築されているという一般的な利点があり、このため、組み合わせて使用する場合の問題が大幅に少なくなります。
機能の概要
参考文献
- ^ "unistd.h(0P)". POSIXプログラマーズマニュアル. IEEE/The Open Group. 2017年. 2024年2月9日閲覧。
外部リンク
- : 標準の記号定数と型 – 基本定義リファレンス、The Single UNIX 仕様、バージョン 4、The Open Group
