架構的互操作
開源的LAMP架構(L-以Linux為代表的開源操作系統,A- 以Apache為代表的開源中間件,M-以MySQL為代表的開源數據庫,P- 以PHP、Perl、Pythen為代表的自由編程語言)的發展,已與閉源的J2EE架構,.Net架構形成三角鼎立、互相參插、互有合作與競爭的態勢。
在發展開源架構(LAMP)同時,由開源軟件模塊與私有商業軟件模塊所代表的不同層次組成的混源架構作為滿足用戶需求的解決方案,目前也獲得了廣泛應用。而混源架構的發展就代表了架構的互操作性。
硬件平臺的互操作
現在討論各種操作系統相對于各種硬件平臺的兼容性或互操作性。所謂硬件平臺包括:計算機(硬件)體系結構與硬件配置和管理接口;外部驅動設備互聯規范與總線接口;網絡計算平臺與協處理機接口。
文檔的互操作
文檔的互操作性可分成三個層次,即:文件系統的互操作(體現在硬盤中的信息存儲與讀寫,用戶希望對文件具有長時間存取能力);文件(體現為信息,指文件或信息的規范、格式和標準);應用程序(具有生成文件進行信息處理的功能)。
對文件系統的互操作性來說,已解決了在兩個異構操作系統(如Linux或Windows)環境中生成的文件系統(即ext2/ext3或nsfs),可置于對方環境中被讀、寫(中國人對此也作出了相應的貢獻)。問題是:在Windows Vista發布后,Linux的文件格式與微軟的文件格式能否在對方環境中還可以被讀、寫,實現互操作,有待于研究或尚需努力。
對文件的互操作性來說,以上所述,通過轉換器可實現ODF與Open Office Xml的互操作,我認為目前的解決方案只具有“單向”互操作的特征。
對應用程序的互操作性來說,基本應用程序一般指辦公套件(Office Suite)、電子郵件(Email)、媒體播放器(Media Player)、瀏覽器(Browser)、網絡鄰居(Network neighborhood)等。以Office的互操作性為例,國內在開發Open Office和用JAVA虛擬機技術開發的跨平臺辦公套件方面(兩者均可實現跨平臺的兼容性)作出了成績;又如微軟與Novell“結盟”協議中,對Novell的Open Office與微軟Office2007實現互操作相互作出了承諾。
網絡的互操作性
通過“Web服務”由低層次到高層次的各項“通信協議”,逐年獲得W3C、OASIS等國際標準組織批準,成為公用標準,使得異構應用系統通過這些網絡的“通信協議”實行互操作。
歷年來逐年獲得批準的“Web服務”的公用標準有:傳輸(Transport)標準如TCP/IP、HTTP、SMTP等,語言格式(Format)標準如XML,消息(Message)標準如SOAP,描述(Description)標準如WSDL、UDDI,協同工作(Coordination)標準如WS-Coordination,交易(Transaction)標準如WS-Transaction,安全(Security)標準如WS-Security,服務語言(Service Composition)標準如BPML、BPEL、BPEL4WS等,有些高層次標準尚在審議中。
上述經國際標準組織批準的各層次的“Web服務”的公用“通信協議”均是開放標準,由于歷史原因,各有關企業在較早時期推出其專用的“Web服務”“通信協議”(企業專用標準),如IBM的Websphere、BEA的Weblogic、Sun的SUNONE(均屬J2EE),微軟的.Net等,在提供用戶應用中如何處理和平衡這些公用及專用標準,是一個研究課題。
操作系統之間的互操作
為了解決Linux與Windows兩種操作系統之間的互操作性,人們先后采用了VMware虛擬機技術(這要在Linux平臺上再裝上Windows,以支持各種應用軟件),Lindows(后來演變為Linspire)、Wine(這是兩種采用二進制處理的模擬技術,是采用適應層的方式),以及依托.Net架構,采用微軟編程語言和庫函數,在Linux上實現的源代碼模擬的Mono模式。上述這些互操作方案,其效率、效果均不甚理想。
國內“浙大網新”毛德操教授、首都師范大學劉金剛教授分別率領一支研究隊伍,采用“兼容內核”的思路,試圖解決Linux與Windows兩種異構操作系統之間直接互操作的問題, 即促使相應應用軟件可分別在兩種異構的操作系統平臺上進行平移,從而實現無縫兼容。
相信在解決了軟件的互操作性,包括解決開源軟件之間、私有商業軟件之間,以及開源軟件與私有商業軟件之間的互操作性問題之后,軟件產業發展之路能更加寬廣。
文章來源于領測軟件測試網 http://www.kjueaiud.com/