找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
楼主: 寂夜清风

[软硬件讨论] PALM及TREO入门知识及购前知识普及

[复制链接]
发表于 2007-8-18 16:24 | 显示全部楼层
用模拟器先学习PALMOS系统的使用
+ r; v4 w1 x9 o$ U: d- F+ V/ T7 c2 X8 ?0 I. i) N+ [$ x; m0 @; P

- ~5 v; l  r6 F5 _TREO的ROM有很多种APR/ROW/ENA/LAP...分别是什么意思?可以互换么?
4 j8 O- j! z9 `) E- _2 ?
5 N! c/ |3 k+ m; [1 f/ A& fQUOTE:) @: C8 c! b. A% y: }
开发商视点:模拟器和仿真器:竞争与合作,作者:David Fedor 1 x! J, g9 @% u
# o& u% S; f: M# q
Palm OS Simulator(Palm OS 模拟器)和 Palm OS Emulator(Palm OS 仿真器):虽然两者听起来极为相似,并且从表面上看也非常相似,但作为一个开发商或测试人员,在您未完全了解它们之前,您不可能实际有效地利用它们进行工作。阅读以下内容,您将能更好地了解这两个基本的但非常重要的开发工具。7 _1 K" V% t+ p& @, A9 h
7 @  V3 D, x' c$ }" N5 J
模拟器(有时称为 PalmSim)和仿真器(或者 POSE)两者都在台式电脑中的模拟设备上运行 Palm OS,以方便您运行、调试和/或演示应用程序。它们的主要区别在于实现的过程和各自所具有的测试特性和环境。
" t: v# X% B4 g+ ?# x7 \, _
* ]+ f) [0 ^& j) `+ w简言之,仿真器模仿一个真实的设备,而模拟器则更像是执行了一个普通的 Palm OS API,因为此时 Palm OS 系统是作为本地的 Windows 应用程序运行的。所以仿真器更接近于实际情况,而模拟器有时则会与实际不符──根据不同情况,可能产生好坏两方面的影响。
( i- D: v! Y: s& V; C; P6 ]0 G6 X  W, Q1 h  l& c( o
另一个区别是,仿真器目前还不知道如何“作为”Palm OS 5 设备,这是因为它们各自在完全不同的处理器上运行。(曾经出现过模拟 68k 设备的模拟器,但它只能在 Mac OS 系统中运行,而且它之上只能运行应用程序而不是整个系统,更不用说具有现在的模拟器的丰富特性了。因为现在仍有少数用户使用它,所以在这里顺便提及。)目前,仿真器最适用于 Palm OS 4.x 及其早期版本,而模拟器则适用于 5.x 系列。3 E0 p* u& m. a5 \5 |

; G, L' M" U! S- o8 U8 c0 C为尽可能符合实际情况,仿真器具备大部分已面世的基于 68k 的设备特征,从而使运行环境尽可能接近您所选用的设备。它启用真实设备中真正的 ROM。除时间限制外,应用程序可以像在所模仿的设备上运行一样,在仿真器上运行。它还有很多有关调试的特性,我们将在后面详述。
% I- \- q2 v! o: u9 V6 s0 R; j5 i) b" p7 x" O4 W. ~
与仿真器相比,模拟器能让您拥有一整套的各种功能。(“您需要一个具有双精度、黑白屏、2M 字节的 RAM,但不使用电池的设备吗?没问题!”)或者创造一个具备所有特性的设备──您毕竟不用为它破费或者需要随身携带它,所以为什么还要犹豫呢?事实上,利用它们可以给您带来很多好处:您能快速的更改配置,以不同的方法检测程序,从而暴露出各种错误。
& R, l" r9 J3 u2 s; W& }- O; P: h7 d& B$ |
“创建您自己的设备”的灵活性也带来了一些与实际情况不相符的地方:在模拟器的存储器中,数据将位于不同的地方。由于它使用 PC 的网络堆栈,通信代码在其上的运行情况将有所不同;任何与“硬件”相关的情况都可能和真实设备中的情形不一致。并且,因为 PC 的设置会对结果产生极大的影响,所以在模拟器或仿真器上进行的速度测试其结果是不可信的。事实上,仿真器的计时单位可能与真实设备中的完全不同,这与通常精确的模拟有显著的差异。
; o  c4 _& v  H# S) a2 T: ^* D  |4 {9 m0 o
仿真器是源代码开放的程序,它可以在 Windows、Mac OS 和各种 Unix 系统上运行。但是因为模拟器只能运行于 Windows 之上,这就带来了一个复杂的问题──即您不能调用包含 ARM 代码的 PNO(PACE 内部对象,即早期的 ARMlet)中的代码,这是因为在模拟器中没有 ARM 指令集仿真程序。但是,您能够根据您的 PNO 创建 Windows DLL,并以这种方式进行测试。
( [: N5 h' K' U7 N$ P" Q0 ?! g  ~2 s  T
除在结构上的区别之外,测试是两者之间差异的另一个主要方面。虽然它们都包含调试功能,但因为仿真器“是”CPU,所以它可以执行一系列更为丰富的特性。相关文档中将对每个特性加以详细说明。例如,仿真器设计中的一个特性是可以检查不同的操作,从而确保您的应用程序能够正确地读取存储器。如果您读取的字节未包括在分配给您的存储器中,或者是表单结构中未记录的对象,那么仿真器会通知您。它还有助于您跟踪并识别存储器漏洞,使您能够分析应用程序,以便找出速度问题及其它更多问题。
8 v# w+ R1 o2 g# k7 f+ Y+ J( H" y; e. D( D
模拟器并不进行大范围的监视,因而它能以极快的速度运行:它能以 5 到 10 倍的速度运行一整套的 Gremlins 程序。它还包括一些附加的特性,如易于操作的实时查看程序,它可以查看设备的数据库、堆栈和事件。(获取有关 Gremlins 的更多信息,请访问http://www.palmsource.com/develo ... 30407.html#insights,参见我以前的专栏。)+ T( Y  E3 [- a$ [2 {! e
/ N+ F1 s  |: @- }; d) P
因为仿真器和模拟器有其各自的优缺点,所以综合使用两者进行测试将是一个很好的方法。请注意,真实的设备会尽可能地试图隐藏或忽略程序错误,但这些工具会将它们部暴露出来。您千万不能因为在某个设备中没有检测出程序错误,就忽略模拟器或仿真器中的报警:这些报警意味著出现了某些问题,我们 PalmSource 公司已经意识到这些问题很可能会突然出现在将来的设备和/或 OS 版本中。认为“它能运行在真实设备上”和消极对待程序错误者的经典回答“但它在我这儿没问题呀”所带来的后果一样坏──除非您敢保证不会再使用其它的设备,否则您最终还是要面对这个问题。
( S, k5 X$ b" ~7 S7 T# O. Q
) R9 u& O9 n$ t7 @5 H仿真器和模拟器都能以Debug和 Release方式运行。仿真器应用程序通过运行不同的 ROM 实现上述两种方式,而对于模拟器,则需要下载不同版本的模拟器:针对各种 OS 版本进行调试和发布模拟器。在您大部分的开发中,最好选择Debug配置:它将帮助您尽早地先于顾客发现问题,并能有效地表明将来发生兼容性问题的可能性。" d9 [9 x& E3 O) }& {, u7 a

' s8 z# c4 B& U4 B( a要下载仿真器,请访问 http://www.palmos.com/dev/tools/emulator,您也可以在其中找到有关获得 ROM 的指导说明。要查找关于模拟器的信息,请访问 http://www.palmos.com/dev/tools/simulator/,请务必同时使用这两者,从而能够得到一个更高性能的软件。
* P  P4 m& C1 c$ I' F2 d6 [6 \4 ~0 T1 [$ p0 y0 ~: ]) }
David Fedor 是 PalmSource 公司的开发商体系结构和错误调试部的总监,自 1997以来,他一直从事帮助 Palm OS 程序员的工作。
发表于 2007-8-21 12:30 | 显示全部楼层
新胖,50%能看懂,学习~~
发表于 2007-8-21 13:36 | 显示全部楼层
打算买一部玩玩
发表于 2007-8-22 23:24 | 显示全部楼层
学习中,谢谢.
发表于 2007-8-23 00:13 | 显示全部楼层
谢谢清风老大:)1
发表于 2007-8-23 00:20 | 显示全部楼层
刚入手650,学习中。。。。。。。。。。
发表于 2007-8-23 23:23 | 显示全部楼层
偶是新手,呵呵,来学习的,谢谢。
发表于 2007-8-25 00:05 | 显示全部楼层
水贴...........................
发表于 2007-8-27 10:52 | 显示全部楼层
入手680了,学习中,谢谢!!!
发表于 2007-8-28 22:16 | 显示全部楼层
厉害厉害厉害
发表于 2007-8-29 21:28 | 显示全部楼层
学习,谢谢!!!
发表于 2007-8-31 13:23 | 显示全部楼层
新手~~现在就好想有个680,可无奈身边没有人用~~以前也没用过PDA,了解的还不够多~~继续学习
发表于 2007-9-1 12:58 | 显示全部楼层
香港哪里有680卖?
发表于 2007-9-4 13:05 | 显示全部楼层
刚入手% i' c  j* I* ^. O4 F, t
学习
发表于 2007-9-9 01:28 | 显示全部楼层
要不停的学习啊~
发表于 2007-9-12 05:01 | 显示全部楼层
刚买了755,来这里学习,谢谢指教
发表于 2007-9-13 09:31 | 显示全部楼层
多亏这个帖子,否则就买不到650了~
发表于 2007-9-13 13:40 | 显示全部楼层
不错,感谢楼主 分享!!!
发表于 2007-9-13 18:06 | 显示全部楼层
很不错,顶一个!!
发表于 2007-9-13 19:07 | 显示全部楼层
好艰深的样子……新手报道!
发表于 2007-9-13 22:18 | 显示全部楼层
学习中,谢谢
发表于 2007-9-19 10:11 | 显示全部楼层
学习了。。。。。。。。。
发表于 2007-9-21 18:06 | 显示全部楼层
o o o
发表于 2007-9-21 23:51 | 显示全部楼层
认真学习
发表于 2007-9-22 16:43 | 显示全部楼层
长见识啊,不错
发表于 2007-9-23 12:05 | 显示全部楼层
好详细啊,要慢慢研究研究。。。
发表于 2007-9-23 13:59 | 显示全部楼层
学习ing
发表于 2007-9-24 11:05 | 显示全部楼层
ding!!!!1
发表于 2007-9-27 20:47 | 显示全部楼层

新手上路

刚入手680,学习中
发表于 2007-9-27 21:04 | 显示全部楼层
学习了,要是多一些680的介绍就更好了。% m: |1 S6 n0 s4 q+ I
多谢版主
发表于 2007-10-1 00:04 | 显示全部楼层
学习了
发表于 2007-10-1 00:06 | 显示全部楼层

回复 163# 的帖子

好人啊
发表于 2007-10-3 00:37 | 显示全部楼层
新人来报个道
发表于 2007-10-3 00:37 | 显示全部楼层
真是好贴啊
发表于 2007-10-3 00:37 | 显示全部楼层
长了知识了
发表于 2007-10-10 12:01 | 显示全部楼层
支持~~学习了
发表于 2007-10-10 12:01 | 显示全部楼层
支持~~学习了
发表于 2007-10-10 19:20 | 显示全部楼层
原来PLAM还有这么多学问,要好好学!!!
发表于 2007-10-13 15:03 | 显示全部楼层
沒机子,先看看,呵呵
发表于 2007-10-14 09:02 | 显示全部楼层
新人报道贴~~~~~~~
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

QQ|Archiver|手机版|小黑屋|吹友吧 ( 京ICP备05078561号 )

GMT+8, 2024-10-6 05:26 , Processed in 0.359207 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表