IBM AIX

AIX，是IBM專有UNIX操作系統的商標名。名稱來自先進互動執行系統（Advanced Interactive executive，縮寫為 AIX）。最初的名稱來自Advanced IBM Unix，但或許這個名字沒有得到法律部門的允許，因此更改為"Advanced Interactive eXecutive"。
AIX的一些流行特性例如chuser、mkuser、rmuser命令以及相似的東西允許如同管理文件一樣來進行用戶管理。AIX級別的邏輯卷管理正逐漸被添加進各種自由的UNIX風格操作系統中。

**專用文件系統**
 JFS 
IBM最早在1990年2月於AIX 3.1引入初始版本的JFS。這個版本的JFS現在被叫作JFS1， 是AIX在往後十多年的首選檔案系統並被安裝在過百萬臺IBM顧客的AIX系統中。JFS1和AIX的內存管理程序緊緊連結在一起6，這種設計經常在一些封閉源碼作業系統或只支援一個作業系統的檔案系統出現。 
1995年，強化JFS的工作開始展開，當中包括加強其伸延性，支援多微處理器的計算機和令其易於移植至其他作業系統。經過多年的設計、改良和測試，新的JFS在1999年4月付運於OS/2 Warp Server for eBusiness，隨後亦付運在2000年10月的OS/2 Warp Client中。與此同時，，JFS開發團亦在1997年開始把開發中新版JFS移植回AIX。為和原身AIX支援的原版JFS1分開，新版JFS亦會稱作JFS2 (Enhanced Journaled File System)。2001年5月，JFS2開正式可供AIX 5L使用。 
1999年10月，原供OS/2並正在移植回AIX的新版JFS源碼被以GNU General Public License開放給自由/開放原始碼軟件社群並展開了移植至Linux的工作。而第一個穩定版本的JFS for Linux亦在2001年6月推出。7至2002年8月，JFS正式併入穩定版Linux核心2.4.20。8 
AIX操作系統使用JFS文件系統(JOURNAL FILE SYSTEM), JFS文件系統是一種字節級日誌文件系統，借鑑了數據庫保護系統的技術，以日誌的形式記錄文件的變化。JFS通過記錄文件結構而不是數據本身的變化來保證數據的完整性。這種方式可以確保在任何時刻都能維護數據的可訪問性。
該文件系統主要是為滿足服務器（從單處理器系統到高級多處理器和群集系統）的高吞吐量和可靠性需求而設計、開發的。JFS文件系統是為面向事務的高性能系統而開發的。在IBM的AIX系統上，JFS已經過較長時間的測試，結果表明它是可靠、快速和容易使用的。JFS也是一個有大量用戶安裝使用的企業級文件系統，具有可伸縮性和健壯性。與非日誌文件系統相比，它的突出優點是快速重啟能力，JFS能夠在幾秒或幾分鐘內就把文件系統恢復到一致狀態。雖然JFS主要是為滿足服務器（從單處理器系統到高級多處理器和群集系統）的高吞吐量和可靠性需求而設計的，但還可以用於想得到高性能和可靠性的客戶機配置，因為在系統崩潰時JFS能提供快速文件系統重啟時間，所以它是因特網文件服務器的關鍵技術。使用數據庫日誌處理技術，JFS能在幾秒或幾分鐘之內把文件系統恢復到一致狀態。而在非日誌文件系統中，文件恢復可能花費幾小時或幾天。
JFS的缺點是，使用JFS日誌文件系統性能上會有一定損失，系統資源佔用的比率也偏高，因為當它保存一個日誌時，系統需要寫許多數據。- JFS2
JFS2（Enhanced Journaled File System），通常，這個新的文件系統被稱為JFS2，從2001年5月開始，JFS2正式可以在AIX 5L上使用
JFS2支持預定的日誌記錄方式，可以提高較高的性能，並實現亞秒級文件系統恢復。JFS2同時為提高性能提供了基於分區的文件分配（Extent-based allocation）。基於分區的分配 是指對一組連續的塊而非單一的塊進行分配。由於這些塊在磁盤上是連續的，其讀取和寫入的性能就會更好。這種分配的另外一個優勢就是可以將元數據管理最小化。按塊分配磁盤空間就意味著要逐塊更新元數據。而使用分區，元數據則僅需按照分區（可以代表多個塊）更新。JFS2還使用了B+ 樹，以便更快地查找目錄和管理分區描述符。JFS2沒有內部日誌提交策略，而是在kupdate守護進程超時時提交。- JFS和JFS2的區別
JFS和JFS2文件系統都是文件和目錄的集合，管理文件或目錄在磁盤上的位置。除了文件和目錄以外,JFS2類型的文件系統還包含一個超級塊、分配位圖和一個或多個分配組。分配組由磁盤i節點和片區（Extent）組成。一個JFS2類型的文件系統也佔據一個邏輯卷。
在JFS中，超級塊的大小是4096字節，偏移量是4096字節；而在JFS2中，超級塊的大小仍是4096字節，但是超級塊在邏輯卷中的偏移量是32768字節。
JFS2的新功能包括基於片區的（Extent）的分配、目錄排序和文件系統對象的動態空間分配等。 
1.基於片區（Extent）的尋址結構
片區是一個連續的可變長的文件系統塊的序列，它是JFS2對象的分配單位。"大片區"可以跨越多個分配組。一般而言，JFS2的分配策略通過為每一個片區分配儘可能大和連續的區間來使文件系統中片區的數量達到最小，使邏輯塊的分配更加連續。這樣能夠提供更大的i/o傳輸效率，達以改善性能的目的。但是在有些情況上並不能總是達到這種理想的效果。
片區是由邏輯塊偏移量（logical offset）、長度（length）和物理地址（physical address）組成的三元組來描述。其中由邏輯塊偏移量和長度可能計算出物理地址。基於片區的尋址結構是由片區描述、作為根的i節點和作為鍵值的文件內的邏輯偏移量而構成的一個子B+樹。 
2.可變的邏輯塊大小
JFS2把磁盤空間分割成塊，JFS2支持512，1024，2048和4096字節塊的大小。不同的文件系統可以使用不同的塊的大小，從而達到優化空間的目的，減少目錄或文件內部的殘片(Fragmentation). 
3.動態分配磁盤i節點
JFS2給磁盤i節點動態地按需分配空間，當i節點不再需要時就會釋放i節點所佔用的空間。這個特點避免了在創建標準JFS時為磁盤i節點預留固定數量磁盤空間的缺點。因此，這樣就不需要用戶在創建文件系統時計算這個文件系統中要保存的文件和目錄的最大數。
4.目錄組織
JFS2提供了兩種不同的目錄組織.第1種目錄組織適用於小目錄和在一個目錄的i節點中保存目錄的內容.這種目錄組織不需要單獨的目錄塊i/o和單獨的存儲分配. 第2種目錄組織適用於較大的目錄，每一個目錄就是一個以名字為鍵值的B+樹.與傳統的、線性的、未分級的目錄組織相比，這種目錄組織能夠提供更快的目錄查找、插入和刪除的能力。
5.在線整理文件系統的空閒殘片
JFS2支持已安裝的文件系統（即使有進程訪問這個文件系統）對殘餘在文件系統中的空閒空間的整理功能。一旦一個文件系統的空閒空間變成分散的殘片，對這些殘片的整理將會使得JFS2提供I/O效率更高的磁盤空間分配，從而避免出現一些因空閒空間不連續而不夠分配的情況。

**發佈歷史**
一些不同版本的AIX曾經存在過，但是逐漸消失了。1986年出現的AIX V1運行在IBM RT/PC（AIX/RT）上。它基於System V Release 3。自從1989年以來，AIX成為RS/6000系列工作站和服務器（AIX/6000）的操作系統。在AIX的開發過程中，IBM和INTERACTIVE Systems Corporation（同IBM簽約）將4.2BSD與4.3BSD的一些特性加入了AIX中。值得一提的是，著名的深藍的操作系統即是AIX

**支持的架構**
 PowerPC- POWER

**版本**
 AIX 7.1,  2010年發佈
** 僅在採用PowerPC 970，POWER4或更新處理器技術的Power Systems服務器上受支持
*- AIX 6.1,  2007年11月9號
** 技持工作量分區（WPARs=作業系統層級虛擬化）
** 行動裝置的生活應用
** ...- AIX 5L 5.3,  2004年8月
** NFS Version 4支持
** Advanced Accounting
** 虛擬SCSI
** 虛擬以太網
** SMT
** 微分區（Micro-Partitioning）
** JFS2配額（quota）支持
** JFS2文件系統收縮（shrink）支持- AIX 5L 5.2, 2002年10月
** 支持多路IO光纖信道磁盤
** 動態LPAR支持- AIX 5L 5.1, 2001年5月
** 引入64位內核
** JFS2- AIX 4.3.3, 1999年9月
** 增加了在線備份功能- AIX 4.3.2,  1998年10月- AIX 4.3.1,  1998年4月- AIX 4.3,  1997年10月
** 支持64位體系- AIX v4, 1994年- AIX v3, 1990年
** AIX v3.1
*** 引入了日誌文件系統（JFSv1）- AIX v2
** 最後一個版本為v2.2.1- AIX v1, 1986年
注：L表示同Linux的姻緣關係

**圖形界面**
通用桌面環境（Common Desktop Environment，CDE）是AIX系統的默認圖形用戶界面。作為同Linux聯姻的一部分，針對Linux應用的AIX工具箱（ATLA）也提供了開源的KDE和GNOME桌面。

**參考資料**

**外部鏈接**
  IBM AIX主頁date=20050804073328 -  針對Linux應用的AIX工具箱date=20191017101503 -  AIX fixesdate=20191017101456 -  rootvtg.netdate=20050728161552