[发明专利]对ROM中存储的资源文件的访问有效
申请号: | 00104751.5 | 申请日: | 2000-03-24 |
公开(公告)号: | CN1271125A | 公开(公告)日: | 2000-10-25 |
发明(设计)人: | C·R·马利奥德;P·J·米勒;P·C·鲁贝辛 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F7/00 | 分类号: | G06F7/00;G06F9/445 |
代理公司: | 中国专利代理(香港)有限公司 | 代理人: | 王勇,王忠忠 |
地址: | 美国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | rom 存储 资源 文件 访问 | ||
本发明涉及在诸如嵌入式设备等存储器资源受约束的环境中对诸如图象、位图和声音文件之类的资源的存储。本发明提供一种在这种资源存储在只读存储器(ROM)的情况下在运行期间访问资源的方法。
嵌入式设备诸如蜂窝式电话、寻呼机和PDA(个人数字助理)一般包括复杂的用户界面、听觉信号和其它功能部件,以执行为这些设备所设计的消费者功能。
必备资源的通常形式是预先构建的数据文件,内含位图、字型或声音记录。程序访问一个或多个资源文件中的数据,以便在设备的显示器上描绘用户界面或者从设备的音频系统发出声音。
问题是如何存储诸如图象、位图和声音文件等之类的资源以及从诸如JAVA应用程序等运行程序中访问它们。在桌面计算机中,简单的方法是使用快速文件系统,像正常文件一样对待这些资源的,在被运行程序访问时被拷贝到随机存取存储器(RAM)。
然而,这种方法不适合嵌入式系统。原因有两个:第一,复杂的位图图象可能非常大—有时长达数万字节。如果将这些图象拷贝到RAM供在显示器上描绘,会大大地增加对内存的耗费。嵌入式设备一般只有1到14MB的内存,所以,如果为访问资源、特别是再现大型位图图象而增加RAM的使用,会影响能在设备上存储和运行的应用程序的数量和复杂程度。
第二,许多嵌入式系统只有一个薄薄的实时操作系统(RTOS),或者根本没有。经常不含有文件系统。
因此,本发明的一个目的是提供一种方法,按照这个方法,资源数据不用文件系统就能在ROM中存储,并且能在ROM存储器中从运行程序访问。
本发明的另一个目的是提供可移植性,使得在诸如桌面机操作系统等内存受较少约束的环境中使用的应用程序,不改变应用程序代码就能在嵌入式平台上使用。
按照这些和其它目的,本发明提供一种系统来处理直接来自只读存储器中某位置的资源数据,系统包括至少一个逻辑表,逻辑表中含有用于程序调用资源的键字,并将该键字与标识资源数据在只读存储器中位置的值关联。系统还包括一个将对资源数据的调用重定向到至少一个逻辑表的机构。最好该值是一个指向资源数据在只读存储器中位置的指针,并且键字是一个字符串。
本发明也提供一种对直接来自只读存储器中某位置的资源数据进行处理的方法。在系统启动时,生成一个键字-值对的数组,其中,对中的键字与某个命名的资源关联,对中的对应值是用于访问只读存储器中位置上的资源数据的信息。在该系统中的程序启动时,接合一个全程开关(global switch),它将程序对资源的调用定向到该数组。
现在将结合以下各附图详细说明本发明的实施例,其中:
图1是表示按照现有技术,描绘快速文件系统中存储的资源数据的示意图;
图2是表示按照本发明,描述用于访问ROM中存储的资源文件的键字-值对的数组或表的示意图。
图3是表示按照本发明,访问ROM中存储的资源数据的步骤的流程图。
Java是一种面向对象的解释程序设计语言。Java应用通常是从磁盘上的许多类文件和与这些类文件有关的目录中的许多位图中展开的。按照常规技术,可以建立一个占据全部类和资源目录树的JAR文件。从概念上来说这些方法是相同的-JAR文件不过是所有所需文件的一个容器。
参看图1,一个想显示位图或使用字型的Java应用2,一般要引用一个或多个在ROM 6中的文件中存储的位图(例如foo.bmp)。图中将位图统一标记为4。
资源的数据由Java应用2从ROM 6读入RAM 8中的Java字节数组,将其转换成Java对象10。Java对象10被传送给Java类12去显示。经常,资源数据根本就不被Java类12使用,而是经系统的Java本机接口(JNI-Java Native Interface)的本机过程(Nativemethod)14被直接传送到C代码16,适当地描绘出来18。即使它仅仅是一个对被传送到Java类12的Java对象10的引用,也要在本机过程14上复制Java对象的副本。然而,本机过程14也不使用这个Java对象10的副本。它请求一个指向字节数组的C指针来发现如何在显示屏上写象素。
如果是这样,则完全不必在RAM存储器中复制数据(Java字节数组)的副本。本发明不需要在RAM中以Java对象的形式来创建资源数据的字节数组并到处复制该数据。
本发明认识到,这种类型的资源数据在许多类型的嵌入式系统上使用时不变化。所以,它是能在ROM中存储并能在运行时安全地直接从ROM存取的一种数据类型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/00104751.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电子束光刻方法及其装置
- 下一篇:图像读取装置及具有该装置的图像信息处理装置