×

Loading...

浅谈Palm OS

本文发表在 rolia.net 枫下论坛PDA是2001年的发展热点。本文以占PDA市场的七成分额以上的Palm为主线,讲述了Palm各类产品的对比及发展趋势,并着重论述了Palm的开发软件以及它与微软的Pocket PC的比较,最后讨论了Palm的发展前景。 1. 引言: PDA(Personal Digital Assistant)即个人数字助理。随着生活节奏的加快和信息交流的增多,人们需要更方便的管理自己的信息、相互之间更容易沟通以及可以随时随地的娱乐,而PDA正好适合这一点。PDA的概念最初是由美国苹果电脑公司(MAC)公司的一位执行总裁于1992年提出的关于一种产品的设想。PDA发展到今天,不仅具有PIM(Personal Information Manager)功能,而且具有资料同步、传真、GPS、上网等功能。对于具有扩展槽的PDA产品,如果增加相应的扩展模块,就会具备数码相机、Mp3播放器、手机等功能。最近对PDA的无线技术讨论的如火如荼,WAP、GPRS、I-MODE、BlueTooth(蓝牙)等各种无线接入方案应运而生,其中以由全球各大厂商合力推出的蓝牙技术最为引人注目。 PDA的操作系统有很多种,例如3COM的Palm OS、PSION的EPOC、微软的WIN CE(采用WIN CE3.0以上版本的PDA被称为Pocket PC),还有刚出炉的linux操作系统(如ELKS、ucLinux等)。 Palm OS由Palm Comupting首次提出。1996年,U.S. Robotics推出基于Palm OS的Pilot 1000,打入掌上电脑市场。其后,Palm依靠其简便轻巧的特点得到迅速发展,并且获得了巨大的第三方软件支持。目前Palm占据了约七成以上的国际PDA市场份额。 2. Palm的产品: Palm产品的最大的特点是使用简便,机体轻巧。随着用户需求的提高以及竞争的需要,Palm产品逐步向多媒体、无线、易扩展方向发展。这一点我们从Palm阵营最近推出的产品可见一斑。 2.1 Palm IIIc Palm IIIc是Palm产品中的第一款采用彩色屏幕的掌上电脑。迫于Pocket PC的竞争压力和用户的需求不断提高,Palm不得不在原先简便轻巧的基础上,增强多媒体功能,将原来的黑白屏幕改为彩色即是为适应这一点的结果。又如索尼刚刚推出的CLIE-700,在多媒体实现上基本上和Pocket PC相差不下。 2.2 Palm VIIx 作为Palm进军无线领域的标志产品,内置有基于TCP/IP的软件,支持网页剪切程序(Web Clipping Application),可以方便的浏览经济、新闻、体育、电子商务等各类网站。Palm VIIx能够更自由方便的收发电子邮件(e-mail)。并且Palm VIIx也具有一个硬件扩展槽,能够加装很多种扩展卡。另据Palm公司宣布,在将要推出的Palm OS4.0中支持蓝牙(bluetooth)技术。 2.3 HandSpring Visor Deluxe HandSpring Visor Deluxe的显著特点具有独特的SprintBoard扩展槽。只要加装相应的扩展模块,Visor Deluxe就可以变为数码相机、Mp3播放器或者手机,并且这些模块是即插即用的(plug-and-play)。另外,HandSpring Visor Deluxe配备USB接口,直接可以和PC或苹果机系列(iMac、iBook和G4的Mac机)连接。其数据传输速率比串口类型的快的多,并且更容易使用。 3. Palm OS的开发软件 由于Palm产品刚刚开始进入中国市场,对于Palm OS的开发,在国内还有些陌生,但在国际上对Palm的软件开发数以万计。Palm OS的开发环境主要包括CodeWarrior、Satellite Forms、GCC/PRC工具、PiLRC等。下面着重讨论一下两套风格不同但都很实用和流行的开发工具CodeWarrior和Satellite Forms,对其他开发工具只作简单的介绍。 3.1 CodeWarrior CodeWarrior是Palm OS指定的官方开发工具,它的开发语言为C/C++语言,编译时使用Palm OS库连接。Palm OS库提供了操作掌上设备的各种API,其中包括屏幕管理、数据存储和读取、串行端口和红外控制以及信息交换等。现在,CodeWarrior可以运行在Windows 95/98/NT/2000上。整个开发环境主要包括: 基本工具: CodeWarrior IDE:应用程序的集成开发环境,可用于编写调试Palm、Mac、Java等程序; CodeWarrior Compiler for Palm OS:ANSI兼容C/C++编译器,生成针对Palm设备的68k目标码; CodeWarrior Assembler for Palm OS:汇编器; 附属工具: Constructor for Palm OS:用来编辑Palm软件资源的工具; PalmRez:将目标程序转换为可以在Palm设备或Palm仿真器(emluator)上运行的执行文件(PRC文件); Palm OS Emulator (POSE):Palm OS仿真器,可以安装、运行和调试真正的Palm软件; PalmDebugger:PC-Palm联机调试工具; Conduit Development Kit:在MacOS或Windows上开发Palm设备与PC机同步软件的工具。 Palm OS应用程序的控制流程是事件驱动方式(event driven)。在CodeWarrior中实现的流程图如图-1所示: 启动指令(launch command)包括用户直接开启,或者是操作系统报警,或者是用户要查询信息,也或者是需要系统和桌面同步数据等发出的指令。 在事件循环中,事件处理有一个的优先级顺序。首先是系统事件(SysHandleEvent)处理,如手写输入等;然后是菜单事件(MenuHandleEvent)处理;下面就是应用程序事件(AppHandleEvent)处理,此事件处理程序是应用程序工作的核心,然后由FrmDispatchEvent将事件分配到具体窗体。 在最后一步的事件处理中,事件到达每一个具体窗体,经过判别接收事件的类型后,只处理和应用程序相关的事件。 3.2 Satellite Forms 对于普通的开发人员来讲,Satellite Forms是一个很好的工具。它的开发语言是Basic Script,开发界面十分友好。操作起来和VB有些相似。通过对窗体的内部控件(如按钮、下拉框等)的触发事件驱动来实现程序。它的最大特点是可以方便的操作数据库(创建、修改、导入、导出数据库等),它支持DBF数据库和Access数据库类型。另外Satellite Forms还提供了很多控件(Extention),控件几乎涉及到了Palm应用的各个方面。所以使用Satellite Forms可以在很快的时间内编制出一个相当不错的程序。 但它的缺点是过分的依赖于控件(Extention)。如果没有开发所需要的控件,则只能通过CodeWarrior或其他的开发工具开发控件才能使程序继续下去。另外,在应用程序中对数据库进行操作时,可能会出现数据库数据不能及时刷新的问题。 综上所述,笔者认为Satellite Forms和CodeWarrior之间就像VC和VB的关系一样。Satellite Forms开发方便快捷,但是很少能涉及到底层操作。而使用CodeWarrior开发虽然比较复杂,但它可以实现Palm的所有应用功能。 3.3 GCC/PRC-TOOLS GCC/PRC-TOOLS首先是由Free Software Foundation开发,现在由EGCS Steering Committee管理。GCC编译器被大多数人认为是68K连接器,与其他非免费的工具相比,它编译连接生成的代码更快更少。 3.4 PilRC PilRC是把程序文本转化为一个二进制图像的工具。该工具和GCC/PRC_Tools组件一起使用就可做一个完整的Palm OS应用程序。有人说它比Constructor效果还好。虽然它不是画图工具,却包含了一个称为PilRCUI的浏览器,使用它可以看到所绘制的画面。 4. Palm与Pocket PC之比较 Palm及其兼容机在PDA市场抢到了七成以上的市场占有率,而Pocket PC的用户尚不足二成,优劣十分明显。但是Pocket PC遵循的是典型的微软型市场策略──看到别人做大后挟庞大的资源优势强攻市场。虽然现在Palm占据明显优势,但是依据NetScape与IE相争的先例,鹿死谁手还很难说。 Palm的突出特点是外形轻巧使用简便,有强大的第三方软件支持。 从硬件角度来讲,如Palm Vx,它的外形尺寸为155×77×10mm(长宽高),重144克。而对于Pocket PC来讲,如韩国Aidii的PD-131K,其外形尺寸为130×86×20mm,重230克; 从软件角度讲,由于Palm一贯支持简便(simple)的风格,而微软的软件一般都十分庞大,所以其应用程序使用起来都较Pocket PC简单; 强大的第三方软件的支持也让Pocket PC望尘莫及。Palm在网络上的软件支持超过5000种,从操作系统的增强到项目的管理程序,一应俱全。除此之外,在网络上还有无数的网站专门提供Palm的相关信息。 Pocket PC的最大特点是CPU的速度和对多媒体的支持。 其操作系统是一个多任务的作业环境,你可以边听Mp3音边编辑Word,它拥有更快的中央处理器(通常速度在100-206MHz,最新的机型开始采用StrongARM); Pocket PC对声音和视频的处理都要比Palm出色。如Compaq的iPAQ3670可以播放近两个小时的现场直播。而? 使用Palm OS操作系统的iPAQ3150播放一些影片的话,输出的只有音频,而没有视频; 另外Pocket PC内置的基于广受欢迎的Outlook产品的PIM程序,对于习惯于使用Windows操作的广大用户来说,其人机界面更显得亲切。 在美国拉斯韦加斯举行的本年度Comdex计算机博览会上,Palm和微软的官员都对各自的产品作了阐述。微软的官员认为,只要企业级用户开始广泛的使用手持计算设备,那么Pocket PC成功的时刻就要到来了;Palm官员认为产品一定要更适合消费者的需要,而Palm则正是消费者所需要的。 5. Palm的发展前景 作为PDA市场的一代霸主,估计在未来5-10年,Palm在PDA市场仍会独领风骚。但来自于Pocket PC的强有力的挑战,使得Palm也不得不考虑在保证自己独有优势的基础,怎样适应用户越来越高的要求。更多精彩文章及讨论,请光临枫下论坛 rolia.net
Sign in and Reply Report

Replies, comments and Discussions:

  • 枫下家园 / 电脑用户 / 浅谈Palm OS
    本文发表在 rolia.net 枫下论坛PDA是2001年的发展热点。本文以占PDA市场的七成分额以上的Palm为主线,讲述了Palm各类产品的对比及发展趋势,并着重论述了Palm的开发软件以及它与微软的Pocket PC的比较,最后讨论了Palm的发展前景。 1. 引言: PDA(Personal Digital Assistant)即个人数字助理。随着生活节奏的加快和信息交流的增多,人们需要更方便的管理自己的信息、相互之间更容易沟通以及可以随时随地的娱乐,而PDA正好适合这一点。PDA的概念最初是由美国苹果电脑公司(MAC)公司的一位执行总裁于1992年提出的关于一种产品的设想。PDA发展到今天,不仅具有PIM(Personal Information Manager)功能,而且具有资料同步、传真、GPS、上网等功能。对于具有扩展槽的PDA产品,如果增加相应的扩展模块,就会具备数码相机、Mp3播放器、手机等功能。最近对PDA的无线技术讨论的如火如荼,WAP、GPRS、I-MODE、BlueTooth(蓝牙)等各种无线接入方案应运而生,其中以由全球各大厂商合力推出的蓝牙技术最为引人注目。 PDA的操作系统有很多种,例如3COM的Palm OS、PSION的EPOC、微软的WIN CE(采用WIN CE3.0以上版本的PDA被称为Pocket PC),还有刚出炉的linux操作系统(如ELKS、ucLinux等)。 Palm OS由Palm Comupting首次提出。1996年,U.S. Robotics推出基于Palm OS的Pilot 1000,打入掌上电脑市场。其后,Palm依靠其简便轻巧的特点得到迅速发展,并且获得了巨大的第三方软件支持。目前Palm占据了约七成以上的国际PDA市场份额。 2. Palm的产品: Palm产品的最大的特点是使用简便,机体轻巧。随着用户需求的提高以及竞争的需要,Palm产品逐步向多媒体、无线、易扩展方向发展。这一点我们从Palm阵营最近推出的产品可见一斑。 2.1 Palm IIIc Palm IIIc是Palm产品中的第一款采用彩色屏幕的掌上电脑。迫于Pocket PC的竞争压力和用户的需求不断提高,Palm不得不在原先简便轻巧的基础上,增强多媒体功能,将原来的黑白屏幕改为彩色即是为适应这一点的结果。又如索尼刚刚推出的CLIE-700,在多媒体实现上基本上和Pocket PC相差不下。 2.2 Palm VIIx 作为Palm进军无线领域的标志产品,内置有基于TCP/IP的软件,支持网页剪切程序(Web Clipping Application),可以方便的浏览经济、新闻、体育、电子商务等各类网站。Palm VIIx能够更自由方便的收发电子邮件(e-mail)。并且Palm VIIx也具有一个硬件扩展槽,能够加装很多种扩展卡。另据Palm公司宣布,在将要推出的Palm OS4.0中支持蓝牙(bluetooth)技术。 2.3 HandSpring Visor Deluxe HandSpring Visor Deluxe的显著特点具有独特的SprintBoard扩展槽。只要加装相应的扩展模块,Visor Deluxe就可以变为数码相机、Mp3播放器或者手机,并且这些模块是即插即用的(plug-and-play)。另外,HandSpring Visor Deluxe配备USB接口,直接可以和PC或苹果机系列(iMac、iBook和G4的Mac机)连接。其数据传输速率比串口类型的快的多,并且更容易使用。 3. Palm OS的开发软件 由于Palm产品刚刚开始进入中国市场,对于Palm OS的开发,在国内还有些陌生,但在国际上对Palm的软件开发数以万计。Palm OS的开发环境主要包括CodeWarrior、Satellite Forms、GCC/PRC工具、PiLRC等。下面着重讨论一下两套风格不同但都很实用和流行的开发工具CodeWarrior和Satellite Forms,对其他开发工具只作简单的介绍。 3.1 CodeWarrior CodeWarrior是Palm OS指定的官方开发工具,它的开发语言为C/C++语言,编译时使用Palm OS库连接。Palm OS库提供了操作掌上设备的各种API,其中包括屏幕管理、数据存储和读取、串行端口和红外控制以及信息交换等。现在,CodeWarrior可以运行在Windows 95/98/NT/2000上。整个开发环境主要包括: 基本工具: CodeWarrior IDE:应用程序的集成开发环境,可用于编写调试Palm、Mac、Java等程序; CodeWarrior Compiler for Palm OS:ANSI兼容C/C++编译器,生成针对Palm设备的68k目标码; CodeWarrior Assembler for Palm OS:汇编器; 附属工具: Constructor for Palm OS:用来编辑Palm软件资源的工具; PalmRez:将目标程序转换为可以在Palm设备或Palm仿真器(emluator)上运行的执行文件(PRC文件); Palm OS Emulator (POSE):Palm OS仿真器,可以安装、运行和调试真正的Palm软件; PalmDebugger:PC-Palm联机调试工具; Conduit Development Kit:在MacOS或Windows上开发Palm设备与PC机同步软件的工具。 Palm OS应用程序的控制流程是事件驱动方式(event driven)。在CodeWarrior中实现的流程图如图-1所示: 启动指令(launch command)包括用户直接开启,或者是操作系统报警,或者是用户要查询信息,也或者是需要系统和桌面同步数据等发出的指令。 在事件循环中,事件处理有一个的优先级顺序。首先是系统事件(SysHandleEvent)处理,如手写输入等;然后是菜单事件(MenuHandleEvent)处理;下面就是应用程序事件(AppHandleEvent)处理,此事件处理程序是应用程序工作的核心,然后由FrmDispatchEvent将事件分配到具体窗体。 在最后一步的事件处理中,事件到达每一个具体窗体,经过判别接收事件的类型后,只处理和应用程序相关的事件。 3.2 Satellite Forms 对于普通的开发人员来讲,Satellite Forms是一个很好的工具。它的开发语言是Basic Script,开发界面十分友好。操作起来和VB有些相似。通过对窗体的内部控件(如按钮、下拉框等)的触发事件驱动来实现程序。它的最大特点是可以方便的操作数据库(创建、修改、导入、导出数据库等),它支持DBF数据库和Access数据库类型。另外Satellite Forms还提供了很多控件(Extention),控件几乎涉及到了Palm应用的各个方面。所以使用Satellite Forms可以在很快的时间内编制出一个相当不错的程序。 但它的缺点是过分的依赖于控件(Extention)。如果没有开发所需要的控件,则只能通过CodeWarrior或其他的开发工具开发控件才能使程序继续下去。另外,在应用程序中对数据库进行操作时,可能会出现数据库数据不能及时刷新的问题。 综上所述,笔者认为Satellite Forms和CodeWarrior之间就像VC和VB的关系一样。Satellite Forms开发方便快捷,但是很少能涉及到底层操作。而使用CodeWarrior开发虽然比较复杂,但它可以实现Palm的所有应用功能。 3.3 GCC/PRC-TOOLS GCC/PRC-TOOLS首先是由Free Software Foundation开发,现在由EGCS Steering Committee管理。GCC编译器被大多数人认为是68K连接器,与其他非免费的工具相比,它编译连接生成的代码更快更少。 3.4 PilRC PilRC是把程序文本转化为一个二进制图像的工具。该工具和GCC/PRC_Tools组件一起使用就可做一个完整的Palm OS应用程序。有人说它比Constructor效果还好。虽然它不是画图工具,却包含了一个称为PilRCUI的浏览器,使用它可以看到所绘制的画面。 4. Palm与Pocket PC之比较 Palm及其兼容机在PDA市场抢到了七成以上的市场占有率,而Pocket PC的用户尚不足二成,优劣十分明显。但是Pocket PC遵循的是典型的微软型市场策略──看到别人做大后挟庞大的资源优势强攻市场。虽然现在Palm占据明显优势,但是依据NetScape与IE相争的先例,鹿死谁手还很难说。 Palm的突出特点是外形轻巧使用简便,有强大的第三方软件支持。 从硬件角度来讲,如Palm Vx,它的外形尺寸为155×77×10mm(长宽高),重144克。而对于Pocket PC来讲,如韩国Aidii的PD-131K,其外形尺寸为130×86×20mm,重230克; 从软件角度讲,由于Palm一贯支持简便(simple)的风格,而微软的软件一般都十分庞大,所以其应用程序使用起来都较Pocket PC简单; 强大的第三方软件的支持也让Pocket PC望尘莫及。Palm在网络上的软件支持超过5000种,从操作系统的增强到项目的管理程序,一应俱全。除此之外,在网络上还有无数的网站专门提供Palm的相关信息。 Pocket PC的最大特点是CPU的速度和对多媒体的支持。 其操作系统是一个多任务的作业环境,你可以边听Mp3音边编辑Word,它拥有更快的中央处理器(通常速度在100-206MHz,最新的机型开始采用StrongARM); Pocket PC对声音和视频的处理都要比Palm出色。如Compaq的iPAQ3670可以播放近两个小时的现场直播。而? 使用Palm OS操作系统的iPAQ3150播放一些影片的话,输出的只有音频,而没有视频; 另外Pocket PC内置的基于广受欢迎的Outlook产品的PIM程序,对于习惯于使用Windows操作的广大用户来说,其人机界面更显得亲切。 在美国拉斯韦加斯举行的本年度Comdex计算机博览会上,Palm和微软的官员都对各自的产品作了阐述。微软的官员认为,只要企业级用户开始广泛的使用手持计算设备,那么Pocket PC成功的时刻就要到来了;Palm官员认为产品一定要更适合消费者的需要,而Palm则正是消费者所需要的。 5. Palm的发展前景 作为PDA市场的一代霸主,估计在未来5-10年,Palm在PDA市场仍会独领风骚。但来自于Pocket PC的强有力的挑战,使得Palm也不得不考虑在保证自己独有优势的基础,怎样适应用户越来越高的要求。更多精彩文章及讨论,请光临枫下论坛 rolia.net
    • 8错, 偶怎么才看到.....