歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

AIX 與 LINUX 的結盟

內容提要: 本文將就AIX Affinity with Linux的發展以及在AIX操作系統下如何進行Linux的開發和如何將自由開發的Linux應用移植到AIX操作系統做介紹,目的是讓更多的朋友在AIX系統平台上使用Linux, 並同時感受到AIX操作系統在整體性能上的魅力。我們期待著有更多更好的Linux應用被移植到AIX操作平台,使AIX操作系統更加豐富多彩,讓我們工作得更輕松自如。    第一部分 AIX Affinity with Linux 的發展情況   第二部分 AIX Affinity 的其本原理介紹   第三部分 AIX Toolbox for Linux 最新版的獲得、安裝、包含工具和基本使用   第四部分 對開發的建議   說明 任何機型,操作系統 AIX 4.3.3 or AIX 5L   正文   第一部分 AIX Affinity with Linux 的發展情況      IBM對AIX Affinity with Linux的發展分為以下兩個階段。    第一個階段,發布AIX Toolbox for Linux Applications, 它主要包含GNU和其他一些常用開發工具,來幫助開發人員在AIX系統上編譯程序,並在兩種行業內開放性最好的操作系統平台,即AIX和Linux之間,進行平滑技術移植。由於應用程序運行於AIX環境中,因此客戶可以同時得到Linux的靈活性和AIX操作系統的先進性能,包括工作負載管理、先進系統管理工具以及高安全性。    第二個階段是,在最新發布的AIX 5L Version 5.1 操作系統中提供更多的兼容Linux的API和頭文件,來支持源文件的兼容性,使兩個不同操作系統有更強的互操作性,從而達到更高程度的兼容。    那麼我們能用AIX Affinity for Linux做什麼呢?    1。在AIX系統上使用眾多Linux上開發的自由軟件,例如,運行流行的 Gnome   and KDE 圖形桌面,運行其他的多媒體工具,等等。  2。用功能強大的RedHat Package Manager包工具管理應用。  3。在AIX 系統上,使用GNU和Linux開發工具進行新應用的開發。      第二部分 AIX Affinity 的其本原理介紹      AIX Affinity with Linux的目的並不是在系統中提供一個模擬層供Linux應用來運行,它的意義在於通過重新編譯Linux應用後,得到AIX的兼容的二進制本地代碼,並能使用所有系統的特性,如可靠性、擴展性、以及可用性。這就是說,我們提供了一個強大的跨平台編譯器以及眾多的兼容API來保證Linux應用在AIX系統上的成功移植。    由於AIX的設計開發從網絡、主機硬件系統,到操作系統完全遵守開放系統的原則,所以在目前的AIX 4.3.3 和 AIX 5L Version 5.0, 使用AIX Toolbox for Linux,只需通過簡單的編譯就能在AIX平台上實現Linux的很多應用。這樣,我們就不用浪費許多人力、物力去重新開發很多已經很成熟的應用。我們不斷地重用經典代碼,就可以把我們有限的精力投入到更精彩、更需要的地方。 當使用AIX Affinity with Linux時,我們還會想到的它對性能的影響。AIX Affinity with Linux在設計階段,就希望提供最優化的性能給應用,其中包括讓Linux應用和本地應用享有同樣訪問資源的權利。尤其是AIX 5L Version 5.1操作系統,會提供更高級別的應用與操作系統間的兼容性。當我們考慮性能時,還應該想到我們要開發什麼樣的應用,前端的還是後台的。後台的大型應用還是比較適合AIX應用,但前端的人機界面用Linux則更能發揮其特長,也減少了可能的性能影響。      第三部分 AIX Toolbox for Linux 最新版的獲得、安裝和基本使用      許多GNU開發工具已經被移植到AIX 4.3.3 和 AIX 5L Version 5.0,而界在新的AIX 5L Verison 5.1 操作系統中有更多的開發工具被成功移植。  其中包括(並非全部):    應用開發類:gcc, g++, gdb, rpm, cvs, automake, autoconf, liBTool    開發庫:ncurses, readline, libtiff, libpng, libjpeg, slang, fnlib,   db, gtk+, qt     編程語言:guile, python, tcl/tk, rep-gtk     桌面環境類:Gnome and KDE    GNU 工具:gawk, m4, indent, sed, tar, diffutils, fileutils    系統Shell:bash2, tcsh, zsh     系統工具:emacs, vim, bzip2, gzip, git, elm, ncFTP, rsync, wget,   lsof, less, samba, zip, unzip, zoo     圖形應用:ImageMagick, transfig, xfig, XPdf, Ghostscript, gv,   mpage,Gimp     這些工具為Linux開發者提供了非常棒的開發環境。值得一提的是,他們絕大多數使用了易於安裝的文件格式,這就是RedHat發展的rpm包。它的主要作用就是架起了一座通暢的橋梁,把AIX和Linux兩個不同的操作系統緊密地聯合起來,發掘它們更大的潛力。    AIX Toolbox for Linux 的下載網址:  http://www-1.ibm.com/servers/aix/prodUCts/aixos/linux/download.Html  此網頁上有眾多大家夢寐以求的工具等大家來使用。    前面已經提到過,我們是要用RedHat Package Manager(RPM)來管理應用,所以我們必須首先要安裝RedHat Package Manager。  RedHat Package Manager從下面連接下載:  ftp://ftp.software.ibm.com/aix/freeSoftware/ aixtoolbox/INSTALLP/ppc/rpm.rte安裝時,以root用戶登錄,運行installp -qacXgd rpm.rte rpm.rte安裝過程會收集共享鏈接庫的信息,將會持續幾分鐘。要耐心等候,不要中斷。如果發生錯誤沒有裝完,那麼在下次安裝之前,記得要運行installp -C去清除上回不完全安裝。(我在一台F50,4.3.3上共用時10min35sec.)    RedHat Package Manager安裝完後,就可以安裝其他 AIX Toolbox for Linux   基本使用和Linux上一樣,詳細使用及相關信息,可以到www.rpm.org上查看。  簡單參數如下,      -i: install   -e: erase   -q: query   --help help    舉例:要安裝gcc 2.9,那麼先到  http://www-1.ibm.com/servers/aix/products/aixos/linux/download.html  下載rpm包 gcc-2.9.aix43.010216-1.aix4.3.ppc.rpm  上傳到機器後,運行rpm -ivh gcc-2.9.aix43.010216-1.aix4.3.ppc.rpm  其中參數v是要在安裝過程中顯示詳細信息。   其中參數h是要在安裝過程中顯示安裝進度。  一分鐘過後,就已經可以享受gcc 2.9的強大功能了。  其余的就不用我贅述了,大家各自體會吧。      第四部分 對開發的建議      1。由於AIX是符合POSIX標准和UNIX98認證的,但Linux卻沒有通過認證,所以  我們要盡量在開發過程中使用標准的API,那麼應用只要使用GCC,G++等編譯器重新編譯就可以在AIX中使用了。非常重要的是,檢查哪些API是只被Linux支持,但卻不被AIX支持,這樣可以避免不必要的麻煩。    2。由於AIX 5L是同時支持 Power系列 CPU和 Itanium CPU, 所以我們在開發程序,另外要注意的是在處理一些和硬件底層打交道的代碼。在這些程序中我們需要采用通用的字節處理調用來處理,以保證應用可以很快速在不同的平台間移植,比如從Power系列的CPU平台移植到以INTEL CPU的平台,這樣就可以確保應用的更強的可用性。    3。如果你的應用與路徑有關,而在AIX系統中沒有程序中指定的路徑存在,那麼必須修改應用的源碼並指向正確的路徑。所以建議你在開發是確認你的代碼是否是可行的並進行相應的測試。    






Copyright © Linux教程網 All Rights Reserved