CN118132344B - Iptv机顶盒的运行控制方法和装置、机顶盒及介质 - Google Patents
Iptv机顶盒的运行控制方法和装置、机顶盒及介质 Download PDFInfo
- Publication number
- CN118132344B CN118132344B CN202410545780.1A CN202410545780A CN118132344B CN 118132344 B CN118132344 B CN 118132344B CN 202410545780 A CN202410545780 A CN 202410545780A CN 118132344 B CN118132344 B CN 118132344B
- Authority
- CN
- China
- Prior art keywords
- target
- application program
- file
- abnormal
- program
- 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
- 238000000034 method Methods 0.000 title claims abstract description 81
- 230000002159 abnormal effect Effects 0.000 claims abstract description 194
- 238000012544 monitoring process Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 7
- 238000012217 deletion Methods 0.000 description 6
- 230000037430 deletion Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 238000011084 recovery Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000009225 memory damage Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0736—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
- G06F11/1484—Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4437—Implementing a Virtual Machine [VM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management 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/4508—Management of client data or end-user data
- H04N21/4516—Management of client data or end-user data involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供的IPTV机顶盒的运行控制方法和装置、机顶盒及介质,涉及机顶盒运行控制技术领域。在本申请中,首先,在监测到目标应用程序处于异常运行状态时,对目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作;其次,判断异常文件管控操作是否执行成功;然后,在异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得目标应用程序基于重启后的目标操作系统正常运行。基于上述内容,可以改善现有技术中存在的机顶盒的操作系统容易崩溃的问题。
Description
技术领域
本申请涉及机顶盒运行控制技术领域,具体而言,涉及一种IPTV机顶盒的运行控制方法和装置、机顶盒及介质。
背景技术
基于用户的多种应用需求,在IPTV(Internet Protocol Television,使用互联网协议来传输电视节目和视频内容,与传统的有线或卫星电视不同,IPTV 使用互联网作为传输媒介,允许用户通过网络连接观看电视内容)机顶盒上一般会部署较多的应用,在应用的运行过程中,如果数据出错,会导致应用不能正常启动,机顶盒会反复重启该应用,就可能造成系统崩溃。
发明内容
有鉴于此,本申请的目的在于提供一种IPTV机顶盒的运行控制方法和装置、机顶盒及介质,以改善现有技术中存在的机顶盒的操作系统容易崩溃的问题。
为实现上述目的,本申请实施例采用如下技术方案:
一种IPTV机顶盒的运行控制方法,应用于机顶盒,所述IPTV机顶盒的运行控制方法包括:
在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作,其中,所述目标应用程序属于所述机顶盒上部署的应用程序,所述目标程序运行文件属于所述目标应用程序的运行数据;
判断所述异常文件管控操作是否执行成功;
在所述异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,其中,所述目标操作系统属于所述机顶盒上部署的操作系统。
在本申请实施例较佳的选择中,在上述IPTV机顶盒的运行控制方法中,所述在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作的步骤,包括:
在监测到目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件,其中,所述目标程序运行文件包括所述目标应用程序对应的第一类运行文件、第二类运行文件和第三类运行文件中的至少一种,所述第一类运行文件包括所述目标应用程序的代码和至少部分的元数据,且属于应用程序的执行文件,所述第二类运行文件属于对所述第一类运行文件进行优化后的文件,所述第三类运行文件属于对所述第一类运行文件进行编译操作后形成的文件;
在查找到所述目标程序运行文件之后,对所述目标程序运行文件执行预先配置的异常文件管控操作,其中,所述异常文件管控操作包括对所述目标程序运行文件进行删除的操作。
在本申请实施例较佳的选择中,在上述IPTV机顶盒的运行控制方法中,所述在监测到目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件的步骤,包括:
确定出需要进行监测的应用程序,得到至少一个待监测应用程序;
将所述至少一个待监测应用程序中的每一个待监测应用程序依次或并行确定为目标应用程序;
基于预先配置的目标监测程序,对确定出的任意一个所述目标应用程序进行运行状态的监测操作,得到对应的目标监测结果,其中,所述目标监测程序属于外壳脚本,用于监测所述目标应用程序的运行状态;
在所述目标监测结果反映出所述目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文。
在本申请实施例较佳的选择中,在上述IPTV机顶盒的运行控制方法中,所述在所述目标监测结果反映出所述目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件的步骤,包括:
在所述目标监测结果反映出所述目标应用程序处于异常运行状态时,确定出所述目标应用程序对应的目标路径,其中,所述目标路径包括第一目标位置、第二目标位置和第三目标位置,所述第一目标位置属于所述目标操作系统中存储用户数据的一个目录位置,所述第二目标位置属于所述第一目标位置的下级目录位置,用于存储基于寄存器的虚拟机优化后的应用程序代码,所述基于寄存器的虚拟机用于对所述第一类运行文件进行解释执行操作,所述第三目标位置属于所述第二目标位置的下级目录位置用于存储针对ARM架构优化的应用程序代码;
基于所述目标路径,获取所述目标应用程序对应的目标程序运行文件。
在本申请实施例较佳的选择中,在上述IPTV机顶盒的运行控制方法中,在执行所述判断所述异常文件管控操作是否执行成功的步骤之后,所述IPTV机顶盒的运行控制方法还包括:
在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作;
判断再次执行的所述异常文件管控操作是否执行成功;
在再次执行的所述异常文件管控操作执行成功之后,对所述目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,或者,在再次执行的所述异常文件管控操作执行失败之后,回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤。
在本申请实施例较佳的选择中,在上述IPTV机顶盒的运行控制方法中,在执行所述判断所述异常文件管控操作是否执行成功的步骤之后,所述IPTV机顶盒的运行控制方法还包括:
对执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤的次数进行统计操作,得到对应的目标统计次数;
将所述目标统计次数和预先配置的参考次数进行大小对比操作;
在所述目标统计次数大于所述参考次数时,确定不再回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤,并触发运行辅助操作系统,其中,所述辅助操作系统属于所述机顶盒上部署的操作系统,且所述辅助操作系统的量级小于所述目标操作系统的量级。
在本申请实施例较佳的选择中,在上述IPTV机顶盒的运行控制方法中,在执行所述判断所述异常文件管控操作是否执行成功的步骤之后,所述IPTV机顶盒的运行控制方法还包括:
对所述目标应用程序处于异常运行状态的开始时刻与当前时刻之间的时长进行统计操作,得到对应的目标统计时长;
将所述目标统计时长和预先配置的参考时长进行大小对比操作;
在所述目标统计时长大于所述参考时长时,确定不再回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤,并触发运行辅助操作系统,其中,所述辅助操作系统属于所述机顶盒上部署的操作系统,且所述辅助操作系统的量级小于所述目标操作系统的量级。
本申请实施例还提供了一种IPTV机顶盒的运行控制装置,应用于机顶盒,所述IPTV机顶盒的运行控制装置包括:
异常文件管控模块,用于在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作,其中,所述目标应用程序属于所述机顶盒上部署的应用程序,所述目标程序运行文件属于所述目标应用程序的运行数据;
管控结果判断模块,用于判断所述异常文件管控操作是否执行成功;
操作系统重启模块,用于在所述异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,其中,所述目标操作系统属于所述机顶盒上部署的操作系统。
在上述基础上,本申请实施例还提供了一种机顶盒,包括:
存储器,用于存储计算机程序;
与所述存储器连接的处理器,用于执行该存储器存储的计算机程序,以实现上述的IPTV机顶盒的运行控制方法。
在上述基础上,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序运行时执行上述的IPTV机顶盒的运行控制方法的各个步骤。
本申请提供的IPTV机顶盒的运行控制方法和装置、机顶盒及介质,首先,可以在监测到目标应用程序处于异常运行状态时,对目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作;其次,判断异常文件管控操作是否执行成功;然后,在异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得目标应用程序基于重启后的目标操作系统正常运行。基于上述内容,由于在对目标操作系统进行重启操作之前,会配置有目标程序运行文件的异常文件管控操作,且需要在异常文件管控操作执行成功之后,才会对目标操作系统进行重启操作,使得重启后的目标操作在运行目标应用程序时,可以避免读取到异常的目标程序运行文件,因此,可以改善现有技术中因读取到异常的目标程序运行是文件而导致的机顶盒的操作系统容易崩溃的问题,从而保障机顶盒的稳定运行。
附图说明
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
图1为本申请实施例提供的机顶盒的结构框图。
图2为本申请实施例提供的IPTV机顶盒的运行控制方法的流程示意图。
图3为本申请实施例提供的IPTV机顶盒的运行控制装置的方框示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本申请的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示,本申请实施例提供了一种机顶盒,可以包括存储器、处理器和IPTV机顶盒的运行控制装置。
其中,所述存储器和处理器之间直接或间接地电性连接,以实现数据的传输或交互。例如,相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述IPTV机顶盒的运行控制装置包括至少一个可以软件或固件(firmware)的形式存储于所述存储器中的软件功能模块。所述处理器用于执行所述存储器中存储的可执行的计算机程序,例如,所述IPTV机顶盒的运行控制装置所包括的软件功能模块及计算机程序等,以实现本申请实施例提供的IPTV机顶盒的运行控制方法。
可选地,所述存储器可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
并且,所述处理器可以是一种通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)、片上系统(System on Chip,SoC)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以理解,图1所示的结构仅为示意,所述机顶盒还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置,例如,还可以包括用于与其它设备(如后台服务器)进行信息交互的通信单元。
结合图2,本申请实施例还提供一种可应用于上述机顶盒的IPTV机顶盒的运行控制方法。其中,所述IPTV机顶盒的运行控制方法有关的流程所定义的方法步骤可以由所述机顶盒实现。
下面将对图2所示的具体流程,进行详细阐述。
步骤S110,在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作。
在本申请实施例中,所述机顶盒可以在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作。其中,所述目标应用程序属于所述机顶盒上部署的应用程序,所述目标程序运行文件属于所述目标应用程序的运行数据。另外,在所述目标应用程序处于异常运行状态时,所述目标应用程序对应的目标程序运行文件可以为存在异常的文件,即有错误的数据,例如,用户使用电视或机顶盒的过程中,如果不再观看电视节目,一般都是通过按遥控器电源键,或者直接关闭电视电源,在这个过程中,应用数据不能及时保存,就有可能造成DDR(动态数据刷新,Dynamic Data Refresh)出现冲内存(Memory Corruption,用于描述内存中的数据被非预期地修改或破坏的情况,它通常指的是由于程序错误、硬件故障、恶意软件等原因导致的内存数据异常或损坏的现象),使得相应的应用数据出错。示例性的,所述目标应用程序的具体类型不受限制,可以根据实际需求进行选择,例如,所述目标应用程序可以是视频观看应用、游戏应用等。
步骤S120,判断所述异常文件管控操作是否执行成功。
在本申请实施例中,所述机顶盒可以判断所述异常文件管控操作是否执行成功。示例性的,可以对所述异常文件管控操作的结果进行确定,使得可以基于所述异常文件管控操作的结果确定是否执行成功。
步骤S130,在所述异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行。
在本申请实施例中,所述机顶盒可以在所述异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行。其中,所述目标操作系统属于所述机顶盒上部署的操作系统,如所述机顶盒上的主操作系统,如Android 系统。
基于上述内容,由于在对目标操作系统进行重启操作之前,会配置有目标程序运行文件的异常文件管控操作,且需要在异常文件管控操作执行成功之后,才会对目标操作系统进行重启操作,使得重启后的目标操作在运行目标应用程序时,可以避免读取到异常的目标程序运行文件,因此,可以改善现有技术中因读取到异常的目标程序运行是文件而导致的机顶盒的操作系统容易崩溃的问题,从而保障机顶盒的稳定运行。
另外,上述的DDR是一种内存技术,用于保证内存中数据的可靠性和一致性,它通常用于动态随机存取存储器(DRAM)中,以下是DDR的具体工作过程:内存存储:首先,数据被存储在动态随机存取存储器(DRAM)中,DRAM是一种易失性存储器,意味着它需要周期性地刷新来保持存储数据的稳定性,否则数据会丢失;存储单元:DRAM中的数据以位或字节为单位存储在存储单元中,每个存储单元都包含一个电容和一个晶体管,电容用于存储数据位,而晶体管用于读取和写入数据;数据刷新:由于DRAM的电容性质,存储的电荷会逐渐泄漏,导致数据丢失,为了防止数据丢失,系统需要定期刷新DRAM中的数据,这个过程就是DDR中的动态数据刷新;自刷新周期:DRAM芯片通常会有一个自刷新周期,即芯片会定期自动进行数据刷新操作,以维持数据的有效性,这个周期的时间间隔可以通过芯片的配置或控制器来调整;刷新操作:在自刷新周期内,DRAM芯片会逐个存储单元地读取并重新写入其中的数据,以补充因电容泄漏而导致的数据损失,这个过程是逐个存储单元进行的,通常由DRAM控制器或内存控制器管理和执行;保持数据一致性:通过定期的刷新操作,DDR确保了内存中的数据持续有效,从而保持了数据的一致性和可靠性。
第一方面,对于步骤S110需要说明的是,对所述目标程序运行文件执行异常文件管控操作的具体方式不受限制,可以根据实际需求进行选择。
例如,在一种可以替代的实施方式中,在执行步骤S110时,若监测到所述目标应用程序处于异常运行状态,可以对所述目标应用程序对应的目标程序运行文件进行修正或恢复操作,例如,可以从备份的数据库中获取到相应的备份程序运行文件(该备份程序运行文件的形成方式不受限制,例如,可以是响应于用户的配置操作生成的一种数据等)
又例如,在另一种可以替代的实施方式中,为了充分避免具有错误的或异常的目标程序运行文件对所述目标应用程序的运行造成干扰,上述的步骤S110可以进一步包括步骤S111和步骤S112,具体内容如下所述。
步骤S111,在监测到目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件。
在本申请实施例中,在监测到所述目标应用程序处于异常运行状态时,可以先查找到所述目标应用程序对应的目标程序运行文件。其中,所述目标程序运行文件包括所述目标应用程序对应的第一类运行文件、第二类运行文件和第三类运行文件中的至少一种,所述第一类运行文件包括所述目标应用程序的代码和至少部分的元数据,且属于应用程序的执行文件(主要的执行文件),示例性的,所述第一类运行文件可以是指DEX(DalvikExecutable)文件,在基于Android系统的应用程序中,Java源代码会被编译成DEX文件,其中包含了应用程序的字节码。所述第二类运行文件属于对所述第一类运行文件进行优化后的文件,示例性的,所述第二类运行文件可以是指VDEX(Verified DEX)文件,用于提高应用程序的启动速度和运行性能。它可以包含预验证信息和其他优化信息,以提高应用程序的执行效率。所述第三类运行文件属于对所述第一类运行文件进行编译操作后形成的文件,示例性的,所述第三类运行文件可以是指ART(Android Runtime)文件,其中,ART文件是ART运行时环境下的一种优化后的二进制文件格式,与DEX文件相比,它经过了更多的优化和预处理,包括AOT编译、代码优化等,以提高应用程序的性能和响应速度。在Android 系统中,引入了ART运行时环境,其中的主要特性是将DEX文件预先编译成本地机器代码,以提高应用程序的性能和响应速度,并且,dex2oat是Android系统中的一个工具,用于将DEX文件转换为ART所需的本地机器代码。其中,当Android系统中的某个组件(可能是硬件或软件)导致了内存异常时,可能会影响到运行在其中的进程和线程,包括dex2oat工具所在的进程,这种内存异常可能包括内存泄漏、内存溢出、内存损坏等情况,如果在dex2oat运行时发生内存异常,可能导致其无法正常读取或处理DEX文件,进而导致应用程序的编译过程中出现异常或失败,例如,dex2oat工具在执行期间需要动态地分配内存来存储编译过程中的临时数据、中间结果等,如果发生内存异常,比如内存泄漏或内存溢出,可能会导致dex2oat无法正常分配所需的内存空间,进而影响其执行。
步骤S112,在查找到所述目标程序运行文件之后,对所述目标程序运行文件执行预先配置的异常文件管控操作。
在本申请实施例中,所述机顶盒可以在查找到所述目标程序运行文件之后,对所述目标程序运行文件执行预先配置的异常文件管控操作。其中,所述异常文件管控操作包括对所述目标程序运行文件进行删除的操作。也就是说,可以将所述目标程序运行文件予以删除。
需要说明的是,对DEX文件进行优化形成vdex文件,可以包括:
解耦信息:vdex文件将DEX文件中的不同部分(如类定义、方法定义等)进行解耦,使得ART运行时环境能够更高效地加载和执行其中的代码。这种解耦可以减少在应用程序启动时所需的时间和资源;
预验证:vdex文件可以包含预验证的信息,这些信息在应用程序加载和执行时可以帮助ART运行时环境更快速地验证应用程序的代码,预验证可以在编译阶段完成,减少运行时的验证开销;
存储更多的元数据:vdex文件可以存储更多的元数据信息,如类和方法的相关信息、调试信息等,这些额外的元数据可以帮助ART运行时环境更准确地进行代码优化和执行,提高应用程序的性能;
更高效的加载和执行:vdex文件中的优化可以使ART运行时环境更高效地加载和执行应用程序的代码,通过优化代码的布局和结构,可以减少加载时间和内存占用,并提高代码的执行效率;
动态重新编译:vdex文件可以包含一些额外的信息,使得ART运行时环境能够在运行时对应用程序的代码进行动态重新编译和优化。
可以理解的是,在上述的步骤S111中,在监测到目标应用程序处于异常运行状态时查找到目标程序运行文件的具体方式不受限制。
例如,在一种可以替代的实施方式中,为了使得能够及时确定出所述目标应用程序处于异常运行状态,从而提高后续处理的效率,使得可以及时进行异常文件管控操作,从而快速恢复目标应用程序的正常运行,上述的步骤S111可以进一步包括步骤S111a、步骤S111b、步骤S111c和步骤S111d,具体内容如下所述。
步骤S111a,确定出需要进行监测的应用程序,得到至少一个待监测应用程序。
在本申请实施例中,可以先确定出需要进行监测的应用程序,得到至少一个待监测应用程序。示例性的,可以将全部的应用程序(如针对用户的应用程序,如提供视频观看服务的应用程序、提供游戏服务的应用程序等)都作为待监测应用程序,使得监测的范围可以更广,也可以将全部的应用程序中的部分应用程序作为待监测应用程序,如随机选择一部分应用程序作为待监测应用程序,或者,也可以按照一定的筛选规则,筛选出一部分应用程序作为待监测应用程序,举例来说,可以将其中一些在历史上出现异常的占比或次数较大的应用程序作为待监测应用程序。
步骤S111b,将所述至少一个待监测应用程序中的每一个待监测应用程序依次或并行确定为目标应用程序。
在本申请实施例中,在得到至少一个所述待监测应用程序之后,可以将所述至少一个待监测应用程序中的每一个待监测应用程序依次(具体的顺序可以不受限制)或并行确定为目标应用程序。
步骤S111c,基于预先配置的目标监测程序,对确定出的任意一个所述目标应用程序进行运行状态的监测操作,得到对应的目标监测结果。
在本申请实施例中,在确定出所述目标应用程序之后,可以基于预先配置的目标监测程序,对确定出的任意一个所述目标应用程序进行运行状态的监测操作,得到对应的目标监测结果。其中,所述目标监测程序属于外壳脚本(如Shell脚本,通常使用Shell编程语言(如Bash)编写Shell脚本,该脚本包含了监测系统或应用程序所需的各种命令和逻辑,在脚本中,需要编写相应的逻辑来监测定义的监测项,可能涉及执行系统命令(如ps、top等)来获取进程信息,读取系统日志文件来检查异常情况,或执行其它系统调用来获取相关信息),用于监测所述目标应用程序的运行状态。
步骤S111d,在所述目标监测结果反映出所述目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件。
在本申请实施例中,在得到所述目标监测结果之后,若所述目标监测结果反映出所述目标应用程序处于异常运行状态时,可以查找到所述目标应用程序对应的目标程序运行文件,反之,若所述目标监测结果反映出所述目标应用程序未处于异常运行状态(即处于正常运行状态)时,可以不去查找所述目标应用程序对应的目标程序运行文件。
可选地,对于上述的步骤S111d,查找到所述目标应用程序对应的目标程序运行文件的具体方式不受限制,可以根据实际需求进行选择。
例如,在一种可以替代的实施方式中,为了可以实现高精度的目标程序运行文件的查找,使得查找到的目标程序运行文件的可靠性更高,上述的步骤S111d可以进一步包括以下步骤:
首先,在所述目标监测结果反映出所述目标应用程序处于异常运行状态时,可以确定出所述目标应用程序对应的目标路径,其中,所述目标路径包括第一目标位置、第二目标位置和第三目标位置,所述第一目标位置属于所述目标操作系统中存储用户数据的一个目录位置,所述第二目标位置属于所述第一目标位置的下级目录位置,用于存储基于寄存器的虚拟机优化后的应用程序代码,所述基于寄存器的虚拟机(Dalvik虚拟机,在Dalvik虚拟机中,应用程序的Java源代码首先被编译成Dalvik字节码,然后在Android设备上运行)用于对所述第一类运行文件进行解释执行操作,所述第三目标位置属于所述第二目标位置的下级目录位置用于存储针对ARM(高级RISC机器,Advanced RISC Machine)架构优化的应用程序代码;示例性的,所述第一目标位置具体可以为“/data/”,所述第二目标位置具体可以为“dalvik-cache/”,所述第三目标位置具体可以为“arm/”,也就是说,所述目标路径可以为“/data/dalvik-cache/arm/”;
其次,可以基于所述目标路径,获取所述目标应用程序对应的目标程序运行文件,由于所述目标路径指向了所述目标程序运行文件所在的存储位置,可以基于所述目标路径,获取到所述目标程序运行文件。
第二方面,对于步骤S120需要说明的是,判断所述异常文件管控操作是否执行成功的具体方式不受限制,可以根据实际需求进行选择。
例如,在一种可以替代的实施方式中,在所述异常文件管控操作属于删除操作时,可以判断在相应的位置(如所述目标路径指向的位置)是否还存在所述目标程序运行文件,如果在相应的位置不存在所述目标程序运行文件,可以判定所述异常文件管控操作执行成功,反之,如果在相应的位置存在所述目标程序运行文件,可以判定所述异常文件管控操作执行未成功,即所述异常文件管控操作执行失败。
第三方面,对于步骤S130需要说明的是,对所述目标操作系统进行重启操作的具体实施方式不受限制,可以根据实际需求进行选择。
例如,在一种可以替代的实施方式中,可以将机顶盒的目标操作系统完全关闭,然后,再启动所述目标操作系统。如此,重新启动后的目标操作系统,可以运行所述目标应用程序,使得目标应用程序可以正常运行。
第四方面,考虑到在执行步骤S120之后,得到的判断结果可能是所述异常文件管控操作执行失败,因此,为了使得所述目标应用程序能够正常运行,所述IPTV机顶盒的运行控制方法还可以包括步骤S140、步骤S150和步骤S160,具体内容如下所述。
步骤S140,在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作。
在本申请实施例中,所述机顶盒可以在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作,如对所述目标程序运行文件再次执行删除操作。
步骤S150,判断再次执行的所述异常文件管控操作是否执行成功。
在本申请实施例中,在执行步骤S140之后,所述机顶盒还可以判断再次执行的所述异常文件管控操作是否执行成功,例如,可以再次确定所述目标程序运行文件是否被删除。
步骤S160,在再次执行的所述异常文件管控操作执行成功之后,对所述目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,或者,在再次执行的所述异常文件管控操作执行失败之后,回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤。
在本申请实施例中,在再次执行的所述异常文件管控操作执行成功之后,所述机顶盒可以对所述目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,如前述的步骤S130。反之,在再次执行的所述异常文件管控操作执行失败之后,所述机顶盒可以回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤。也就是说,在再次执行的所述异常文件管控操作执行失败之后,所述机顶盒可以回转执行步骤S140,即再一次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作,使得所述目标程序运行文件能够被删除。
可以理解的是,在上述的实施方式中,为了使得所述目标程序运行文件能够被有效删除,配置了回转执行步骤S140的机制,在一种可以替代的实施方式中,为了避免回转执行步骤S140的机制导致资源浪费的问题,所述IPTV机顶盒的运行控制方法还可以包括步骤S170、步骤S180和步骤S190,具体内容如下所述。
步骤S170,对执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤的次数进行统计操作,得到对应的目标统计次数。
在本申请实施例中,所述机顶盒可以对执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤的次数进行统计操作,得到对应的目标统计次数,如对执行步骤S140的次数进行统计,得到目标统计次数。另外,在其它实施方式中,在进行统计时,也可以将第一次对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作进行统计。
步骤S180,将所述目标统计次数和预先配置的参考次数进行大小对比操作。
在本申请实施例中,所述机顶盒可以将所述目标统计次数和预先配置的参考次数进行大小比较,以确定所述目标统计次数是否大于所述参考次数,其中,所述参考次数的具体数值不受限制,可以根据实际需求进行配置,例如,在一种可以替代的实施方式中,所述参考次数可以为3、5等。
步骤S190,在所述目标统计次数大于所述参考次数时,确定不再回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤,并触发运行辅助操作系统。
在本申请实施例中,在对所述目标统计次数和所述参考次数进行大小比较之后,若所述目标统计次数大于所述参考次数,说明步骤S140的执行次数已经较多,可能所述异常文件管控操作的效果不佳,因此,为了避免资源的浪费,可以确定不再回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤,即不再执行步骤S140。但是,为了使得所述目标应用程序还是能够正常运行,可以触发运行辅助操作系统。其中,所述辅助操作系统属于所述机顶盒上部署的操作系统,且所述辅助操作系统的量级小于所述目标操作系统的量级,示例性的,所述目标操作系统可以为Android系统,所述辅助操作系统可以为recovery系统(一种轻量级的操作系统),recovery系统是一种嵌入式系统,用于修复、恢复或重置机顶盒。其中,recovery系统通常包括一些基本功能,如备份和恢复系统、更新固件、清除缓存和数据等。在机顶盒中,recovery系统通常由设备制造商或运营商提供,用于帮助用户在设备遇到问题时进行修复和维护,即通过recovery系统对所述目标应用程序的异常进行修复和维护等。
可以理解的是,在上述的实施方式中,为了使得所述目标程序运行文件能够被有效删除,配置了回转执行步骤S140的机制,在另一种可以替代的实施方式中,为了避免回转执行步骤S140的机制导致资源浪费的问题,所述IPTV机顶盒的运行控制方法还可以包括步骤S200、步骤S210和步骤S220,具体内容如下所述。
步骤S200,对所述目标应用程序处于异常运行状态的开始时刻与当前时刻之间的时长进行统计操作,得到对应的目标统计时长。
在本申请实施例中,所述机顶盒可以对所述目标应用程序处于异常运行状态的开始时刻与当前时刻之间的时长(间隔)进行统计,如此,可以得到对应的目标统计时长,即所述目标应用程序的异常持续时长。另外,在其它实施方式中,也可以从所述异常文件管控操作第二次执行失败的时刻开始进行统计,得到对应的目标统计时长。
步骤S210,将所述目标统计时长和预先配置的参考时长进行大小对比操作。
在本申请实施例中,所述机顶盒可以将所述目标统计时长和预先配置的参考时长进行大小比较,以确定所述目标统计时长是否大于所述参考时长,其中,所述参考时长的具体数值不受限制,可以根据需求进行配置,例如,在一种可以替代的实施方式中,所述参考时长可以为3、5分钟等。
步骤S220,在所述目标统计时长大于所述参考时长时,确定不再回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤,并触发运行辅助操作系统。
在本申请实施例中,在对所述目标统计时长和所述参考时长进行大小比较之后,若所述目标统计时长大于所述参考时长,说明基于所述异常文件管控操作的应用程序恢复操作的持续时长已经较长,为了避免持续的操作而导致资源浪费和用户等待过长时间的问题,可以确定不再回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤,即不再执行步骤S140。但是,为了使得所述目标应用程序还是能够正常运行,可以触发运行辅助操作系统,其中,所述辅助操作系统属于所述机顶盒上部署的操作系统,且所述辅助操作系统的量级小于所述目标操作系统的量级。
可以理解的是,在上述的实施方式中,对所述目标程序运行文件执行所述异常文件管控操作可以包括对所述目标程序运行文件进行删除操作,其中,考虑到对所述目标程序运行文件进行删除操作,一般需要较高的权限,因此,还可以预先进行权限配置,使得在需要对所述目标程序运行文件进行删除操作时,可以通过Root权限进行删除。
可以理解的是,Root权限是指在Android操作系统中,用户或程序可以获取到最高权限的状态,也就是超级用户权限或管理员权限,具有Root权限的用户可以对系统进行更深层次的定制和修改,以及执行一些普通用户无法执行的操作。获得Root权限通常涉及在Android设备上执行Rooting操作,这会打破设备的安全限制,允许用户或应用程序访问设备的系统文件和设置,一旦获得Root权限,用户或应用程序可以进行以下操作:
修改系统文件:可以编辑和删除系统文件,包括修改系统配置、添加或删除系统应用等;安装定制的固件:可以安装定制的ROM或内核,实现更深层次的系统定制和优化;控制系统进程:可以管理系统的进程和服务,包括停止、启动或修改其优先级等;安装特权应用程序:可以安装需要Root权限才能运行的应用程序,这些应用程序通常具有更高级的功能和权限;实现高级的系统调优:可以修改系统参数和配置,以实现更好的性能、电池寿命或其他优化效果。
最后需要说明的是,所述机顶盒的操作系统是整个系统的基础,它提供了对硬件资源的管理和控制,以及对应用程序的运行环境。操作系统负责管理机顶盒的各种硬件设备(如处理器、内存、存储、网络接口等),并提供基本的系统服务,如文件系统、网络通信、用户界面等。常见的机顶盒操作系统包括Android TV、Linux等。应用程序是用户直接与机顶盒进行交互的软件,它们提供了各种功能和服务,如视频播放、游戏、应用商店等。这些应用程序通过操作系统提供的API(应用程序编程接口,Application Programming Interface,是一组定义了软件组件如何与其他组件、系统或服务进行交互的规范,它提供了一种方式,让不同的软件组件之间能够相互通信、交换数据或请求服务,而无需了解彼此的内部实现细节,通过使用API,可以编写代码来调用已定义好的函数、方法或协议,从而实现特定功能或访问特定服务,API在软件开发中起着至关重要的作用,它们可以是操作系统提供的系统调用、编程语言提供的标准库、第三方库或服务提供商提供的网络接口等)来访问硬件资源和系统服务,并在操作系统的管理下运行和交互。另外,操作系统负责管理应用程序的生命周期,包括应用程序的启动、暂停、恢复、关闭等。操作系统根据用户的操作和系统资源情况来调度和管理应用程序的运行,以确保系统的稳定性和性能。在机顶盒中,操作系统通常会提供一套权限管理机制,用于限制应用程序对系统资源的访问权限,以保护用户的隐私和系统的安全。应用程序必须通过操作系统提供的权限管理机制来请求和获取对特定资源的访问权限。
最后还需要说明的是,在实际应用的过程中,一般会涉及到所述机顶盒的启动、操作系统的运行等具体的处理过程,例如,可以包括:
机顶盒初始化:这一步骤指的是机顶盒设备的电源被接通后的初始化过程,在这个阶段,设备会执行一系列的硬件初始化操作,包括检测连接的硬件设备、初始化内存、设置基本的硬件参数等;
BootLoader引导:BootLoader是一个位于设备存储介质中的程序,负责引导操作系统的启动过程,在这个阶段,BootLoader会被加载到内存中,并执行引导操作系统的过程,BootLoader的主要任务是加载并启动操作系统的内核(kernel);
系统kernel启动,基本service(服务)启动:在这一步骤中,操作系统的内核会被加载到内存中,并开始执行,内核是操作系统的核心部分,负责管理系统的各种资源和提供基本的系统服务,同时,一些基本的系统服务也会被启动,这些服务可能包括文件系统服务、网络服务、输入输出服务等,以确保系统能够正常运行并提供基本的功能;
系统app(应用程序)进程监控启动:在这个阶段,系统会启动一个或多个用于监控应用程序进程的服务或进程,这些服务通常负责监视系统中运行的应用程序,并在需要时执行一些操作,比如重新启动崩溃的应用程序、管理应用程序的生命周期等;
系统app监控运行,检测app运行:在这一步骤中,系统中的应用程序监控服务会开始运行,并开始监测系统中运行的应用程序的状态,这些监控服务可能会定期检测应用程序的运行状态,包括是否崩溃、是否占用过多的资源等,并根据需要执行相应的操作,比如重新启动异常的应用程序、释放资源等;
系统正常结束:最后,当系统启动流程完成并且所有必要的服务和进程都已经启动和运行时,系统进入正常运行状态,此时,用户可以开始使用机顶盒设备,并进行各种操作,如观看电视节目、播放媒体内容等。
结合图3,本申请实施例还提供一种可应用于上述机顶盒的IPTV机顶盒的运行控制装置。其中,所述IPTV机顶盒的运行控制装置可以包括异常文件管控模块、管控结果判断模块和操作系统重启模块。
详细地,在一种实施方式中,所述异常文件管控模块,可以用于在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作,其中,所述目标应用程序属于所述机顶盒上部署的应用程序,所述目标程序运行文件属于所述目标应用程序的运行数据。在本申请实施例中,所述异常文件管控模块可用于执行图2所示的步骤S110,关于所述异常文件管控模块的相关内容可以参照前文对步骤S110的描述。
详细地,在一种实施方式中,所述管控结果判断模块,可以用于判断所述异常文件管控操作是否执行成功。在本申请实施例中,所述管控结果判断模块可用于执行图2所示的步骤S120,关于所述管控结果判断模块的相关内容可以参照前文对步骤S120的描述。
详细地,在一种实施方式中,所述操作系统重启模块,可以用于在所述异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,其中,所述目标操作系统属于所述机顶盒上部署的操作系统。在本申请实施例中,所述操作系统重启模块可用于执行图2所示的步骤S130,关于所述操作系统重启模块的相关内容可以参照前文对步骤S130的描述。
可以理解的是,在一种可以替代的实施方式中,所述异常文件管控模块具体可以用于:
在监测到目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件,其中,所述目标程序运行文件包括所述目标应用程序对应的第一类运行文件、第二类运行文件和第三类运行文件中的至少一种,所述第一类运行文件包括所述目标应用程序的代码和至少部分的元数据,且属于应用程序的执行文件,所述第二类运行文件属于对所述第一类运行文件进行优化后的文件,所述第三类运行文件属于对所述第一类运行文件进行编译操作后形成的文件;在查找到所述目标程序运行文件之后,对所述目标程序运行文件执行预先配置的异常文件管控操作,其中,所述异常文件管控操作包括对所述目标程序运行文件进行删除的操作。
可以理解的是,在一种可以替代的实施方式中,所述IPTV机顶盒的运行控制装置还可以包括其它功能模块,例如,可以用于:
在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作;判断再次执行的所述异常文件管控操作是否执行成功;在再次执行的所述异常文件管控操作执行成功之后,对所述目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,或者,在再次执行的所述异常文件管控操作执行失败之后,回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作,直到所述异常文件管控操作执行成功。
在本申请实施例中,对应于上述的应用于所述机顶盒的IPTV机顶盒的运行控制方法,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序运行时执行所述IPTV机顶盒的运行控制方法的各个步骤。
其中,前述计算机程序运行时执行的各步骤,在此不再一一赘述,可参考前文对所述IPTV机顶盒的运行控制方法的解释说明。
综上所述,本申请提供的IPTV机顶盒的运行控制方法和装置、机顶盒及介质,首先,可以在监测到目标应用程序处于异常运行状态时,对目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作;其次,判断异常文件管控操作是否执行成功;然后,在异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得目标应用程序基于重启后的目标操作系统正常运行。基于上述内容,由于在对目标操作系统进行重启操作之前,会配置有目标程序运行文件的异常文件管控操作,且需要在异常文件管控操作执行成功之后,才会对目标操作系统进行重启操作,使得重启后的目标操作在运行目标应用程序时,可以避免读取到异常的目标程序运行文件,因此,可以改善现有技术中因读取到异常的目标程序运行是文件而导致的机顶盒的操作系统容易崩溃的问题,从而保障机顶盒的稳定运行,进而使得用户对机顶盒中的各种应用的黏性。
在本申请实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (8)
1.一种IPTV机顶盒的运行控制方法,其特征在于,应用于机顶盒,所述IPTV机顶盒的运行控制方法包括:
在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作,其中,所述目标应用程序属于所述机顶盒上部署的应用程序,所述目标程序运行文件属于所述目标应用程序的运行数据;
判断所述异常文件管控操作是否执行成功;
在所述异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,其中,所述目标操作系统属于所述机顶盒上部署的操作系统;
其中,所述在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作的步骤,包括:
在监测到目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件,其中,所述目标程序运行文件包括所述目标应用程序对应的第一类运行文件、第二类运行文件和第三类运行文件中的至少一种,所述第一类运行文件包括所述目标应用程序的代码和至少部分的元数据,且属于应用程序的执行文件,所述第二类运行文件属于对所述第一类运行文件进行优化后的文件,所述第三类运行文件属于对所述第一类运行文件进行编译操作后形成的文件,并且,查找到目标程序运行文件的过程包括:确定出所述目标应用程序对应的目标路径,其中,所述目标路径包括第一目标位置、第二目标位置和第三目标位置,所述第一目标位置属于所述目标操作系统中存储用户数据的一个目录位置,所述第二目标位置属于所述第一目标位置的下级目录位置,用于存储基于寄存器的虚拟机优化后的应用程序代码,所述基于寄存器的虚拟机用于对所述第一类运行文件进行解释执行操作,所述第三目标位置属于所述第二目标位置的下级目录位置,用于存储针对ARM架构优化的应用程序代码,基于所述目标路径,获取所述目标应用程序对应的目标程序运行文件;
在查找到所述目标程序运行文件之后,对所述目标程序运行文件执行预先配置的异常文件管控操作,其中,所述异常文件管控操作包括对所述目标程序运行文件进行删除的操作。
2.根据权利要求1所述的IPTV机顶盒的运行控制方法,其特征在于,所述在监测到目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件的步骤,包括:
确定出需要进行监测的应用程序,得到至少一个待监测应用程序;
将所述至少一个待监测应用程序中的每一个待监测应用程序依次或并行确定为目标应用程序;
基于预先配置的目标监测程序,对确定出的任意一个所述目标应用程序进行运行状态的监测操作,得到对应的目标监测结果,其中,所述目标监测程序属于外壳脚本,用于监测所述目标应用程序的运行状态;
在所述目标监测结果反映出所述目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件。
3.根据权利要求1所述的IPTV机顶盒的运行控制方法,其特征在于,在执行所述判断所述异常文件管控操作是否执行成功的步骤之后,所述IPTV机顶盒的运行控制方法还包括:
在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作;
判断再次执行的所述异常文件管控操作是否执行成功;
在再次执行的所述异常文件管控操作执行成功之后,对所述目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,或者,在再次执行的所述异常文件管控操作执行失败之后,回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤。
4.根据权利要求3所述的IPTV机顶盒的运行控制方法,其特征在于,在执行所述判断所述异常文件管控操作是否执行成功的步骤之后,所述IPTV机顶盒的运行控制方法还包括:
对执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤的次数进行统计操作,得到对应的目标统计次数;
将所述目标统计次数和预先配置的参考次数进行大小对比操作;
在所述目标统计次数大于所述参考次数时,确定不再回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤,并触发运行辅助操作系统,其中,所述辅助操作系统属于所述机顶盒上部署的操作系统,且所述辅助操作系统的量级小于所述目标操作系统的量级。
5.根据权利要求3所述的IPTV机顶盒的运行控制方法,其特征在于,在执行所述判断所述异常文件管控操作是否执行成功的步骤之后,所述IPTV机顶盒的运行控制方法还包括:
对所述目标应用程序处于异常运行状态的开始时刻与当前时刻之间的时长进行统计操作,得到对应的目标统计时长;
将所述目标统计时长和预先配置的参考时长进行大小对比操作;
在所述目标统计时长大于所述参考时长时,确定不再回转执行所述在所述异常文件管控操作执行失败之后,再次对所述目标应用程序对应的目标程序运行文件执行所述异常文件管控操作的步骤,并触发运行辅助操作系统,其中,所述辅助操作系统属于所述机顶盒上部署的操作系统,且所述辅助操作系统的量级小于所述目标操作系统的量级。
6.一种IPTV机顶盒的运行控制装置,其特征在于,应用于机顶盒,所述IPTV机顶盒的运行控制装置包括:
异常文件管控模块,用于在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作,其中,所述目标应用程序属于所述机顶盒上部署的应用程序,所述目标程序运行文件属于所述目标应用程序的运行数据;
管控结果判断模块,用于判断所述异常文件管控操作是否执行成功;
操作系统重启模块,用于在所述异常文件管控操作执行成功之后,对目标操作系统进行重启操作,使得所述目标应用程序基于重启后的目标操作系统正常运行,其中,所述目标操作系统属于所述机顶盒上部署的操作系统;
其中,所述在监测到目标应用程序处于异常运行状态时,对所述目标应用程序对应的目标程序运行文件执行预先配置的异常文件管控操作,包括:
在监测到目标应用程序处于异常运行状态时,查找到所述目标应用程序对应的目标程序运行文件,其中,所述目标程序运行文件包括所述目标应用程序对应的第一类运行文件、第二类运行文件和第三类运行文件中的至少一种,所述第一类运行文件包括所述目标应用程序的代码和至少部分的元数据,且属于应用程序的执行文件,所述第二类运行文件属于对所述第一类运行文件进行优化后的文件,所述第三类运行文件属于对所述第一类运行文件进行编译操作后形成的文件,并且,查找到目标程序运行文件的过程包括:确定出所述目标应用程序对应的目标路径,其中,所述目标路径包括第一目标位置、第二目标位置和第三目标位置,所述第一目标位置属于所述目标操作系统中存储用户数据的一个目录位置,所述第二目标位置属于所述第一目标位置的下级目录位置,用于存储基于寄存器的虚拟机优化后的应用程序代码,所述基于寄存器的虚拟机用于对所述第一类运行文件进行解释执行操作,所述第三目标位置属于所述第二目标位置的下级目录位置,用于存储针对ARM架构优化的应用程序代码,基于所述目标路径,获取所述目标应用程序对应的目标程序运行文件;
在查找到所述目标程序运行文件之后,对所述目标程序运行文件执行预先配置的异常文件管控操作,其中,所述异常文件管控操作包括对所述目标程序运行文件进行删除的操作。
7.一种机顶盒,其特征在于,包括:
存储器,用于存储计算机程序;
与所述存储器连接的处理器,用于执行该存储器存储的计算机程序,以实现权利要求1-5任意一项所述的IPTV机顶盒的运行控制方法。
8.一种计算机可读存储介质,其特征在于,该计算机可读存储介质中存储有计算机程序,该计算机程序运行时执行权利要求1-5任意一项所述的IPTV机顶盒的运行控制方法的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410545780.1A CN118132344B (zh) | 2024-05-06 | 2024-05-06 | Iptv机顶盒的运行控制方法和装置、机顶盒及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410545780.1A CN118132344B (zh) | 2024-05-06 | 2024-05-06 | Iptv机顶盒的运行控制方法和装置、机顶盒及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118132344A CN118132344A (zh) | 2024-06-04 |
CN118132344B true CN118132344B (zh) | 2024-07-02 |
Family
ID=91246122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410545780.1A Active CN118132344B (zh) | 2024-05-06 | 2024-05-06 | Iptv机顶盒的运行控制方法和装置、机顶盒及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118132344B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106228041A (zh) * | 2016-07-21 | 2016-12-14 | 北京理工大学 | 一种针对Android预编译的代码保护方法 |
CN109101363A (zh) * | 2017-06-21 | 2018-12-28 | 中兴通讯股份有限公司 | 基于Android系统的异常恢复方法、装置、智能设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110851204B (zh) * | 2019-11-08 | 2023-04-18 | 北京字节跳动网络技术有限公司 | 应用启动的方法及装置、应用打包的方法及装置 |
CN113032100B (zh) * | 2021-03-29 | 2023-07-18 | 北京字节跳动网络技术有限公司 | 一种异常处理方法、装置、设备及存储介质 |
CN114328101A (zh) * | 2021-12-24 | 2022-04-12 | 武汉众智数字技术有限公司 | 一种软件故障定位与修复的方法与系统 |
-
2024
- 2024-05-06 CN CN202410545780.1A patent/CN118132344B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106228041A (zh) * | 2016-07-21 | 2016-12-14 | 北京理工大学 | 一种针对Android预编译的代码保护方法 |
CN109101363A (zh) * | 2017-06-21 | 2018-12-28 | 中兴通讯股份有限公司 | 基于Android系统的异常恢复方法、装置、智能设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN118132344A (zh) | 2024-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7908521B2 (en) | Process reflection | |
US9146839B2 (en) | Method for pre-testing software compatibility and system thereof | |
US10114655B2 (en) | Rapid start up method for electronic equipment | |
US7900090B2 (en) | Systems and methods for memory retention across resets | |
US10303459B2 (en) | Electronic system with update control mechanism and method of operation thereof | |
CN110647333A (zh) | 固件升级方法及配置成对其中的固件进行升级的设备 | |
US7975176B2 (en) | Application failure recovery | |
US20050246582A1 (en) | System, method and program product for recovering from a failure | |
CN113032183A (zh) | 系统管理方法、装置、计算机设备和存储介质 | |
CN111651304A (zh) | 基于双芯智能电表的软件恢复方法、装置和计算机设备 | |
CN118132344B (zh) | Iptv机顶盒的运行控制方法和装置、机顶盒及介质 | |
CN102262573B (zh) | 操作系统启动保护方法和装置 | |
CN114217925A (zh) | 一种实现异常自动重启的业务程序运行监控方法及系统 | |
CN114385418A (zh) | 通信设备的保护方法、装置、设备和存储介质 | |
US8689206B2 (en) | Isolating operating system in-memory modules using error injection | |
CN114116381A (zh) | 基于容器的存储系统及容器处理方法 | |
CN115543399A (zh) | 一种软件处理系统、软件处理方法以及装置 | |
CN113805946B (zh) | 用于安卓系统的非易失属性的处理方法、装置及电子设备 | |
CN111190648A (zh) | 基于nand flash的实时嵌入式系统及其启动方法 | |
CN110673974A (zh) | 系统调试方法及装置 | |
CN114222972A (zh) | 应用存在监控和重新安装 | |
CN112565896B (zh) | 一种系统修复方法、终端及存储介质 | |
CN109783150A (zh) | 一种嵌入式系统启动防砖方法及装置 | |
CN114610415B (zh) | 一种程序启动方法、系统、存储介质及电子设备 | |
JPWO2014132466A1 (ja) | ソフトウェア安全停止システム、ソフトウェア安全停止方法、およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |