Symbian:修订间差异
小无编辑摘要 |
|||
第1行: | 第1行: | ||
{{Infobox OS |
|||
| name = Symbian OS |
|||
| logo = [[Image:Symbian OS logo.svg|200px|Symbian OS logo]] |
|||
| screenshot = |
|||
| caption = |
|||
| developer = [[Symbian 公司]] |
|||
| source_model = [[專有軟夫]] |
|||
| kernel_type = [[微內核]] |
|||
| supported_platforms = [[ARM architecture|ARM]] (can be emulated on [[x86 architecture|x86]]) |
|||
| ui = [[S60 platform]], [[UIQ]], [[MOAP]] |
|||
| family = [[嵌入式操作系統]] |
|||
| released = |
|||
| latest_release_version = 9.5 |
|||
| latest_release_date = ? |
|||
| latest_test_version = |
|||
| latest_test_date = |
|||
| marketing_target = 移動設備 |
|||
| programmed_in = |
|||
| prog_language = |
|||
| language = |
|||
| updatemodel = |
|||
| package_manager = |
|||
| working_state = 支援中 |
|||
| license = [[EPL]] |
|||
| website = [http://www.symbian.com www.symbian.com] |
|||
⚫ | |||
'''Symbian 作業系統'''是Symbian公司為[[手機]]而設計的[[操作系統]],它包含由[[Symbian Ltd]]所提供的相关的函式庫(libraries)、[[用户界面]](user interface)架構和共用工具(common tools)的参考实现(reference implementation),它的前身是Psion的[[EPOC]],並且獨佔式的執行於[[ARM构架|ARM]]處理器。 |
'''Symbian 作業系統'''是Symbian公司為[[手機]]而設計的[[操作系統]],它包含由[[Symbian Ltd]]所提供的相关的函式庫(libraries)、[[用户界面]](user interface)架構和共用工具(common tools)的参考实现(reference implementation),它的前身是Psion的[[EPOC]],並且獨佔式的執行於[[ARM构架|ARM]]處理器。 |
||
第108行: | 第135行: | ||
Java ME for Symbian的應用程式是使用正式的技術開發工具像是J2ME無線套件。它們包裝成JAR或JAD檔案。其他像是名為SuperWaba的工具是提供建立Symbian OS 7.0或7.0s的Java應用程式。 |
Java ME for Symbian的應用程式是使用正式的技術開發工具像是J2ME無線套件。它們包裝成JAR或JAD檔案。其他像是名為SuperWaba的工具是提供建立Symbian OS 7.0或7.0s的Java應用程式。 |
||
==版本歷史== |
|||
{| border="1" cellpadding="3" cellspacing="0" |
|||
|- |
|||
! 版本 !! 日期 |
|||
|- |
|||
| Psion |
|||
| [[1980年]] |
|||
|- |
|||
| EPOC |
|||
| 不明 |
|||
|- |
|||
| EPOC16 |
|||
| [[1980年代]] |
|||
|- |
|||
| EPOC32 |
|||
| [[1997年]] |
|||
|- |
|||
| EPOC OS 第1–3版 |
|||
| [[1997年]]6月 |
|||
|- |
|||
| EPOC OS 4版 |
|||
| 不明 |
|||
|- |
|||
| EPOC OS 第5版 |
|||
| [[1900年]] |
|||
|- |
|||
| ER5u |
|||
| [[2000年]]11月 |
|||
|- |
|||
| Symbian OS v6.0及6.1 |
|||
| [[2001年]]6月 |
|||
|- |
|||
| Symbian OS v7.0及7.0S |
|||
| [[2003年]] |
|||
|- |
|||
| Symbian OS v8.0 |
|||
| [[2004年]] |
|||
|- |
|||
| Symbian OS v8.1 |
|||
| 不明 |
|||
|- |
|||
| Symbian OS v9.0 |
|||
| [[2004年]] |
|||
|- |
|||
| Symbian OS v9.1 |
|||
| [[2005年]]初 |
|||
|- |
|||
| Symbian OS v9.2 |
|||
| [[2006年]]第一季 |
|||
|- |
|||
| Symbian OS v9.3 |
|||
| [[2006年]][[7月12日]] |
|||
|- |
|||
| Symbian OS v9.4 |
|||
| [[2007年]]3月 |
|||
|- |
|||
| Symbian OS v9.5 |
|||
| [[2008年]]11月 |
|||
⚫ | |||
==來源== |
==來源== |
2009年5月7日 (四) 09:45的版本
开发者 | Symbian 公司 |
---|---|
作業系統家族 | 嵌入式操作系統 |
運作狀態 | 支援中 |
源码模式 | 專有軟夫 |
当前版本 | 9.5 (?) |
市場取向 | 移動設備 |
支援平台 | ARM (can be emulated on x86) |
内核类别 | 微內核 |
默认用户界面 | S60 platform, UIQ, MOAP |
许可证 | EPL |
官方網站 | www.symbian.com |
Symbian 作業系統是Symbian公司為手機而設計的操作系統,它包含由Symbian Ltd所提供的相关的函式庫(libraries)、用户界面(user interface)架構和共用工具(common tools)的参考实现(reference implementation),它的前身是Psion的EPOC,並且獨佔式的執行於ARM處理器。
在2008年6月以前,Symbian被以下公司所共有Ericsson、Panasonic、Siemens、Nokia和Sony Ericsson。雖然明基(BenQ)取得了西門子的手機部門,但是需要Symbian監督委員會的同意,所以西門子的Symbian使用權並沒有轉移到明基。
於英國倫敦時間2008年6月24日,Nokia宣佈,該公司將收購Symbian Ltd目前尚不屬於Nokia的52%股份,並將會把Symbian平台完全依據Eclipse開放原始碼授權條款釋出。Nokia也宣佈將成立「Symbian基金會」,讓各家手機廠商和軟體供應商能夠加入這個聯盟。2008年12月2日,诺基亚宣布完成对Symbian的收购。2009年2月1日,Symbian职员正式成为诺基亚员工。
設計
以Symbian操作系统为基础的智能手机的用户界面有许多种,包括開放平台像UIQ、諾基亞的S60、S80、S90系列和封闭式平台像NTT DoCoMo的FOMA。這樣的適應性使使用Symbian操作系統的智能手機形成多變的型態(例如折疊式、直板式、鍵盤输入或是触摸笔输入等)。
Symbian是以EPOC為基礎,而它的架構於許多桌上型作業系統相似,它包含先佔式多工、多執行緒和記憶體保護。
Symbian的最大優勢是在於它是為便攜式裝置而設計,而在有限的資源下,可以執行數月甚至數年。而這要歸功於节省記憶體、使用Symbian风格的编程理念和清除堆栈。將這些功能與其他技術搭配使用,會使記憶體使用量降低且記憶體泄漏量極少。類似技術也運用於节省磁碟(尽管在Symbian设备中,硬盘通常指闪存)和記憶卡使用空間。而且,Symbian的編程是使用事件驱动,當應用程式沒有处理事件时,CPU會被關閉。這是通过一种叫主動式对象的编成理念实现的。正確的使用這些技術將能夠延長電池使用時間。
這些技術讓Symbian的C++變得非常專業,並有著過陡的學習曲線。然而,許多Symbian的设备也可以利用OPL、Python、Visual Basic、Simkin以及Perl來搭配J2ME和自行開發的Java來使用。
競爭對手
Symbian作業系統與Windows Mobile、Palm OS、Linux互相競爭,目前Palm OS已逐漸失去市場佔有率,而Windows Mobile和Linux則來勢洶洶,一般專家認為Windows Mobile對於Symbian版圖的蠶食已不可避免。Symbian也與使用於低階手機的內嵌式作業系統互相競爭,而後者傾向由各家廠商自行開發。Symbian與內嵌式作業系統比較,前者的優勢在於它的標準化——該裝置的每個程式執行期能夠互相呼叫動態連結共享資料庫(DLL),還有加入型架構(就是可以安裝軟體)。這些讓功能較複雜的手機能夠以較快的速度開發,有時這會抵消一些Symbian C++的困難度。
Symbian 與開放式作業系統 Linux,和非開放的 Windows Mobile 等比較,它的優勢是比較有爭議的。手機製造商和網路營運商比較喜歡Symbian的定制灵活性(customisability)而較否定Windows CE。儘管這些定制灵活性(customisability)使得整合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作業系統測試碼與範例碼的環境中執行。
歷史
EPOC16:在1991到1998之間Psion發表幾款使用EPOC16作業系統的3系列裝置,亦稱為SIBO。
EPOC OS 發布號1~3:5系列的裝置發表於1997,使用EPOC32作業系統。
EPOC 發布號4:Oregon Osaris和Geofox 1發表使用ER4。
1998年,在Ericsson、Nokia、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。
Symbian OS v7.0與v7.0s。在2003年出現第一批搭載該系統的手機。
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易受變種病毒的威脅,像是最為人所知的Cabir病毒。通常它們都靠藍牙傳播。不過,所有安裝程式都會詢問使用者要不要安裝,而未獲信任的程式都會有顯著的提示。然而,一般的使用者其實不需要擔憂這些惡意程式的騷擾,因為已安裝的程式即使沒有獲得數位簽證,理論上程式也不會去執行有危險的程序,像經由付費方式傳輸資料,因為這是可以被追蹤的。程式開發人員可以經由此簽證網站使該程式獲得簽證。
下列是常見的惡意程式,但所有惡意程式都需要使用者去執行它(也就是不會不知不覺的中毒)。
- Drever.A 是SIS格式的惡意程式,安裝之後會嘗試去停止Simworks和卡巴斯基的Symbian防毒軟體。
- Locknut.B 是假裝為作業系統補丁的SIS格式惡意程式。安裝以後將丟去一個位元使得有問題的系統服務部份瓦解,這使得阻止開啟任何軟體。
- Mabir.A 是多了MMS功能的Cabir。這兩支病毒都是同一個作者寫出來,也有很多相似的原始碼。當病毒發作時,它會藉由藍牙尋找手機,一發現其他手機就開始複製。
- Frontal.A 是修改一個檔案而使手機無法重新開機的SIS病毒。當使用者試圖重新開機,將在重新開機時死機,且無法解毒。只有按下格式化手機的快捷鍵才能解決,不過所有資料將會消失。不過,該病毒並無法自己散播。最有可能的傳播途徑是使用者藉由P2P取得該檔案。
開放性
一個普遍的共同問題是Symbian OS是不是"開放"的。它並沒有開放到核心源代码(源代码从沒有公開)。然而,几乎所有源代码都提供給使用Symbian OS的手機製造商和其他合作夥伴。再者,很多應用程序接口(API)都有公開其技術文件,使任何人都可以開發Symbian OS的软件。這與其他傳統的嵌入式操作系統形成對比,因為後者除了Java程序以外並無法提供任何後繼市場的软件。
使用Symbian作業系統的裝置
- Ericsson R380(2000年)是第一款在市場銷售的Symbian智能手機。然而將這款手機稱為智能手機的說法是可能有疑問的,因為它無法安裝軟體的特性顯示說它是完全封閉的裝置。
- 2001年的Nokia 9210 Communicator智能手機(32位66MHz ARM9的RISC CPU),2004年的9300 Communicator,2004年的9500 Communicator則使用80系列界面。
- 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都使用此界面。
- 2004年Nokia 7710使用90系列界面。
- Fujitsi、Mitsubishi、Sony Ericsson和Sharp這些使用於日本的NTT DoCoMo手機共同開發名為FOMA的平台。
開發
在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公司網站
- UIQ,UIQ 科技
- UIQ 研發處: UIQ研發官方網站,可下載免費的UIQ 3 SDK。
- Symbian Signed,an application signing and verification process
- DMOZ directory of Symbian sites
- All About Symbian News and information site for Symbian OS powered phones with active forum
- SymbianOne.com An active Community portal for mobile developers, device makers, and carriers interested in symbian devices
- My-Symbian Symbian OS Communicators and Smartphones Info Center, with active discussion forum
- Symbian OS OpenSource Community Center,This site is dedicated to the development of Open Source programs for SymbianOS.
- NewLC a Symbian C++ developer portal with news, forums, tutorials and more
- S60 platform's official site
- 3-Lib Psion and Symbian software.
- Symbware Directory of freeware and open source software for Symbian OS.
- Symbian Watch Symbian blog.
- Symbian Freak Website for smartphone users, with a smart phone discussion forum
- Symbian Wiki
- Carbide.c++ is an Eclipse-based IDE for Symbian C++ development, developed by Nokia. Available in 2006