wiki上有詳細的解說:POSIX
POSIX表示可移植作業系統接口(Portable Operating System Interface,縮寫為 POSIX )(注①),指的是IEEE Std 1003.1-1988, released in 1988.
曆史原因,簡單說就是UNIX系統從開源那一天起,就陸陸續續出現了很多基于UNIX的作業系統,具體以SYS V和BSD為首,各個系統各自發展互相不相容的地方越來越多。在這種前提下,POSIX标準誕生了,隻要按照這個标準編寫的程式,理論上就可以跨系統運作。後來Linux系統設計的時候,自然也把POSIX标準納入。 POSIX起源于UNIX,作為IEEE标準,也不局限于類UNIX系統。
例子:POSIX線程(POSIX threads),簡稱Pthreads,是線程的POSIX标準。
#include <pthread.h> //在Linux下編寫多線程程式需要包含的頭檔案
該标準定義了建立和操縱線程的一整套API。在類Unix作業系統(Unix、Linux、Mac OS X等)中,都使用Pthreads作為作業系統的線程。Windows作業系統也有其移植版pthreads-win32。(注②)
--注①:“POSIX”這個名字是當初Stallman向IEEE建議的,用于取代之前的IEEE-IX标準。
--注②:Windows為了争取UNIX客戶從WinNT開始就有相容POSIX的考慮,後來POSIX成了IEEE标準,Windows更是不得不支援。
轉載于:https://my.oschina.net/u/3426905/blog/1575962