SX1文件系统结构浅析

SymbianOS6.X Series60界面的智能手机 , 在插入MMC之后 , 系统一般存在4个逻辑存储驱动器:C(手机本身的用户存储 , SX1有4M) , D(虚拟盘 , 使用空闲运行内存虚拟的缓冲盘) , E(MMC) , Z(手机的系统ROM只读) 。
4个盘之中 , C E Z盘的文件结构大同小异 。而D驱动器是高速的虚拟驱动器 , 主要用来保存剪贴板、wap缓存、和一些临时交换文件 , 一般情况下 , 由系统自动调用 , 与用户联系不多 , 不作详细介绍 。下面我具体的将C E Z三个驱动器的目录结构和功能讲解一下 。随着安装软件的增多 , C和E盘的目录文件会变得纷繁复杂 , 我们抛开一些软件自动生成的次要的文件和目录抓住系统的结构谈一些主要的东西:

E盘根目录下:IMAGES SOUNDS VIDEOS目录 , 顾名思义就是保存了图片铃声视频剪辑 , 这3个目录等效的出现在C和Z的Nokia目录下 , 也就是说把相应类型的文件拷贝到对应的目录都可以被系统识别(Z盘只读除外) , 举例说明:midi文件或者wav文件拷贝在E:soundsdigital或者C:nokiasoundsdigital就可以像Z:NokiaSoundsdigital中固化的音乐文件一样 , 出现在情景模式铃声的选择项目中 。

C:Nokia是个无关紧要的目录 , 你完全可以删掉它而没有影响 , 但是这个目录会经常自动生成 。原因是 , C盘的Nokia目录中有特别的目录:INSTALL , 很显然这个是为了安装软件而设置的 。众所周知 , Symbian系统的软件是打成SIS压缩包传入手机的某个存储器中(C、E)然后解包安装的 , 系统往往在C:NOKIAINSTALL目录下保存一个安装副本 , 以备安装时遇到不可预见的错误(如突然没电)或者用户中断时能够恢复系统安全 , 这也就是很多情况下 , 在空余很大空间的E盘安装软件时 , 仍然出现“存储空间已满”的原因 , 保持C盘有1M以上的空余空间是个很好的习惯 。另外不使用系统的manager转而使用SeleQ进行SIS安装也可以避免产生这个副本 。

下面以分析一下结构最为复杂的系统核心C:system目录 。System目录由十几个目录和若干文件组成:
※APPS目录:该目录下的子目录保存了软件的主体即:用户交互可执行文件.app、 资源文件.rsc、 图标文件.aif 、无界面可执行程序.exe以及运行所需的其他文件 。安装在E盘的软件除了在E:SystemApps目录下保存软件主体之外 , 往往会在C:SystemApps同名目录下创建一些配置文件 。值得注意的是C:Systemappsphoneoplogo保存了营运商的标志 , 如果该目录保存了100*25的bmp图像 , 则在待机状态下将以该图片代替“中国移动”之类的营运商标志(需要重新启动手机);
※BootData目录:系统的启动参数和日志;
※Data目录:极其繁杂的目录 , 保存了各种各样的数据 , 简单介绍几个 , backgroundimage.mbm壁纸 , btstate.dat蓝牙配对信息 , Calender日历 , clockapp.dat时间参数 , Contacts.cdb联系人 , 以及很多软件的配置文件和wap信息;
※favourites目录:收藏夹;
※install目录:保存了全部的软件安装信息 , 每安装一个软件 , 就在该目录下保存一个同名sis文件索引 , 大小在几百b到几K不等 , 假如删除这个sis文件 , 在程序管理中就不会出现这个软件的安装信息 , 也就无法通过程序管理删除 , 但是仍然可以在apps目录中直接删除软件主体和配置文件 , 有必要的话在libs目录中删除相应运行库 , 在programs目录中删除相应辅助运行文件 , 从而彻底卸载软件;
※libs目录:保存某些软件运行时需要的连接库文件 , 一般由软件安装;
※mail目录:信息目录 , 结构复杂费解 , 除了一些短信、彩信、EMail设置文件之外 , 收件箱、发件箱、草稿箱、发送报告、附件等等分布在丛深复杂的目录之中 。值得一提的是 , S60的信息概念比较广 , 短信彩信Email甚至红外蓝牙传输的文件都属于“信息” , 因此接受到的红外蓝牙的文件 , 保存在mail目录下 , 而且可以由查看该信息触发相应的“安装”、“观看”、“编辑”等动作;

推荐阅读