最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

WinCE操作系统

IT圈 admin 74浏览 0评论

2024年1月10日发(作者:睦长兴)

WinCE操作系统

WinCE操作系统是通用型的嵌入式操作系统,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95,Windows CE的图形用户界面相当出色。它1996年开始发布Windows CE 1.0版本,2004年7月发布了Windows CE .NET 5.0版本,目前用得最多的是Windows CE .NET 4.2版本,其发展速度也是很快的,功能上自不必描述,它的主要应用领域有PDA市场、Pcket PC、Smartphone、工业控制、医疗等。

就WinCE来讲,你无法买到WinCE这个操作系统,你买到的是Platform

Builder for 4.2的集成开发环境,我们也简称为PB,利用它你可以剪裁和定制出一个符合你自己需要的 4.2的操作系统,因此,我们说的操作系统实际上完全是由自己定制出来的,这就是嵌入式操作系统最大的特点。

Windows CE具有模块化、结构化和基于Win32应用程序接口和与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows

CE平台上可以使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面风格,使绝大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。Windows CE并非是专为单一装置设计的,所以微软为旗下采用Windows CE作业系统的产品大致分为三条产品线,Pocket PC(掌上电脑)、Handheld PC(手持设备)及Auto PC。

WindowsCE版本主要有1.0、2.0、3.0、4.0、4.2、5.0 和6.0

WINCE1.0是一种基于Windows95的操作系统,其实就是单色的Windows95简化版本。技术支持、直接资助等手段聚集了大量合作厂商,使WinCE类的PDA阵容越来越强大。

WinCE2.0不仅比CE1.0快的多,而且的彩色显示,又众多新型PDA采用新的WinCE2.0系统,大有取代Pilot的趋势,成为PDA操作系统新的标准。尽管CE2.0仍然要比Pilot的操作系统需要的空间要大的多,但它具有Windows的界面,会用PC的人小编估计没有多少人不会使用微软的操作系统。

WinCE3.0是微软的Windows Compact Edition,是一个通用版本,并不针对掌上产品,标准PC、家电和工控设备上也可以安装运行,但要做许多客户化工作,当然也可以做掌上电脑。WinCE3.0把Pocket Word和Pocket Excel等一些日常所需的办公软件的袖珍版装了进去Pocket PC,同时在娱乐方面的性能做很大的加强。

(即WinCE 4.0)是微软于2002年1月份推出的首个以.Net为名的操作系统,从名字上我们就可以知道它是微软的.net的一部分。是WinCE3.0的升级,同时还加入.Net Framework精简版,支持蓝牙和.Net应用程序开发。

4.2是 4.0/4.1的升级版,对Windows CE先前版本的强大功能进行了进一步的扩充和丰富,基于其开发的设备将从这些微小但重要的变化中获得更好的性能和更强的Windows集成功能。微软在WinCE4.2版时曾提供开放源代码,不过只针对研究单位,而程序代码较少,为200万行。

WinCE5.0在2004年5月份推出,微软宣布WinCE5.0扩大开放程序源代码。在这个开放源代码计划授权下,微软开放250万行源代码程序作为评估套件(evaluationkit)。凡是个人、厂商都可以下载这些源代码加以修改使用,未来厂商OEM时,则再依执行时期(Run-time)授权,支付Win CE5.0核心每台机器3美元的授权费用,这也是微软第一个提供商业用途衍生授权的操作系统。

Windows Embedded CE 6.0将为多种设备构建实时操作系统,例如:互联网协议(IP)机顶盒、全球定位系统(GPS)、无线投影仪,以及各种工业自动化、消费电子以及医疗设备等。

Windows Embedded CE 6.0重新设计的内核具有32,000个处理器的并发处理能力,每个处理有2GB虚拟内存寻址空间,同时还能保持系统的实时响应。这使得开发人员可以将大量强大的应用程序融入到更智能化、更复杂的设备中。无论在路上、在工作还是在家里,都可以使用这种设备。

嵌入式Linux系统

嵌入式Linux系统除了智能数字终端领域以外,嵌入式LinuLinux在移动计算平台、智能工业控制、金融业终端系统,甚至军事领域都有着广泛的应用前景。

RT-Linux是由美国墨西哥理工学院开发的嵌入式Linux操作系统。到目前为止,RT-Linux已经成功地应用于航天飞机的空间数据采集、科学仪器测控和电影特技图像处理等广泛领域。RT-Linux开发者并没有针对实时操作系统的特性而重写Linux的内核,因为这样做的工作量非常大,而且要保证兼容性也非常困难。为此,RT-Linux提出了精巧的内核,并把标准的Linux核心作为实时核心的一个进程,同用户的实时进程一起调度。这样对Linux内核的改动非常小,并且充分利用了Linux下现有的丰富的软件资源。

uClinux是Lineo公司的主打产品,同时也是开放源码的嵌入式Linux的典范之作。uCLinux主要是针对目标处理器没有存储管理单元MMU (Memory

Management Unit)的嵌入式系统而设计的。它已经被成功地移植到了很多平台上。由于没有MMU,其多任务的实现需要一定技巧。uCLinux是一种优秀的嵌入式 Linux版本,是micro-Conrol-Linux的缩写。它秉承了标准Linux的优良特性,经过各方面的小型化改造,形成了一个高度优化的、代码紧凑的嵌入式Linux。虽然它的体积很小,却仍然保留了Linux的大多数的优点:稳定、良好的移植性、优秀的网络功能、对各种文件系统完备的支持和标准丰富的API。它专为嵌入式系统做了许多小型化的工作,目前已支持多款CPU。其编译后目标文件可控制在几百KB数量级,并已经被成功地移植到很多平台上。

Embedix是由嵌入式Linux行业主要厂商之一Luneo推出的,是根据嵌入式应用系统的特点重新设计的Linux发行版本。Embedix提供了超过25种的Linux系统服务,包括Web服务器等。系统需要最小8MB内存,3MB ROM或快速闪存。Embedix基于Linux 2.2内核,并已经成功地移植到了Intel x86和PowerPC处理器系列上。像其它的Linux版本一样,Embedix可以免费获得。Luneo还发布了另一个重要的软件产品,它可以让在 Windows CE上运行的程序能够在Embedix上运行。Luneo还将计划推出Embedix的开发调试工具包、基于图形界面的浏览器等。可以说,Embedix 是一种完整的嵌入式Linux解决方案。

XLinux是由美国网虎公司推出,主要开发者是陈盈豪。他在加盟网虎几个月后便开发出了基于XLinux的、号称是世界上最小的嵌入式Linux系统,内核只有

143KB,而且还在不断减小。XLinux核心采用了“超字元集”专利技术,让Linux核心不仅可能与标准字符集相容,还含盖了12个国家和地区的字符集。因此,XLinux在推广Linux的国际应用方面有独特的优势。

PoketLinux由Agenda公司采用、作为其新产品“VR3 PDA”的嵌入式Linux操作系统。它可以提供跨操作系统构造统一的、标准化的和开放的信息通信基础结构,在此结构上实现端到端方案的完整平台。 PoketLinux资源框架开放,使普通的软件结构可以为所有用户提供一致的服务。PoketLinux平台使用户的视线从设备、平台和网络上移开,由此引发了信息技术新时代的产生。在PoketLinux中,称之为用户化信息交换(CIE),也就是提供和访问为每个用户需求而定制的“主题”信息的能力,而不管正在使用的设备是什么。

红旗嵌入式Linux由北京中科院红旗软件公司推出的嵌入式Linux是国内做得较好的一款嵌入式操作系统。目前,中科院计算所自行开发的开放源码的嵌入式操作系统—— Easy Embedded OS(EEOS)也已经开始进入实用阶段了。该款嵌入式操作系统重点支持p-Java。系统目标一方面是小型化,另一方面能重用Linux的驱动和其它模块。由于有中科院计算所的强大科研力量做后盾,EEOS有望发展成为功能完善、稳定、可靠的国产嵌入式操作系统平台。

嵌入式Linux OS与Windows CE相比的弱点:

第一:LINUX开发难度较高,需要很高的技术实力,WINCE开发相对较容易,开发周期短,内核完善,主要是应用层开发。第二:LINUX核心调试工具不全,调试不太方便,尚没有很好的用户图形界面,WINCE的GUI丰富,开发工具强大;第三,系统维护难度大。Linux占用较大的内存,如果去掉部分无用的功能来减小使用的内存,但是如果不仔细,将引起新的问题。

Android操作系统

Android操作系统是一个基于Linux的开源手机操作系统,它运行于ARM9构架的CPU。Android设计初衷,是为了与不同类型的手机、机顶盒和上网本相兼容

Android是Google于2007年11月05日宣布的基于Linux平台的开源移动操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。它采用软件堆层(Software Stack,又名软件叠层)的架构,主要分为三部分。底层以Linux内核工作为基础,由C语言开发,只提供基本功能;中间层包括函数库Library和虚拟机Virtual Machine,由C++开发。最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以Java作为编写程序的一部分。不存在任何以往阻碍移动产业创新的专有权障碍,号称是首个为移动终端打造的真正开放和完整的移动软件。

它采用了软件堆层(software stack,又名软件叠层)的架构,主要分为三部分:低层以Linux核心工作为基础,只提供基本功能,其他的应用软件则由各公司自

行开发,以java作为编写程式的一部分。另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟(Open Handset Alliance)。比如hero 的UI 界面即由HTC 自行研发,名为Senes,之前,没有一款Android 手机有如此华丽、人性化的界面,由此带来了Android 世界新的界面革命!与iPhone相似,Android采用WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,比iPhone等其他手机更强调搜索功能,界面更强大,可以说是一种融入全部Web应用的单一平台。

Android基于Linux 2.6提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。 通过计算机网络知道OSI/RM,就会知道分层的好处就是使用下层提供的服务而为上层提供统一的服务,屏蔽本层及以下层的差异,当本层及以下层发生了变化不会影响到上层。也就是说各层各尽其职,各层提供固定的SAP(Service Access Point),专业点可以说是高内聚、低耦合。 如果你只是做应用开发,就不需要深入了解Linux Kernel层。

Android包含一个核心库的集合,提供大部分在Java编程语言核心类库中可用的功能。每一个Android应用程序是Dalvik虚拟机中的实例,运行在他们自己的进程中。Dalvik虚拟机设计成,在一个设备可以高效地运行多个虚拟机。Dalvik虚拟机可执行文件格式是.dex,dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。 大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机则是基于寄存器的。两种架构各有优劣,一般而言,基于栈的机器需要更多指令,而基于寄存器的机器指令更大。dx 是一套工具,可以将

Java .class 转换成 .dex 格式。一个dex文件通常会有多个.class。由于dex有时必须进行最佳化,会使文件大小增加1-4倍,以ODEX结尾。 Dalvik虚拟机依赖于Linux 内核提供基本功能,如线程和底层内存管理。

Android包含一个C/C++库的集合,供Android系统的各个组件使用。这些功能通过Android的应用程序框架(application framework)暴露给开发者。下面列出一些核心库: 系统C库——标准C系统库(libc)的BSD衍生,调整为基于嵌入式Linux设备 媒体库——基于PacketVideo的OpenCORE。这些库支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、 H.264、

MP3、 AAC、 AMR、JPG、 PNG 界面管理——管理访问显示子系统和无缝组合多个应用程序的二维和三维图形层 LibWebCore——新式的Web浏览器引擎,驱动Android 浏览器和内嵌的web视图 SGL——基本的2D图形引擎 3D库——基于OpenGL ES 1.0 APIs的实现。库使用硬件3D加速或包含高度优化的3D软件光栅 FreeType ——位图和矢量字体渲染 SQLite ——所有应用程序都可以使用的强大而轻量级的关系数据库引擎

通过提供开放的开发平台,Android使开发者能够编制极其丰富和新颖的应用

程序。开发者可以自由地利用设备硬件优势、访问位置信息、运行后台服务、设置闹钟、向状态栏添加通知等等,很多很多。 开发者可以完全使用核心应用程序所使用的框架APIs。应用程序的体系结构旨在简化组件的重用,任何应用程序都能发布他的功能且任何其他应用程序可以使用这些功能(需要服从框架执行的安全限制)。这一机制允许用户替换组件。 所有的应用程序其实是一组服务和系统,包括: 视图(View)——丰富的、可扩展的视图集合,可用于构建一个应用程序。包括包括列表、网格、文本框、按钮,甚至是内嵌的网页浏览器 内容提供者(Content Providers)——使应用程序能访问其他应用程序(如通讯录)的数据,或共享自己的数据 资源管理器(Resource Manager)——提供访问非代码资源,如本地化字符串、图形和布局文件 通知管理器(Notification Manager)——使所有的应用程序能够在状态栏显示自定义警告 活动管理器(Activity

Manager)——管理应用程序生命周期,提供通用的导航回退功能

Android装配一个核心应用程序集合,包括电子邮件客户端、SMS程序、日历、地图、浏览器、联系人和其他设置。所有应用程序都是用Java编程语言写的。更加丰富的应用程序有待我们去开发! 从上面我们知道Android的架构是分层的,非常清晰,分工很明确。Android本身是一套软件堆迭(Software Stack),或称为「软件迭层架构」,迭层主要分成三层:操作系统、中间件、应用程序。从上面我们也看到了开源的力量,一个个熟悉的开源软件在这里贡献了自己的一份力量。

Android 1.1

主要特性:闹钟;API示例;浏览器;计算器;摄像头;联系人;开发工具包;拨号应用;电子邮件;地图(包含街景);信息服务;音乐;图片;设置。

Android 1.5

该版本又叫“Cupcake”,其表现出来的能力才真正吸引了开发者的目光。用户界面得到了极大的改良。

主要特性:录像;蓝牙A2DP;自动蓝牙连接;上传视频到YouTube以及Picasa;复制/粘贴功能。

Android 1.6

主要特性:Android应用市场集成;照相;摄像以及浏览;多选/删除功能;手势搜索;语音搜索应用集成;极大提升了语音阅读功能;对非标准分辨率有了更好的支持。

Android 2.0/2.1

主要特性:提升硬件速度;更多屏幕以及分辨率选择;大幅度的用户界面改良;支持 Exchange活动墙纸;大幅改进虚拟键盘;蓝牙2.1;Google地图3.1.2。

Android 2.2

主要特性:完整的Flash 10.1支持;最高5倍速度提升;最多支持8个设备连接的移动热点功能;有着专用链接的改进版主屏幕;大量 Exchange 支持改进,支持Exchange 2010,包括远程数据抹除,自动发现服务,完整的日程表支持,全局联系人列表查找;摄像头/视频改进,比如:更好的屏幕控制按钮,人民群众喜闻乐见的录像时开启闪光灯进行照明的功能;多键盘语言支持;Android云信息将应用安装在记忆卡上;蓝牙语音拨号;支持720P视频录制。

Android 2.3

主要特性:用户界面更美观;进一步提升运行速度;提升游戏体验;提升多媒体能力;增加官方进程管理;改善电源管理;NFC近场通信;全局下载管理;改进的虚拟键盘;原生支持前置摄像头;SIP网络电话 。

相比Android2.2版本来说,Android2.3 Gingerbread在系统性能方面的提升倒不是很大,更重要的是它让Android系统的功能更加全面。相信经过这样一些列快速的更新之后,谷歌Android系统将会变得越来越完善。

Symbian 操作系统是Symbian公司为手机而设计的操作系统,它包含联合的数据库、使用者界面架构和公共工具的参考实现,它的前身是Psion的EPOC。

Symbian 操作系统包含开放平台像UIQ、诺基亚的60、80、90系列和闭锁式平台像NTT DoCoMo的FOMA都是以Symbian为基础的智能型手机的使用者平台。这样的适应性把使用Symbian操作系统的智能型手机形成多变的型态(例如折迭式、含字母键盘或是笔形等)。它的架构于许多桌上型操作系统相似,它包含先占式多任务、多执行绪和内存保护。

Symbian的最大优势是在于它是为便携式装置而设计,而在有限的资源下,可以执行数月甚至数年。而这要归功于保护内存、Symbian编程描述和清除堆栈。将这些功能与其它技术搭配使用,会使内存使用量降低且内存漏出量极少。类似技术也运用于增加磁盘和记忆卡使用空间。而且,Symbian的编程是使用事件式处理,当应用程序没有与CPU直接交涉,CPU会被关闭。这在程序语言的惯用语称为主动式对象。正确的使用这些技术将能够延长电池使用时间。 这些技术让Symbian的C++变得非常专业,并有着过高的学习曲线。然而,许多Symbian的装置也可以利用OPL、Python、Visual Basic、Simkin以及Perl来搭配J2ME和自行开发的Java来使用。

最低阶的Symbian的基本组成成份包含核心(EKA1或EKA2),允许使用者的应用程序沿着使用者数据库去要求核心内的东西。Symbian有个微核心架构,这定义了核心内部所必需的最少功能。微核心架构包含排程系统和内存管理,但不包含网络和档案系统支持。这些用来提供给使用者端服务器(user-side server)。基本层则包含档案服务器,它在装置内提供类似DOS的显示模式(每个磁盘驱动器

有个代号,反斜线当作目录定义符号)。Symbian支持数种不同的档案系统,包含FAT以及Symbian专有的档案系统,而档案系统一般是不会在手机上显示出来。

在基本之上的是可供选择的系统数据库,而这提供了该装置的市场定位,数据库的内容包含像是字符转换表、数据库管理系统和档案资源管理。

此外,在此有一个很庞大的网络及通讯子系统,这含有三个主要的服务,分别是ETEL(EPOC telephony)、ESOCK(EPOC协议)及C32(序列通讯响应)。每个服务都有模块化方案。例如ESOCK允许不同的".PRT"通讯协议模块,实现了不同方式的网络通讯协议方案,像是蓝牙、红外线及USB等。

这也有一个庞大的使用者接口码。即使使用它人制造的使用者接口,基本的类别和子结构(UIKON)的所有使用者接口除了某些相关服务(例如View Server提供手机间的使用者接口转换)以外都会出现在Symbian操作系统。而这里也有很多相关的绘图码,就像是窗口服务和字型与位图服务。应用程序架构提供标准的应用程序种类、连结和档案数据辨识。它也有可选择的应用程序引擎给予智能型手机的基本程序,像行事历、电话簿等。通常典型的 Symbian操作系统的应用程序是分散到各个DLL引擎和图型化程序,程序就像是包装纸把DLL引擎包装在一起。Symbian也提供了一些DLL引擎使程序运用。

当然,有很多东西并没有一起放入装置内,像是SyncML,Java ME提供另一组应用程序接口给操作系统及多媒体应用。要注意的是这些都只是framework,程序开发者要能够从第三方提供framework的插件支持(例如RealPlayer使用多媒体译码器)。这提供了应用程序接口在不同型号的手机可以正常使用的优势,而软件开发人员得到更多弹性,但是手机制造商就需要很多的综合成品来制造使用Symbian操作系统的手机。

Symbian操作系统的装置制造商也提供名为TechView的使用者接口范例层。这与Psion 5系列的Personal Organiser感觉非常相似,所以它与任何行动电话的使用者接口不太相似,但它还是提供一个基本的方式去个人化使用者接口。这也是需要很多 Symbian操作系统测试码与范例码的环境中执行。

Symbian易受变种病毒的威胁,像是最为人所知的Cabir病毒。通常它们都靠蓝牙传播。不过,所有安装程序都会询问使用者要不要安装,而未获信任的程序都会有显著的提示。然而,一般的使用者其实不需要担忧这些恶意程序的骚扰,因为已安装的程序即使没有获得数字签证,理论上程序也不会去执行有危险的程序,像经由付费方式传输资料,因为这是可以被追踪的。程序开发人员可以经由此网站签证网站使该程序获得签证。

2024年1月10日发(作者:睦长兴)

WinCE操作系统

WinCE操作系统是通用型的嵌入式操作系统,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95,Windows CE的图形用户界面相当出色。它1996年开始发布Windows CE 1.0版本,2004年7月发布了Windows CE .NET 5.0版本,目前用得最多的是Windows CE .NET 4.2版本,其发展速度也是很快的,功能上自不必描述,它的主要应用领域有PDA市场、Pcket PC、Smartphone、工业控制、医疗等。

就WinCE来讲,你无法买到WinCE这个操作系统,你买到的是Platform

Builder for 4.2的集成开发环境,我们也简称为PB,利用它你可以剪裁和定制出一个符合你自己需要的 4.2的操作系统,因此,我们说的操作系统实际上完全是由自己定制出来的,这就是嵌入式操作系统最大的特点。

Windows CE具有模块化、结构化和基于Win32应用程序接口和与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows

CE平台上可以使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面风格,使绝大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。Windows CE并非是专为单一装置设计的,所以微软为旗下采用Windows CE作业系统的产品大致分为三条产品线,Pocket PC(掌上电脑)、Handheld PC(手持设备)及Auto PC。

WindowsCE版本主要有1.0、2.0、3.0、4.0、4.2、5.0 和6.0

WINCE1.0是一种基于Windows95的操作系统,其实就是单色的Windows95简化版本。技术支持、直接资助等手段聚集了大量合作厂商,使WinCE类的PDA阵容越来越强大。

WinCE2.0不仅比CE1.0快的多,而且的彩色显示,又众多新型PDA采用新的WinCE2.0系统,大有取代Pilot的趋势,成为PDA操作系统新的标准。尽管CE2.0仍然要比Pilot的操作系统需要的空间要大的多,但它具有Windows的界面,会用PC的人小编估计没有多少人不会使用微软的操作系统。

WinCE3.0是微软的Windows Compact Edition,是一个通用版本,并不针对掌上产品,标准PC、家电和工控设备上也可以安装运行,但要做许多客户化工作,当然也可以做掌上电脑。WinCE3.0把Pocket Word和Pocket Excel等一些日常所需的办公软件的袖珍版装了进去Pocket PC,同时在娱乐方面的性能做很大的加强。

(即WinCE 4.0)是微软于2002年1月份推出的首个以.Net为名的操作系统,从名字上我们就可以知道它是微软的.net的一部分。是WinCE3.0的升级,同时还加入.Net Framework精简版,支持蓝牙和.Net应用程序开发。

4.2是 4.0/4.1的升级版,对Windows CE先前版本的强大功能进行了进一步的扩充和丰富,基于其开发的设备将从这些微小但重要的变化中获得更好的性能和更强的Windows集成功能。微软在WinCE4.2版时曾提供开放源代码,不过只针对研究单位,而程序代码较少,为200万行。

WinCE5.0在2004年5月份推出,微软宣布WinCE5.0扩大开放程序源代码。在这个开放源代码计划授权下,微软开放250万行源代码程序作为评估套件(evaluationkit)。凡是个人、厂商都可以下载这些源代码加以修改使用,未来厂商OEM时,则再依执行时期(Run-time)授权,支付Win CE5.0核心每台机器3美元的授权费用,这也是微软第一个提供商业用途衍生授权的操作系统。

Windows Embedded CE 6.0将为多种设备构建实时操作系统,例如:互联网协议(IP)机顶盒、全球定位系统(GPS)、无线投影仪,以及各种工业自动化、消费电子以及医疗设备等。

Windows Embedded CE 6.0重新设计的内核具有32,000个处理器的并发处理能力,每个处理有2GB虚拟内存寻址空间,同时还能保持系统的实时响应。这使得开发人员可以将大量强大的应用程序融入到更智能化、更复杂的设备中。无论在路上、在工作还是在家里,都可以使用这种设备。

嵌入式Linux系统

嵌入式Linux系统除了智能数字终端领域以外,嵌入式LinuLinux在移动计算平台、智能工业控制、金融业终端系统,甚至军事领域都有着广泛的应用前景。

RT-Linux是由美国墨西哥理工学院开发的嵌入式Linux操作系统。到目前为止,RT-Linux已经成功地应用于航天飞机的空间数据采集、科学仪器测控和电影特技图像处理等广泛领域。RT-Linux开发者并没有针对实时操作系统的特性而重写Linux的内核,因为这样做的工作量非常大,而且要保证兼容性也非常困难。为此,RT-Linux提出了精巧的内核,并把标准的Linux核心作为实时核心的一个进程,同用户的实时进程一起调度。这样对Linux内核的改动非常小,并且充分利用了Linux下现有的丰富的软件资源。

uClinux是Lineo公司的主打产品,同时也是开放源码的嵌入式Linux的典范之作。uCLinux主要是针对目标处理器没有存储管理单元MMU (Memory

Management Unit)的嵌入式系统而设计的。它已经被成功地移植到了很多平台上。由于没有MMU,其多任务的实现需要一定技巧。uCLinux是一种优秀的嵌入式 Linux版本,是micro-Conrol-Linux的缩写。它秉承了标准Linux的优良特性,经过各方面的小型化改造,形成了一个高度优化的、代码紧凑的嵌入式Linux。虽然它的体积很小,却仍然保留了Linux的大多数的优点:稳定、良好的移植性、优秀的网络功能、对各种文件系统完备的支持和标准丰富的API。它专为嵌入式系统做了许多小型化的工作,目前已支持多款CPU。其编译后目标文件可控制在几百KB数量级,并已经被成功地移植到很多平台上。

Embedix是由嵌入式Linux行业主要厂商之一Luneo推出的,是根据嵌入式应用系统的特点重新设计的Linux发行版本。Embedix提供了超过25种的Linux系统服务,包括Web服务器等。系统需要最小8MB内存,3MB ROM或快速闪存。Embedix基于Linux 2.2内核,并已经成功地移植到了Intel x86和PowerPC处理器系列上。像其它的Linux版本一样,Embedix可以免费获得。Luneo还发布了另一个重要的软件产品,它可以让在 Windows CE上运行的程序能够在Embedix上运行。Luneo还将计划推出Embedix的开发调试工具包、基于图形界面的浏览器等。可以说,Embedix 是一种完整的嵌入式Linux解决方案。

XLinux是由美国网虎公司推出,主要开发者是陈盈豪。他在加盟网虎几个月后便开发出了基于XLinux的、号称是世界上最小的嵌入式Linux系统,内核只有

143KB,而且还在不断减小。XLinux核心采用了“超字元集”专利技术,让Linux核心不仅可能与标准字符集相容,还含盖了12个国家和地区的字符集。因此,XLinux在推广Linux的国际应用方面有独特的优势。

PoketLinux由Agenda公司采用、作为其新产品“VR3 PDA”的嵌入式Linux操作系统。它可以提供跨操作系统构造统一的、标准化的和开放的信息通信基础结构,在此结构上实现端到端方案的完整平台。 PoketLinux资源框架开放,使普通的软件结构可以为所有用户提供一致的服务。PoketLinux平台使用户的视线从设备、平台和网络上移开,由此引发了信息技术新时代的产生。在PoketLinux中,称之为用户化信息交换(CIE),也就是提供和访问为每个用户需求而定制的“主题”信息的能力,而不管正在使用的设备是什么。

红旗嵌入式Linux由北京中科院红旗软件公司推出的嵌入式Linux是国内做得较好的一款嵌入式操作系统。目前,中科院计算所自行开发的开放源码的嵌入式操作系统—— Easy Embedded OS(EEOS)也已经开始进入实用阶段了。该款嵌入式操作系统重点支持p-Java。系统目标一方面是小型化,另一方面能重用Linux的驱动和其它模块。由于有中科院计算所的强大科研力量做后盾,EEOS有望发展成为功能完善、稳定、可靠的国产嵌入式操作系统平台。

嵌入式Linux OS与Windows CE相比的弱点:

第一:LINUX开发难度较高,需要很高的技术实力,WINCE开发相对较容易,开发周期短,内核完善,主要是应用层开发。第二:LINUX核心调试工具不全,调试不太方便,尚没有很好的用户图形界面,WINCE的GUI丰富,开发工具强大;第三,系统维护难度大。Linux占用较大的内存,如果去掉部分无用的功能来减小使用的内存,但是如果不仔细,将引起新的问题。

Android操作系统

Android操作系统是一个基于Linux的开源手机操作系统,它运行于ARM9构架的CPU。Android设计初衷,是为了与不同类型的手机、机顶盒和上网本相兼容

Android是Google于2007年11月05日宣布的基于Linux平台的开源移动操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。它采用软件堆层(Software Stack,又名软件叠层)的架构,主要分为三部分。底层以Linux内核工作为基础,由C语言开发,只提供基本功能;中间层包括函数库Library和虚拟机Virtual Machine,由C++开发。最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以Java作为编写程序的一部分。不存在任何以往阻碍移动产业创新的专有权障碍,号称是首个为移动终端打造的真正开放和完整的移动软件。

它采用了软件堆层(software stack,又名软件叠层)的架构,主要分为三部分:低层以Linux核心工作为基础,只提供基本功能,其他的应用软件则由各公司自

行开发,以java作为编写程式的一部分。另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟(Open Handset Alliance)。比如hero 的UI 界面即由HTC 自行研发,名为Senes,之前,没有一款Android 手机有如此华丽、人性化的界面,由此带来了Android 世界新的界面革命!与iPhone相似,Android采用WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,比iPhone等其他手机更强调搜索功能,界面更强大,可以说是一种融入全部Web应用的单一平台。

Android基于Linux 2.6提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。 通过计算机网络知道OSI/RM,就会知道分层的好处就是使用下层提供的服务而为上层提供统一的服务,屏蔽本层及以下层的差异,当本层及以下层发生了变化不会影响到上层。也就是说各层各尽其职,各层提供固定的SAP(Service Access Point),专业点可以说是高内聚、低耦合。 如果你只是做应用开发,就不需要深入了解Linux Kernel层。

Android包含一个核心库的集合,提供大部分在Java编程语言核心类库中可用的功能。每一个Android应用程序是Dalvik虚拟机中的实例,运行在他们自己的进程中。Dalvik虚拟机设计成,在一个设备可以高效地运行多个虚拟机。Dalvik虚拟机可执行文件格式是.dex,dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。 大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机则是基于寄存器的。两种架构各有优劣,一般而言,基于栈的机器需要更多指令,而基于寄存器的机器指令更大。dx 是一套工具,可以将

Java .class 转换成 .dex 格式。一个dex文件通常会有多个.class。由于dex有时必须进行最佳化,会使文件大小增加1-4倍,以ODEX结尾。 Dalvik虚拟机依赖于Linux 内核提供基本功能,如线程和底层内存管理。

Android包含一个C/C++库的集合,供Android系统的各个组件使用。这些功能通过Android的应用程序框架(application framework)暴露给开发者。下面列出一些核心库: 系统C库——标准C系统库(libc)的BSD衍生,调整为基于嵌入式Linux设备 媒体库——基于PacketVideo的OpenCORE。这些库支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、 H.264、

MP3、 AAC、 AMR、JPG、 PNG 界面管理——管理访问显示子系统和无缝组合多个应用程序的二维和三维图形层 LibWebCore——新式的Web浏览器引擎,驱动Android 浏览器和内嵌的web视图 SGL——基本的2D图形引擎 3D库——基于OpenGL ES 1.0 APIs的实现。库使用硬件3D加速或包含高度优化的3D软件光栅 FreeType ——位图和矢量字体渲染 SQLite ——所有应用程序都可以使用的强大而轻量级的关系数据库引擎

通过提供开放的开发平台,Android使开发者能够编制极其丰富和新颖的应用

程序。开发者可以自由地利用设备硬件优势、访问位置信息、运行后台服务、设置闹钟、向状态栏添加通知等等,很多很多。 开发者可以完全使用核心应用程序所使用的框架APIs。应用程序的体系结构旨在简化组件的重用,任何应用程序都能发布他的功能且任何其他应用程序可以使用这些功能(需要服从框架执行的安全限制)。这一机制允许用户替换组件。 所有的应用程序其实是一组服务和系统,包括: 视图(View)——丰富的、可扩展的视图集合,可用于构建一个应用程序。包括包括列表、网格、文本框、按钮,甚至是内嵌的网页浏览器 内容提供者(Content Providers)——使应用程序能访问其他应用程序(如通讯录)的数据,或共享自己的数据 资源管理器(Resource Manager)——提供访问非代码资源,如本地化字符串、图形和布局文件 通知管理器(Notification Manager)——使所有的应用程序能够在状态栏显示自定义警告 活动管理器(Activity

Manager)——管理应用程序生命周期,提供通用的导航回退功能

Android装配一个核心应用程序集合,包括电子邮件客户端、SMS程序、日历、地图、浏览器、联系人和其他设置。所有应用程序都是用Java编程语言写的。更加丰富的应用程序有待我们去开发! 从上面我们知道Android的架构是分层的,非常清晰,分工很明确。Android本身是一套软件堆迭(Software Stack),或称为「软件迭层架构」,迭层主要分成三层:操作系统、中间件、应用程序。从上面我们也看到了开源的力量,一个个熟悉的开源软件在这里贡献了自己的一份力量。

Android 1.1

主要特性:闹钟;API示例;浏览器;计算器;摄像头;联系人;开发工具包;拨号应用;电子邮件;地图(包含街景);信息服务;音乐;图片;设置。

Android 1.5

该版本又叫“Cupcake”,其表现出来的能力才真正吸引了开发者的目光。用户界面得到了极大的改良。

主要特性:录像;蓝牙A2DP;自动蓝牙连接;上传视频到YouTube以及Picasa;复制/粘贴功能。

Android 1.6

主要特性:Android应用市场集成;照相;摄像以及浏览;多选/删除功能;手势搜索;语音搜索应用集成;极大提升了语音阅读功能;对非标准分辨率有了更好的支持。

Android 2.0/2.1

主要特性:提升硬件速度;更多屏幕以及分辨率选择;大幅度的用户界面改良;支持 Exchange活动墙纸;大幅改进虚拟键盘;蓝牙2.1;Google地图3.1.2。

Android 2.2

主要特性:完整的Flash 10.1支持;最高5倍速度提升;最多支持8个设备连接的移动热点功能;有着专用链接的改进版主屏幕;大量 Exchange 支持改进,支持Exchange 2010,包括远程数据抹除,自动发现服务,完整的日程表支持,全局联系人列表查找;摄像头/视频改进,比如:更好的屏幕控制按钮,人民群众喜闻乐见的录像时开启闪光灯进行照明的功能;多键盘语言支持;Android云信息将应用安装在记忆卡上;蓝牙语音拨号;支持720P视频录制。

Android 2.3

主要特性:用户界面更美观;进一步提升运行速度;提升游戏体验;提升多媒体能力;增加官方进程管理;改善电源管理;NFC近场通信;全局下载管理;改进的虚拟键盘;原生支持前置摄像头;SIP网络电话 。

相比Android2.2版本来说,Android2.3 Gingerbread在系统性能方面的提升倒不是很大,更重要的是它让Android系统的功能更加全面。相信经过这样一些列快速的更新之后,谷歌Android系统将会变得越来越完善。

Symbian 操作系统是Symbian公司为手机而设计的操作系统,它包含联合的数据库、使用者界面架构和公共工具的参考实现,它的前身是Psion的EPOC。

Symbian 操作系统包含开放平台像UIQ、诺基亚的60、80、90系列和闭锁式平台像NTT DoCoMo的FOMA都是以Symbian为基础的智能型手机的使用者平台。这样的适应性把使用Symbian操作系统的智能型手机形成多变的型态(例如折迭式、含字母键盘或是笔形等)。它的架构于许多桌上型操作系统相似,它包含先占式多任务、多执行绪和内存保护。

Symbian的最大优势是在于它是为便携式装置而设计,而在有限的资源下,可以执行数月甚至数年。而这要归功于保护内存、Symbian编程描述和清除堆栈。将这些功能与其它技术搭配使用,会使内存使用量降低且内存漏出量极少。类似技术也运用于增加磁盘和记忆卡使用空间。而且,Symbian的编程是使用事件式处理,当应用程序没有与CPU直接交涉,CPU会被关闭。这在程序语言的惯用语称为主动式对象。正确的使用这些技术将能够延长电池使用时间。 这些技术让Symbian的C++变得非常专业,并有着过高的学习曲线。然而,许多Symbian的装置也可以利用OPL、Python、Visual Basic、Simkin以及Perl来搭配J2ME和自行开发的Java来使用。

最低阶的Symbian的基本组成成份包含核心(EKA1或EKA2),允许使用者的应用程序沿着使用者数据库去要求核心内的东西。Symbian有个微核心架构,这定义了核心内部所必需的最少功能。微核心架构包含排程系统和内存管理,但不包含网络和档案系统支持。这些用来提供给使用者端服务器(user-side server)。基本层则包含档案服务器,它在装置内提供类似DOS的显示模式(每个磁盘驱动器

有个代号,反斜线当作目录定义符号)。Symbian支持数种不同的档案系统,包含FAT以及Symbian专有的档案系统,而档案系统一般是不会在手机上显示出来。

在基本之上的是可供选择的系统数据库,而这提供了该装置的市场定位,数据库的内容包含像是字符转换表、数据库管理系统和档案资源管理。

此外,在此有一个很庞大的网络及通讯子系统,这含有三个主要的服务,分别是ETEL(EPOC telephony)、ESOCK(EPOC协议)及C32(序列通讯响应)。每个服务都有模块化方案。例如ESOCK允许不同的".PRT"通讯协议模块,实现了不同方式的网络通讯协议方案,像是蓝牙、红外线及USB等。

这也有一个庞大的使用者接口码。即使使用它人制造的使用者接口,基本的类别和子结构(UIKON)的所有使用者接口除了某些相关服务(例如View Server提供手机间的使用者接口转换)以外都会出现在Symbian操作系统。而这里也有很多相关的绘图码,就像是窗口服务和字型与位图服务。应用程序架构提供标准的应用程序种类、连结和档案数据辨识。它也有可选择的应用程序引擎给予智能型手机的基本程序,像行事历、电话簿等。通常典型的 Symbian操作系统的应用程序是分散到各个DLL引擎和图型化程序,程序就像是包装纸把DLL引擎包装在一起。Symbian也提供了一些DLL引擎使程序运用。

当然,有很多东西并没有一起放入装置内,像是SyncML,Java ME提供另一组应用程序接口给操作系统及多媒体应用。要注意的是这些都只是framework,程序开发者要能够从第三方提供framework的插件支持(例如RealPlayer使用多媒体译码器)。这提供了应用程序接口在不同型号的手机可以正常使用的优势,而软件开发人员得到更多弹性,但是手机制造商就需要很多的综合成品来制造使用Symbian操作系统的手机。

Symbian操作系统的装置制造商也提供名为TechView的使用者接口范例层。这与Psion 5系列的Personal Organiser感觉非常相似,所以它与任何行动电话的使用者接口不太相似,但它还是提供一个基本的方式去个人化使用者接口。这也是需要很多 Symbian操作系统测试码与范例码的环境中执行。

Symbian易受变种病毒的威胁,像是最为人所知的Cabir病毒。通常它们都靠蓝牙传播。不过,所有安装程序都会询问使用者要不要安装,而未获信任的程序都会有显著的提示。然而,一般的使用者其实不需要担忧这些恶意程序的骚扰,因为已安装的程序即使没有获得数字签证,理论上程序也不会去执行有危险的程序,像经由付费方式传输资料,因为这是可以被追踪的。程序开发人员可以经由此网站签证网站使该程序获得签证。

发布评论

评论列表 (0)

  1. 暂无评论