POSIX:可移植操作系統接口(Portable Operating System Interface of UNIX,縮寫爲 POSIX )

POSIX表示可移植操作系統接口(Portable Operating System Interface of UNIX,縮寫爲 POSIX ),POSIX標準定義了操作系統應該爲應用程序提供的接口標準,是IEEE爲要在各種UNIX操作系統上運行的軟件而定義的一系列API標準的總稱,其正式稱呼爲IEEE 1003,而國際標準名稱爲ISO/IEC 9945。

POSIX標準意在期望獲得源代碼級別的軟件可移植性。換句話說,爲一個POSIX兼容的操作系統編寫的程序,應該可以在任何其它的POSIX操作系統(即使是來自另一個廠商)上編譯執行。

POSIX 並不侷限於 UNIX。許多其它的操作系統,例如 DEC OpenVMS 支持 POSIX 標準,尤其是 IEEE Std. 1003.1-1990(1995 年修訂)或 POSIX.1,POSIX.1 提供了源代碼級別的 C 語言應用編程接口(API)給操作系統的服務程序,例如讀寫文件。POSIX.1 已經被國際標準化組織(International Standards Organization,ISO)所接受,被命名爲 ISO/IEC 9945-1:1990 標準。

POSIX的誕生

POSIX的誕生和UNIX的發展是密不可分的,電氣和電子工程師協會(Institute of Electrical and Electronics Engineers,IEEE)最初開發 POSIX 標準,是爲了提高 UNIX 環境下應用程序的可移植性。UNIX於70年代誕生于貝爾實驗室,並於80年代向美各大高校分發V7版的源碼以做研究。加利福尼亞大學伯克利分校在V7的基礎上開發了BSD Unix。後來很多商業廠家意識到UNIX的價值也紛紛以貝爾實驗室的System V或BSD爲基礎來開發自己的Unix,較著名的有Sun OS,AIX,VMS。

然而,POSIX 並不侷限於 UNIX。許多其它的操作系統,例如 DEC OpenVMS 支持 POSIX 標準,尤其是 IEEE Std. 1003.1-1990(1995 年修訂)或 POSIX.1,POSIX.1 提供了源代碼級別的 C 語言應用編程接口(API)給操作系統的服務程序,例如讀寫文件。POSIX.1 已經被國際標準化組織(International Standards Organization,ISO)所接受,被命名爲 ISO/IEC 9945-1:1990 標準。

POSIX 已發展成爲一個非常龐大的標準族,某些部分正處在開發過程中。POSIX 與 IEEE 1003 和 2003 家族的標準是可互換的。

Windows NT-based 系統不能直接支持新版POSIX接口,僅支持第一版POSIX v1:ISO/IEC9945-1:1990 [1]  版標準。由於僅支持第一版POSIX的Windows NT-based系統不能創建符合POSIX接口標準的線程和窗體、套接字,所以微軟公司提供POSIX兼容層Microsoft POSIX subsystem軟件包(Windows Services for UNIX)以支持新版POSIX接口,Windows 系統還可以運行其他POSIX兼容層例如Cygwin

常見標準

1003.0

管理 POSIX 開放式系統環境(OSE)。IEEE 在 1995 年通過了這項標準。 ISO 的版本是 ISO/IEC 14252:1996。

1003.1

被廣泛接受、用於源代碼級別的可移植性標準。1003.1 提供一個操作系統的 C 語言應用編程接口(API)。IEEE 和 ISO 已經在 1990 年通過了這個標準,IEEE 在 1995 年重新修訂了該標準。

1003.1b

一個用於實時編程的標準(以前的 P1003.4 或 POSIX.4)。這個標準在 1993 年被 IEEE 通過,被合併進 ISO/IEC 9945-1。

1003.1c

一個用於線程(在一個程序中當前被執行的代碼段)的標準。以前是 P1993.4 或 POSIX.4 的一部分,這個標準已經在 1995 年被 IEEE 通過,歸入 ISO/IEC 9945-1:1996。

1003.1g

一個關於協議獨立接口的標準,該接口可以使一個應用程序通過網絡與另一個應用程序通訊。 1996 年,IEEE 通過了這個標準。

1003.2

一個應用於 shell 和 工具軟件的標準,它們分別是操作系統所必須提供的命令處理器和工具程序。 1992 年 IEEE 通過了這個標準。ISO 也已經通過了這個標準(ISO/IEC 9945-2:1993)。

1003.2d

改進的 1003.2 標準。

1003.5

一個相當於 1003.1 的 Ada 語言的 API。在 1992 年,IEEE 通過了這個標準。並在 1997 年對其進行了修訂。ISO 也通過了該標準。

1003.5b

一個相當於 1003.1b(實時擴展)的 Ada 語言的 API。IEEE 和 ISO 都已經通過了這個標準。ISO 的標準是 ISO/IEC 14519:1999。

1003.5c

一個相當於 1003.1q(協議獨立接口)的 Ada 語言的 API。在 1998 年, IEEE 通過了這個標準。ISO 也通過了這個標準。

1003.9

一個相當於 1003.1 的 FORTRAN 語言的 API。在 1992 年,IEEE 通過了這個標準,並於 1997 年對其再次確認。ISO 也已經通過了這個標準。

1003.10

一個應用於超級計算應用環境框架(Application Environment Profile,AEP)的標準。在 1995 年,IEEE 通過了這個標準。

1003.13

一個關於應用環境框架的標準,主要針對使用 POSIX 接口的實時應用程序。在 1998 年,IEEE 通過了這個標準。

1003.22

一個針對 POSIX 的關於安全性框架的指南。

1003.23

一個針對用戶組織的指南,主要是爲了指導用戶開發和使用支持操作需求的開放式系統環境(OSE)框架

2003

針對指定和使用是否符合 POSIX 標準的測試方法,有關其定義、一般需求和指導方針的一個標準。在 1997 年,IEEE 通過了這個標準。

2003.1

這個標準規定了針對 1003.1 的 POSIX 測試方法的提供商要提供的一些條件。在 1992 年,IEEE 通過了這個標準。

2003.2

一個定義了被用來檢查與 IEEE 1003.2(shell 和 工具 API)是否符合的測試方法的標準。在 1996 年,IEEE 通過了這個標準。

除了 1003 和 2003 家族以外,還有幾個其它的 IEEE 標準,例如 1224 和 1228,它們也提供開發可移植應用程序的 API。

Linux操作系統

通用
▪ Adoption ▪ 與Windows的比較 ▪ 批評 ▪ 歷史
▪ Linux基金會 ▪ 內核 ▪ 支援結構 ▪ 林納斯定律
▪ 自由軟件基金會 ▪ GNU/Linux命名爭論 ▪ Tux ▪ GNU General Public License
 
發行版
▪ 發行版 ▪ Live CD ▪ Live USB ▪ Mini Linux
▪ 軟件包格式      
 
應用
▪ 桌面 ▪ 設備 ▪ 嵌入式 ▪ 遊戲
▪ LAMP ▪ Thin client    
 
人物
▪ Jono Bacon ▪ Alan Cox ▪ Jon 'Mad Dog' Hall ▪ Benjamin Mako Hill
▪ Ari Lemmke ▪ Andrew Morton ▪ 伊恩·默多克 ▪ Hans Reiser
▪ Scott James Remnant ▪ Daniel Robbins ▪ 馬克·沙特爾沃思 ▪ 理查德·斯托曼
▪ 林納斯·託瓦茲 ▪ 西奧多·周 ▪ Patrick Volkerding ▪ Matt Zimmerman
 
媒體
▪ 自由軟件雜誌 ▪ Linux.com ▪ Linux Format ▪ Linux Gazette
▪ Linux Journal ▪ Linux-Magazin ▪ Linux Magazine ▪ LWN.net
▪ O3雜誌 ▪ Phoronix ▪ LugRadio ▪ Linux Outlaws
 
列表
▪ 設備 ▪ 發行版 ▪ Live CDs ▪ 專有軟件
 
移動
▪ Access Linux Platform ▪ Android ▪ LiMo ▪ LiMo
▪ Linux Phone Standards Forum ▪ Maemo ▪ Mobilinux ▪ Moblin project
▪ 開放手機聯盟 ▪ OpenMoko ▪ webOS ▪ Ubuntu Mobile
 
其他主題
▪ Linux conference ▪ Linux文檔計劃 ▪ Linux malware ▪ Linux標準規範
▪ POSIX ▪ Linux用戶組 (LUG) ▪ 操作系統革命 ▪ SCO與Linux
▪ 塔能鮑姆–託瓦茲 爭論 ▪ 《代碼》

參考資料

以上內容來自百度百科。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章