首页> 中国专利> 一种在手持信息设备上存储系统及应用程序的方法

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

摘要

本发明公开了一种在手持信息设备上存储系统及应用程序的方法,其将系统程序和每个应用程序分别编译,所生成的系统文件和应用文件以标准文件格式存放于闪存(Flash)的指定存储空间中。该方法使手持设备中的系统或应用文件能够单独更新,使得系统及应用软件的操作更简单、方便、灵活,效率更高,进而为用户提供更便利的使用环境。

著录项

  • 公开/公告号CN1470995A

    专利类型发明专利

  • 公开/公告日2004-01-28

    原文格式PDF

  • 申请/专利权人 联想(北京)有限公司;

    申请/专利号CN02125340.4

  • 发明设计人 吴志桥;肖堃;李建邺;

    申请日2002-07-25

  • 分类号G06F12/06;

  • 代理机构11018 北京德琦知识产权代理有限公司;

  • 代理人张颖玲

  • 地址 100085 北京市海淀区上地信息产业基地创业路6号

  • 入库时间 2023-12-17 15:05:30

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2009-07-22

    专利申请权、专利权的转移(专利权的转移) 变更前: 变更后: 变更前:

    专利申请权、专利权的转移(专利权的转移)

  • 2008-08-06

    专利申请权、专利权的转移(专利权的转移) 变更前: 变更后:

    专利申请权、专利权的转移(专利权的转移)

  • 2008-05-21

    授权

    授权

  • 2004-04-07

    实质审查的生效

    实质审查的生效

  • 2004-01-28

    公开

    公开

说明书

技术领域

本发明涉及文件存储技术,尤指一种在手持信息设备上存储系统及应用程序的方法。

发明背景

随着信息技术的迅猛发展,各种各样的信息设备应运而生,为了进一步方便用户的使用,出现了众多诸如掌上电脑、个人数字助理(PDA)、多功能移动电话等手持信息设备,人们可以直接通过手持信息设备,随时随地的获取信息和记录信息。

通常,手持信息设备采用半导体存储器:闪存(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文件格式存放于指定的区域,如此,在某些软件需要更新或升级时,只需将相应的文件重新编译成标准格式,并以相同文件名存放在原有地址,替换原文件即可。这样可避免大量的编译、擦除和更新过程,简化了存储操作,而且使系统及应用文件的操作更灵活,更符合用户的使用习惯。

附图说明

图1为现有技术中一种系统及应用软件的存储结构示意图;

图2为现有技术中自举程序的执行流程示意图;

图3为现有技术中另一种系统及应用软件的存储结构示意图;

图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中的文件存储区全部擦写一次,标记出坏块;然后自动调用预先设置于自举程序启动代码中的标准格式化函数将该文件存储区格式化为标准FAT16格式。

本发明以文件方式存储OS和AP的方法可应用于不同的硬件环境中,图5、图6分别给出了两种硬件应用环境。通常,手持信息设备采用或非(NOR)Flash或者与非(NAND)Flash作为存储器,NOR Flash是线性寻址的,即:可以寻址到每个字节,其可以直接连接在系统的某段地址空间上,由CPU直接读出指令来执行,实现就地执行(XIP),如图5所示。而NAND Flash是页面寻址方式,每个存储单元不能直接映射为系统地址空间的某个单元,CPU也不能通过直接取指令的方式来读取NAND Flash中的数据,必须经过接口逻辑完成页地址转换后才能读出NAND Flash中的内容,即:CPU通过接口逻辑将NAND Flash连接到自身的系统空间上,映射为IO端口,然后通过访问设备的方式对NAND Flash操作,如图6所示,NAND Flash无法实现XIP。而且,NOR Flash的成本比NAND Flash的成本高很多。

当采用NOR Flash为OS和AP的存储介质时,如图5所示,可将NORFlash的存储空间分为两部分:一部分是从CPU复位陷阱的地址开始约几百K的空间,用于以二进制连续存放自举程序(Boot Loader),系统复位后,CPU直接从这里取指令执行;另一部分是该NOR Flash其余的空间用于存储OS和AP,对该部分进行格式化形成文件存储区,该存储结构如图4所示。

当采用NAND Flash作为OS和AP的存储介质时,如图6所示,该硬件环境是同时采用NOR Flash和NAND Flash作为存储器,但NOR Flash只用于存储自举程序,如此可选用容量小的NOR Flash,从而既降低产品成本,又可保证自举程序的就地执行。对于OS、AP和用户数据,可选用容量较大的NAND Flash来存储,并且在格式化时,直接将整块NAND Flash格式化为标准的FAT16文件存储格式,OS和每个AP被分别编译为一个或多个文件单独存放。

在图6所示的硬件环境下,当系统初次启动时,CPU的指针指向复位陷阱,开始执行NOR Flash中的自举程序;自举程序通过访问设备的方式将存放于NAND Flash中的OS文件拷贝到DRAM中,然后将CPU的指针指向DRAM中的OS入口,开始执行OS代码,启动OS。当要运行某个应用程序时,OS将NAND Flash中的应用程序代码拷贝到DRAM中执行。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号