找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 16138|回复: 66

[Treo650] 论650的稳定性(关键字:查无此人ROM 寂夜清风软件包 NVFS DBCache)

[复制链接]
发表于 2007-3-29 21:31 | 显示全部楼层 |阅读模式
各位胖友好。偶去年入手600,今年3月22日忍不住650的高分真彩屏的诱惑,终于买下650(2200元,加上去年的treo 600要1600元,也是差不多去年一台650的价格,白赚一台600,呵呵)。
8 ]/ U1 Z; ]4 q. k! y
/ t9 U: K* ^8 P( ^; {& p! v拿到650的时候,正是单位里最忙的阶段,每天工作象在军训,到家什么都不想做,但是有了650,就难以忍受600的屏幕啦(各位600的胖友不要生气,偶对显示效果比较在意。),又没有时间一点一点的摆弄(palm的机器可是要好好折腾半个月才行啊),怎么办呢?
4 S* b6 H5 @' j/ _6 B0 d- @- @3 V- @" s
“吹友吧”是我去年来过的,当时似乎很简陋,帖子也少,顺手存下来,就没有再来过。这次从收藏夹里打开,才发现,俨然已经成了我们胖
0 @0 v; n3 j( R* H' k/ A) \* d友的宝库了。最让我感动的是两位版主(寂夜清风和色鱼,如果有遗漏,还望海涵)敬业的态度。首页的精华贴几乎囊括650的所有重要知识,里面的版面,两位版主也是尽心尽力,给大家排忧解难。
" N, K0 U) L0 }7 o+ V4 x" q5 V得了,我也不去找软件了,就直接刷了高分图标的查无版ROM,然后按照寂版的教程把他的软件包一股脑的扔进我的650。
; ~: j: u- E+ D2 S1 M  E$ Q, Z2 Z! H( \7 w8 y- E! S
罗里八嗦说了一堆和标题无关的话(坛子里是不是按字数给稿酬啊?呵呵。),是想表达对两位版主和各位在坛子里热心助人的朋友的感谢,我能在短短几天就把650摆弄好,你们是我最需要感谢的人。
- @, l- r& Q. R5 m, U% R7 Q, n: L2 o/ u
但不可否认的,寂版的软件包可能还是有一些软件冲突,也许在有的机器上没问题,但从我严格按照寂版的操作步骤来做的情况来看,难免还是会发生系统重启的情况。现将崩溃时reset doctor的记录汇报如下,供各位高手参考:
# z5 u; y- J2 {( A# {  Q
9 n6 u$ @  r5 e5 p! X( p. Z, X07-3-28 18:19   system crash "MemoryMgr.c Line:3842,Nil Ptr"
( u# [3 D% q& ]- [8 Q6 T9 Z5 n  ?% z0 l# l07-3-28 23:49 system crash while running 掌易 "Field68K.c,Line:247,form object(field) not found"
3 k& {$ y6 x, {) L* i& E07-3-28 23:54 system crash while running butler "preferences.c,Line:263,pref db open error"
5 S% q7 z8 E1 y- Y2 z- f& \07-3-29 0:01 system crash while running 掌易 "Field68K.c,Line:247,form object(field) not found"
5 c- j; h3 T: b2 ]6 W" g* @8 o( m  n7 Y; p) J, s& @: w7 Y
需要说明的是,我装的是寂版27日夜里发布的2.47.1(掌易用上了巨硬的字库)。而在出错的期间,我的屏幕右下角总是有输入状态的提示符(“中”/“英”两字),也不知道在哪里设置消除,最后,没办法,用rscbackup恢复备份。没有右下角的提示标志了,然后退出了zlauncher,直接用系统launcher,系统今天一天没有发生重启。7 }8 D- H+ \# Q: Q. O" e4 M! e: q

( f6 ~4 s' q  I  F  X' R6 @, [除了上面写的这些崩溃日志,我前两天装了寂版的2.47,重启更加频繁(也许是我装好后,试各个软件导致配置文件过大?),因为机器重做,reset doctor的日志丢失,也没办法留下记录了。但是,我印象中,重启并非固定在哪个程序运行时,发生的很随机,甚至按电话键点亮屏幕都会重启。" T* T, X' N6 A! Q8 R/ x% V5 o, B% e8 e# B
" `$ ~+ R5 Q" J( R0 ^- x
还有一点疑问就是,大家的DBCache是不是一直都稳定在一个数值?我的650重启后,会在11M左右,但用了一段时间后,基本上就剩下2-3MB了,特别是用rscbackup后,下降最为明显。寂版如果不太忙,是不是可以帮我诊断一下?(我的机器除了您的软件包,自己仅装了adarian money 3.6,daynotez 2.9.1和一个fieldplus,应该不算太多吧。)
6 z: n( r* A+ V. h- e- U
! o7 E% C, _. ^' h+ v) z/ f3 x9 X0 T为了解决这个困扰我,也困扰坛里各位朋友的问题,我在网上四处谷歌了一番,结果在reset doctor的帮助文件里发现了一个线索,关于NVFS结构和系统崩溃的论述(http://www.hobbyistsoftware.com/InsideYourTreo/cache-crash.php),标题是“How to fix a Cache Crash 如何修复cache崩溃”,写得非常好,文字简洁,条理清晰。今天中午,我用午休的时间(难得啊,军训还有午休)翻译了一遍,放在这里,供各位参考,也算是我在吹友吧里潜水多日,给大家的一个小小的礼物吧。
3 ?( i/ c- P4 m6 {* Z; l5 r2 Z
' f# `1 X+ C' Q' }5 Y8 g本来还想按照文中叙述的方法找到各个软件测试一下,寂版软件包里到底是哪个软件导致系统不稳定,但今天实在太累了,只有改天再试。如果有朋友等不及,也可以按照文章中的步骤测试一下,大家一起讨论,让寂版的软件包“更快、更高、更强”!/ y( A* V3 N8 j) n

& @9 s/ G% Q6 y文章贴在二楼,翻译仓促,可能有些字句没有斟酌,但基本意思是没有问题的。原文和图大家可以参看http://www.hobbyistsoftware.com/InsideYourTreo/cache-crash.php
8 f* _6 h% T2 D4 F, ~/ T; O' @' U' G, h6 n  i: `7 S, q/ s! ?1 u
[ 本帖最后由 anil 于 2007-3-29 21:48 编辑 ]

评分

参与人数 1威望 +10 收起 理由
寂夜清风 + 10 精品文章

查看全部评分

 楼主| 发表于 2007-3-29 21:34 | 显示全部楼层
如何修复cache崩溃( \# m/ A& t2 @: l

& \9 B; W; I. U" X6 U% _http://www.hobbyistsoftware.com/InsideYourTreo/cache-crash.php! L; b9 m& t# O, y/ h* G
* s. u) t. x/ c3 a" g, o1 Q$ a
不稳定的palm会让你疯狂。更郁闷的是你无法确定究竟哪个程序引发了这个问题。5 h' H* W  X2 q$ r6 J
如果你遇见的崩溃是随机的,看起来并非和某个特定的动作相关,那么这篇文章应该能帮助你。; Q/ ?$ K' i2 m" o: a6 i! [( S
我会解释其中一部分这样的崩溃是来自哪里,同时,给你一些如何查找它们的线索。
5 F: p% V# e6 m5 ?这种类型的崩溃适用于所有使用了NVFS(non-volatile file system非挥发性内存系统)内存的palm设备。包括650以上的treo、life drve、tungsten E2、T5、Tungsten X 和 Zire Z22,今后可能有更多这样的掌机问世。
3 E4 L6 p2 K' _; p0 \& p7 |  b8 m4 X! R* E3 N
我们会用“Palm Internals”来观察treo的内部情况,用“Reset Doctor”来管理这些崩溃,同时有助于这些崩溃发生的更频繁:)。通过强制崩溃的频繁发生,更容易的制造这些崩溃,你可以更快的判断问题出在哪里。
. I' W3 q5 h/ t: ^) `. S2 J2 J# r1 l, G0 G
快速cache翻新
3 W' V! y- ~8 R" c我以treo 650为例,虽然各机型的存储容量不同,但适用于所有用NVFS内存的设备。
/ j7 u! D9 z( d0 n8 _Treo 650宣称有32MB(23MB用户可用)的内存,但这并非表示你可以用到这么多内存。) v$ s6 h  e* V9 S% ~" J: `
你不可能用23MB内存来运行一个应用程序。
1 M" ?7 I2 L( S8 D' p运行中的应用程序无法抓取整块内存用来运算。  s' A) r* G) _, k$ e8 K
这和你的treo 600的内存是完全不同的。9 N( O# T4 l) Q! t
实际上,650的内存更象是一块内建的32MB SD卡,我下面将谈到NVFS内存的这种情况。
( u5 Z& Y8 G; @5 ~; B! |. t+ b1 @) u7 U
Palm不能在SD卡中运行程序,你必需把程序拷入RAM,在RAM中运行(你的launcher为你做了这些事,如果没有,那么get initiate(译者注:这句偶翻译不好,请达人指教))。你可能已经注意到从卡上运行程序会有延迟,那是你的launcher正在把程序拷入RAM。
) E1 P  \" \+ c! w# f) k' H8 j3 D+ S' ~, q# S
NVFS内存有同样的限制。你不能在NVFS内存上运行程序,系统也不能用它作为工作内存来进行运算等工作。为了做运算等工作,palm有一些正常的内存,在650上,大约是12MB,这就是我们所说的DBCache。$ u* n; j% \2 P/ G3 v

5 {4 Y7 c6 S6 c$ m3 G你设备上运行的程序认为它们可以拥有和处理的是一台有23MB内存的正常设备。它们希望可以存取数据库、创建数据库和使用这些内存。这意味着系统必需做一些设定的基础工作,在需要的时候动态的调用数据库和程序进入DBCache。当然,你不能把一夸特东西装到一品特的锅里,同样,23MB的NVFS和仅12MB的DBCache,DBCache必然会被装满。这时,系统不得不清理一些它认为不再需要的数据,这样就会导致错误。
1 F) W1 ?% q4 _& F; Y8 i. B- o! {! G" `! {! }$ i1 k
在这里,你可以了解更多NVFS和DBCache的细节。
5 [) T: a7 @) f# J: e+ z+ N  k  f0 k5 ?# M5 G: j, U
这样的确相当复杂,但Palm使用这样的结构有几个重要的原因。. X8 N3 H% D: T3 m
; Z/ b$ m! [; L( o. R& r
1、就象SD卡,你的NVFS内存不需要用电力保存数据,这意味着电池耗尽也不会丢失数据。
* `7 c, i2 f- W# M2、既然NVFS内存不用电,那么,你的palm就可以有更长的电池续航能力。
  `# f+ Z6 Q& y/ y8 }. j3 F8 G3、NVFS内存价格便宜。这使得我们的palm可以用较低的价格获得较多的内存,坦白的说,我很惊奇厂家为什么没有提供给我们1G内存的设备。(译者:我考,650也太小气了吧!)
# K/ `1 `0 R$ V! g7 ^5 S# S+ c/ I' s# p9 X# ^! S  q+ r- @. y( F
哪里出错了?5 x9 q8 v) A  O) |- x) R( W# Y
我在上次的文章《公告、后台程序和快速上网的treo》中,我解释了程序是如何注册系统通告,当特定的事件发生时,操作系统调用该程序,给它处理数据的机会。  b: E/ \0 r6 Z) p8 h
! X& Q7 [! e% ~( h0 z
下面是它出错的步骤:( X- s8 ^0 _: x# H2 o
1、一个程序(这里我们称呼它为“糟糕程序”)注册“hvch”通告,这是一个由任意一个虚拟字符被处理时发出的通告。你随时可能获得虚拟字符,比如按下键盘上的一个键、电池达到一定的容量、一个警报消除等等。
. k0 J# D- G$ N/ Y2、“糟糕程序”关心的是速度,所以它注册了“the fast way绿色通道”。这意味着它告诉系统当通告发生时,请系统去某个特定的内存地址调用处理函数。9 h  t4 e, `: {; b! ^0 l
3、“糟糕程序”一般都是几年前写的,当时它们的作者并不了解NVFS,所以,程序不会再做任何其它事,它开始坐等通告的发生。1 W/ t" N) [# _$ w2 V* ^
4、在你阅读文档、玩游戏等的前几个小时里,程序会工作的很正常。- m- ^) z1 K2 M1 z' U
5、到了某个临界点时,DBCache装满了。; W# k& z& f3 }6 l7 w6 z
6、系统开始察看DBCache,它高兴的发现没有任何程序会用到这个“糟糕程序”,于是,系统把所有改动拷贝进入NVFS,然后在DBCache里面把它删除。: c: y% G0 M4 C0 u, N6 ^
7、几乎与此同时,系统获得了一个虚拟字符,它开始试图去那个通告所注册的内存地址,运行相应的代码。比如说现在这个内存地址变成了你正在阅读的一个网页的代码,于是,系统崩溃了。) n5 `8 Q' i! |& P$ U: P, F& ?
如果这时,你查看你的“崩溃日志”,你会看见一个类似“Emul68KMain.c, Line:403, illegal instruction xxxx at address xxxxxxxx”的错误提示信息。" d/ w) c' i% t. u! u
现在编写的大部分程序都已经了解的NVFS的特性,所以,在上面第3步,它们会锁住自己的代码,禁止系统把它们从DBCache中清除出去。
: p, J' {2 ?5 F  {' [
, w7 b3 G: ~; V: ZCache崩溃,你遇见过么?, V- G8 @/ Y) D* C+ T4 q( P
DBCache崩溃的确很难弄清楚。它有可能引起、也有可能不引起上表所列的错误,你也永远无法知道它发生的时间。
) G1 C2 K, q* ^) @, w" R1 i/ g1 C一个简单的检查方法是使用“Reset Doctor”。它可以让你按一个键来清除你的DBCache。如果这样引起了一次崩溃(或者在你清除DBCache后不久发生崩溃),那么,你的系统就是有这个cache崩溃问题。* m( ?  @" N. z$ p/ V. S, }/ \
“Reset Doctor”也可以让你自动清除DBCache来保持一定量的空闲内存。一个程序退出和另一个程序启动时,如果必要,“Reset Doctor”会清空DBCache。这意味着DBCache清理未必会在一个程序实际被打开时发生(这是另一件可能导致故障的操作)。更重要的是,“Reset Doctor”可以在它清除DBCache和系统重启时保存信息至日志文件。如果你的日志文件显示崩溃是在DBCache被清除后不久发生的,那么,这是系统有cache崩溃问题的又一信号。7 k% ]- F1 K' i1 k& `
9 M  |  a' W3 J; z7 }8 C" N
Cache崩溃:你可以做什么
& j8 `. C, _  e; W9 z我们能很方便的找到大多数注册为“the fast way绿色通道”通告的程序,同时也很方便能判断出它们是否锁定了自己。下面是做法:/ P) d7 ~# |. M& x6 \
1)运行“Palm Internals” 点击“Notif”按钮,你可以看见如下列表:
% v1 o8 [! u( X) w*如果系统的状态相当差——甚至运行“Palm Internals”都会导致cache被清空、系统重启,那么你必须把你怀疑有问题的程序移到卡里,手动重启机器,然后再次运行“Palm Internals”。如果可以正常运行,你可以逐步将这些程序移回内存同时注意观察是否有问题。/ ]6 U+ R1 [5 d  L
2)检查这个列表,找到其中在它们注册后含有'm68k xxxx DBCache'字样的程序(这些是那些注册为“the fast way绿色通道”的程序)。我的列表中会有“butler”和其他一些“糟糕程序”。这些就是你的怀疑对象。
1 b/ T8 @8 Y9 k. K3)选择menu-locked DBs,这可以显示哪些数据库被锁定。( @5 Y, F3 E# l; M1 s2 P
4)检查你的“怀疑列表”中的每一个程序。如果其中一个程序没有锁定自己的源代码,那么可能它就是导致出错的原因。我这里,“butler”已经锁定,而另外一个“糟糕程序”则没有。
+ b8 ]" N2 Y7 ^. y$ m: A3 _" j5)选择menu-protected DBs。列出哪个数据库做了保护,不被删除。
% {$ r3 y% X# u% _6)检查你的“怀疑列表”中的每一个程序。这个检查相对不太重要,但程序应该能保护自己从而能知道系统什么时候会再次删除它们。“butler”被保护,另外一个“糟糕程序”则没有。* }/ u% L/ M* A/ I

1 B" }7 S6 I+ S' Z你现在已经有了风险程序的列表,尝试把它们删除(或者移到卡里)。如果走运的话,你的palm就会稳定。
" X/ u0 t1 c1 c3 F一旦你弄清除这些风险程序,你可以不再运行它们,或者用类似“Resco Locker”的程序来锁定它。一个附加的好处是:你现在已经确切知道哪个程序有风险,你可以不必再锁定其他的程序!过度使用“Resco Locker”有可能迅速填满你的cache,而且看起来会导致它自身出现问题。8 f6 w5 c2 P5 P! P) {

& _1 A# Q4 {8 r- v# B; O' `这样做容易么?
' A1 R8 p; v6 j' y) Y希望如此!不幸的是,还有一些事会发生。' u1 B0 G0 p( E1 }3 p
你的“怀疑列表”并不十分完整。一些程序不使用通告直接潜入你的系统。它可以在后台做任何处理,并且不会显示在通告列表,你也就无法把它加入怀疑名单里。“LudusP”就是这样一个例子,它虽然是潜入系统,但我确信它给自己加上了保护。: Z5 G; T  o5 u; v
还有一些程序仅在特定环境下才会注册通告。举例来说,一个程序可能为与通告相关的电话注册了“the slow way慢速通道”,但当电话正在进行时,它为关键按键注册了“the fast way绿色通道”。' P9 K; i, r& |
% K' m8 R% i7 e* b8 @; ]% X' d
还有么?谁知道呢!palm总会用一些特殊的方式让我们吃惊……
; H- e6 R8 V$ k$ Y4 b而且,这也是我们期待的……(译者:对于崩溃,我可一点都不期待!)# y( \9 Z0 K/ h! K7 D- @) w
% s9 L) ~: @- m1 X4 k8 q/ d3 `
和palm和谐相处并不容易,但对于开发者来说,总有很多快乐的事可以做。# J1 B1 L! Y/ O" [! v' Z- d. @# f

# n; r) P6 L: T/ N一个避免锁定代码的技巧是把它拷入一些特征内存。这是操作系统可以识别需要留下来的正常内存。2 P0 t- N# D1 B5 H+ {$ d( K2 {" Q2 v
这个技术被Daniel Grobe Sachs,可能还有其他人所采用。& ?2 I7 u3 y* c5 T2 F
不幸的是,我不知道有什么办法能让你检查哪个程序运用了这个技术。& J( }7 s$ [# |/ s8 s( f7 \7 P

! T, D1 i9 T6 [* `[ 本帖最后由 anil 于 2007-3-29 21:55 编辑 ]

评分

参与人数 1威望 +20 收起 理由
小洋葱 + 20 支持学习外国先进技术!

查看全部评分

发表于 2007-3-29 21:55 | 显示全部楼层
支持LZ,学习了
发表于 2007-3-29 21:56 | 显示全部楼层
又一个研究技术的人,哈哈。。。
发表于 2007-3-30 00:06 | 显示全部楼层
好多字。慢慢看。:1
 楼主| 发表于 2007-3-30 21:52 | 显示全部楼层
失望啊,没人讨论技术。白忙半天……
发表于 2007-3-30 23:07 | 显示全部楼层
我装reset doctor也就是为了方便查看log,不过现在懒的搞了。感觉650个体差异太大,好好的程序,指不定偏偏就认准我的机器重启。罢了,顺手再找个同类的软件代替解决
发表于 2007-3-30 23:08 | 显示全部楼层
其实这些根本无法决定机器的真正稳定性,就算你的dbcache再大,没有好的搭配和使用习惯,照样不行,所以根本就是要对机器了解,熟悉磨合机器,这些都比一门心思的研究dbcache更有用。
发表于 2007-3-31 07:17 | 显示全部楼层
好多字啊,看不懂。如果是zlauncher不稳定,你可以换换嘛。不用zlauncher。% D8 L. q5 h' _$ i7 i
装清风的套件,我的经验是,先卸载zlauncher,然后自己重新安装一下zlauncher就好了。我也不知道为什么。
发表于 2007-3-31 12:04 | 显示全部楼层
下到650上慢慢看
$ P" n: e! b8 h! B& {/ D. C1 z' S# O9 l/ l$ z$ i) L3 x8 ^
我以前也用软件集成版,每天怎么也要启2-3次,也找不到问题在哪,dbcache也在10左右,最后决定自己装,虽然软件少点,但是真的稳定多了,色鱼斑竹说的对呀
 楼主| 发表于 2007-3-31 17:36 | 显示全部楼层
经过几天的摸索,基本上解决了我的650重启的问题,:11" /> :11" /> 再来看看帖子,似乎大家都还没有一致的明确的意见,我把我解决的方法写下来,希望大家验证和指导。
, K2 R3 R/ a$ E- r  \4 i1、2楼是翻译hobbyistsoftware上的一篇文章,看过之后,很受启发,不会再觉得重启很神秘,而且指明了查找问题的方向。建议大家看看(当然,翻译的很仓促,一些术语也没有统一的翻译,如果大家英文可以的话,建议直接看原文。不过,俺的译文也基本可以说明清楚问题的。
9 C" Q8 g8 {+ b
; w1 d1 `# l. {: n* _0 x/ k5 F2、用简短的几句话说明650重启的基本原因:
0 _3 G9 U3 b. R    1)NVFS:NVFS内存相当于机内的SD卡,palm不能在NVFS上运行程序(正如不能在SD上运行一样),但优点是a、断电后不会丢失数据 b、价格便宜)
: l+ o' K, m( {) Y* x7 U* ~/ \    2)DBCache:650用来运行程序的正常的内存,约12M。运行程序时,650将NVFS上的软件拷入DBCache方能运行和写入数据;
& E2 c5 E5 i2 t( y4 f1 \4 g    3)两者的联系:2004年10月前的软件(”2004年10月“这个时间出自rlock的帮助文件),不了解NVFS内存特点,将用户可用的23M 用户NVFS内存当作正常内存来用,这时候,650运用自身的调用机制把数据在23M的NVFS和12M的DBCache中调进调出,以使程序正常运行;* R& p* \  Y$ q7 b' c/ P$ [+ D' e* P
    4)后台程序:一直在后台运行,代码放在内存中等待系统调用,如果被特定的条件激发(如butler的闹铃以时间为激发条件、callrec以“音量确认键”按下为激发条件),则系统会到该程序指定的内存地址位置调用该程序;
2 ]7 o8 u( z" g& Q, o. r    5)重启的原因:早期的后台程序没有对程序自身设定锁定和保护,当系统在NVFS和DBCache之间调进调出程序的时候,因DBCache小于NVFS内存量,难免会发生DBCache不足的情况,这时,palm会清理一部分DBCache中它认为无用的数据,而现在的后台程序都会对自己的内存中的代码和数据进行锁定和保护(即通知palm不得将其清理掉),早期的后台程序没有这样的机制,会被清理,这时,当激活条件发生时,palm去该程序指定的地址运行代码(这个代码已被清除,换成了你看的网页、图片或者其他代码了),机器就重启了。' \, |* \+ C9 r5 {+ d3 t
OK,原因就是这样,看来写的不够简短啊…… 0 v8 f9 l+ \- C
/ d$ w2 T/ z( Z0 q; I" ]& Z6 t
3、解决方案:, L. t( v- I2 o9 j8 x& ]5 I
很简单。! A8 n! c5 Z8 ^
装上RLOCK(免费软件,大家可以在坛里找一下,resco的官网上好像也有),运行。找att列(属性列)中所有有“!”的程序(表示是后台程序),全部点选,然后点击lock。OK!
) Y- L8 u$ r& O8 D6 y# y8 B/ }# C- D6 w
4、一点说明:7 [3 ?; t% l- d) A5 W# Z
我在我的机器上已经试验成功,不知道是不是普遍现象,如果哪位朋友受重启的困扰,可以试一下,如果有效,不妨在帖子里写一下。如果有问题,也请指出,谢谢。1 `9 ?( w0 b  H; m
ps:! Q$ A# z2 v8 y8 [
我装的寂版的2.47.1,共锁了中文伴侣、unistall_manager、snappermail、pocketIME、KB Lightsoff、contactmate、callrec、bugme2004,(zlauncher太大了,没锁,但我自己没有用zlauncher),另外自己加装的软件中,锁定了adarian money、fieldplus。原来我的DBCache降低到只有1M多时,运行blazer必定重启,现在机器会提示内存不足,点击OK后,机器自动清理内存,然后blazer就能运行起来。退出blazer后,DBCache还能恢复很多。
; C" w+ y6 R/ U4 v' g
$ s9 r# o* p. f最后,谢谢bob001tracey716 (色鱼)、xyz1937 (风林火山!) 、Seekitycatsaudi 的指导和回复!
) m7 |- o0 Y8 w
- c' y  A1 ?6 b[ 本帖最后由 anil 于 2007-3-31 17:39 编辑 ]
发表于 2007-3-31 19:06 | 显示全部楼层
正在看....: U0 A) M/ [4 N8 j

# `: i  G" v  ?& A; t# l目前这边新手朋友太多了...就需要楼主这样爱琢磨的朋友...
, h: G( X* L2 x3 F9 k6 @) ]% H. u. f( ~
下来慢慢看看..看是不是有特别的原来没的留意的地方
发表于 2007-3-31 19:17 | 显示全部楼层
嗯...应该 说是PALM在把硬件换到目前的结构的时候,有很多地方没处理好,
* }  {- V' p' H" v, v3 z8 o+ x5 s
" n( |: Q* m; T  {# @$ C首先PALM没有留上足够的DBCACHE/NVFS空间,尽管从硬件上讲这很便宜.但是PALM自己 出于商业的考虑,故意搞得很小..# L4 k- c" A0 r- E$ J8 a4 E4 P3 K

  b2 x, {3 `& }, ^, \7 N其次PALM系统在NVFS的管理方面没有真正完善,尤其是原来的一些兼容性程序没有能很好地兼容于目前的管理方式,很容易造成DBCACHE清理时的冲突,从而引起崩溃...- V& l0 T' n, x: j5 K& }3 K+ d

$ B) S5 p. B" V) I- y. i0 e用RLOCK的方式可以锁住最容易引起崩溃的程序,但是不建议把所有发现的程序都LOCK,因为如果那样的话系统也会出问题(DBCACHE太小了)...8 E0 h. K* P$ G8 I7 u2 W' o3 ^

$ |4 V' o) v' k& H) l  P7 V楼主容易重启的原因其一是因为掌易的问题...掌易程序这两天更新了,应该会好很多..
发表于 2007-3-31 19:34 | 显示全部楼层

好东西

楼主的分享和钻研精神非常值得尊敬.
 楼主| 发表于 2007-3-31 21:32 | 显示全部楼层
原帖由 tracey716 于 2007-3-30 23:08 发表
# l3 F1 |7 S: H3 W其实这些根本无法决定机器的真正稳定性,就算你的dbcache再大,没有好的搭配和使用习惯,照样不行,所以根本就是要对机器了解,熟悉磨合机器,这些都比一门心思的研究dbcache更有用。

7 e: @$ e$ t: c# S# _3 s3 S
# l4 `# p2 Q$ J向色版小进一言,您的这些话,不利于大家研究的热情啊。
/ U2 G# O* E. y5 d; _5 a
/ d( J, r  m3 z4 o+ i——没有好的搭配和使用习惯,照样不行" D$ y8 v/ e/ \* ^# i
您没有看见别人怎么使用,可不能就认为别人用机器都是乱搭一气。虽然,我早就知道色版用过的各类手机可以论百计,不过,偶也是一路用着siemens 6688i/ipaq 1940/treo 600/N73/treo 650(才开始用,呵呵)过来的,而且长期从事软件工作,通过了系统分析师考试,不能说俺们就一根筋的在研究dbcache,不懂软件搭配吧。  z/ c5 m# c3 D! [! J% p
" F- a, G/ f  B8 p8 S
——这些都比一门心思的研究dbcache更有用
4 `! \+ C2 Q. G1 R0 U) q5 e# I' a/ O7 S我不是一门心思要研究dbcache的大小,我是想解决系统崩溃的症结所在,而这个与dbcache有密切的关系。
  e  @- R) w* h) w- |" N
9 s1 U9 Q8 ?( i7 q6 _3 `9 W& {; a作为版主,应该高兴看见版里有探讨技术的帖子啊。
: W  B( Z1 C3 p/ \4 S9 e
( R9 c2 R  Y/ o' H$ {1 V谢谢寂版加的威望,也谢谢你仔细看了我的帖子。(另外,说明一下,我用rlock锁住的10个,都是没有锁定属性的后台程序(除了adarian money,因为是账本,格外小心一点),总共锁了2M多一点。的确是偷懒了,没有一个一个去独立锁住尝试。)
8 N3 G5 i1 V# Y' ?' k, j8 ~谢谢aswindasrain的鼓励。* ~7 B- C- f+ L, G+ \2 O+ Y
- e) ~. F7 \3 `) c1 ~
虽然有点小意见,还是要感谢色版不断的送给大家的各类大餐,问候一句:您辛苦了!
: M( s$ F4 @* U+ X  J  j: Q  R1 \* s
- `. i! }+ w) n4 v! r+ ]  ?[ 本帖最后由 anil 于 2007-3-31 21:39 编辑 ]
发表于 2007-4-1 22:09 | 显示全部楼层

果然有高手

希望坛子里学软件的人越多越好。想用好任何东西搞清楚原理是根本。
发表于 2007-4-1 22:11 | 显示全部楼层
我的就挺稳定的,虽然拿回来后没刷过
发表于 2007-4-1 23:00 | 显示全部楼层
色鱼 :1
发表于 2007-4-2 00:28 | 显示全部楼层
怕是遇到高手了 学习先。
发表于 2007-4-2 02:00 | 显示全部楼层
其实色鱼的看法与楼主并没有不同...( y$ N" E3 p3 {: Y# d
# G1 Y. r$ g( `: ^
基本的方向都是:Treo 这个机器是需要花点时间和力气琢磨的...
7 o. Y* P4 L' }) H1 q+ @: q; J3 G2 i& E. Y  ?# ^9 `
从技术的角度上讲有一些方法可以提高稳定性,尤其是对于PALM系统基础上有很多改变的TREO650来说,很多人会非常奇怪为什么比600的稳定性下降那么多,技术上讲最简单的原因和方法就是楼主说的道理.
7 ]" C9 A6 x4 t; ?; f
. m# T: \8 l2 m# B但是由于TREO650设计上硬件的局限非常多,所以从使用的角度讲也有很多可以提升的..
' K1 ?, ^! a% x- i+ O/ h7 U$ `, f: U9 X' h5 j2 q
不过可能色鱼的话放在这个贴子里说出来可能会让大家觉得影响了讨论的气氛..所以我准备回头把鱼的贴子分割出来先
发表于 2007-4-2 08:54 | 显示全部楼层
8是把鱼的贴了分割出去,而是要把鱼的头分割下来烧点“鱼头汤”喝喝,大家在这儿讨论了这么久,口干叻……:1
发表于 2007-4-2 09:32 | 显示全部楼层
2楼翻译的文章不错啊!特别是对重启的原因介绍得很详细。# K% \# C6 }# w  j

) q2 M  ~& B; X- }: P% h不过,文章中提到最根本的解决方法似乎是运行“Palm Internals”来找出风险程序,并不再运行它们。0 m! p- z0 k. t

  X$ f: Q5 B% j- q! ?8 rResco Locker也是列出风险程序的列表,并且比“Palm Internals”更进一步,可以锁定这些程序。
4 @) ]: Q5 z; V- u7 `1 }1 d* z3 F/ ^9 x- \# @3 a1 a
但Resco Locker的问题在于它的风险程序列表比较粗陋,它只能显示后台运行的程序,而并不知道哪些程序的数据库没有锁定。7 o% p1 f* t( X9 X* I

7 ]6 Q/ T' Z. ~* {我们常常会用它锁定一些不需要锁定的程序,而造成有限的DBcache空间的浪费。
发表于 2007-4-2 10:21 | 显示全部楼层
我现在的做法是基本不用Resco Locker。
/ X) L2 z/ D" ~1 o" x  k, @" I" f3 U. m5 D  T0 z8 M* w2 D: A
软件环境:掌易+巨硬拼音码表+中文伴侣+callfilter1.32+Hi-Launcher3.3,系统非常稳定。
发表于 2007-4-2 13:05 | 显示全部楼层
学习了,
! i3 R# P- \) w庆幸自己的机器比较稳定
发表于 2007-5-22 16:52 | 显示全部楼层
买新机的时候爱研究装软件,
1 A5 C0 W: Q' n, Y软件装完稳定使用了,0 T5 G' ^/ ^$ ~

, z8 c; \8 p8 j) F- f% u再看见新软件也懒得装了。0 O) P1 @3 P: T: e' g: j1 n! j
3 X! Z  [6 ^; ?" D0 Y
为了更得上潮流,
# P$ N% I, ~0 D! @9 r4 M  t  ~& k我还是得经常换换新机玩
发表于 2007-5-22 18:16 | 显示全部楼层
没有耐心看完,复制到手机里面,有空的时候看。呵
发表于 2007-5-23 08:27 | 显示全部楼层
和palm和谐相处并不容易啊!
发表于 2007-7-1 16:01 | 显示全部楼层
学习,这篇文章值得大家好好学习
发表于 2007-7-30 10:06 | 显示全部楼层
学习了,不错不错,俺机器因为试用的东西很多,经常重启。搞到后来不知道是什么软件造成的,连DB清理都重新启动,刚才把感叹号一口气全部锁定,好像DB清理不重启了,慢慢研究中,呵呵
发表于 2007-7-30 11:51 | 显示全部楼层
学习学习,前两天删除了rlock,因为不知该锁哪些东东,看了还是装上好。
发表于 2007-8-2 08:24 | 显示全部楼层
没用过lock,只是偶然performances.c崩溃,reset doctor的自动备份解救.
发表于 2007-8-2 10:46 | 显示全部楼层
呵呵,都挺钻研的啊
发表于 2007-8-2 10:56 | 显示全部楼层
配上几张MM图看起来会好点
发表于 2007-8-2 11:01 | 显示全部楼层
楼主赞一个!
发表于 2007-8-12 20:23 | 显示全部楼层
学习了,不得不佩服你
发表于 2007-8-12 21:40 | 显示全部楼层
不错,不错,支持搂住我也是最近刚加入到treo650,从一开始的515>tt1>tg50>tt2>tt3,期间因朋友接触过的机型也很多,最后tt3不幸丢失四年的感情~~555最后加入650,经过一个星期折腾,也装过寂寞版主的软件包,但最后没有用,主要是拿来熟悉650的功能,在此谢谢寂寞老大,让我在短时间内就体会到650的方便与快捷,其实对于系统稳定性而言,我更多的是在软件搭配试用结果上,而没有像搂主这样研究不稳定的过程,但是研究过程能让我们找到更好的结果,不是吗。( z& y# ^- k/ ^/ o

4 i' _) j; s' ]2 K8 b: g     我个人的使用经验是,不装破解或者少装破解软件,少装功能重复的软件,看个人需要了,比如我觉得系统自带的软件够用,我绝对不会去装一个比系统自带软件的功能多的,不追新,够用稳定就足够了,对于DA我只装一个,够用就可以,其实palm软件非常多,但重复功能太多,需要找到适合自己的稳定的,所以要折腾,其实很简单,估计这些凡是老胖熟悉的了,但希望对新人有用。5 J  L; n) E5 M8 k
' t# \0 v$ Z& c3 [  s8 ~
     之所以没有用寂寞老大的软件包,是我觉得重复功能太多,很多对我个人没必要,这里不是说寂寞老大的软件包不好,对于像没有时间折腾的胖友是很有帮助的,我也是因为寂寞老大的软件包才很块熟悉650的功能,查无的ROM我也刷了,因为个人觉得很适合我,在这之前我已经参考下的到的ROM,也花了点时间研究,我之前的机子,我都要刷的,主要也是一些个人觉得没用的,重复功能的,因为有现成的,就拿来用了,但是需要有一个适合稳定的系统,的确是需要折腾 ,开始使用palm的时候我有一个月天天都在折腾,一天要硬起n次,最后精简出自己需要稳定的一套来,这些估计也是废话了,呵呵
2 ]- J5 {  E) E8 C$ E3 j9 \
0 c& ?# I( u& a; v' P# d; E    最后罗索几句,本人是专业潜水员,像我这类型还是比较多的,不要见怪。因为看了搂住的帖子,很值得佩服,因为650的不完美,所以我们要讨论,互相交流,所谓我为人人,人人为我,真体现了palm的精髓- k8 h2 r$ P* }) g; M, A. x

+ F9 l& R! ~) M/ Z- a) h[ 本帖最后由 smasher 于 2007-8-12 21:53 编辑 ]
发表于 2007-8-13 15:21 | 显示全部楼层
兄弟,那多的内容,你要他来这里要干什么呀,以后写的简单一点好不好
发表于 2007-8-13 16:10 | 显示全部楼层
慢慢嚼!
发表于 2007-8-14 22:12 | 显示全部楼层
嗯,很值得探讨。
7 t  r7 \* K+ h+ L  v/ O3 crlock以前我也用了。那是在看了一片“四招打造最稳定650”(标题大概如此)的文章后装入了我的系统,但没见有什么好处。我的650本来较为稳定,装了后反而不稳,原因是我用了文中提到的DBCacheTool的清理DB的软件,设置了低于8M的DB空间后便自动清理,结果造成相当严重的后果:电话功能不稳定了,每每有电话冲进来就重启,害得我每次事后都向人解释:手机有问题。丢人,所以干脆把DBCacheTool和Rlck都删除了。
4 G0 @/ z# [8 s# N6 e
, I& E% S) V- W6 ^  z! p+ H, ]现在回头想想,我锁的东西不少了(而且至今不明白该锁定哪些),但清理DB后电话功能总有问题,也许还有一个原因是我刷的rom是自己在查无版本的基础上再精减的,可能动了不该动的,造成了我的650清理DB后的问题。4 c& t9 o$ ?3 Z; b
8 Q! C# y3 n3 e5 e. X) F
部分同意色版的意见:就是每一部650可能都不一样,个体差异造成的问题千奇百怪,不具普遍性的问题确实难以找出病因,所以探讨起来有困难。这也是大家都把机子盘得稳定了就懒得再动的原因吧,并非大家都愿意闭门造车。
发表于 2007-8-15 15:20 | 显示全部楼层
我的650在刷了一个的简化版ROM——就是去掉了“欢迎”和“教程”这两个“浪费内存”的东东,结果到现在无法开启电话,一真提示“电力不足无法启动电话程序”
% c3 M! n' d4 ?% E% k郁闷中!现在除打不开电话外,还直是很稳定!!!
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

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

GMT+8, 2025-4-20 05:17 , Processed in 0.719368 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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