CN101334736A - 软件更新方法和便携式终端设备 - Google Patents
软件更新方法和便携式终端设备 Download PDFInfo
- Publication number
- CN101334736A CN101334736A CNA2008101289780A CN200810128978A CN101334736A CN 101334736 A CN101334736 A CN 101334736A CN A2008101289780 A CNA2008101289780 A CN A2008101289780A CN 200810128978 A CN200810128978 A CN 200810128978A CN 101334736 A CN101334736 A CN 101334736A
- Authority
- CN
- China
- Prior art keywords
- software
- compression
- compressed
- nonvolatile memory
- stored
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72406—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种软件更新方法和一种便携式终端设备。该软件更新方法用于基于差分数据通过无线通信对作为压缩代码存储在置于便携式终端内的非易失性存储器中的软件进行更新,包括以下步骤:提供具有容错性的文件系统区;在软件更新执行时,对所述软件的压缩代码进行解压缩,并且将已解压缩的代码装载到随机存取存储器;基于所述差分数据,在所述随机存取存储器中更新所述软件;对已更新的软件进行压缩;以及将与压缩更新软件的压缩更新部分相对应的压缩更新代码序列的备份存储在所述文件系统区中,然后将与所述压缩更新软件的压缩更新部分相对应的压缩更新代码序列写回到所述非易失性存储器。
Description
相关申请的交叉引用
本发明包含与2007年6月28日向日本专利局提交的日本专利申请JP2007-170673相关的主题,该日本专利申请的全部内容以引用的方式并入本文中。
技术领域
本发明涉及一种便携式终端设备,更具体地涉及一种基于通过无线通信获取的差分数据对存储在置于便携式终端内的非易失性存储器中的软件进行更新的方法。
背景技术
目前,诸如蜂窝电话的便携式终端被广泛地使用。为了增加这种便携式终端的功能、提高其性能、纠正其故障等,有必要更新软件,例如存储在便携式终端的存储器中的程序。可以使用通过无线通信对便携式终端执行软件更新的固件空中传输(Firmware over-the-airFOTA)技术,该技术使用用于存储软件的诸如闪存的可再写的非易失性存储器(例如,参见日本未审查的专利申请公开No.2006-309516)。
随着用于便携式终端的软件的功能变得越来越复杂,必要的存储器容量也增加。因此,存储装置的成本会增加,而存储装置的成本增加又会影响产品的价格。
为了解决上述提到的问题,提出了一种将预先已被压缩的软件装载到存储器中并在软件被执行时再解压缩被压缩的软件的方法。根据该方法,软件自身的大小被减小了。因此,可以期望达到在一定程度上减小必要的存储器容量的效果。然而,由于对压缩的软件进行解压缩需要额外的时间,因此不期望减少启动时间的效果。
诸如闪存的可再写的非易失性半导体存储器被用作用于便携式终端的存储装置。
因此,闪存用于存储用于便携式终端的程序。在从闪存进行引导(booting up)的情形下,程序区中的程序临时从闪存传送到随机存取存储器(RAM),然后在RAM中执行该程序。
当在闪存中存储已被预先压缩的代码的情形下,从闪存装载到RAM上的代码的大小被减小。因此,存储器的闲置空间会增加,而增加的闲置空间可以用作存储区域。
然而,由于当执行引导时必需对压缩的代码进行解压缩,所以这需要很长一段时间去启动软件。
在通过使用FOTA更新由压缩代码组成的软件的情形下,执行以下顺序的步骤:
1)解压缩闪存中的压缩代码,把解压缩的代码传送到RAM作为原始代码;
2)根据解压缩的软件和通过无线通信获取的差分文件更新软件;和
3)在便携式终端中压缩更新的软件,并将经压缩的更新的软件写回到闪存。
发明内容
在上述描述的步骤中,如果在将压缩的更新软件写回到闪存中时发生断电,不仅RAM中的压缩的更新代码会损坏,而且更新前的压缩代码也会被损坏,由于更新前的压缩代码被压缩的更新代码所覆写。因此,当电力恢复后,不能执行对更新前的压缩软件进行解压缩以再继续软件更新。
另外,由于执行上述顺序的步骤,用于更新闪存中的压缩软件的软件更新处理需要相对长的时间。因此,由于在写回到闪存的过程中电量耗尽,所以便携式终端发生断电的可能性很大。
即使当压缩的更新软件正被写入非易失性存储器时便携式终端设备发生断电,也希望允许便携式终端设备在该便携式终端的电源被恢复后再继续软件更新。
根据本发明的一个实施例的软件更新方法,用于基于差分数据通过无线通信对作为压缩代码存储在置于便携式终端内的非易失性存储器中的软件进行更新,包括下述步骤:提供具有容错性的文件系统区;在执行软件更新时,对软件的压缩代码进行解压缩,并将解压缩的代码装载到随机存取存储器中;基于差分数据对随机存取存储器中的软件进行更新;压缩更新的软件;以及将与压缩更新软件的压缩更新部分相对应的压缩更新代码序列的备份存储在文件系统区中,然后将与压缩更新软件的压缩更新部分相对应的压缩更新代码序列写回到非易失性存储器中。
在与压缩更新软件的压缩更新部分相对应的压缩更新代码序列被写入非易失性存储器之前,压缩更新代码序列的备份被存储到具有容错性的文件系统区。因此,即使在执行软件更新时由于断电而写回到非易失性存储器失败,当电力恢复后,存储在文件系统区中的与压缩更新软件的压缩更新部分相对应的压缩更新代码序列也被写回到非易失性存储器的相应区,然后软件更新能够再继续。
更具体地说,软件可以被分成多个构件(component),该多个构件都可以被压缩,多个被压缩的构件可以被存储在非易失性存储器中。当执行软件更新时,软件的所有的被压缩的多个构件可以被解压缩,并且被解压缩的构件可以被装载到随机存取存储器中。基于差分数据,在随机存取存储器中,仅有将要被更新的构件可以被更新。仅有更新的构件可以被压缩,并且被压缩的更新构件可以被写回到非易失性存储器的相应区。
在将非易失性存储器中的与压缩更新软件的压缩更新部分相对应的压缩更新代码序列备份存储在文件系统区中时,仅有被压缩的更新构件可以被存储在文件系统区中。
本发明的一个实施例也可以应用于一种计算机程序,该计算机程序用于实现具有下述功能或这样的功能的上述便携式终端设备:基于差分数据通过无线通信对作为压缩代码存储在置于便携式终端中的非易失性存储器中的软件进行更新。
根据本发明的一个实施例,在与压缩更新软件的压缩更新部分相对应的压缩更新代码序列被写入非易失性存储器之前,压缩更新代码序列的备份被存储在具有容错性的文件系统区中。因此,即使在更新数据被写入非易失性存储器时发生断电后,非易失性存储器中的软件的有效性依然能被维持,而且软件更新能够再继续。
附图说明
图1是示意性地示出根据本发明实施例的便携式终端的硬件结构的例子的框图;
图2示出便携式终端通过无线通信下载软件更新所必需的数据的状态;
图3示意性地示出根据本发明实施例的便携式终端的闪存中的更新之前的软件存储区;
图4示出根据本发明实施例的利用代码压缩进行软件更新的过程;
图5示出根据本发明实施例的在更新代码序列被压缩以及被写回到闪存时发生断电的情形;
图6示出在实施例中所使用的数据表的结构的例子;
图7示出实施例中在发生断电时,更新前的压缩代码通过使用文件系统区中的数据备份而被恢复的过程;
图8示出实施例中发生断电后再继续更新处理的过程;
图9是示意性地示出在本发明的实施例中启动便携式终端的处理的流程图;
图10是示意性地示出软件更新处理的流程图。
具体实施方式
将参照附图对本发明的实施例进行描述。
图1是示意性地示出根据本发明实施例的便携式终端10的硬件结构的例子的框图。在该实施例中,描述蜂窝电话被用作便携式终端10的例子。
便携式终端10包括控制器11、声音处理单元12、麦克风13、扬声器14、存储单元15、通信单元16、双工器(duplexer)17、天线17a、操作单元18和显示单元19。
控制器11包括中央处理单元(CPU)30,该中央处理单元包含在用于蜂窝电话的大规模集成(LSI)电路中。控制器11充当被配置为控制便携式终端10的处理以及控制构成便携式终端10的每个单元的数据处理单元。
声音处理单元12在控制器11的控制下,执行用于会话、音乐播放等的声音处理。另外,声音处理单元12接收来自麦克风13的声音,并将声音输出到扬声器14。
存储单元15在其中存储程序和数据。在这个实施例中,存储单元15包括诸如NAND存储器的非易失性闪存20和诸如同步动态随机存取存储器(SDRAM)的随机存取存储器(RAM)24。
闪存20是可再写的非易失性存储器,用于存储由控制器11执行的程序。闪存20包括:引导区21,用于存储引导程序;程序区22,用于存储程序代码;以及存储区23,用于存储其它必要的数据和程序。存储区23包括文件系统区,用于存储这些数据。该文件系统区具有容错性。由于具有容错性,甚至当断电时,文件系统区的数据也不会被破坏。这样的文件系统区用于存储多种类型的数据,例如电话薄、电子邮箱、网络内容、音乐和图像,以及程序。
当按照引导程序执行引导时,程序区22被装载到RAM 24中,在RAM 24中执行软件例如程序。更具体地说,当给控制器11和存储单元15供电时,将闪存20的引导区21的内容读取到控制器11的存储区中,并基于控制器11的内置逻辑执行这些内容。通过本发明的实施例定义的引导处理被合并在程序中。依照该程序,将要被执行的程序代码从闪存20装载到RAM 24中,并在RAM 24中执行该程序。
通信单元16在控制器11的控制下,通过无线通信且使用天线17a来执行与基站(未示出)之间的发送和接收。双工器17是天线双工器。也就是说,在发送信号和接收信号之间共享一根天线,双工器17包括滤波电路,该滤波电路具有将从天线接收的接收信号发送给接收单元和将从发送单元发送的发送信号发送给天线的功能。
操作单元18包括数字键和多种控制键。操作单元18具有将从用户接收的指令和信息发送给控制器11的功能。
显示单元19包括显示装置,例如液晶显示屏(LCD)或者有机电致发光(EL)装置。显示单元19具有向用户显示可见信息例如文本或图像(静止图像或运动图像)的功能。
现在将描述在实施例中执行的操作。
参照图2,使用FOTA,在必需更新软件的情况下,软件提供商将更新所必需的数据通过网络例如因特网存储在分布式服务器25中,并且便携式终端10通过无线通信下载更新所必需的数据。闪存包括软件存储区和文件系统区。更新所必需的数据存储在文件系统区中。
软件提供商将更新所必需的数据生成作为新版本和旧版本之间的差别,并在分布式服务器25中存储该所必需的数据。通过比较旧软件的未压缩的原始代码与新软件的未压缩的原始代码而生成这种差分数据。
图3示意性地示出便携式终端10的闪存20中的更新之前的软件存储区。在闪存20的程序区22(参见图1)中存储有:更新前的软件201,其包括多个压缩构件1~N;更新软件202,其是写入有更新处理的程序;以及软件更新数据26,其是用于软件更新的差分数据。软件更新数据26并不一定是被压缩的。另外,在闪存20的存储区23(参见图1)中,提供要由文件系统使用的文件系统区203。如上所述,软件更新数据26预先从分布式服务器25中下载。
图4示出利用代码压缩进行软件更新的过程。
在便携式终端10基于从分布式服务器25获取的软件更新数据26(差分数据)更新一个旧版本的软件的情况下,由于旧版本的软件被压缩并存储在闪存20中,差分数据不能被直接使用。因此,在用于便携式终端的利用代码压缩的相关技术的FOTA的情形中,通过压缩构成软件的多个构件中的每一个而得到的代码被临时解压缩,解压缩的代码被装载到RAM 24中并被转换为原始未压缩的代码(1)。因为在更新软件时甚至没有更新的构件都可能被参考,所以,所有的构件都被解压缩以及装载到RAM 24中。然后,对RAM24中的未压缩的代码使用差分数据执行软件更新(2)。图4的例子示出在软件更新中构件1和3被更新的情形。随后,更新的代码被压缩并且压缩的更新的代码被写回到闪存20(3)。
图5示出当更新代码序列在被压缩和写回到闪存20中时发生断电的情形。在图4所示的软件更新处理中,假设,例如,当压缩更新代码序列正被写回到闪存20中(2)时发生断电(3)。在这种情况下,更新前的压缩代码序列就被破坏了。作为一个结果,即使在电力恢复后(4)重新启动时对压缩代码序列进行解压缩和传送(5),解压缩也不能被成功地执行。因此,在RAM中的与已破坏的构件相对应的构件变得有缺陷,更新处理不能被再继续。
正常地,便携式终端使用电池作为电源。与静止的装置相比,由于电池残余量减少或由于终端落下等原因而使电池组脱落,所以,在执行处理时,发生断电的可能性很大。
根据本发明的实施例,对便携式终端使用利用代码压缩的FOTA的更新处理的再继续能够被保证,而不管在什么时候发生断电。
图6示出用于本实施例的数据表40的结构的例子。数据表40定义了各压缩构件的大小和各压缩构件存储在闪存20中的位置(从开始块到结束块)。数据表40预先被置于便携式终端10的存储单元15的预定区域中。在数据表40中,对于构成软件程序的各个压缩构件来说,闪存20中的压缩构件的大小、以及压缩构件的开始块和结束块都被存储。在软件被存储到闪存20中时,数据表40生成,并且生成的数据表40存储在存储单元15中。当软件更新被执行时,必要时数据表40的内容也被更新。
参照图7,在发生断电的情形下,更新前的压缩代码通过文件系统区中的备份被恢复的过程将被描述。
当执行更新处理时,闪存20中的更新前的软件被解压缩,解压缩的软件被传送到RAM 24(1),如上述描述。然后,完成对RAM24中的构件的更新(2),与更新的构件相对应的压缩代码序列被复制到文件系统区203(3)。在复制的情况下,数据表40的值被参考,与将要被复制的构件相对应的压缩代码序列的位置也被复制到文件系统区203。因此,通过参考数据表40,仅有将要被更新的构件能被备份在文件系统区203中。随后,与更新的构件相对应的压缩代码序列被写回到闪存20中(4)。在当正在写的时候发生断电的情形下(5),由于更新处理中断,所以,正被写入到闪存20的构件(在图7所示的例子中的构件1)的数据被破坏。
当电力供应恢复后(6),与已被复制到文件系统区203的更新的构件相对应的压缩代码序列被写到闪存20中的合适的位置(指定位置)(7)。因此,正进行写处理的构件被更新。在构件被再次解压缩并传送到RAM 24中的情形下,对将要被更新的下一个构件的更新处理能被正常地再继续。
在发生断电后再继续更新处理的程序将参照图8描述。在构件1~N被解压缩后,解压缩的构件1~N被再次传送到RAM 24,软件更新被执行(1)。在这种情形下,更新处理从当最后一次发生断电时正进行写入处理的构件之后的将要被更新的构件处再继续。在本实施例中,假设在构件1的压缩和写入被执行后(2),当压缩的构件3正被写入到闪存20中时(3)再次发生断电。在构件3被写入闪存20之前,与构件3相对应的压缩代码序列被复制到文件系统区203。在与构件3相对应的压缩代码序列正被写入闪存20时发生断电的情形下,闪存20中的对应构件的区域被破坏。然而,在电力恢复和重新启动之后(4),已被备份在文件系统区203中的压缩的构件3被读取,并且读取的压缩的构件3被写入到闪存20中的对应位置(5)。因此,实现对构件3的更新完成的状态,能从将要被更新的下一构件处再继续更新处理((6)和(7))。
图9示出根据本实施例的启动便携式终端10的处理的流程图。图9所示的处理由图1所示的控制器11执行。
控制器11确定是否要执行软件更新(步骤S11)。步骤S11中的确定是通过检查是否设置预定的标志来进行,当用于更新的差分数据被下载时标志被设定。若在步骤S11中确定不执行软件更新,则正常的软件被启动(步骤S13)。若在步骤S11中确定执行软件更新,则启动更新软件(步骤S12)。也就是说,闪存20中的更新软件202被装载到RAM 24,并且更新软件202被执行。若更新软件202已经被压缩,则更新软件202的解压缩在更新软件202被装载到RAM 24之前被执行。
图10是示意性地示出软件更新处理的流程图。软件更新处理也是通过控制器11来执行的。
控制器11确定是否由于断电等原因而导致更新处理被中断(步骤S21)。如下所述,执行步骤S21的确定。也就是说,更新处理被启动后,指示更新已被完成的最后构件的信息以非易失性的方式被记录,因此当启动更新处理时该信息能被参考。
若在步骤S21中确定更新处理正被中断,则将正进行写入处理的构件从文件系统区203写入到闪存20的对应区域(步骤S22)。用于存储将要被更新的构件的非易失性存储器的块,能通过参考数据表40被确认。
然后,将要被更新的软件的所有的构件都被解压缩,并且,解压缩的构件被装载到RAM 24中(步骤S23)。接着,将要被更新的软件的差分数据被装载到RAM 24(步骤S24)。步骤S23和S24的处理可以被颠倒次序执行。
随后,装载的将要被更新的软件在RAM 24中基于差分数据被更新(步骤S25)。在这种情形下,已被更新的构件从将被处理的目标处被排除。当对将要被更新的所有构件的更新都完成后,RAM 24中的更新的软件构件被压缩且压缩的更新的软件构件被复制到文件系统(步骤S26)。然后,压缩的软件构件被写回到闪存20的对应区域(步骤S27)。如有必要,数据表40被更新(步骤S28)。
尽管以上描述了本发明的优选实施例,但在不脱离本发明的实质和范围的情况下对本发明可以做多种修改和变化。
本领域技术人员应当会理解,在所附权利要求或其等同形式的范围内,根据设计要求和其他因素,会想到多种修改、组合、子组合和替换。
Claims (11)
1、一种软件更新方法,用于基于差分数据通过无线通信对作为压缩代码存储在置于便携式终端内的非易失性存储器中的软件进行更新,该方法包括以下步骤:
提供具有容错性的文件系统区;
在软件更新执行时,对所述软件的压缩代码进行解压缩,并且将已解压缩的代码装载到随机存取存储器;
基于所述差分数据,在所述随机存取存储器中更新所述软件;
对已更新的软件进行压缩;以及
将与压缩更新软件的压缩更新部分相对应的压缩更新代码序列的备份存储在所述文件系统区中,然后将与所述压缩更新软件的压缩更新部分相对应的压缩更新代码序列写回到所述非易失性存储器。
2、根据权利要求1所述的软件更新方法,
其中,在由于在执行所述软件更新时断电而导致到所述非易失性存储器的写回失败的情形下,在电力恢复后,将存储在所述文件系统区中的与所述压缩更新软件的所述压缩更新部分相对应的所述压缩更新代码序列写回到所述非易失性存储器的对应区域,然后再继续进行所述软件更新。
3、根据权利要求1或2所述的软件更新方法,
其中,将所述软件分为多个构件,对所述多个构件进行压缩,并且,将已压缩的所述多个构件存储在所述非易失性存储器中,
其中,在执行所述软件更新时,对所述软件的所有的已压缩的所述多个构件进行解压缩,并且将已解压缩的构件装载到所述随机存取存储器中,
其中,基于所述差分数据,在所述随机存取存储器中仅仅更新要被更新的构件,以及
其中,仅仅对已更新的构件进行压缩,并且,将已压缩的更新构件写回到所述非易失性存储器的对应区域。
4、根据权利要求3所述的软件更新方法,
其中,在将所述非易失性存储器中的与所述压缩更新软件的所述压缩更新部分相对应的所述压缩更新代码序列的备份存储于所述文件系统区中的情形下,仅仅将所述压缩更新构件存储在所述文件系统区中。
5、根据权利要求4所述的软件更新方法,
其中,在将所述软件的所述压缩代码存储于所述非易失性存储器中的情形下,生成用于定义所述压缩构件被存储在所述非易失性存储器中的位置的数据表,并且生成的数据表以非易失性的方式被存储,以及
其中,在将所述压缩更新构件存储于所述文件系统区中的情形下,通过参考所述数据表确认所述压缩更新构件将被存储在所述非易失性存储器中的位置。
6、一种便携式终端设备,用于基于差分数据通过无线通信对作为压缩代码存储在置于便携式终端内的非易失性存储器中的软件进行更新,该设备包括:
存储单元,被配置为包含具有容错性的文件系统区;
随机存取存储器,被配置为存储所述软件;和
数据处理装置,用于在执行软件更新时对所述软件的所述压缩代码进行解压缩;将已解压缩的代码装载到所述随机存取存储器中;基于所述差分数据在所述随机存取存储器中更新所述软件;对已更新的软件进行压缩;将与压缩更新软件的压缩更新部分相对应的压缩更新代码序列的备份存储在所述文件系统区中;然后将与所述压缩更新软件的所述压缩更新部分相对应的所述压缩更新代码序列写回到所述非易失性存储器。
7、根据权利要求6所述的便携式终端设备,
其中,在由于在执行所述软件更新时断电而导致到所述非易失性存储器的写回失败的情形下,在电力恢复后,所述数据处理装置将存储在所述文件系统区中的与所述压缩更新软件的所述压缩更新部分相对应的所述压缩更新代码序列写回到所述非易失性存储器的对应区域,然后再继续进行所述软件更新。
8、根据权利要求6或7所述的便携式终端设备,
其中,将所述软件分为多个构件,对所述多个构件进行压缩,并且,将已压缩的所述多个构件存储在所述非易失性存储器中,
其中,在执行所述软件更新时,所述数据处理装置对所述软件的所有的已压缩的所述多个构件进行解压缩,将已解压缩的构件装载到所述随机存取存储器中,基于所述差分数据,在所述随机存取存储器中仅仅更新要被更新的构件,仅仅对已更新的构件进行压缩,并且,将已压缩的更新构件写回到所述非易失性存储器的对应区域。
9、根据权利要求8所述的便携式终端设备,
其中,在将所述非易失性存储器中的与所述压缩更新软件的所述压缩更新部分相对应的所述压缩更新代码序列的备份存储于所述文件系统区中的情形下,所述数据处理装置仅仅将所述压缩更新构件存储在所述文件系统区中。
10、根据权利要求9所述的便携式终端设备,
其中,在将所述软件的所述压缩代码存储于所述非易失性存储器中的情形下,所述数据处理装置生成用于定义所述压缩构件被存储在所述非易失性存储器中的位置的数据表,并且将生成的数据表以非易失性的方式被存储,以及
其中,在将所述压缩更新构件存储于所述文件系统区中的情形下,所述数据处理装置通过参考所述数据表确认所述压缩更新构件将被存储在所述非易失性存储器中的位置。
11、一种便携式终端设备,用于基于差分数据通过无线通信对作为压缩代码存储在置于便携式终端内的非易失性存储器中的软件进行更新,该设备包括:
存储单元,被配置为包含具有容错性的文件系统区;
随机存取存储器,被配置为存储所述软件;和
数据处理单元,被配置为在执行软件更新时对所述软件的所述压缩代码进行解压缩;将已解压缩的代码装载到所述随机存取存储器中;基于所述差分数据在所述随机存取存储器中更新所述软件;对已更新的软件进行压缩;将与压缩更新软件的压缩更新部分相对应的压缩更新代码序列的备份存储在所述文件系统区中;然后将与所述压缩更新软件的所述压缩更新部分相对应的所述压缩更新代码序列写回到所述非易失性存储器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007170673A JP4944686B2 (ja) | 2007-06-28 | 2007-06-28 | ソフトウェア更新方法および携帯端末装置 |
JP2007170673 | 2007-06-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101334736A true CN101334736A (zh) | 2008-12-31 |
Family
ID=39638542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008101289780A Pending CN101334736A (zh) | 2007-06-28 | 2008-06-27 | 软件更新方法和便携式终端设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9298444B2 (zh) |
EP (1) | EP2017726A3 (zh) |
JP (1) | JP4944686B2 (zh) |
CN (1) | CN101334736A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102044295A (zh) * | 2009-10-16 | 2011-05-04 | 三星电子株式会社 | 非易失性存储器系统以及在电源中断期间保存数据的方法 |
CN102592085A (zh) * | 2011-12-27 | 2012-07-18 | 中兴通讯股份有限公司 | 一种无线通信终端及行业软件安全运行方法 |
CN102609325A (zh) * | 2012-01-10 | 2012-07-25 | 中兴通讯股份有限公司 | 一种软件下载方法及终端 |
CN102831001A (zh) * | 2012-09-11 | 2012-12-19 | 北京百纳威尔科技有限公司 | 软件升级包的制作方法及装置、程序的升级方法及设备 |
CN103154900A (zh) * | 2010-10-15 | 2013-06-12 | 株式会社日立解决方案 | 编入程序更新方法、编入程序更新程序、电子设备、网络系统 |
CN103605552A (zh) * | 2013-11-29 | 2014-02-26 | Tcl通力电子(惠州)有限公司 | Mcu的升级方法和装置 |
CN102087608B (zh) * | 2009-12-04 | 2015-06-17 | 康佳集团股份有限公司 | 一种嵌入式程序压缩方法,解压缩方法和嵌入式系统 |
CN109085998A (zh) * | 2017-06-14 | 2018-12-25 | 罗伯特·博世有限公司 | 用于运行半导体存储器的方法和设备 |
CN109284187A (zh) * | 2018-08-29 | 2019-01-29 | 维沃移动通信有限公司 | 一种应用处理方法、装置和移动终端 |
CN110402428A (zh) * | 2017-03-24 | 2019-11-01 | 日立汽车系统株式会社 | 车载控制装置、及程序更新软件 |
CN113595556A (zh) * | 2021-07-30 | 2021-11-02 | 深圳市华星光电半导体显示技术有限公司 | 补偿数据的压缩存储方法、装置、电子设备及存储介质 |
CN113821236A (zh) * | 2020-06-18 | 2021-12-21 | Abb瑞士股份有限公司 | 用于确定自动化设备的软件更新的可用性的系统 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5478090B2 (ja) * | 2009-02-25 | 2014-04-23 | 京セラ株式会社 | 電子機器 |
CN101930387A (zh) * | 2009-06-19 | 2010-12-29 | 上海惠普有限公司 | 用于更新压缩只读文件系统的改进的容错方法及装置 |
EP2333660B1 (en) | 2009-12-04 | 2016-10-05 | ST-Ericsson SA | Method of and apparatus for providing a logical view of data stored in an non-volatile memory |
JP5383516B2 (ja) * | 2010-01-06 | 2014-01-08 | キヤノン株式会社 | 画像形成装置及びそのファームウェア更新方法、並びにプログラム |
CN101854428A (zh) * | 2010-03-04 | 2010-10-06 | 宇龙计算机通信科技(深圳)有限公司 | 一种移动终端开机恢复文件的方法 |
JP2012048540A (ja) * | 2010-08-27 | 2012-03-08 | Canon Inc | 画像処理装置及びその制御方法、情報処理システム、並びにプログラム |
EP2697906A1 (en) * | 2011-04-11 | 2014-02-19 | Marvell World Trade Ltd. | Method for compression and real-time decompression of executable code |
CN102830984B (zh) * | 2011-06-14 | 2016-07-06 | 联想(北京)有限公司 | 固件更新的方法、芯片以及通信终端 |
JP2013218388A (ja) * | 2012-04-05 | 2013-10-24 | Sharp Corp | プログラム更新装置、方法、プログラム、及び記憶媒体 |
US20140007074A1 (en) | 2012-06-27 | 2014-01-02 | Google Inc. | Methods for updating applications |
JP2017054372A (ja) * | 2015-09-10 | 2017-03-16 | パナソニックIpマネジメント株式会社 | 制御方法およびそれを利用した通信装置 |
CN107368290A (zh) * | 2016-05-12 | 2017-11-21 | 阿里巴巴集团控股有限公司 | 确定增量数据方法及装置、更新数据包方法、装置及系统 |
US11416236B2 (en) | 2017-07-07 | 2022-08-16 | Qualcomm Incorporated | Over-the-air (OTA) updating of partially compressed firmware |
JP6838714B2 (ja) * | 2018-03-28 | 2021-03-03 | 日立Astemo株式会社 | 車載制御装置 |
KR102626253B1 (ko) * | 2018-11-23 | 2024-01-17 | 현대자동차주식회사 | Ota를 이용한 차량용 소프트웨어 업데이트 방법 및 장치 |
US11379024B2 (en) | 2019-09-26 | 2022-07-05 | Micron Technology, Inc. | Systems and methods capable of bypassing non-volatile memory when storing firmware in execution memory |
CN113805927A (zh) * | 2020-06-11 | 2021-12-17 | 中移(苏州)软件技术有限公司 | 一种代码更新方法、装置、电子设备及计算机存储介质 |
US20230214210A1 (en) * | 2022-01-05 | 2023-07-06 | Honeywell International Inc. | Interruptable bsdiff delta decompression |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100260028B1 (ko) * | 1996-08-13 | 2000-06-15 | 윤종용 | 화일시스템의 정보 복구방법 |
US6463501B1 (en) * | 1999-10-21 | 2002-10-08 | International Business Machines Corporation | Method, system and program for maintaining data consistency among updates across groups of storage areas using update times |
JP2003157204A (ja) * | 2001-11-20 | 2003-05-30 | Canon Inc | データ書き換え装置及びデータ書き換え方法並びに記憶媒体 |
JP2005258562A (ja) * | 2004-03-09 | 2005-09-22 | Matsushita Electric Ind Co Ltd | データ更新装置及びデータ更新方法 |
JP2006059319A (ja) * | 2004-07-21 | 2006-03-02 | Ricoh Co Ltd | 情報処理装置、プログラムおよび記憶媒体 |
US7756833B2 (en) * | 2004-09-22 | 2010-07-13 | Microsoft Corporation | Method and system for synthetic backup and restore |
JP2006309516A (ja) | 2005-04-28 | 2006-11-09 | Sony Ericsson Mobilecommunications Japan Inc | ソフトウェア更新システムおよびソフトウェア更新管理装置 |
CN101326492B (zh) * | 2005-10-06 | 2013-07-17 | 雷德本德有限公司 | 用于更新包括压缩版本的内容的方法和系统 |
JP2007170673A (ja) | 2007-01-29 | 2007-07-05 | Ntn Corp | 電食防止型転がり軸受 |
-
2007
- 2007-06-28 JP JP2007170673A patent/JP4944686B2/ja not_active Expired - Fee Related
-
2008
- 2008-05-23 US US12/126,444 patent/US9298444B2/en not_active Expired - Fee Related
- 2008-06-23 EP EP08158746A patent/EP2017726A3/en not_active Withdrawn
- 2008-06-27 CN CNA2008101289780A patent/CN101334736A/zh active Pending
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102044295B (zh) * | 2009-10-16 | 2016-05-11 | 三星电子株式会社 | 非易失性存储器系统以及在电源中断期间保存数据的方法 |
CN102044295A (zh) * | 2009-10-16 | 2011-05-04 | 三星电子株式会社 | 非易失性存储器系统以及在电源中断期间保存数据的方法 |
US8819336B2 (en) | 2009-10-16 | 2014-08-26 | Samsung Electronics Co., Ltd. | Nonvolatile memory system and related method of preserving stored data during power interruption |
CN102087608B (zh) * | 2009-12-04 | 2015-06-17 | 康佳集团股份有限公司 | 一种嵌入式程序压缩方法,解压缩方法和嵌入式系统 |
CN103154900A (zh) * | 2010-10-15 | 2013-06-12 | 株式会社日立解决方案 | 编入程序更新方法、编入程序更新程序、电子设备、网络系统 |
CN102592085A (zh) * | 2011-12-27 | 2012-07-18 | 中兴通讯股份有限公司 | 一种无线通信终端及行业软件安全运行方法 |
CN102592085B (zh) * | 2011-12-27 | 2015-09-16 | 中兴通讯股份有限公司 | 一种无线通信终端及行业软件安全运行方法 |
US9104518B2 (en) | 2011-12-27 | 2015-08-11 | Zte Corporation | Wireless communication terminal and method for securely running industry software |
WO2013104154A1 (zh) * | 2012-01-10 | 2013-07-18 | 中兴通讯股份有限公司 | 一种软件下载方法及终端 |
CN102609325B (zh) * | 2012-01-10 | 2015-12-16 | 中兴通讯股份有限公司 | 一种软件下载方法及终端 |
CN102609325A (zh) * | 2012-01-10 | 2012-07-25 | 中兴通讯股份有限公司 | 一种软件下载方法及终端 |
CN102831001A (zh) * | 2012-09-11 | 2012-12-19 | 北京百纳威尔科技有限公司 | 软件升级包的制作方法及装置、程序的升级方法及设备 |
CN102831001B (zh) * | 2012-09-11 | 2015-09-16 | 北京百纳威尔科技有限公司 | 软件升级包的制作方法及装置、程序的升级方法及设备 |
CN103605552B (zh) * | 2013-11-29 | 2017-12-29 | Tcl通力电子(惠州)有限公司 | Mcu的升级方法和装置 |
CN103605552A (zh) * | 2013-11-29 | 2014-02-26 | Tcl通力电子(惠州)有限公司 | Mcu的升级方法和装置 |
CN110402428A (zh) * | 2017-03-24 | 2019-11-01 | 日立汽车系统株式会社 | 车载控制装置、及程序更新软件 |
CN110402428B (zh) * | 2017-03-24 | 2024-01-30 | 日立安斯泰莫株式会社 | 车载控制装置、及程序更新软件 |
CN109085998A (zh) * | 2017-06-14 | 2018-12-25 | 罗伯特·博世有限公司 | 用于运行半导体存储器的方法和设备 |
CN109284187A (zh) * | 2018-08-29 | 2019-01-29 | 维沃移动通信有限公司 | 一种应用处理方法、装置和移动终端 |
CN113821236A (zh) * | 2020-06-18 | 2021-12-21 | Abb瑞士股份有限公司 | 用于确定自动化设备的软件更新的可用性的系统 |
CN113595556A (zh) * | 2021-07-30 | 2021-11-02 | 深圳市华星光电半导体显示技术有限公司 | 补偿数据的压缩存储方法、装置、电子设备及存储介质 |
CN113595556B (zh) * | 2021-07-30 | 2023-10-17 | 深圳市华星光电半导体显示技术有限公司 | 补偿数据的压缩存储方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP4944686B2 (ja) | 2012-06-06 |
EP2017726A3 (en) | 2009-09-02 |
JP2009009392A (ja) | 2009-01-15 |
EP2017726A2 (en) | 2009-01-21 |
US9298444B2 (en) | 2016-03-29 |
US20090007090A1 (en) | 2009-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101334736A (zh) | 软件更新方法和便携式终端设备 | |
US10114655B2 (en) | Rapid start up method for electronic equipment | |
US7698698B2 (en) | Method for over-the-air firmware update of NAND flash memory based mobile devices | |
CN101026848B (zh) | 移动终端和软件更新方法 | |
US8156320B2 (en) | Method and apparatus for fast booting a portable computing device allowing for immediate operation | |
US7085957B2 (en) | Upgrading of firmware with tolerance to failures | |
US8539471B2 (en) | Updating firmware of an electronic device | |
CN101719959B (zh) | 移动终端关键文件自动备份和自动恢复的方法及装置 | |
US8726259B2 (en) | System and method for preserving device parameters during a FOTA upgrade | |
US20080216066A1 (en) | Program upgrade system and method for ota-capable mobile terminal | |
US7512777B2 (en) | Method and system for maintaining system management BIOS | |
CN101377744A (zh) | 一种终端设备软件升级恢复方法及装置 | |
CN101771804A (zh) | 一种数字电视接收终端软件系统的备份还原方法 | |
CN101119188B (zh) | 一种实现业务不中断的单板升级方法 | |
CN110825419A (zh) | 一种固件刷新方法、装置及电子设备和存储介质 | |
CN105094873A (zh) | 一种手持终端系统切换方法及装置 | |
JP2009230513A (ja) | メモリの空き容量拡大装置、方法、プログラム及び携帯端末装置 | |
US20110041142A1 (en) | Electronic apparatus having multiple operating systems and data modification method thereof | |
CN112083944A (zh) | Linux设备的系统升级装置及方法 | |
KR100636518B1 (ko) | 이동통신단말기의 펌웨어 업그레이드 방법 | |
CN102202129A (zh) | 实现手机操作系统加载的方法 | |
KR101273914B1 (ko) | 플랫폼 라이브러리 다이나믹 링킹기능이구비된 단말장비 및 그 제어방법 | |
CN117112313B (zh) | 业务容灾切换方法、装置、设备及存储介质 | |
CN114610816A (zh) | 数据库扩容方法、装置及系统 | |
KR20060026582A (ko) | 개인 정보 단말기의 데이터 보존 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C53 | Correction of patent of invention or patent application | ||
CB02 | Change of applicant information |
Address after: Tokyo, Japan Applicant after: Sony Mobile Communications Japan Inc Address before: Tokyo, Japan Applicant before: Sony Ericsson Mobile Communication japan Co., Ltd. |
|
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: SONY ERICSSON MOBILE COMMUNICATION JAPAN CO., LTD. TO: SONY MOBILE COMMUNICATIONS JAPAN, INC. |
|
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20081231 |