一种在手持信息设备上存储系统及应用程序的方法技术方案

技术编号:2874016 阅读:188 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种在手持信息设备上存储系统及应用程序的方法,其将系统程序和每个应用程序分别编译,所生成的系统文件和应用文件以标准文件格式存放于闪存(Flash)的指定存储空间中。该方法使手持设备中的系统或应用文件能够单独更新,使得系统及应用软件的操作更简单、方便、灵活,效率更高,进而为用户提供更便利的使用环境。(*该技术在2022年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及文件存储技术,尤指。通常,手持信息设备采用半导体存储器闪存(Flash)、动态随机存储器(DRAM)来存储系统信息、应用程序和用户数据,但在实际使用时采用的结构有所不同。传统掌上电脑设备中Flash的存储结构如附图说明图1所示,包括存储区域10和存储区域11两部分,其中,存储区域10用于存放自举程序(Boot Loader),该自举程序的主要功能是作为操作系统(OS)升级时的工具。当设备重新复位时,系统从复位(Reset)陷阱进入自举程序,即复位后CPU直接从这里取指令执行。如图2所示,CPU首先判断是否需要更新OS?如果需要,则转入自举程序的更新OS功能,否则直接跳转到OS起始地址处。存储区域11则用于存储操作系统(OS)软件及应用(AP)软件,在传统的掌上电脑设备中,内置于只读存储器(ROM)的系统软件和应用软件是通过一次性编译连接成一个大的代码块,然后以二进制机器码格式连续存放于Flash中的,即存放于存储区域11中。另外一些手持信息设备,如使用掩膜只读存储器(MaskROM)作为OS存储器的PDA设备,由于其代码不可能更新,不需要自举程序,而直接将OS的起始代码放在CPU的复位陷阱处,如图3所示。该PDA中的系统软件和应用软件同样是通过一次性编译连接成一个大的代码块后,以二进制格式连续存放在MaskROM中。由于上述手持信息设备对系统及应用软件的处理都是先编译为一个代码块,再连续存储于存储介质,如Flash中。如此,使得文件注册表在编译连接时就固定了,且不可更改。如果其中某个应用程序或某个驱动程序被发现有错误(BUG)需要更新,或是某些程序需要升级时,就必须将整个系统加应用软件重新编译连接,形成新的代码块,然后还要将Flash中的内容全部擦除,重新写入。这样不仅缺乏灵活性、增加操作复杂度、降低工作效率,而且该过程一般须由专业人员和专门工具才能完成,给用户的使用带来很多不便。为达到上述目的,本专利技术的技术方案是这样实现的,其将系统程序和每个应用程序分别编译,所生成的系统文件和应用文件以标准文件格式存放于闪存(Flash)的指定存储空间中。该方法进一步包括预先将闪存(Flash)的存储空间划分为自举程序区和文件存储区,并将该文件存储区格式化为标准文件格式。因此,所有系统文件和应用文件以标准文件格式存储于Flash的文件存储区中。操作系统程序或每个应用程序可分为一个以上文件存放。而且,所有系统文件和应用文件的文件代码存放位置是连续的或不连续的。该方法进一步包括将自举程序以二进制格式,操作系统程序和应用程序以标准文件格式顺序存储于同一片或一片以上或非闪存(NOR Flash)中。或者,将自举程序以二进制格式存储于或非闪存(NOR Flash)中,同时将操作系统程序和应用程序以标准文件方式存储于与非闪存(NANDFlash)中。上面所述的标准文件格式为FAT16格式。该方法进一步包括设置一资源管理器,将与OS相关的系统文件隐藏;或是在程序进行更新时,将相同名的文件拷贝至原文件的地址,覆盖原文件。本专利技术的方法还可进一步通过进入自举程序选择对Flash进行格式化。因此,本专利技术所提供的在手持信息设备上存储系统及应用程序的方法,预先将存放OS和AP的Flash区域格式化为标准的FAT16格式,为以文件方式存储提供了条件,进而使得OS程序和每个AP程序能够分别单独编译成不同的文件,并以FAT16文件格式存放于指定的区域,如此,在某些软件需要更新或升级时,只需将相应的文件重新编译成标准格式,并以相同文件名存放在原有地址,替换原文件即可。这样可避免大量的编译、擦除和更新过程,简化了存储操作,而且使系统及应用文件的操作更灵活,更符合用户的使用习惯。图4为本专利技术中系统及应用软件的存储结构示意图;图5为本专利技术一应用实例的硬件环境示意图;图6为本专利技术另一应用实例的硬件环境示意图。如图4所示,为了能以文件方式存储系统程序和应用程序,本专利技术在存放结构上,将Flash分为自举程序区40和文件存储区41两部分,自举程序区40仍然用于以二进制格式存储自举程序,而文件存储区41则预先格式化为标准的文件格式,用来以文件方式存储编译好的OS文件和每个应用程序文件。图4中的DRAM区用于临时存放当前执行的OS文件或应用文件,比如启动时,自举程序通过文件读取方式访问文件存储区41,将特定的OS文件拷贝到DRAM中执行;或是,当要运行某个应用程序时,OS将该应用程序文件拷贝到DRAM中执行,以提高运行速度。本专利技术在编译时就将OS程序和每个应用程序分开编译,形成不同的文件,其中特定的OS文件可定义一个特殊的名称,比如NK.bin等。该OS程序可分成若干个文件单独存放,每个应用程序也可以分成若干个文件存放。之后,将OS文件以及应用程序文件写入文件存储区41中,由于是采用文件方式存放,代码的存放位置可以是连续的或不连续的,由文件分配表决定。所提到的文件分配表(FAT,File Allocation Table)是用来记录文件所在位置的表格,是一个记录磁盘上头文件大小及其所对应簇的数据库,它对每一个簇都有一个相对的记录点(Entry Point)。如果文件分配表丢失,硬盘上的数据将因无法定位而不能使用。文件分配表的构成与所采用的文件系统有关,在实际应用中,可采用的文件系统有很多,比如FAT16、FAT32、NTFS等等。结合手持信息设备的特点,本专利技术目前采用FAT16文件系统,其是用16位比特的空间来表示每个扇区(Sector)配置文件的情况,该扇区就是指一块512字节的区域,FAT文件系统将数个扇区合并成一个簇(Cluster),作为文件分配存储空间时的基本配置单位,每个簇中的扇区数目必须是2的次方,每个文件存储于硬盘中时必须配置足够数量的簇。在本专利技术的文件存储方式下,当某个程序需要修改或升级时,可将与该程序相关的文件单独编译,然后象拷贝文件一样简单地以同名覆盖方式完成相应文件的更新,然后重新启动即可。本专利技术中还进一步提供有一个资源管理器,在资源管理器中用户看到的文件存储区显示为一个文件夹。另外,该资源管理器将与OS有关的系统文件隐藏,以免被用户误删。在本专利技术中,自举程序的功能发生了变化,包括三个部分格式化Flash、下载OS和AP文件、引导系统。在正常启动时,自举程序的功能就是引导系统,其实现过程是这样的自举程序初始化系统,在文件存储区中找到OS中涉及启动的相应文件,将其拷贝到预定地址的DRAM中连续存放;然后跳转到DRAM中OS启动文件的开始地址,执行OS启动代码;OS启动后,存放OS和AP的文件存储区相当于一个内置的磁盘。对于Flash中文件存储区的格式化,有两种情况一种是在生产时,采用专用工具,比如Ghost 6.0将Flash格式化为FAT16文件格式,并将编译好的OS和AP文件拷贝到该文件存储区中;另一种是用户可在任意时刻对其进行格式化,用于对文件存储区损坏后的重建。具体实现是用户通过按组合功能键的方式进入自举程序界面,该界面会显示三个选项a.拷贝文件到Flash;b.格式化Flash;c.清除DRAM并重新启动。当选择第2项后,自举程序便会进入格式化流程首先将Flash中的文件存储区全部擦写一次,标记出坏块本文档来自技高网...

【技术保护点】
一种在手持信息设备上存储系统及应用程序的方法,其特征在于:将系统程序和每个应用程序分别编译,所生成的系统文件和应用文件以标准文件格式存放于闪存(Flash)的指定存储空间中。

【技术特征摘要】

【专利技术属性】
技术研发人员:吴志桥肖堃李建邺
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1