Symbian

Symbian（中國大陸譯名為 “塞班”，其他地區則直接使用英文名稱 “Symbian”）是一種移動作業系統，由諾基亞公司擁有並且廣泛使用於諾基亞手機上，2013 年及以後停止發展。

起源

Symbian 由 Symbian 公司設計，由諾基亞收購之後，將其移轉到 Symbian 基金會，以開放原始碼的形式釋出。它的前身是 Psion 的 EPOC，並且獨佔式的執行於 ARM 處理器。包含由 Symbian 公司所提供的相關的函式庫（libraries）、使用者介面（user interface）架構和共用工具（common tools）的參考實現（reference implementation）。

諾基亞的智慧手機幾乎全部使用 Symbian 系統，同時也為其他一些品牌所使用，但隨著 2011 年諾基亞宣佈放棄此係統，開放 Symbian 系統原始碼，並停止更新，現今 Symbian 系統的市場佔有率已經極低。

於英國倫敦時間 2008 年 6 月 24 日，諾基亞宣佈，該公司將收購 Symbian 公司目前尚不屬於諾基亞的 52% 股份，並將會把 Symbian 平臺完全依據 Eclipse 開放原始碼授權條款釋出。諾基亞也宣佈將成立「Symbian 基金會」，讓各家手機廠商和軟體供應商能夠加入這個聯盟。2008 年 12 月 2 日，諾基亞宣佈完成對 Symbian 的收購。2009 年 2 月 1 日，Symbian 職員正式成為諾基亞員工，但諾基亞的 Symbian 作業系統一直被視為過時而無法與勁敵媲美，在智慧手機市場，諾基亞更飽受蘋果 iPhone 和 Android 手機威脅，Symbian 市佔率持續下滑。2011 年 2 月，諾基亞行政總裁宣佈與微軟合作，並推出了使用 Windows Phone 7 作業系統的智慧型手機。2013 年 1 月，諾基亞宣佈，於 2012 年推出的 Nokia 808 PureView，是諾基亞公司最後一款使用 Symbian 系統的手機，Symbian 正式走入歷史。

2014 年 1 月 1 日起，諾基亞不再提供 Symbian 與 MeeGo 兩個作業系統的系統及軟體更新。雖然這兩個作業系統的產品仍能持續下載應用程式，開發者仍能透過軟體市集營收，但無法繼續更新或釋出新的應用程式。

設計

以 Symbian 作業系統為基礎的智慧手機的使用者介面有許多種，包括開放平臺像 UIQ、諾基亞的 S60、S80、S90 系列和封閉式平臺像 NTT DoCoMo 的 MOAP。這樣的適應性使使用 Symbian 作業系統的智慧手機形成多變的型態（例如折疊式、直板式、鍵盤輸入或是觸控筆輸入等）。

Symbian 是以 EPOC 為基礎，而它的架構於許多桌上型作業系統相似，它包含先佔式多工、多執行緒和記憶體保護。Symbian 的最大優勢是在於它是為行動式裝置而設計，而在有限的資源下，可以執行數月甚至數年。而這要歸功於節省記憶體、使用 Symbian 風格的程式設計理念和清除堆疊。將這些功能與其他技術搭配使用，會使記憶體使用量降低且記憶體洩漏量極少。類似技術也運用於節省磁碟（儘管在 Symbian 裝置中，硬碟通常指快閃記憶體）和記憶卡使用空間。而且，Symbian 的程式設計是使用事件驅動，當應用程式沒有處理事件時，CPU 會被關閉。這是透過一種叫主動式物件的程式設計理念實現的。正確的使用這些技術將能夠延長電池使用時間。

這些技術讓 Symbian 的 C++ 變得非常專業，並有著過陡的學習曲線。然而，許多 Symbian 的裝置也可以利用 OPL、Python、Visual Basic、Simkin 以及 Perl 來搭配 J2ME 和自行開發的 Java 來使用。

競爭對手

Symbian 作業系統曾與 Windows Mobile、Palm OS、WebOS、Android、iOS 等互相競爭，目前 Windows Mobile、Palm OS、webOS 已失去市場佔有率，而 iOS 和 Android 則佔據了絕大多數的市場份額。Symbian 也與於低階手機使用的內嵌式作業系統互相競爭，而後者傾向由各家廠商自行開發。Symbian 與內嵌式作業系統比較，前者的優勢在於它的標準化 —— 該裝置的每個程式執行期能夠互相呼叫動態共享庫（Shared Libraries），還有加入型架構（就是可以安裝軟體）。這些讓功能較複雜的手機能夠以較快的速度開發，有時這會抵消一些 Symbian C++ 的困難度。

Symbian 與開放式作業系統 Linux，和不開放的 Windows Mobile 等比較，它的優勢是比較有爭議的。手機製造商和網路運營商比較喜歡 Symbian 的定製靈活性而較否定 Windows CE。儘管這些定製靈活性使得整合 Symbian 手機更加困難。Symbian 系統對硬體架構的侷限性和繁瑣的應用簽名授權也使得在與新生代的作業系統（如 Android 等）的競爭中力不從心。

由於對社交網路和 Web 2.0 內容支援不佳，Symbian 的市場份額日益萎縮。其市場佔有量從 2006 年三季度的 72.8% 逐年下降至 2010 年三季度的 37.6%。自 2009 年底開始，包括摩托羅拉、三星電子、LG、索尼愛立信等各大廠商紛紛宣佈終止研發 Symbian 平臺，轉而投入 Android 領域。2011 年初，諾基亞宣佈與微軟成立戰略聯盟，釋出基於 Windows Phone 的智慧手機，從而放棄經營多年的 Symbian，Symbian 退市已成定局。

架構

最低階的 Symbian 的基本組成成份包含核心（EKA1 或 EKA2），允許使用者的應用程式沿著使用者資料庫去要求核心內的東西。Symbian 採用微核心架構，但它並不完全是微核心，接近於混合核心，因為驅動程式仍然在核心空間運作。這定義了核心內部所必需的最少功能。微核心架構包含排程系統和記憶體管理，但不包含網路和檔案系統支援。這些用來提供給使用者端伺服器（user-side server）。基本層則包含檔案伺服器，它在裝置內提供類似 DOS 的顯示模式（每個磁碟機有個代號，反斜線當作目錄定義符號）。Symbian 支援數種不同的檔案系統，包含 FAT 以及 Symbian 專有的檔案系統，而檔案系統一般是不會在手機上顯示出來。

在基本之上的是可供選擇的系統資料庫，而這提供了該裝置的市場定位，資料庫的內容包含像是字元轉換表、資料庫管理系統和檔案資源管理。

此外，在此有一個很龐大的網路及通訊子系統，這含有三個主要的服務，分別是 ETEL（EPOC telephony）、ESOCK（EPOC 協定）及 C32（序列通訊回應）。每個服務都有模組化方案。例如 ESOCK 允許不同的『.PRT』通訊協定模組，實現了不同方式的網路通訊協定方案，像是藍牙、紅外線及 USB 等。

這也有一個龐大的使用者介面碼。即使使用他人製造的使用者介面，除了某些相關服務（例如 View Server 提供手機間的使用者介面轉換）以外，基本的類別和子結構（UIKON）的所有使用者介面都會出現在 Symbian 作業系統。而這裡也有很多相關的繪圖碼，就像是視窗服務和字型與點陣圖服務。應用程式架構提供標準的應用程式種類、連結和檔案資料辨識。它也有可選擇的應用程式引擎給予智慧手機的基本程式，像行事曆、電話簿等。通常典型的 Symbian 作業系統的應用程式是分散到各個 DLL 引擎和圖型化程式，程式就像是包裝紙把 DLL 引擎包裝在一起。Symbian 也提供了一些 DLL 引擎使程式運用。

當然，有很多東西並沒有一起放入裝置內，像是 SyncML，Java ME 提供另一組應用程式介面給作業系統及多媒體應用。要注意的是這些都只是 framework，程式開發者要能夠獲得從協力廠商提供 framework 的外掛支援（例如 RealPlayer 使用多媒體解碼器）。這提供了應用程式介面在不同型號的手機可以正常使用的優勢，而軟體開發人員得到更多彈性，但是手機製造商就需要很多的綜合成品來製造使用 Symbian 作業系統的手機。

Symbian 作業系統的裝置製造商也提供名為 TechView 的使用者介面範例層。這與 Psion 5 系列的 Personal Organiser 感覺非常相似，所以它與任何行動電話的使用者介面不太相似，但它還是提供一個基本的方式去個人化使用者介面。這也是需要很多 Symbian 作業系統測試碼與範例碼的環境中執行。

歷史

1980 年，David Potter 成立公司。

EPOC16：在 1991 到 1998 之間 Psion 發表幾款使用 EPOC16 作業系統的 3 系列裝置，亦稱為 SIBO。

EPOC OS 發布號 1~3：5 系列的裝置發表於 1997，使用 EPOC32 作業系統。

EPOC 發布號 4：Oregon Osaris 和 Geofox 1 發表使用 ER4。

1998 年，在 Ericsson、諾基亞、Motorola 和 Psion 的共同合作下成立 Symbian 公司，目的是整合 PDA 和手機。

EPOC 發布號 5 又稱 Symbian OS v5：5mx 系列、7 系列、Revo、netBook、netPad、Ericsson MC218 和 Ericsson R380 釋出於 1999 年，使用 ER5 系統。

ER5u 又稱 Symbian OS v5.1：u=unicode。Ericsson R380 發表於 2000 年是第一支使用 ER5u 系統的手機。這支並不是開放式系統，即無法安裝應用程式。

Symbian OS v6.0 與 v6.1：有時亦稱 ER6。Nokia 9210 是第一支開放型手機，使用 v6.0，於 2001 年 6 月出售。

Symbian OS v7.0 與 v7.0s。在 2003 年出現第一批搭載該系統的手機。使用的手機有：UIQ（新力愛立信 P800,P900,P910，摩托羅拉 A925,A1000），S80（諾基亞 9300，9500），S90（7710），S60（諾基亞 3230，6260，6600，6670，7610）。

2004 年，Psion 出售它在 Symbian 的所有股份。而在同年，第一隻名叫 Cabir 的蠕蟲病毒被開發，它藉由藍牙傳播至附近的 Symbian 手機。

Symbian OS v8.0：第一批搭載該系統的手機於 2004 年問世，提供二種核心選擇（EKA1 或 EKA2）。不過，一直要到 SymbianOS v8.1b 才出現搭載 EKA2 核心的手機。這二個核心外表看來相似，但內部差異極大。EKA1 是製造商提供裝置對舊程式的相容度而設計的，而 EKA2 提供像是更強的即時處理功能。

Symbian OS v8.1：基本上它是最佳化過的 v8.0，並提供 8.1a 和 8.1b 兩個版本，分別搭載 EKA1 與 EKA2 核心。搭載 EKA2 的版本 8.1b 擁有單晶片手機支援，但不包含額外的安全層，因此受到重視即時處理的日本手機製造商的歡迎。

Symbian OS v9.0：這版本並沒有正式發表出來，它在 2004 年停止開發。

Symbian OS v9.1：2005 年初發表最新版本的作業系統。此版本改善了應用程式及其內容的保護。使用新型 ARM 處理器，這表示軟體開發人員必須要改變安全性設定碼才能正確使用。Nokia N91 很有可能是第一個發表搭載該作業系統的手機，Sony Ericsson P990 則是緊接在後發表。

Symbian 作業系統普遍的保持應用程式的相容性。原則上可分為三階段，分別是 ER1~ER5，接著是 6.0~8.1b，最後是 9.0 以後。雖然 9.0 的工具和安全功能產生很大的改變，不過 ARMv5 處理器並未取消 ARMv4 的向下相容支援。

此外，有些 Symbian 的開發人員宣告說從 8.x 到 9.x 會產生比 Symbian 所宣告的更多複雜的程式，從而增加開發難度。

發展階段

在 Symbian 發展階段，出現了三個分支：分別是 Crystal、Pearl 和 Quarz。前兩個主要針對通訊裝置市場，也是出現在手機上最多的，是塞班智慧手機作業系統的主力軍。第一款基於 Symbian 系統的手機是 2000 年上市的愛立信手機。而真正較為成熟的同時引起人們注意的則是 2001 年上市的諾基亞 9210，它採用了 Crystal 分支的系統。而 2002 年推出的諾基亞 7650 與 3650 則是 Symbian Pearl 分系的機型，其中 7650 是第一款基於 2.5G 網的智慧手機產品，他們都屬於 Symbian 的 6.0 版本。索尼愛立信推出的一款機型也使用了 Symbian 的 Pearl 分支，版本已經發展到 7.0，是專為 3G 網路而開發的，可以說代表了當今最強大的手機作業系統。此外，Symbian 從 6.0 版本就開始支援外接儲存裝置，如 MMC,CF 卡等，這讓它強大的擴充套件能力得以充分發揮，使存放更多的軟體以及各種大容量的多媒體檔案成為了可能。

版本發展

Symbian 按版本來分，繼 2005 年 2 月 Symbian 推出 v9.0 以來，到目前為止已先後有了 6.0、6.1、7.0、7.0s、8.0、8.1、9.0、9.4 等幾種版本。1999 年 3 月 Symbian 推出了 Symbian5.0 作業系統，它的主要核心包含了網路、簡訊、電子郵件、名片簿以及個人訊息助理，同時還具有支援標準網路頁面的瀏覽器，配合 java 語言的支援，使得 Symbian 可以運作小型的應用程式。不過這個版本採用的機型甚少，基本上與 EPOC 沒有太多的差別。

Symbian 6.0 則在 5.0 的基礎上增加了，GPRS、WAP1.2 瀏覽器以及藍牙技術的支援，使用者可以運作第三方基於 C++ 和 J2ME 開發的程式。而 Symbian 6.1 則是和 Symbian 6.0 相比主要增加了對 USB 的支援。Symbian 6.0 的主要特點是： 支援語音通話和資料通訊 ，支援 Bluetooth 和 WAP，配備安全性功能（SSL，HTTPS，WTLS） ，採用 16bit Unicode，支援多語言顯示 ，採用 “PersonalJava 3.0” 和 “JavaPhone 1.0”。

Symbian 7.0 則支援多模式和 3G 手機（專區），可以讓製造商們可以面向全世界推出可以運行於所有網路之上的 Symbian OS 手機，而且可以不對程式碼進行重大改動的情況下就可以重新使用許多目前已有的軟體應用。7.0 包含一些新的通訊、訊息、聯網和應用開發技術，並對一些與安全和認證相關的功能進行了改進。Symbian OS 7.0 的其他功能包括：支援靈活的使用者介面，例如諾基亞的 Series 60；支援幾種音訊 / 影像格式和許多面向遊戲開發人員的 API；全力的加密和認證管理，基於安全通訊協議（包括 HTTPS、WTLS 和 SSL）及認證的應用安裝；和 Over-the-air（OTA）SyncML 同步支援。

2004 年 2 月，Symbian 在授權 LG 等公司的時候，釋出了 Symbian8 .0 版本。該版本改善了即時系統性能，提高了原有作業系統的相容能力。此外，Symbian OS 8.0 的軟體工具改進了遠端接入控制系統功能，運用調節裝置消除手機使用者使用增值服務時會受到的干擾。這個系統包含了絕對現代化的多媒體和 Java 裝置，支援多種標準，其中包括 JSR118，CLDC1.1（JSR139），MobileMedia（JSR135），3D 影像資料（JSR184），JTWI 1.0 c（JSR185）。最後，新版 OS 還支援 SDIO。

2005 年 2 月，Symbian 推出 v9.0，它支援更高畫素數碼相機與三維遊戲動畫，可以處理 200 萬畫素的數字圖片，能夠向無線耳機傳送立體聲音樂，不需要同步軟體就能夠從 PC 上匯出 MP3 檔案。

安全性

Symbian 在早期易受手機病毒的威脅，如 Cabir 病毒。通常它們都靠藍牙傳播。不過，所有安裝程式都會詢問使用者要不要安裝，而未獲信任的程式都會有顯著的提示。其實，一般的使用者不需要擔心這些惡意程式的騷擾，因為已安裝的程式即使沒有獲得數字簽名，理論上程式也不會去執行有危險的程式，像經由付費方式傳輸資料，因為這是可以被追蹤的。程式開發人員可以經認證網站使程式簽名。

下列是常見的惡意程式，但所有惡意程式都需要使用者去執行它（也就是不會不知不覺的中毒）。

Drever.A 是 SIS 格式的惡意程式，安裝之後會嘗試去停止 Simworks 和卡巴斯基的 Symbian 防毒軟體。
Locknut.B 是假裝為作業系統補丁的 SIS 格式惡意程式。安裝以後將丟去一個位元使得有問題的系統服務部份瓦解，這會阻止使用者開啟任何軟體。
Mabir.A 是多了 MMS 功能的 Cabir。這兩支病毒都是同一個作者寫出來，也有很多相似的原始碼。當病毒發作時，它會藉由藍牙尋找手機，一發現其他手機就開始複製。
Frontal.A 是修改一個檔案而使手機無法重新開機的 SIS 病毒。當使用者試圖重新開機，將在重新開機時宕機，且無法防毒。只有按下格式化手機的快捷鍵才能解決，但所有資料將會消失。不過，該病毒並無法自己散播。最有可能的傳播途徑是使用者藉由 P2P 取得該檔案。

在 Symbian S60V3 後，為了防止手機惡意程式的蔓延，Symbian 啟用了強制簽名認證。沒有獲得簽名的應用將無法安裝，應用程式也無權對系統資料夾（如 private、resource、sys、system）進行操作。

開放性

一個普遍的共同問題是 Symbian 並不是 "開放" 的。它並沒有開放到核心原始碼（原始碼從沒有公開）。然而，幾乎所有原始碼都提供給使用 Symbian 的手機製造商和其他合作夥伴。再者，很多應用程式介面（API）都有公開其技術檔案，使任何人都可以開發 Symbian 的軟體。這與其他傳統的嵌入式作業系統形成對比，因為後者除了 Java 程式以外並無法提供任何後繼市場的軟體。

2011 年 3 月 30 日諾基亞公司的開源專案主管 Petra Soderling 以 “We are Open” 為名在諾基亞官方部落格宣稱 Symbian 從即日（即 2011 年 3 月 30 日）起，新一代的 Symbian 作業系統的絕大原始碼將上傳到 collab.symbian.nokia.com 網站（此域名現已無法訪問），供平臺開發合作伙伴下載進行再開發。也就是說任何人、任何公司都能無條件使用 Symbian 程式碼。因為諾基亞在 3 月份和微軟合作開發 Windows Phone 7，並將其作為諾基亞手機的主打系統，雖然會繼續保持對其的技術支援，包括提供開發工具和 SDK 等形式，但不再提供對 Symbian 系統進行更新。

使用 Symbian 作業系統的裝置

Ericsson R380（2000 年）是第一款在市場銷售的 Symbian 智慧手機。然而將這款手機稱為智慧手機的說法是可能有疑問的，因為它無法安裝軟體的特性凸顯其為完全封閉的裝置。
2001 年的 Nokia 9210 Communicator 智慧手機（32-bit 66MHz ARM9 的 RISC CPU），2004 年的 Nokia 9300 和 Nokia 9500 則使用 S80。
UIQ：最常使用於 PDA 像是 2002 年的 Sony Ericsson P800、2003 年 P900、2004 年 P910、P990、W950、2007 年 Sony Ericsson P1i、W960，Motorola A920、A925、A1000，DoCoMo M1000，BenQ P30、P31，和 Nokia 6708 都使用此介面。
2002 年的 S60。
2004 年的 Nokia 7710 使用 S90。
Fujitsu、Mitsubishi、Sony Ericsson 和 Sharp 這些使用於日本的 NTT DoCoMo 手機共同開發名為 FOMA 的平臺。
最後一款使用 Symbian 的裝置是 Nokia 808 PureView（2012 年）

2006 年 11 月 16 日，已有超過 100 萬部 Symbian OS 手機釋出。2009 年 7 月 21 日，已有超過 250 萬部 Symbian OS 手機釋出。

開發

在 Symbian 的架構上有多種不同的平臺，他們提供不同的軟體開發套件（SDK）給程式開發人員，最主要的分別是 UIQ 和 S60 平臺。個別的手機製造商，或是同家族系列，通常也在網路上提供可下載的 SDK 和軟體開發延伸套件 （Symbian Developer Network）。SDK 內含說明檔案、表頭檔案、資料庫和在 Windows 運作的模擬器（WINS），到了 Symbian v8，SDK 加入了該版本的 GCC 編譯器（跨平臺編譯器），才能夠正常在裝置內使用。

由於 Symbian v9 使用新的 ABI，所以需要一個新的編譯器。在 SDK 方面來說，UIQ 提供簡化的 framework 使得單一的 UIQ SDK 提供所有使用 UIQ3 的裝置的開發基礎，使用 UIQ3 的裝置像 Sony Ericsson P990、M600 和 P1i。

Symbian C++ 程式設計在市售的整合式開發環境（IDE）之下完成。之前較常見的是 Visual Studio，但是以現在的 Symbian 版本，比較偏愛於 Symbian 版的 CodeWarrior。不過在 2006 年 Nokia 的 Carbide.c++ 將會取代 CodeWarrior。預期 Carbide.c++ 會釋出不同版本：其一個免費版（Carbide.c++ Express）允許使用者在模擬器上去設計軟體原型。

還有為 Symbian 設計的 Borland IDE。Symbian 作業系統也可藉由社群的技術開發而在 Linux 和 Mac OS X 的環境下開發，有些部份 Symbian 允許公開 key tool 原始碼。有一個外掛允許在 Apple 的 Xcode IDE for Mac OS X 的環境下開發 Symbian 應用程式。

開發完成後，Symbian 的應用程式需要找一個管道傳輸到消費者的行動電話。它們通常包裝成 SIS 檔案，透過電腦連線、藍牙或是記憶卡。一個替代方案是去找手機製造商來合作使手機內建該程式。但是在 Symbian OS 9 的 SIS 檔案會稍稍不易推廣，原因是每個程式都至少要擁有 Symbian 的簽署才能安裝在該作業系統的手機。

Java ME for Symbian 的應用程式是使用正式的技術開發工具像是 J2ME 無線套件。它們包裝成 JAR 或 JAD 檔案。其他像是名為 SuperWaba 的工具是提供建立 Symbian OS 7.0 或 7.0s 的 Java 應用程式。

綜合 Symbian 平臺

Symbian 平臺是一個開放原始碼的作業系統及系統平臺，包括 Symbian OS 的核心，S60，UIQ 及 MOAP 使用者介面。這個計劃由 Symbian 基金會積極開發中。

綜合 Symbian 平臺是 Symbian OS 的後繼者，由 Symbian 基金會於 2009 年 4 月正式推出。

Symbian1，首發版本。採用 Symbian OS 及 S60 5th 版本（基於 Symbian OS 9.4），因此它並沒有開放原始碼。

Symbian2，首個自由版稅版本的 Symbian。雖然部分的 Symbian2 是採用 EPL 授權，但大部分的原始碼是採用專利的 SFL 授權及只提供給 Symbian 基金會的會員。因此，2010 年 2 月宣佈時並沒有手機一同釋出。2010 年 6 月 1 日，部分日本公司如 DoCoMo 及 Sharp 宣佈釋出使用 Symbian2 的智慧手機。

Symbian3，2010 年 2 月 15 日宣佈，跟隨月初整個 Symbian 程式碼庫的釋放，是首個完成開放原始碼的 Symbian。新功能如對 HDMI 的支援，新的二維和三維圖形架構及使用者介面的改進，如改進的一致性。它有一個點選選單和三個定製畫面。Symbian3 SDK 將於 2010 年 10 月釋出。