具備眾多獨特嶄新功能的伺服器作業系統
歷經數年的發展、以及耗資五億美元的開發經費,Sun(昇陽)日前正式發表Solaris 10作業系統(SunOS 5.10),這也是Sun在企圖突破Linux封鎖、重振Unix伺服器市場的布局中,最重要的一步棋。新增的特色,以及尚未支援的功能
Solaris 10堪稱是SunOS發展史上最大的突破,其規模大概僅次於昔日SunOS 4.1.3之後、從BSD 4.2轉為System V體系的改變,影響更絕非先前的數次改版所能比擬。我們就在下面列出最主要的改進項目。
Solaris Zone
代號「Kevlar」Solaris Zone,延續先前的N1 Grid Container,在作業系統之上建立數個軟體分割區,可動態調節不同Container所使用的系統資源,達成更高的系統資源利用率及伺服器統合。基本上,Solaris Zone在功能上相當近似FreeBSD的jail和SuSE Linux的UML(User Mode Linux),但在使用上較為簡單,不必自行事先設定系統資源,管理功能上也較為強大。不過,由於Solaris Zone還是共用同一個系統核心,所以還是可能發生kernel出現錯誤,所有分割區就全軍覆沒的慘劇,這也是使用上值得注意之處。
Fault Management
Solaris 10提供主動預防自我修復(Predictive Healing)功能,透過監測系統中的不正常運作、且加以分析,可以自動偵測出發生問題的裝置,然後予以關閉之,以避免資料的損毀。因為很少有突然發生的硬體故障,多半都會事先出現徵兆(例如硬碟),該功能可降低系統受損的機率。
D Trace
首度在去年11月3日的Solairs Express發布的D Trace,堪稱是Solaris系統管理功能中最大的技術突破,足以取代現有的命令列管理工具。D Trace包含了三個主要部分:超過3萬2千個的「動態效能偵測器」,可以啟動、關閉效能偵測器、且從中收集資訊的機制,以及代號「D」的描述語言(Script Language)、能使系統管理者依據需求自行收集顯示「系統效能資訊」。不過,不可避免的,要有效使用D Trace就必須學會D語言,臺灣昇陽也預定將在今年開辦為期三天的D Trace教育訓練課程。
安全性功能
有別於過去另外提供Trusted Solaris的特別版本,Sun將其80%的安全性功能整合至Solaris 10之中,亦可透過新增package的方式來安裝這些功能。不過,Trusted Solaris功能要等到明年第二季的Update中才會提供。
另外,為了提升安全性,類似Java的Sandbox觀念,Solaris 10取消了系統管理者取得root權限就可接管整個系統的做法,可針對不同的行程設定權限管理,沒有任何的管理者可以取得全部的系統管理權,每個管理權限均需要多重設定才能取得,除了大幅提升入侵系統的困難度,亦可限制系統被入侵後的損害範圍。
遺珠之憾:Linux二進位執行檔執行能力、ZFS、以及64位元x86環境
原先代號「Janus」的Linux應用程式執行環境(Linux Application Environment)、可在Solaris 10上直接執行Linux二進位執行檔的功能,以及具備眾多技術突破的ZFS(Zettabyte File System)先進檔案系統,都尚未出現在現有的Solaris 10 Build 72之中。兩者皆預定成為第二季Updae才會被更新的功能。
更麻煩的是,雖然Sun一直宣稱Solaris 10支援AMD64及EM64T平臺,但「真正」的64位元x86環境依然尚未定案,而Linux、FreeBSD、甚至OpenBSD和NetBSD等非主流Unix,卻早已有支援的版本。由於這三者堪稱Solaris 10最重要的特色,如果不儘早提供,將會對Solaris 10的推廣造成負面的影響。其他功能上的修正
Solaris 10修正了不少過去令人詬病的缺陷,例如一個使用者同時屬於超過15個group、系統就會當機的毛病,以及諸多NIS、LDAP和NFS的問題。另外,有別於老舊的GNOME和Netscape,Solaris 10預設採用以GNOME 2.6.1為基礎的Java Desktop System Release 3和Mozilla瀏覽器,給人煥然一新的感覺。安裝測試:有所改進,但宿疾依舊存在
Solaris 10依舊沒有擺脫缺乏PC硬體驅動程式的「宿疾」,而Sun在網站上公布的硬體相容清單仍然少的可憐。以我們的安裝測試為例,碰上比較新穎的系統晶片組,往往無法正常執行光碟開機的硬體偵測程序,而原先Beta 6(10/04)不支援SATA硬碟的問題,在Beta 7(Build 69)和Build 72(11/04)有所改善,卻也發生了系統安裝完畢重新啟動,卻無法成功掛載檔案系統的狀況。另外,目前Solaris 10並無法和Linux安裝在同一顆硬碟上,如果想要做多重開機,就必須將兩者安裝在不同的硬碟。
有別於PC上的窘境,Solaris 10在自家的UltraSPARC平臺上,就有著相當完整的驅動程式支援,無論是驅動程式的數量和光碟開機的硬體自動偵測機制,也都較Solaris 9更加的完善。我們以內建兩顆UltraSPARC II 295MHz的Ultra60工作站作為測試平臺,安裝過程相當的順利,也明顯較Solaris 9為佳。不過,由於Solaris 10改善的重點集中在較新的UltraSPARC III/IV系統,對於比較老舊的UltraSPARC II,可能就不會那麼完整。
Solaris 10在首次安裝時,就會同時安裝CDE(Common Desktop Environment)和JDS Release 3兩套桌面系統,乍看之下,JDS相當近似Windows,對於長期使用微軟系統的使用者而言相當有親切感,但對於系統管理者而言,也許沒有那麼美觀,但看似老舊的CDE卻比較直觀易用。另外,目前的SPARC版本Build 72在安裝過程中,並沒有預先啟動SSH,但x86版本則有,這也是值得改進之處。
隱而不現的是,雖然Sun出資贊助成立Sun Freeware網站提供已經編譯完成的應用程式package,解除了Solaris早期「系統安裝後,什麼軟體都沒有,必須先自行編譯一個gcc、再一步一腳印建立應用環境」的慘狀,但在需要自行編譯安裝程式時,依舊經常需要所費不貲的Sun CC(Compiler Collection),而這也是從Solaris誕生以來就一直存在的問題。我們原先打算測試MySQL內建的benchmark,就因為安裝Perl的DBI模組時,要求使用CC編譯而作罷。有鑒於此,Sun在計畫開放Solaris原始碼的同時,也許應該考慮提供原廠編譯器的必要性。效能測試:略有改進
在過去,Solaris因為效率不佳,而常常被系統管理者戲稱為「Slow-Laris」,而這個問題在Solaris 9開始有了明顯的改善。為了因應未來的10Gbps/40Gbps超高速網路頻寬及IPv6,Solaris 10更進一步的採用代號「Fire Engine」的TCP/IP通訊協定堆疊,透過有效的封包分類以及處理程序,更加聰明的個別處理不同型態的封包類型。另外,Fire Engine也針對支援TCP/IP負載卸除(Off-Load)運算的硬體進行最佳化,例如指定不同的輔助處理器進行不同通訊協定的處理。
我們採用Apache 2.0.52內建的Apache Bench進行web伺服器的效能測試,存取10kB的html檔案,很明顯的,Solairs 10的效能超出Solaris 9,也勝過安裝在相同平臺上的FreeBSD和Linux。
我們也另外比較了同樣安裝1GB記憶體、分別執行Solaris 8和Gentoo Linux的Pentium 3 500MHz及雙Xeon 2.8GHz系統,老舊的Ultra60系統依然享有明顯的效能優勢。Sun近期已經證實,針對多執行緒伺服器環境所發展的Niagara處理器已經進入試產階段,如果兩者結合且相得益彰,對提升Sun伺服器的競爭力絕對有著立竿見影的效果。文⊙劉人豪
熱門新聞
2025-12-24
2025-12-23
2025-12-22
2025-12-19
2025-12-23
2025-12-24
2025-12-23