×
研发资源 > 电子百科

Symbian OS

目录·设计
·竞争对手
·架构
·历史
·安全与恶意程式
·开放性
·使用Symbian操作系统的装置
·开发
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职员正式成为诺基亚员工。
·设计Top


Symbian OS8.1a运行在诺基亚N70手机上的桌面抓图
Symbian OS9.3 运行在诺基亚6120C手机上的桌面抓图以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来使用。


·竞争对手Top

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是设计为小型装置使用,使得它拥有更强大的能力、更有效率的内存管理和更灵活的身段。


·架构Top

最低阶的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操作系统测试码与范例码的环境中执行。


·历史Top

1980年,David Potter成立Psion公司。
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,于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所声明的更多复杂的程序。


·安全与恶意程式Top

Symbian易受变种病毒的威胁,像是最为人所知的Cabir病毒。通常它们都靠蓝牙传播。不过,所有安装程式都会询问使用者要不要安装,而未获信任的程式都会有显著的提示。然而,一般的使用者其实不需要担忧这些恶意程式的骚扰,因为已安装的程式即使没有获得数位签证,理论上程式也不会去执行有危险的程序,像经由付费方式传输资料,因为这是可以被追踪的。程式开发人员可以经由此签证网站使该程式获得签证。
下列是常见的恶意程式,但所有恶意程式都需要使用者去执行它(也就是不会不知不觉的中毒)。
Drever.A 是SIS格式的恶意程式,安装之后会尝试去停止Simworks和卡巴斯基的Symbian防毒软件。
Locknut.B 是假装为操作系统补丁的SIS格式恶意程式。安装以后将丢去一个位元使得有问题的系统服务部份瓦解,这使得阻止开启任何软件。
Mabir.A 是多了MMS功能的Cabir。这两支病毒都是同一个作者写出来,也有很多相似的源代码。当病毒发作时,它会借由蓝牙寻找手机,一发现其他手机就开始复制。
Frontal.A 是修改一个档案而使手机无法重新开机的SIS病毒。当使用者试图重新开机,将在重新开机时死机,且无法解毒。只有按下格式化手机的快捷键才能解决,不过所有资料将会消失。不过,该病毒并无法自己散播。最有可能的传播途径是使用者借由P2P取得该档案。
·开放性Top

一个普遍的共同问题是Symbian OS是不是"开放"的。它并没有开放到核心源代码(源代码从没有公开)。然而,几乎所有源代码都提供给使用Symbian OS的手机制造商和其他合作伙伴。再者,很多应用程序接口(API)都有公开其技术文件,使任何人都可以开发Symbian OS的软件。这与其他传统的嵌入式操作系统形成对比,因为后者除了Java程序以外并无法提供任何后继市场的软件。


·使用Symbian操作系统的装置Top

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都使用此界面。
2002年的Nokia 60系列(S60)
2004年Nokia 7710使用90系列界面。
Fujitsi、Mitsubishi、Sony Ericsson和Sharp这些使用于日本的NTT DoCoMo手机共同开发名为FOMA的平台。
·开发Top

在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应用程式。


相关数据
139次 被浏览次数
1次 编辑次数
|最新活动
|APP下载
下载电巢APP 随时随地看更多电巢视频
|专家解答
关注公众号与专家面对面