CN101253779B - 在电子设备初始化期间检测错误的方法及装置 - Google Patents

在电子设备初始化期间检测错误的方法及装置 Download PDF

Info

Publication number
CN101253779B
CN101253779B CN2006800252773A CN200680025277A CN101253779B CN 101253779 B CN101253779 B CN 101253779B CN 2006800252773 A CN2006800252773 A CN 2006800252773A CN 200680025277 A CN200680025277 A CN 200680025277A CN 101253779 B CN101253779 B CN 101253779B
Authority
CN
China
Prior art keywords
described device
equipment
tracking data
memory
time
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.)
Expired - Fee Related
Application number
CN2006800252773A
Other languages
English (en)
Other versions
CN101253779A (zh
Inventor
西里·奎尔
路易斯-泽维尔·卡博内尔
让-克劳德·科尔马格罗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
InterDigital CE Patent Holdings SAS
Original Assignee
Thomson Licensing SAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of CN101253779A publication Critical patent/CN101253779A/zh
Application granted granted Critical
Publication of CN101253779B publication Critical patent/CN101253779B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4425Monitoring of client processing errors or hardware failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4432Powering on the client, e.g. bootstrap loading using setup parameters being stored locally or received from the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • H04N21/4586Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4882Data services, e.g. news ticker for displaying messages, e.g. warnings, reminders

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明允许检测在电子装置驻留软件的发起阶段期间发生的问题。该检测通过使用在该阶段期间写入到非易失性存储器中的信息来进行。该信息在成功之后被删除。在失败的情况下,下次重启时,可以使用该信息去检测问题。

Description

在电子设备初始化期间检测错误的方法及装置
技术领域
本发明涉及电子装置初始化的领域,更准确地,涉及在嵌入到该装置中的操作系统的初始化阶段期间发生的问题的检测。
背景技术
具有操作系统的电子装置的初始化方案一般如下所述:
在第一阶段,将系统内核载入内存并执行。该内核一般被设计为最小。它提供最小的、基本的功能例如内存管理器和任务调度器。该内核经常被静态地设计以使其初始化和发起是可复制的。因此,除非出现硬件故障,内核初始化是确信能够成功的。
在第二阶段,发起特定数量的服务。这些服务提供给该系统更细致的功能。它们由内核支持。这些服务提供:例如,外围设备的管理、该装置与外部世界的通信的层的任何必要的管理、输入/输出外围设备,网络等等。这些服务还可以包括管理用户的喜好以及在该装置的先前的使用期间所存储的配置参数的恢复以及涉及该装置的特殊目的的任何服务。
这些服务的复杂性和用户的识别以及该装置的环境参数使确保该阶段的成功变得困难得多。实际上,不能够检测所有的情况而且错误仍然会发生。
在第三阶段,一旦构成系统的所有服务都被发起,应用程序也被发起。该应用程序将最终确定在其环境下的装置的功能。该应用程序在完全的、可运行的操作系统上发起。该系统一般允许校正在该应用程序中出现的错误。经常地,重新发起该应用程序就足够了。
由此我们可以理解最严重的错误是那些在第二阶段,即服务发起阶段所发生的错误。存在一些方法尝试处理这些错误。例如,在个人计算机世界里,系统一般提供几个发起模式,其中包括由发起最小化系统所组成的“无差错”模式。该最小化系统一般不尝试初始化服务,且提供给用户校正这些服务的发起参数的界面。通过这种方式,当面临初始化错误时,用户能够校正错误的原因并恢复可用的装置。这种校正可直到完全替换系统。该方法能够在计算机世界中正确发挥功能,但其需要用户具有一定的技术且容忍这类问题。
然而,在“普通公共”电子领域中,不会考虑应用相同的方法。而且,普通公共装置的用户不愿意轻易接受装置故障。事实上,其习惯于一般不发生故障的低复杂程度的装置。而且,也不能要求这样的用户拥有“手动”校正潜在的问题所必须的技术。
使之能够校正错误的第一个措施是更新系统的能力。对于许多装置都存在该可能性。例如,可以与个人计算机相连接的装置经常能够由来自该计算机的系统版本来更新。数字电视接收机也一般能够通过接收系统软件的新版本进行更新。该方法允许克服系统的设计错误或系统内存转储(memorydump)的损坏、或增加新的功能。一般仅当满足特定数量的标准时才做出开始下载操作的决定。这些标准中有是否存在新的驻留软件版本或检测到装置中现有软件的已损坏版本。
文献US6393585似乎公开了按照这样一种方法来发起终端。按照该文献,在启动(startup)期间用户载入并发起(launch)第一应用程序,如果出现问题,则其载入另一个应用程序。这样的方法不允许灵敏地处理启动问题。
另一个处理在普通公共装置中的错误的措施为重启装置的附加可能性。这种重启操作可以为自动的或被用户的特定动作所控制。该重启措施允许系统重发起且允许处理在使用装置其中所发生的问题。
因此,可能还没有满足触发新软件版本的下载的标准,但系统服务的初始化阶段导致了问题。在这种情况下,该问题驱使系统重启。然后会发生都导致错误的一连串重启,并由此导致新的重启。
发明内容
本发明允许检测在电子装置驻留软件的发起阶段期间发生的问题,所述发起阶段被分为几个步骤或模块。该检测通过使用在该阶段期间以及在发起每个模块之前写入到非易失性存储器中的信息来进行。在成功的情况下,该信息随后被删除。因此在失败的情况下,在下次重启期间,可以使用该信息来检测问题和相关的模块。因此对在启动期间可能发生的问题的检测的高精确度使用户受益。
本发明涉及一种检测在具有永久存储器的电子装置启动期间发生错误的方法,所述装置由驻留软件控制,其特征在于所述驻留软件启动处理包括多个模块的连续发起,所述方法包括至少以下步骤:
在第一次启动期间,对于所述多个模块的每个模块,在所述每个模块发起之前向所述装置存储器写入跟踪数据的至少一个步骤,所述跟踪数据包括所述启动处理的状态;
在所述第一次启动的结束,当所述第一次启动成功时,从所述装置存储器删除所述跟踪数据的全部;
在第二次启动期间,按照写入到装置存储器中的所述跟踪数据检测在第一次启动期间发生的错误的步骤。
有利地,该启动处理包括连续发起多个模块且包括在每个模块被发起前向存储器写入信息的步骤。
按照一个特定实施例,该方法还包括:一旦驻留软件至少一部分的无错发起完成就删除所述写入到存储器中的信息的步骤。
按照一个特定实施例,所述错误检测步骤通过检测在启动处理中写入到存储器中的所述信息的存在来进行。
按照一个特定实施例,该方法还包括:在检测到至少一个先前启动发生错误之后的警报的触发。
按照一个特定实施例,该方法还包括:当警报触发时,恢复所述装置的至少一个参数的默认值的步骤。
按照一个特定实施例,该方法还包括:当警报触发时在该装置后续启动期间禁止至少一个模块的发起的步骤。
按照一个特定实施例,该方法还包括:当警报触发时,导致驻留软件新版本的下载的步骤。
按照一个特定实施例,该方法还包括:当警报触发时,导致为用户显示信息的步骤。
本发明还涉及一种电子装置,包括永久存储器、被设计来控制该电子装置的驻留软件、以及一旦所述装置启动时发起所述驻留软件的设备,其特征在于所述驻留软件包括在所述启动期间连续发起的多个模块,所述装置还包括:在第一次启动期间、在每个模块的发起之前将跟踪数据写入到所述装置存储器中的设备;当所述第一次启动成功时在所述第一次启动的结束从所述永久存储器删除所述跟踪数据的全部的设备;以及按照写入到永久存储器中的所述跟踪数据检测在所述第一次启动期间发生的错误的设备。
按照一个特定实施例,该装置还包括:在驻留软件的至少一部分的无错发起完成时删除所述写入到存储器中的信息的设备。
按照一个特定实施例,该装置还包括:在检测到至少一个先前启动发生错误之后触发警报的设备。
按照一个特定实施例,该装置还包括:当警报触发时重置所述装置的至少一个参数的默认值的设备。
按照一个特定实施例,该装置还包括当警报触发时在下一次装置启动期间禁止至少一个模块的发起的设备。
按照一个特定实施例,该装置还包括当警报触发时导致驻留软件新版本的下载的设备。
按照一个特定实施例,该装置还包括当警报触发时为用户显示信息的装置。
附图说明
通过阅读下面的说明可以更好地理解本申请,并能够看出其他特定特征和优点,该说明参考附图:
图1示出了按照本发明实施例的方法的流程图;
图2示出了按照本发明实施例的装置;
图3示出了按照本发明实施例的装置的体系结构的例子;
图4示出了按照本发明实施例的装置的软件的发起顺序的例子。
具体实施方式
将被描述的本发明的实施例可出现在数字电视解码器领域,但并不限制在该领域。这些解码器负责接收和解码广播电视服务。这样的服务可以用多种技术广播,例如卫星、电缆、电面波、和最近的类似因特网的计算机网络。这些服务一般以数字数据流的形式进行广播,其中可能组合了若干服务,且组合了每个服务的不同的成分。这些成分可以包括音频成分、视频成分、和关于服务的信息。也可以在该流中找到用来显示电子节目指南的信息,交互应用的信息,和其他种类的信息。这些成分中的某些可被压缩且该服务一般以其只能由被授权观看的人们使用的方式来编码。观看这样的服务要求使用解码装置,其可以接收广播数字流、分离、解码、解压缩、并同步不同的成分,以在例如电视上恢复它们。该解码器还必须能够接收、存储、和显示数据与有关的节目例如节目指南、以及应用程序(例如游戏等等)。
图2示出了这样的设备的体系结构的例子。解码器自身以框2.1为轮廓。作为例子给出的解码器为通过计算机网络例如因特网接收服务的解码器。因此,其通过以太网接口2.7连接到调制解调器,例如使用电话线提供连接的DSL(数字用户线)2.2。所接收的数字流在处理器2.9的控制下通过总线2.1之后被多路分配器2.12多路分解。随后音频和视频成分由解码器2.6解码和/或解压缩。任何附加数据例如菜单由图形处理器2.8进行处理。来自解码器2.6和图形处理器2.8的数据将由数字-模拟转换器2.4转换为音频和视频信号。按照电视标准如PAL或NTSC产生这些信号2.5,以在电视机2.3上显示。解码器由处理器2.9控制。该处理器运行存储在闪存2.10中的操作系统。该闪存具有永久的特性,因此,在装置的电源关闭时,存储在闪存内的信息被保持在存储器内。该系统使用RAM(随机访问存储器)作为工作存储器。
该种装置一般在软件层的控制下操作,图3示出了其体系结构的例子。在该图中,解码器的硬件由框3.11表示。第一驱动层3.10使该硬件能够被管理。系统内核3.2实现基本的系统机制,如任务管理器和调度器。解码器与IP网络之间的通信由IP栈3.9管理。在系统内核之上实现特定数量的模块,其中一些在IP通信层之上实现。非穷尽地,在这些模块中可以有SNMP(简单网络管理协议)客户端3.4,其用于允许从中央控制台管理一组解码器。还有更新管理器3.5,其使之能够通过下载新的软件部分来管理驻留软件更新。另外,还有条件访问模块3.6,例如在支付电视报价的情景下,其可用于检查用户确实被授权观看所接收的流。视频点播(VOD)模块3.7允许对点播广播内容的访问进行控制。多播控制模块3.8负责管理在该模式下的包括电视服务的流的接收。服务列表的控制模块3.3负责恢复和维护其有权使用的服务的列表。
因此这些模块提供一系列服务,这些服务在以下意义上使用系统内核的功能,即它们通常被作为由内核管理和调度的任务发起。按照它们的需要,它们使用IP通信层或硬件驱动。例如,访问控制模块使用芯片卡阅读器模块驱动。
总的说来,由应用程序3.1管理该装置,其目的在于给用户提供其装置的操作界面。该应用程序因此提供一系列功能,例如通过所连接的电视机显示可用节目的列表、选择其中一个节目的可能性、和由解码器接收上述的节目。为执行操作,这些功能每个都要使用所述模块的服务和在装置中发起的系统的服务。
该驻留软件系列包括驱动、内核、模块、和应用程序,存储在闪存中。当该装置启动时,通常软件必须被载入RAM中并以图4所示的顺序发起。在第一步E1,解码器启动。然后,在第二步(E2),验证驻留软件、内核、驱动、服务模块、和应用程序的镜像的完整性。实际上,对于存储在闪存中或任何其他种类的永久存储器中的软件的损坏,按照惯例包括一个系统,其用于验证该软件的完整性并在损坏的情况下下载完整的替代版本。该系统可以在CRC(循环冗余编码)的基础上操作,其在存储器中增加从软件整体求得的代码。在系统发起的早期阶段,在发起所存储的代码的任何部分之前,在代码上进行CRC运算并同所存储的代码进行比较。在不一致的情况下,检测到损坏并下载替代版本。这种CRC保护可应用于整个软件或代码模块。通过这种方式,永远不会试图发起损坏的代码。步骤E2还检查是否要求系统更新,即使在系统完整的情况下也如此。实际上,在特定的情况下,例如解码器的驻留软件的新版本是可用的,或由于其他理由,应用程序可以请求下载新的驻留软件。通常这通过以下来实现:在存储器中的已知区域中放置下载标志,以及附加必要信息例如所需软件版本的标识符。当满足更新条件、不完整或有下载请求时,驻留软件版本被下载并作为已存在版本的替代置于存储器中。在该步骤的结束,该装置必然具备驻留软件的完整版本。当组成存储在存储器中的软件副本的每个字节与参考版本中的相应的字节相匹配时,就称该软件是完整的。这意味着没有物理的或软件的过程修改值或损坏任何这些字节。
然后,在第二步骤(E3),系统内核被载入到存储器并被发起。接着,在附图中未示出的驱动已经被发起的步骤之后,系统内核载入并发起服务。如步骤E8所示一个接一个地发起这些服务,这将被重复直到所有的服务都被发起。一旦发起了所有的服务,在步骤E10中发起应用程序。然后解码器是可操作的且准备好被使用。
因此,可以将该软件发起分解为对应于内核发起、服务发起、和应用程序发起的三个阶段。这些阶段的每一个会有执行问题。根据每个阶段的不同特性,错误的种类、其发生的可能性、它们对系统操作的影响、以及可预见的校正措施不同。
内核发起阶段特征在于在硬件中执行的最小的软件。该软件一般不考虑参数或考虑有限数量的外部参数。因此彻底测试内核的操作通常是可能的。我们拥有操作保持相对简单且在稳定的环境下执行的软件。由此在这点上错误发生的可能性变低且一般是由于硬件故障或存储在闪存里的版本损坏。
服务发起阶段特征在于更复杂的功能,这意味着其软件更难于以彻底的方式检测。另外,很多这种模块在发起时使用外部参数。例如,存在使用包括在芯片卡中的信息的访问控制模块,服务列表控制器可以搜索网络上的服务列表或用以前使用时保存的列表初始化。模块也经常使用也是在以前使用时保存的用户参数。因此服务软件模块是在变化的环境中运行的相对复杂的程序。结果,对于所有可能的参数值的彻底地检测它们一般是不可能的。它们也会经受硬件故障或保存在存储器中的软件损坏。
对于应用程序发起阶段,其特征为执行条件变化更多的更复杂的服务发起阶段。实际上,除必须要考虑的不同的参数之外,其执行还必须与用户和用户关于解码器可能采取的所有的动作的相互作用。其同样可能经受硬件的故障或保存在存储器中的其软件损坏。
现在将描述为更好地管理错误而可能采取的不同措施。
至于硬件故障,一般不能做些什么,因为用户必须将装置送去维修。
已经观察到内核遭遇错误的主要原因在于硬件故障和其保存的软件镜像的损坏。通常没有为该编码规划其他错误恢复机制。
对于应用程序,一般也具有检测在执行期间由于软件问题引起的阻塞的机制。该机制,被称为看门狗复位,对于系统包括初始化向0减少的计数器。应用程序以一种从不达到0的方式有规律地增加该看门狗复位计数器。当应用程序冻结时,其不再能够增加计数器,则其达到零值。当计数器达到值0时,系统触发系统再初始化,重启解码器。该重启一般足以重建装置的操作状态。由于在应用程序的操作阶段期间发生的问题一般是由于其使用或外部条件的发生,该重启导致新的发起,其中对问题负有责任的条件已经消失了。
在服务发起阶段,在内存中的软件损坏和硬件故障之外,还可能经历发起问题。实际上,这些服务具有一定的复杂性且,另外它们的发起可能依赖于外部参数例如最新的服务列表或用户偏爱。这些模块不能在所有可能的外部参数值的情况下被彻底地检测。因此,发起中可能发生阻塞。这些问题一般不能通过重启装置来解决,这样的重启未改变被考虑的参数。引起模块执行错误的参数每次都会引起模块执行错误。在这种情况下,当发起模块时被启动的装置可能经历错误。然后,该错误导致装置重启。在重启时这样的错误再次出现,且装置进入重启的死循环。
图1呈现了按照本发明的一个实施例的启动图,其允许检测这类情况并采取校正措施。该实施例基于在服务发起阶段期间记忆切换点的事实。该记忆通过将“跟踪”(trace)数据写入存储器中来实现。当启动成功时,在服务启动阶段的结束处从存储器中删除这些跟踪数据。然而,当在服务之一发起期间出现问题时,在到达删除这些跟踪数据的阶段之前,发生重启。在启动期间,存储器中存在跟踪数据指示先前的启动没有完成。而且,跟踪数据的值允许识别引起问题的服务。在步骤E1,装置启动。接着为验证装置软件的完整性的步骤E2,并且如有必要下载新的驻留软件。接下来步骤E3发起内核和驱动。在步骤E3结束时,检查写入到存储器的跟踪数据的存在。如果不存在跟踪数据,则前面的启动是成功的,且可以开始服务发起处理。这些信息在步骤E7以第一跟踪数据的形式记忆。然后在步骤E8发起第一服务。接下来,通过每次在步骤E7中存储服务启动处理的状态,重复步骤E7和E8。该状态可以是,例如,最后发起或下一个将要发起的服务的参考。当所有的服务都已经被发起时,在步骤E9中删除跟踪数据。在该实施例中,该步骤还重置将在下面描述的异常计数器。接着,服务已经被成功发起,应用程序发起步骤E10结束装置的启动处理。
当服务的发起失败时,装置或立即重启或在装置阻塞之后根据用户的指令重启。在任何情况下,重启发生在启动处理可以执行跟踪数据删除的步骤E9之前。因此,在重启期间,在内核发起步骤E3结束时执行的跟踪数据存在检测将是肯定的。这种情况下,步骤E4包括增加异常计数器。该计数器用于计算连续失败的启动的次数。在步骤E5删除跟踪数据。这两个步骤的顺序并不重要。接下来执行检测,以检测异常计数器与门限值的关系。如果超出了该门限值,将触发警报以允许采取校正动作。该异常计数器关联门限值检测的用法允许仅在一定次数的连续失败启动发生错误时才触发警报。该用法是可选的;实际上,第一次启动失败时就触发警报也是可能的。但在这种情况下,当发生问题是由于(例如)启动处理中的偶尔中断,例如电源停电或装置被用户关闭,也可能会触发警报。只要没有达到门限值,通过执行步骤E7到E10来尝试启动。门限值典型地为几个单元,3或5。这个值越高,就需要越多的失败的启动才能触发警报;这个值越低,由于偶然问题导致触发警报的风险越高。
多种类型的校正动作都是可能的。第一种可能时将系统重置为默认的配置。换句话说,所有的参数,例如用户简档(user profile)、其偏好、服务列表都被重置为默认值。通过这种方式,获得已知的和经过测试的配置,其允许启动发生。故障服务的发起也可以被禁止且除了一个或多个服务外重启该装置。这可能导致功能的降低,但可以允许用户校正这个问题。下载驻留软件新版本的请求也可以写进存储器中以重置该装置到已知的状态。可以为用户显示消息。也可以实现恢复策略,该恢复策略中,参数被初始地重置为默认值,如果这还不够,可以禁止某些服务,从而在这些动作失败的情况下,可以要求下载新版本的驻留软件。优选地,用户将通过屏上消息或其它通信方式例如装置上激活特定信号的来了解该情况。
本实施例的描述并不是限制性的。本领域技术人员能够理解可以适当地改变。特别地,删除跟踪数据可以替换为由写入指示最后的启动已经成功的参数,该参数被将初始化为指示在服务发起阶段之前的问题的值。在不离开本发明的框架的前提下以多种方式组合校正动作也是显然的。选择跟踪数据写入存储器的不同的时刻和内容也是可能的。

Claims (13)

1.一种检测在具有永久存储器的电子装置启动期间发生错误的方法,所述装置由驻留软件控制,其特征在于所述驻留软件启动处理包括多个模块的连续发起,所述方法包括至少以下步骤:
在第一次启动期间,对于所述多个模块的每个模块,在所述每个模块发起之前向所述装置存储器写入跟踪数据的至少一个步骤,所述跟踪数据包括所述启动处理的状态;
在所述第一次启动的结束,当所述第一次启动成功时,从所述装置存储器删除所述跟踪数据的全部;
在第二次启动期间,按照写入到装置存储器中的所述跟踪数据检测在第一次启动期间发生的错误的步骤。
2.按照权利要求1所述的方法,其特征在于所述错误检测步骤包括基于所述跟踪数据识别引起错误的模块。
3.按照权利要求1到2之一所述的方法,其特征在于所述方法还包括:在检测到至少一个先前启动发生错误之后触发警报。
4.按照权利要求3所述的方法,其特征在于所述方法还包括:当警报触发时,恢复所述装置的至少一个参数的默认值的步骤。
5.按照权利要求3所述的方法,其特征在于所述方法还包括:当警报触发时,在下一次装置启动期间禁止至少一个模块的发起的步骤。
6.按照权利要求3所述的方法,其特征在于所述方法还包括:当警报触发时,导致驻留软件新版本的下载的步骤。
7.按照权利要求3所述的方法,其特征在于所述方法还包括:当警报触发时,导致为用户显示信息的步骤。
8.一种电子装置,包括永久存储器、被设计来控制该电子装置的驻留软件、以及一旦所述装置启动时发起所述驻留软件的设备,其特征在于所述驻留软件包括在所述启动期间连续发起的多个模块,所述装置还包括:在第一次启动期间、在每个模块的发起之前将跟踪数据写入到所述装置存储器中的设备;当所述第一次启动成功时在所述第一次启动的结束从所述永久存储器删除所述跟踪数据的全部的设备;以及按照写入到永久存储器中的所述跟踪数据检测在所述第一次启动期间发生的错误的设备。
9.按照权利要求8所述的装置,其特征在于所述装置还包括:在检测到至少一个先前启动发生错误之后触发警报的设备。
10.按照权利要求9所述的装置,其特征在于所述装置还包括:当警报触发时,重置所述装置的至少一个参数的默认值的设备。
11.按照权利要求10所述的装置,其特征在于所述装置还包括:当警报触发时,在下一次装置启动期间禁止至少一个模块的发起的设备。
12.按照权利要求10所述的装置,其特征在于所述装置还包括:当警报触发时,导致驻留软件新版本的下载的设备。
13.按照权利要求10所述的装置,其特征在于所述装置还包括:当警报触发时为用户显示信息的设备。
CN2006800252773A 2005-07-11 2006-07-07 在电子设备初始化期间检测错误的方法及装置 Expired - Fee Related CN101253779B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0552135A FR2888353A1 (fr) 2005-07-11 2005-07-11 Procede de detection d'erreurs lors de l'initialisation d'un appareil electronique et appareil implementant le procede
FR0552135 2005-07-11
PCT/EP2006/064024 WO2007006758A1 (fr) 2005-07-11 2006-07-07 Procede de detection d'erreurs lors de l'initialisation d'un appareil electronique et appareil implementant le procede

Publications (2)

Publication Number Publication Date
CN101253779A CN101253779A (zh) 2008-08-27
CN101253779B true CN101253779B (zh) 2011-08-31

Family

ID=36084195

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800252773A Expired - Fee Related CN101253779B (zh) 2005-07-11 2006-07-07 在电子设备初始化期间检测错误的方法及装置

Country Status (8)

Country Link
US (1) US20090276655A1 (zh)
EP (1) EP1908305B1 (zh)
JP (1) JP2009505172A (zh)
KR (1) KR20080024169A (zh)
CN (1) CN101253779B (zh)
DE (1) DE602006007006D1 (zh)
FR (1) FR2888353A1 (zh)
WO (1) WO2007006758A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101110021B1 (ko) * 2010-01-29 2012-02-29 한국과학기술원 소프트웨어에서의 상호작용 패턴을 이용한 결함 검출 방법
CN105224343B (zh) 2014-05-27 2019-09-17 阿里巴巴集团控股有限公司 一种应用程序的更新提示方法和装置
JP6147240B2 (ja) * 2014-12-05 2017-06-14 キヤノン株式会社 情報処理装置、該装置の制御方法、並びにプログラム
JP6744448B2 (ja) * 2019-04-12 2020-08-19 Necプラットフォームズ株式会社 情報処理装置、情報処理システム、故障検出方法、及びそのためのプログラム
CN110262840B (zh) * 2019-06-17 2023-01-10 Oppo广东移动通信有限公司 设备启动监控方法及相关产品
US11729474B2 (en) * 2020-08-07 2023-08-15 Arris Enterprises Llc System and method for ensuring media appliance stability

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230285B1 (en) * 1998-09-08 2001-05-08 Symantec Corporation Boot failure recovery
US6393585B1 (en) * 1998-12-23 2002-05-21 Scientific-Atlanta, Inc. Method and apparatus for restoring operating systems in a set-top box environment
EP1494119A1 (en) * 2003-06-30 2005-01-05 Thomson Multimedia Broadband Belgium Network equipment and a method for monitoring the start up of a such an equipment

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5432927A (en) * 1992-06-17 1995-07-11 Eaton Corporation Fail-safe EEPROM based rewritable boot system
JPH0635737A (ja) * 1992-07-15 1994-02-10 Matsushita Electric Works Ltd 自動障害復旧方式
US6381694B1 (en) * 1994-02-18 2002-04-30 Apple Computer, Inc. System for automatic recovery from software problems that cause computer failure
US5974546A (en) * 1997-05-08 1999-10-26 Micron Electronics, Inc. Apparatus and method to determine cause of failed boot sequence to improve likelihood of successful subsequent boot attempt
GB2332541B (en) * 1997-12-20 2002-12-04 Ibm Boot failure recovery system and method
JPH11327914A (ja) * 1998-05-11 1999-11-30 Nec Corp 自動インストールシステムおよび自動インストールプログラムを記録した記録媒体
US6948099B1 (en) * 1999-07-30 2005-09-20 Intel Corporation Re-loading operating systems
US6463531B1 (en) * 1999-09-16 2002-10-08 International Business Machines Corporation Method and system for monitoring a boot process of a data processing system providing boot data and user prompt
US7069578B1 (en) * 2000-02-04 2006-06-27 Scientific-Atlanta, Inc. Settop cable television control device and method including bootloader software and code version table for maintaining and updating settop receiver operating system software
US6763456B1 (en) * 2000-02-25 2004-07-13 Intel Corporation Self correcting server with automatic error handling
US6745343B1 (en) * 2000-07-13 2004-06-01 International Business Machines Corporation Apparatus and method for performing surveillance prior to boot-up of an operating system
US7137026B2 (en) * 2001-10-04 2006-11-14 Nokia Corporation Crash recovery system
EP1345124A1 (en) * 2002-03-14 2003-09-17 Hewlett-Packard Company Managing boot errors
EP1351144A1 (en) * 2002-04-04 2003-10-08 Hewlett-Packard Company Data processing system and method having an improved device initialisation process
US7350111B2 (en) * 2004-08-03 2008-03-25 Inventec Corporation Method of providing a real time solution to error occurred when computer is turned on
US7716464B2 (en) * 2005-06-23 2010-05-11 Intel Corporation Method to have fault resilient booting
WO2007005790A2 (en) * 2005-06-30 2007-01-11 Sling Media, Inc. Firmware update for consumer electronic device
US7493525B2 (en) * 2005-09-21 2009-02-17 Cisco Technology, Inc. Method and system for managing failure information

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230285B1 (en) * 1998-09-08 2001-05-08 Symantec Corporation Boot failure recovery
US6393585B1 (en) * 1998-12-23 2002-05-21 Scientific-Atlanta, Inc. Method and apparatus for restoring operating systems in a set-top box environment
EP1494119A1 (en) * 2003-06-30 2005-01-05 Thomson Multimedia Broadband Belgium Network equipment and a method for monitoring the start up of a such an equipment

Also Published As

Publication number Publication date
DE602006007006D1 (de) 2009-07-09
KR20080024169A (ko) 2008-03-17
WO2007006758A1 (fr) 2007-01-18
CN101253779A (zh) 2008-08-27
FR2888353A1 (fr) 2007-01-12
JP2009505172A (ja) 2009-02-05
US20090276655A1 (en) 2009-11-05
EP1908305A1 (fr) 2008-04-09
EP1908305B1 (fr) 2009-05-27

Similar Documents

Publication Publication Date Title
US7100011B2 (en) Method and system for reducing storage requirements for program code in a communication device
CN101253779B (zh) 在电子设备初始化期间检测错误的方法及装置
US20170039075A1 (en) Rapid start up method for electronic equipment
RU2346407C1 (ru) Способ и устройство для выполнения обновления программного обеспечения в цифровом телевизионном принимающем устройстве
CA2304144C (en) Downloading data
US8041988B2 (en) Firmware update for consumer electronic device
US20090222810A1 (en) Preventing Overwrite Of Nonessential Code During Essential Code Update
CN101377744B (zh) 一种终端设备软件升级恢复方法及装置
US6393585B1 (en) Method and apparatus for restoring operating systems in a set-top box environment
CN101895671B (zh) 一种机顶盒Loader模块升级方法及其机顶盒
CN102360298A (zh) 一种终端设备的软件升级方法
CN102222011A (zh) 一种机顶盒的软件升级方法及机顶盒
KR100782856B1 (ko) 디지털 방송 수신기의 소프트웨어 업그레이드 방법 및 장치
JP2007528534A (ja) システムソフトウェア更新サービスを通知するためのローダの利用
CN106331862A (zh) 一种机顶盒的软件升级方法及机顶盒
CN101211349A (zh) 一种生成数字电视开机门户页面的系统及其方法
CN102541595A (zh) 智能设备的升级方法、装置及智能设备
US8504814B2 (en) Resiliency against field-updated security elements
CN101212554B (zh) 一种升级机顶盒升级系统的方法
CN117056115B (zh) 应用程序的修复方法和装置、存储介质及电子设备
EP1527388B1 (en) Software download into a receiver
CN102164314B (zh) 一种基于数字电视终端中间件的数据管理方法及装置
CN1361979A (zh) 管理数字电视系统中服务列表一致性的方法及该系统中的接收机
CN112527371B (zh) 一种引导加载程序升级方法、装置、电子设备及存储介质
KR20060029689A (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
C14 Grant of patent or utility model
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: I Si Eli Murli Nor, France

Patentee after: THOMSON LICENSING

Address before: French Boulogne

Patentee before: THOMSON LICENSING

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190529

Address after: Paris France

Patentee after: Interactive digital CE patent holding Co.

Address before: I Si Eli Murli Nor, France

Patentee before: THOMSON LICENSING

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110831

Termination date: 20210707