POSIX(ポジックス[1][2]、英: Portable Operating System Interface)は、オペレーティングシステム (OS) の標準的なインタフェースおよび環境を定義するIEEE規格である[3]。ソースコードレベルでの移植性の高いアプリケーションソフトウェアの開発を容易にすることを目的として、主にUNIX系のOSに関して、各OSが共通して持つべきコマンドラインインタプリタ(シェル)、共通のユーティリティプログラム、およびアプリケーションプログラミングインタフェース (API) について定めている[3]。POSIX仕様に準拠したソースコードは、POSIX準拠OSであればどれでも動作させることができる。アプリケーション開発者とシステム実装者の両方から利用されることを意図している。 POSIXのバージョンごとに、定められている項目が異なる。各バージョンで定められている項目を下に示す。 なおPOSIXにはいくつものバージョンがあるので、古い文書などで単に「POSIX」と書いてある場合は、現在「POSIX.1」(IEEE Std 1003.1) と呼ばれているものだけを指している可能性がある。 POSIX.1 - Core Services (Standard ANSI Cと統合) (IEEE Std 1003.1-1988) POSIX.1b - Real-time extensions (IEEE Std 1003.1b-1993)[注釈 1] POSIX.1c - Threads extensions (IEEE Std 1003.1c-1995) POSIXスレッドも参照 POSIX.2 - Shell and Utilities (IEEE Std 1003.2-1992) この規格は起源をさかのぼると、もともとはIEEEの規格番号やISO/IEC標準番号などで呼ばれていたものであるが、それが発展していく途中でPOSIXと改名された。最初、この一群の規格は「IEEE 1003」という名でつくられ、ISO/IEC標準での番号は「ISO/IEC 9945」だった。1988年に「IEEE Std 1003.1-1988」と呼ばれていたころに、並行して「POSIX」という名称でも呼ばれ始めた。POSIXという名前はリチャード・ストールマンがIEEEに提案したものである[4]。末尾の「X」はUNIX互換OSに「X」の字がつく名前が多いことからつけられた。IEEE側のほうも、番号で呼ぶよりもPOSIXという名称で呼んだほうが発音しやすく憶えやすいと気づき、これを採用すると決め、正式名称という位置づけとなった。 POSIXの規則を守っていることを英語でPOSIX-compliant(ポジックス・コンプライアント)と言うが、各OSは、どれくらいPOSIXに適合しているかという程度によって、POSIX完全適合のものからPOSIX部分適合のものまで、多段階に分類することができる。 (IEEEはOS開発元から申請があればそのOSがPOSIXに適合しているか審査しており)IEEEでPOSIX認証を受けたOSは、登録されIEEEの公式ウェブサイト内で公表されている[5]。認証プログラムのガイドラインが公式サイトに記載されている[6]。ただし審査は有料制。[注釈 2] 以下に挙げるOSのいくつかのバージョンは、POSIXのいずれかのバージョンを満たすとしてIEEEから認証を受けている (POSIX-certified)。
概要
規格の内容
POSIX.1
Process Creation and Control
Signals
Floating Point Exceptions(浮動小数点例外
Segmentation / Memory Violations
Illegal Instructions
Bus Errors
Timers
File and Directory Operations
Pipes
C Library (Standard C)
I/O Port Interface and Control
Process Triggers
POSIX.1b
Priority Scheduling
Real-Time Signals
Clocks and Timers
Semaphores
Message Passing
Shared Memory
Asynchronous and Synchronous I/O
Memory Locking Interface
POSIX.1c
Thread Creation, Control, and Cleanup
Thread Scheduling
Thread Synchronization
Signal Handling
POSIX.2
Command Interpreter
Utility Programs
名称の由来
POSIX指向のOS
POSIX準拠
AIX[7]
HP-UX[8]
IRIX[9]
EulerOS
macOS (10.5 Leopard以降)[11][12]
Solaris[13]
Size:28 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)』
担当:undef