|
Palm OS Pedia ——一本有关Palm的小手册 新手可用 系统介绍以及软件介绍
原发于tompda
这是一本小手册
内容:
ZDic格式:如果你要查询什么的话,直接输个关键词即可
包含 CreatorID不完全列表
文件不完全列表
各种软件的不完全说明
iSilo/Plucker格式 : 分类讨论了系统和软件
内含常见问题FAQ
部分内容摘录:
Palm OS系统简介一:For OS 1-5.2主要硬件结构:1:一块NOR Flash,用于储存Palm OS2:一块SDRAM,分为
存储堆(Storage Heap)用于储存用户程序和数据
动态内存堆(Dynamic Heap)用于储存程序执行中的临时数据3:一个CPU,基于68K或者ARM4:主板5:触摸屏6:各种外接设备进程结构:
OS5是个抢占式多进程系统,OS1-4是个单进程的系统。但是OS5的多进程结构是对用户模式封锁的,一般方法无法编写程序。可以当作单线程处理。Palm OS是消息驱动的,和Windows一样。简单的说,你做了一件事(譬如点击某处),系统知道了这件事,然后向正在进行的进程发出一个通知(某某某地方发生了一次点击事件),进程有自己的一个消息队列,会一个一个处理,如果前面堆积了大量消息没有处理或正在处理一个消息,那么就表现为没有响应;如果处理了,就做出响应反应。一般状态下,退出一个进程的时候,资源全部释放,不存在后台驻留的问题(专门设计的除外),所以也没有什么查看后台进程的方法。
OS1-4使用的是Motorola 68000(68K)系列处理器。OS5使用的是ARM处理器。这两个处理器有着巨大不同。在OS5上运行的程序,几乎全部都是用模拟器PACE在进行。除了一些游戏还有TCPMP基于ARM编程(为了提高性能),其他大多还是基于68K编程(为了保持兼容性)。
然而由于ARM处理器非常强(至少100MHz,Motorola最高型号Super VZ只有66MHz。虽然频率不代表性能,但是这里确实是ARM强于68K。),所以虽然是模拟器,速度还是变快的。性能大致损失:144MHz的Tungsten T稍微比66MHz的Sony SJ33差一点。
当Palm从SD卡上运行文件时,第一步是拷入内存(对NVFS是拷入内存和DBCache),然后运行,运行完毕从内存和DBCache删除。为什么原来在卡上的程序跑到内存里去了?
最可能的原因就是在运行该程序的时候死机了,导致内存里的程序没有删除,自然就留在内存里。
文件结构
Palm OS内存(存储堆)没有文件结构。就是一大堆并列的数据库(下面简称文件)。存储堆只允许两种文件(还有一种不常见的网页剪辑PQA):Prc,Pdb。Prc是特殊Pdb,里面一般有代码,是所谓“Resource PDB”,可以执行。Pdb,是一种特殊的存储方法,由一个索引和一系列Record构成。就像一个数据库,由一个头和一格格数据组成。程序可以自由提取每一部分的内容(这点和一般系统有巨大区别,一般系统存储东西的时候只是当作一串无意义的数据,只能一点一点往后读取。这也是Palm OS高效率的原因之一)一个Pdb具有大量属性,必须占用80字节。
这些属性中,重要的有:Creator ID:标记这个Pdb的所有者。这是一个适合于标记同一程序文件的东西。在Luncher删除一个程序会连带删除所有具有相同Creator ID的东西。Type:标记属性。应用程序的属性是appl,DOC文档是REAd,控制台程序是panl,PACE是a68kiSilo文档是SilX,Plucker文档是Plkr。
Preference:Palm OS中有个和注册表类似的东西Saved Preference和Unsaved Preference。前者在HotSync时备份,后者否。这俩东西的作用相当于注册表。不过小多了,一共100-200kB吧。
为什么Reset以后注册全部失效了?因为Saved Preference丢失了,请提取备份。
为什么Reset以后提示屏幕校对并且很多设置改掉了?因为Unsaved Preference丢失了,请提取备份。
为什么会丢失?因为有的程序注册了Exchange Manager,然后被非正常方式删除,那么下次如果有程序调用ExchangeManager会导致死机和丢失某个Preference。Butler具有一个清理冗余程序注册的功能。位于Miscellaneous——clean now处。
HotSync同步:Palm之所以成功,很大原因,因为方便快捷的HotSync。各种资料与电脑同步,一键搞定。配合palm QuickInstall,安装程序非常快。很多安装程序就要求大家同步的。HotSync有如下注意事项:1.同步名要正确,否则同步了东西也没有装入。2.同步时会备份,如果硬启同步,请到备份文件夹下把东西删掉,不然就白硬启了。3.有的程序是同步不进去的,请拷到卡上再用资源管理器类的安装进去。
如何更改同步名?
在Palm Desktop里面用户名处有一个编辑用户——重命名的选项。改好同步一次即可。同步名直接关系到你的注册问题,更改请谨慎!
Reset:Reset方法很多,主要有三种:1.Soft Reset 普通的XP启动,或者自己重新启动都是Soft Reset。仅仅清除动态内存,重新加载系统。2.Hard Reset 按住Power键Reset,在palm powered画面松开Power,选“上”可以恢复出厂设置。如果这个都不行估计没救了。3.Warm Reset 按住Up键Reset,在palm powered画面松开Power。如果碰到循环死机(Soft Reset的时候在palm powered画面报错),那么可以试试。这个是开机不加载任何多余程序的启动。然后就可以删除一些引起死机的程序了。这个就是Palm上的安全模式。Warm Reset 以后,由于很多驱动没有加载,所以会出现许多问题。譬如,五向键不正常(这是必然的)但这个模式下DBCache非常大(见下文),适合玩模拟器和大游戏。有的模拟器的控制只有在这个模式正常(平时不正常!),有的只有这个模式才会跑起来。如果运行DBCahceTool或者RescoExplorer不起来(那还干什么呀)请从卡上运行!一般可以成功。
Hack与DA:Hack与DA是虚拟多任务的两种方法。Hack是通过修改系统函数,在调用某些函数的时候,呼叫程序运行。为防止冲突,产生了管理器,如TealMaster,X-Master等等。DA则需要一个运行器,这个运行器负责控制屏幕恢复等等事项,并作为母体调用那个DA运行。最著名的运行器如DA Launcher ,McPhling,Hi-Launcher都可以呼叫DA。请尽量不要在OS5上使用Hack。OS5提供了标准的拦截系统命令的方法(Notification),一般不再需要使用Hack这种危险手段。Hack很容易引起OS5不稳定。如果一定要用,请用TealMaster或者YAHM管理器。
扩展卡:
Palm上的扩展卡文件系统叫做VFS (Virtual File System)目前OS5一般的Palm支持FAT格式的卡,打上补丁可以支持FAT32的卡(主要用于2G,4G的卡)默认情况下插入扩展卡后,Palm OS将自动搜索/Palm文件夹下的Start.prc如果有,则执行。(SD卡刷ROM就是这个方法)然后,跳转到/Palm/Launcher文件夹下,显示所有程序如何禁止显示扩展卡上所有程序?
用McFile,选项——设置里面,第一项就是这个内容。或者,用InsertSD,可以自定义插入卡以后的程序行为。扩展卡下面如果有个chkdsk.txt,表示文件系统曾经损坏过,已经修好。 |
|