CN101083817B - 一种动态更换移动台字库模块的方法 - Google Patents
一种动态更换移动台字库模块的方法 Download PDFInfo
- Publication number
- CN101083817B CN101083817B CN2007101304146A CN200710130414A CN101083817B CN 101083817 B CN101083817 B CN 101083817B CN 2007101304146 A CN2007101304146 A CN 2007101304146A CN 200710130414 A CN200710130414 A CN 200710130414A CN 101083817 B CN101083817 B CN 101083817B
- Authority
- CN
- China
- Prior art keywords
- firmware
- address
- travelling carriage
- flash
- character library
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提出了一种动态更换移动台字库模块的方法,所述字库模块包括硬件和软件,所述硬件包括闪存Flash固件,所述软件包括与所述Flash固件对应的手机固件,包括以下步骤:(1)终端设备设定Flash固件中的字库大小范围和起始地址,并将手机固件的字库信息提取为字库文件;(2)计算机与终端设备建立连接,并将更新的字库文件下载到Flash固件的指定地址。本发明方法实现了移动台固件版本的动态组合,省去了由于更改字库文件而制作版本的繁琐过程,提高了移动台固件版本生成的效率。
Description
技术领域
本发明涉及通讯电子领域,尤其涉及动态更新字库资源的方法。
背景技术
目前,全球数字移动用户已经达到13亿,而且该数字有望在未来几年内翻一番。随着海外市场的不断扩展,不同地区尤其是不同语种的定制版本在不断增多,同时,移动终端设备市场的竞争也越来越激烈。移动终端设备制造商为应对供货压力,要求不断缩短移动终端设备研发周期,以满足客户不断提出的新需求。
在移动终端设备研发过程中,其软件版本由于国家分支的增多,软件版本的分支也不断增多,而每一个版本的研发及测试发布周期与研发质量紧密相关。现在的移动终端设备中,字库部分是作为代码软件的一部分集成在主代码区域,而且字库在固件中的相对地址依赖于软件代码的大小。因此,目前仅修改字库中的语言和字体也需要重新开发终端设备的软件版本,不仅耗费了开发人员的人力资源,同时软件版本开发分支数量也不断增多,并且还严重影响了市场的响应速度。
为了对不同地区语种版本进行有效控制,同时节省人力资源,提高市场的响应速度,对不同地区语种版本的研发和版本集成方式提出了较高的要求。
发明内容
本发明所要解决的技术问题是提供一种动态更换移动台字库模块的方法,实现了移动台固件版本的动态组合,省去了由于更改字库文件而制作版本的繁琐过程,提高了移动台固件版本生成的效率。
为了解决上述问题,本发明提出了一种动态更换移动台字库模块的方法,所述字库模块包括硬件和软件,所述硬件包括闪存Flash固件,所述软件包括与所述Flash固件对应的移动台固件,包括以下步骤:
(1)移动台设定Flash固件中的字库大小范围和起始地址,并根据Flash固件中的字库大小范围和起始地址,设定移动台固件中的字库大小范围和固定地址,所述固定地址为字库在Flash固件中的绝对地址信息,所述移动台将移动台固件的字库信息提取为字库文件;
(2)计算机与移动台建立连接,并将更新的字库文件下载到Flash固件的指定地址;其中,
(21)计算机建立与移动台的连接,获得Flash固件中BLOCK块的结构划分信息,并计算字库起始地址与结束地址所对应的Flash固件的BLOCK块;(22)计算机备份字库首末地址外块信息,即从字库起始地址所在BLOCK块的首地址到字库起始地址的内容作为内容一,以及从字库结束地址到字库结束地址所在BLOCK块的结束地址的内容作为内容二;(23)将备份的内容一、内容二和待下载的字库文件作为待更新字库所在的多个BLOCK块的内容,下载到Flash固件的指定地址。
进一步,上述方法还可具有以下特点,步骤(21)进一步分为:(31)计算机与移动台建立连接,控制移动台进入下载模式,将Flash驱动读入到移动台的RAM区并运行Flash驱动,使移动台与驱动建立数据连接;(32)计算机读取Flash驱动返回的移动台BLOCK块的结构划分信息,所述结构划分信息包括该移动台中对应的Flash固件所包含的BLOCK块个数,以及每个BLOCK块的大小信息,并由此计算字库起始地址与结束地址对应的BLOCK块。
进一步,上述方法还可具有以下特点,步骤(21)中,根据BLOCK块的大小信息和BLOCK块的总个数,得到BLOCK块在Flash固件中的绝对地址信息。
进一步,上述方法还可具有以下特点,步骤(2)中还包括:执行下载更新操作后,重新启动移动台。
进一步,上述方法还可具有以下特点,步骤(31)中,计算机通过移动台提供的下载接口指令,通过串口发命令到移动台,设置移动台进入下载模式。
与现有技术相比,本发明在不改变原有手机固件中字库使用方式的前提下,采用资源与代码分离的思想,将手机固件中的字库大小固定,并作为可替换的字库资源文件模块,通过PC侧软件就可以实现字库模块的动态更新。从而,实现了移动台固件版本的动态组合,省去了由于更改字库文件而制作版本的繁琐过程,提高了移动台固件版本的生成效率。
附图说明
图1是实施例中的方法流程图。
图2是实施例中备份字库内容示意图。
具体实施方式
下面根据附图和实施例对本发明作进一步详细说明。
一种动态更换移动台字库模块的方法,所述字库模块包括硬件和软件,所述硬件包括闪存(Flash固件),所述软件包括与所述Flash固件对应的手机固件。如图1所示,该方法包括以下步骤:
步骤101,终端设备设定Flash固件中的字库大小范围和起始地址,并由此设定手机固件中字库部分的字库大小和相对固定地址,将手机固件中字库语言信息提取为字库文件,字库语言信息包括不同语种、字体及字号信息等,然后,通过串行设备接口连接到计算机;
手机固件中字库部分的地址和大小由随机约定变为固定的地址和大小,所述固定地址为字库在Flash固件中的绝对地址信息,即设置手机固件中字库映射的相对位移由随机变为相对固定的位移,这些约定都由手机固件侧来约定。在本实施例中,Flash固件和手机固件中字库部分的地址和大小是一一对应,完全一致的。
将手机固件中编码后的字库语言信息单独摘出来,形成字库文件以实现字库模块化的更新。由于不同语种的字库文件大小不同,预先设置一个固定的、相对较大的字库范围,就可以适应各种不同的字库文件,实现不同语种文件及字体的更新。
步骤102,计算机控制终端设备进入下载模式,将Flash驱动读入到终端设备的RAM区并运行Flash驱动,使终端设备与驱动建立数据连接;
计算机通过终端设备提供的下载接口指令,通过串口发命令到终端设备,可设置终端设备进入到下载模式。
步骤103,计算机读取Flash驱动返回的终端设备BLOCK块的结构划分信息,所述结构划分信息包括该终端设备中对应的Flash固件所包含的BLOCK块个数,以及每个BLOCK块的大小信息;
不同型号的Flash固件所包含BLOCK块的划分方法不同,并且每个BLOCK块的大小可能不同,也可能相同。
步骤104,计算机侧根据上述结构划分信息,分别计算字库起始地址与结束地址所在Flash固件中的BLOCK块序号的位置,包括字库起始结束地址相对于该型号Flash固件的BLOCK块的序号,以及在该BLOCK块的地址;
字库大小和在Flash固件的地址在之前已经确定了,字库的起始结束地址就是在Flash固件中的绝对地址信息(其中,字库的结束地址可以根据字库大小范围和起始地址相加得到),然后,根据Flash固件中每个BLOCK块的大小信息和BLOCK块的总个数,计算出BLOCK块在Flash固件中的绝对地址信息,其中,划分的BLOCK块是连续的,且第一个BLOCK块的地址是规定好的,为0×00000000。因此,根据字库的起始结束地址信息可以计算出字库起始结束地址相对于该型号Flash固件的BLOCK块的序号,以及字库起始结束地址相对于Flash固件中BLOCK块的地址。
步骤105,计算机备份首末地址外块信息,即从字库起始地址所在BLOCK块的首地址到字库起始地址的内容作为内容一,以及从字库结束地址到字库结束地址所在BLOCK块的结束地址的内容作为内容二;
如附图2所示,内容一为字库起始地址所在BLOCK n的BLOCK首地址到字库起始地址之间的内容。在之前已经约定过备份字库起始地址是确定的地址不是随机的地址,当Flash固件型号确定后,对应的BLOCK块也是确定的。同样,字库结束地址也做过约定,当Flash固件型号确定后,就已知字库结束地址所在的BLOCK块序号为m,内容二为字库结束地址到BLOCK m的结束地址之间的内容,m和n都为自然数。
步骤106,拼接备份的内容一、内容二和待下载的字库文件,作为待更新字库所在的整m-n+1个BLOCK块的内容;
备份内容一和内容二是因为Flash固件有BLOCK块整块擦除的特性。对于不同的手机固件版本,地址是确定的信息,而内容是变化的。因此,备份字库所在的BLOCK块内,相对BLOCK开始和结束地址的手机固件的内容一和内容二,当更新完字库后,终端设备可以根据备份的内容一和内容二找到运行程序需要的文件,从而继续运行,否则,终端设备无法启动程序。
步骤107,计算机下载字库文件到Flash固件中的指定地址,即将步骤106中拼接的字库所在整m-n+1个BLOCK块的内容写入到相应的Flash固件中;
在对Flash固件写入内容之前,如果该BLOCK块未被擦除过,会先擦除整BLOCK块的内容后再写入新的内容,因此,更新了整m-n+1个BLOCK块的内容。
步骤108,重新启动终端设备,确认软件升级成功。
一般情况下都能正确升级成功。如果特殊情况下升级不成功,则不会重新下载内容一和内容二,直接报错。
终端设备中Flash固件软件字库升级方法,通过计算机对终端设备固件字库资源实现动态更新,解决其软件升级速率慢,效率低的问题。同时,在不改变原有手机固件中字库使用方式的前提下,将手机固件中的字库作为可替换的字库资源文件模块,通过PC侧软件就可以实现字库模块的动态更新。实现了移动台固件版本的动态组合,省去了由于更改字库文件而制作版本的繁琐过程,提高了移动台固件版本的生成效率。
Claims (5)
1.一种动态更换移动台字库模块的方法,所述字库模块包括硬件和软件,所述硬件包括闪存Flash固件,所述软件包括与所述Flash固件对应的移动台固件,包括以下步骤:
(1)移动台设定Flash固件中的字库大小范围和起始地址,并根据Flash固件中的字库大小范围和起始地址,设定移动台固件中的字库大小范围和固定地址,所述固定地址为字库在Flash固件中的绝对地址信息,所述移动台将移动台固件的字库信息提取为字库文件;
(2)计算机与移动台建立连接,并将更新的字库文件下载到Flash固件的指定地址;其中,
(21)计算机与移动台建立连接,获得Flash固件中BLOCK块的结构划分信息,并计算字库起始地址与结束地址所对应的Flash固件的BLOCK块;
(22)计算机备份字库首末地址外块信息,即从字库起始地址所在BLOCK块的首地址到字库起始地址的内容作为内容一,以及从字库结束地址到字库结束地址所在BLOCK块的结束地址的内容作为内容二;
(23)将备份的内容一、内容二和待下载的字库文件作为待更新字库所在的多个BLOCK块的内容,下载到Flash固件的指定地址。
2.如权利要求1所述方法,其特征在于,步骤(21)进一步分为:
(31)计算机与移动台建立连接,控制移动台进入下载模式,将Flash驱动读入到移动台的RAM区并运行Flash驱动,使移动台与驱动建立数据连接;
(32)计算机读取Flash驱动返回的移动台BLOCK块的结构划分信息,所述结构划分信息包括该移动台中对应的Flash固件所包含的BLOCK块个数,以及每个BLOCK块的大小信息,并由此计算字库起始地址与结束地址对应的BLOCK块。
3.如权利要求2所述方法,其特征在于:
步骤(21)中,根据BLOCK块的大小信息和BLOCK块的总个数,得到BLOCK块在Flash固件中的绝对地址信息。
4.如权利要求1所述方法,其特征在于,步骤(2)中还包括:
执行下载更新操作后,重新启动移动台。
5.如权利要求2所述方法,其特征在于:
步骤(31)中,计算机通过移动台提供的下载接口指令,通过串口发命令到移动台,设置移动台进入下载模式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101304146A CN101083817B (zh) | 2007-02-28 | 2007-07-18 | 一种动态更换移动台字库模块的方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710000497.7 | 2007-02-28 | ||
CN200710000497 | 2007-02-28 | ||
CN2007101304146A CN101083817B (zh) | 2007-02-28 | 2007-07-18 | 一种动态更换移动台字库模块的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101083817A CN101083817A (zh) | 2007-12-05 |
CN101083817B true CN101083817B (zh) | 2010-04-21 |
Family
ID=38913037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101304146A Active CN101083817B (zh) | 2007-02-28 | 2007-07-18 | 一种动态更换移动台字库模块的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101083817B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101369953B (zh) * | 2008-09-17 | 2010-10-20 | 北大方正集团有限公司 | 一种字库的网络分发方法及*** |
CN104899051B (zh) * | 2014-03-05 | 2018-10-16 | 博雅网络游戏开发(深圳)有限公司 | Flash程序库文件的构建加载方法、***及装置 |
CN104965830B (zh) | 2014-06-06 | 2018-07-17 | 腾讯科技(深圳)有限公司 | 一种字符更新方法及装置 |
CN105654709A (zh) * | 2016-01-29 | 2016-06-08 | 南京悦控智能科技有限公司 | 一种带lcd屏显的多功能遥控装置及其屏显方法 |
CN110083378B (zh) * | 2019-05-09 | 2023-08-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于文件***的软件自动升级方法及装置 |
-
2007
- 2007-07-18 CN CN2007101304146A patent/CN101083817B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101083817A (zh) | 2007-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101083817B (zh) | 一种动态更换移动台字库模块的方法 | |
CN101694623A (zh) | 一种更新手持设备软件的方法 | |
CN103176824B (zh) | 一种***升级的方法及装置 | |
CN102541572B (zh) | 一种实现操作***内核引导的方法、***及装置 | |
CN101296458B (zh) | 应用程序的功能表现方法、***及设备 | |
TWI396076B (zh) | 無線終端機、無線終端機之非揮發性記憶體及診斷資訊之故障安全保存方法 | |
CN101957765B (zh) | 一种实现设备固件更新的方法及***、设备 | |
CN1964526A (zh) | 一种智能加载手机硬件驱动程序的方法 | |
CN101668081A (zh) | 一种移动终端及其自动升级方法 | |
WO2016078263A1 (zh) | 升级控制设备、终端、终端升级方法及***、存储介质 | |
CN101426032B (zh) | 安装Java应用的终端及其安装Java应用的方法 | |
CN102346677A (zh) | Fpga程序的升级方法 | |
CN106569854B (zh) | 一种设置设备固件和实现厂测的方法及*** | |
CN103902334A (zh) | 基于安卓***的静默式升级方法及*** | |
CN104423993A (zh) | 汽车电子设备软件的更新方法、更新终端及汽车电子*** | |
CN103927201A (zh) | 一种游戏文件的更新方法及装置 | |
CN109388416A (zh) | 一种应用软件的插件化实现方法及*** | |
CN101944072A (zh) | 一种终端设备的启动方式配置方法及设备 | |
CN107423075A (zh) | 驱动的注册方法以及用户终端 | |
CN112235639A (zh) | 一种易升级可扩展的Linux智能电视操作*** | |
CN2921952Y (zh) | 一种可智能加载硬件的移动终端 | |
CN1996871A (zh) | 一种数据同步方法 | |
CN101854442B (zh) | 网络设备及其固件更新方法 | |
CN102096592A (zh) | 一种移动终端操作***的安装方法及移动终端 | |
CN109117167A (zh) | 一种基于zynq芯片的启动软件更新方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |