具有断电保护的电视系统软件更新方法

文档序号:6643872阅读:221来源:国知局
专利名称:具有断电保护的电视系统软件更新方法
技术领域
本发明涉及一种具有断电保护的电视系统软件更新方法,特别是一种可减少存储空间需求的具断电保护的电视系统软件更新方法。
背景技术
随着家电一体化时代的到来,目前的电视产品,譬如3C电视,除具有传统的收视功能外,还具有如浏览网站、视频点播等多种多样的功能。这样的电视产品在其内部,或与其相连的机顶盒等装置中设有一存储了各种应用程序的存储器,通常为一闪速存储器(Flash Memory)。当用户输入一定的操作信号时,中央处理器从存储器中调出相应程序,并执行该程序设定的操作。为提高电视的性能或扩展其功能,电视厂家会不时推出新的系统软件,用户要获得新的服务功能则需对已有的系统软件进行更新,即将新的系统软件下载存储在存储器中,替代原来的软件。
其中,存储器存储的程序中包含有一更新(Loader)程序,它是一种实现电视系统软件更新功能的程序。它除了能够更新电视内部的应用程序,还能进行自我更新。而电视系统在软件更新过程中,可能会因突然断电等意外情况引起硬件崩溃造成系统无法启动。如果是在更新电视应用程序时中断,则只需再次执行更新程序即可恢复应用程序。但若是在更新更新程序时出错,则需要采取一定的措施来加以恢复。所谓断电保护功能,就是在软件更新过程中,为了上述情况出现而采取的软件保护措施,以保证更新程序在自我更新过程中因断电而被损坏后仍能被尽快恢复。
现有的更新程序自我更新断电保护措施采用的技术,是通过在存储器中增加备份更新程序来实现的。采用这种断电保护方法的电视,其存储器划分情况如图1所示,其包括数据区11、应用程序区13、备份更新程序区15、更新程序区17以及引导(Boot)程序区19五个部分。当然这五部分的顺序是可以改变的,但是缺一不可。在更新程序自我更新过程中,当由于断电而损坏了存储器中的更新程序时,则可以将备份更新程序区15中未损坏的备份更新程序恢复到存储器中正常的更新程序区17,以恢复更新程序。但采用这种方法需要在存储器内部设置双倍的更新程序区,因而会占用较大的存储器空间。

发明内容本发明所要解决的技术问题在于提供一种具有断电保护的电视系统软件更新方法,特别是一种可减少存储空间需求的具断电保护的电视系统软件更新方法。
本发明的另一个目的是提供一种具有断电保护的电视系统软件更新方法,该方法利用存储器的应用程序区对软件实现更新,减少备份更新程序区的设置,从而达到下载软件更新的目的。
本发明的思路是存储器设置不同的分区,使得更新程序在更新时被损坏时,应用程序不会被损坏。即在任何时刻,只可能更新更新程序或者应用程序其中之一。故在更新时出现断电等意外情况,只可能毁坏更新程序而应用程序完好,或者毁坏应用程序而更新程序完好。因此,当更新程序损坏时,应用程序是完好的,因此可以利用应用程序来恢复已损坏更新程序。因此,通过对应用程序的设置,使其具有恢复功能,便可实现断电后软件的更新。
所以,本发明是这样实现的一种具有断电保护的电视系统软件更新方法,所述电视的系统软件存储于一存储器中,其特征在于所述存储器分为数据区、应用程序区、更新程序区以及引导程序区四个部分,所述应用程序区中存储有用于实现电视应用功能的应用程序,所述更新程序中存储有用于实现下载和更新应用程序和更新程序的更新程序,所述应用程序中包含能够下载并更新更新程序的代码;当更新程序损坏时,通过所述应用程序完成对更新程序区的恢复。
应用程序的恢复功能是通过让其具有与更新程序相似的下载更新功能来实现,由于通常应用程序原来包含的代码已具有一些与更新程序相同的部分,故要使其实现相似的功能只需加入少量新的代码即可,而新加入代码所占用的存储空间必然会小于在存储器建立一块备份更新程序区的存储空间,因此能够节省资源。
所述能够下载并更新更新程序的代码根据一定条件启动下载功能,对下载的代码进行解析并将其存储至存储器中。
还可加入一损坏标志,该损坏标志由更新程序来进行设置,“TRUE”其表示更新程序或应用程序遭受损坏,“FALSE”表示更新程序或应用程序没有损坏。
如上所述的更新方法,还可设置有分别表示下载新的更新程序和新的应用程序的第一标志及一第二标志,;更新程序执行后首先读取所述第一标志及一第二标志,以确定进行何种更新,确认完毕后开始下载新的程序。
下载完成后,更新程序都会设置损坏标志为“TRUE”,即假设系统软件已经损坏;若更新顺利完成,则清除第一标志或第二标志以及损坏标志,将其均设置为“FALSE”;若未更新完毕,则判断是否有断电情况发生,如果有就直接结束更新而不进行标志清除操作。
引导程序会依序读取各个标志;首先判断第一标志是否为“TRUE”,如果是即直接更新应用程序,载入更新程序后结束引导;如果第一标志为“FALSE”,则会进一步判断第二标志是否为“TRUE”,如果是则更新更新程序,不是则直接载入应用程序执行应用功能后结束引导;但在进行更新更新程序的操作之前,引导程序还会判断损坏标志是否为“TRUE”,如果不是,直接载入更新程序执行更新操作;若为“TRUE”,则说明更新程序已在上次更新中损坏,需要修复,于是载入应用程序执行其恢复功能。
读取第一标志和损坏标志,如果两者均为“TRUE”,即可判断更新程序在上次更新中损坏,接下来应用程序通过新加入的代码实现更新程序的下载和更新,完成后清除第一标志和损坏标志(均设置为“FALSE”),表示更新程序已被恢复。
具体地说,在更新时,加入一损坏标志C。该损坏标志C由更新程序来进行设置,其表示更新程序或应用程序是否遭受损坏。同时,还设置有标志A和B,下载新的更新程序标志为A,新的应用程序标志为B;更新程序执行后首先读取标志A和B,以确定进行何种更新,确认完毕后开始下载新的程序。下载完成后,无论是下载新的更新程序(标志A为“TRUE”)还是新的应用程序(标志B为“TRUE”),在下载完之后,开始更新存储器中保存的系统软件之前,更新程序都会设置标志C为“TRUE”,即假设系统软件已经损坏。若更新顺利完成,则清除标志A或B以及标志C,将其均设置为“FALSE”;若未更新完毕,则判断是否有断电情况发生,如果有就直接结束更新而不进行标志清除操作。如此,即可在更新过程进行中因突然断电造成了损坏时,保持标志C及相应的更新标志A或B仍然是“TRUE”,在下次开机重启后,引导程序和应用程序读取标志后,将会再次进行更新。
引导程序会依序读取各个标志。首先判断标志A是否为“TRUE”,如果是即直接更新应用程序,载入更新程序后结束引导。如果标志A为“FALSE”,则会进一步判断标志B是否为“TRUE”,如果是则更新更新程序,不是则直接载入应用程序执行应用功能后结束引导。但在进行更新更新程序的操作之前,引导程序还会判断C是否为“TRUE”,如果不是,直接载入更新程序执行更新操作;若为“TRUE”,则说明更新程序已在上次更新中损坏,需要修复,于是载入应用程序执行其恢复功能读取标志A和C,如果两者均为“TRUE”,即可判断更新程序在上次更新中损坏,需要恢复。接下来应用程序通过新加入的代码实现更新程序的下载和更新,完成后清除标志A和C(均设置为“FALSE”),表示更新程序已被恢复。
本发明与现有技术相比具有以下优点本发明电视系统软件更新方法,具备断电保护功能,且减少了硬件内部的存储器空间需求,降低了硬件成本。

下面参照附图结合实施例对本发明作进一步说明。
图1为现有电视机中系统软件存储器的划分示意图。
图2为本发明电视机中系统软件存储器的划分示意图。
图3为本发明更新程序执行的流程图。
图4为本发明引导程序执行的流程图。
图5为本发明应用程序恢复已损坏更新程序的流程图。
具体实施方式请参阅图2,为本发明电视机中系统软件存储器的划分方式。其包括数据区31、应用程序区33、更新程序区35以及引导(Boot)程序区37四个部分。对应于不同的厂商或不同的平台,这四部分的顺序可以改变。
开机后,第一个要执行的程序是引导程序。通常,为达到软件更新的目的,在系统软件中设置有两个标志更新更新程序的标志(命名为标志A)以及更新应用程序的标志(命名为标志B)。在应用程序中,通过从网络中下载链接描述符(Linkage Descriptor),可以得到当前网络上的新软件是更新程序还是应用程序。如果是更新程序,则设置标志A为“TRUE”;如果是应用程序,则设置标志B为“TRUE”。引导程序会读取这两个标志来决定是否载入更新程序以进行更新操作,在进行更新操作之后,更新程序也会读取这两个标志,通过这些标志来判断是更新更新程序还是更新应用程序。
假设更新程序在自我更新过程中由于断电等意外原因而损坏,则由于不存在备份的更新程序,恢复它的唯一办法是再次重新下载并更新已损坏的更新程序。而此时更新程序自己已无法运行,不再具备执行重新下载和更新任务的功能,故只能由应用程序来加以实现。
同时,图2中的存储器划分可以保证在更新程序在更新时被损坏时,应用程序不会被损坏,因为它们并非存在于同一块存储器区域内。即在任何时刻,只可能更新更新程序或者应用程序其中之一。故在更新时出现断电等意外情况,只可能毁坏更新程序而应用程序完好,或者毁坏应用程序而更新程序完好。假如其被同时损坏,那电视机的相关功能必然处于瘫痪状态,也就不可能在此时进行更新,故两者实际上是不可能在更新的同时受到损坏的。因此,当更新程序损坏时,应用程序是完好的,因此可以利用应用程序来恢复已损坏更新程序。应用程序的恢复功能是通过让其具有与更新程序相似的下载更新功能来实现,由于通常应用程序为了实现网页浏览、视频点播等功能,其包含的代码已具有一些与更新程序相同的部分,如驱动代码、界面相关代码及实现下载功能的代码等,故要使其实现与更新程序相似的功能只需在其中加入能够下载并更新更新程序的代码即可。该代码能够根据一定条件启动下载功能,对下载的代码进行解析并将其存储至存储器中代码。上述加入代码所占用的存储空间必然会小于在存储器建立一块备份更新程序区的存储空间。
请参阅图3,在系统软件的更新过程中加入一损坏标志C。该损坏标志C由更新程序来进行设置,其表示更新程序或应用程序是否遭受损坏。更新程序执行后首先读取标志A和B,以确定进行何种更新,确认完毕后开始下载新的程序。下载完成后,无论是下载新的更新程序(标志A为“TRUE”)还是新的应用程序(标志B为“TRUE”),在下载完之后,开始更新存储器中保存的系统软件之前,更新程序都会设置标志C为“TRUE”,即假设系统软件已经损坏。若更新顺利完成,则清除标志A或B以及标志C,将其均设置为“FALSE”;若未更新完毕,则判断是否有断电情况发生,如果有就直接结束更新而不进行标志清除操作。如此,即可在更新过程进行中因突然断电造成了损坏时,保持标志C及相应的更新标志A或B仍然是“TRUE”,在下次开机重启后,引导程序和应用程序读取标志后,将会再次进行更新。
由于引导程序在开机后第一个被执行,故其需要保证在任何时候,不能装载已损坏的软件(损坏的更新程序或损坏的应用程序)来运行,因为这样会造成机器崩溃。因此,引导程序必须保证合理地调度和控制程序执行的流向,其执行的流程如图4所示。开机后,引导程序会依序读取各个标志。首先判断标志A是否为“TRUE”,如果是即直接更新应用程序,载入更新程序后结束引导。如果标志A为“FALSE”,则会进一步判断标志B是否为“TRUE”,如果是则更新更新程序,不是则直接载入应用程序执行应用功能后结束引导。但在进行更新更新程序的操作之前,引导程序还会判断C是否为“TRUE”,如果不是,直接载入更新程序执行更新操作;若为“TRUE”,则说明更新程序已在上次更新中损坏,需要修复,于是载入应用程序执行其恢复功能。
下面结合图5来说明应用程序执行恢复功能的流程。应用程序在执行后会依序读取标志A和C,如果两者均为“TRUE”,即可判断更新程序在上次更新中损坏,需要恢复。接下来应用程序通过新加入的代码实现更新程序的下载和更新,完成后清除标志A和C(均设置为“FALSE”),表示更新程序已被恢复,随后再执行其正常的应用功能。
权利要求
1.一种具有断电保护的电视系统软件更新方法,所述电视的系统软件存储于一存储器中,其特征在于所述存储器分为数据区、应用程序区、更新程序区以及引导程序区四个部分,所述应用程序区中存储有用于实现电视应用功能的应用程序,所述更新程序中存储有用于实现下载和更新应用程序和更新程序的更新程序,所述应用程序中包含能够下载并更新更新程序的代码;当更新程序损坏时,通过所述应用程序完成对更新程序区的恢复。
2.如权利要求1所述的具有断电保护的电视系统软件更新方法,其特征在于所述能够下载并更新更新程序的代码根据一定条件启动下载功能,对下载的代码进行解析并将其存储至存储器中。
3.如权利要求1所述的具有断电保护的电视系统软件更新方法,其特征在于还加入一损坏标志,该损坏标志由更新程序来进行设置,“TRUE”其表示更新程序或应用程序遭受损坏,“FALSE”表示更新程序或应用程序没有损坏。
4.如权利要求3所述的具有断电保护的电视系统软件更新方法,其特征在于还设置有分别表示下载新的更新程序和新的应用程序的第一标志及一第二标志,;更新程序执行后首先读取所述第一标志及一第二标志,以确定进行何种更新,确认完毕后开始下载新的程序。
5.如权利要求4所述的具有断电保护的电视系统软件更新方法,其特征在于下载完成后,更新程序都会设置损坏标志为“TRUE”,即假设系统软件已经损坏;若更新顺利完成,则清除第一标志或第二标志以及损坏标志,将其均设置为“FALSE”;若未更新完毕,则判断是否有断电情况发生,如果有就直接结束更新而不进行标志清除操作。
6.如权利要求4所述的具有断电保护的电视系统软件更新方法,其特征在于引导程序会依序读取各个标志;首先判断第一标志是否为“TRUE”,如果是即直接更新应用程序,载入更新程序后结束引导;如果第一标志为“FALSE”,则会进一步判断第二标志是否为“TRUE”,如果是则更新更新程序,不是则直接载入应用程序执行应用功能后结束引导;但在进行更新更新程序的操作之前,引导程序还会判断损坏标志是否为“TRUE”,如果不是,直接载入更新程序执行更新操作;若为“TRUE”,则说明更新程序已在上次更新中损坏,需要修复,于是载入应用程序执行其恢复功能。
7.如权利要求6所述的具有断电保护的电视系统软件更新方法,其特征在于读取第一标志和损坏标志,如果两者均为“TRUE”,即可判断更新程序在上次更新中损坏,接下来应用程序通过新加入的代码实现更新程序的下载和更新,完成后清除第一标志和损坏标志(均设置为“FALSE”),表示更新程序已被恢复。
全文摘要
一种具有断电保护的电视系统软件更新方法,其是将电视的存储器分为数据区、应用程序区、更新程序区以及引导程序区四个部分,应用程序区中存储有用于实现电视应用功能的应用程序,更新程序中存储有用于实现下载和更新应用程序和更新程序的更新程序,应用程序中包含能够下载并更新更新程序的代码;当更新程序损坏时,通过所述应用程序完成对更新程序区的恢复;启动恢复时,将该更新代码存储于更新程序区,通过该更新代码完成对更新程序区的恢复。本发明电视系统软件更新方法,具备断电保护功能,且减少了硬件内部的存储器空间需求,降低了硬件成本。
文档编号G06F11/14GK1955925SQ200510100600
公开日2007年5月2日 申请日期2005年10月28日 优先权日2005年10月28日
发明者王国印, 邹建宇, 李志淼, 杨斯妮 申请人:深圳Tcl新技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1