一种显示设备和对应用软件进行监测的方法与流程

文档序号:33458888发布日期:2023-03-15 03:12阅读:36来源:国知局
一种显示设备和对应用软件进行监测的方法与流程

1.本公开涉及智能设备技术领域,特别涉及一种显示设备和对应用软件进行监测的方法。


背景技术:

2.智能设备是一种具有全开放式平台,并搭载了操作系统的电子产品。用户在欣赏普通电视内容的同时,可自行安装和卸载各类应用软件,持续对电视的功能进行扩充和升级,从而带给用户更便捷和更丰富的体验。智能设备支持很多应用软件,包括电视平台预置的应用软件以及用户自行下载安装的第三方应用软件。
3.在智能设备的使用过程中,每个应用软件在运行过程中都会对应有一个进程,该进程会将相应的下载数据等存储到内嵌式存储器(embedded multi media card,emmc)中。但目前的情况是,各个应用软件所对应的进程无法单独将各自使用过程中的下载数据等存储到emmc中,而是只能将所有进程使用过程中的下载数据等汇总成一个总的下载数据后,统一存储到emmc中。即目前没有手段可以统计各个进程单独写入的下载数据的数据量,只能统计所有进程写入的总下载数据,即无法限制emmc单次的下载数据的数据量。
4.上述某些应用软件在运行时会在emmc中一次性下载大量数据的情况,会导致emmc的寿命消耗过快,甚至会影响智能设备的使用寿命。为了规范各应用软件在emmc中的下载行为,需要针对这种大量写入的应用软件进行专门的监测和碎片整理等,然而,目前无法统计各个进程每次的下载数据的数据量,导致无法对某个进程单独进行监测,从而严重影响emmc的使用寿命。


技术实现要素:

5.本公开实施例提供一种显示设备和对应用软件进行监测的方法,用以监测并限制应用软件对应的下载数据写入到emmc的数据量,从而保障了emmc的使用寿命。
6.本公开提供的具体技术方案如下:
7.第一方面,本公开提供一种显示设备,包括:显示器、内嵌式存储器和控制器,其中:
8.所述显示器用于显示信息;
9.所述内嵌式存储器,用于存储可被所述控制器执行的计算机程序;
10.所述控制器,所述控制器分别连接所述显示器和所述内嵌式存储器,被配置为:
11.通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,其中,所述进程为智能设备本次开机后启动的应用软件对应的进程,所述获取单元为在所述控制器底层设置的数据量获取通道;
12.针对每一个所述进程,通过所述获取单元分别获取所述进程对应的各个线程在当前检测周期内下载子数据的子数据量;
13.若所述进程的所述数据量和所述进程对应的各个线程的子数据量的总和达到所
述进程对应的应用软件的预设下载数据量,则禁止所述进程和对应的所述各个线程,在所述当前检测周期内继续向emmc中写入所述下载数据和所述下载子数据,并禁止所述进程和对应的所述各个线程在所述当前检测周期内继续下载。
14.在一些实施例中,所述控制器被配置为执行所述通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,包括:
15.通过所述获取单元分别获取当前检测周期内一直处于启动状态以及当前检测周期内退出的所述各个应用软件对应的进程,在当前检测周期内下载数据的数据量,其中,所述获取单元设置在所述控制器底层的linux内核中。
16.在一些实施例中,所述当前检测周期内退出的所述各个应用软件对应的进程包括在应用软件退出后结束运行的第一类进程,以及在应用软件退出后继续运行的第二类进程;
17.所述控制器被配置为执行所述通过所述获取单元获取当前检测周期内退出的所述各个应用软件对应的进程,在当前检测周期内下载数据的数据量,包括:
18.针对当前检测周期内退出的应用软件:在监测到所述应用软件的退出指示时,通过所述获取单元获取所述第一类进程对应的下载数据的数据量,并查找所述第一类进程对应的父进程,判定所述父进程的运行状态,其中,所述父进程对应的下载数据包括所述进程对应的下载数据和配置参数;
19.若所述父进程处于启动状态,则从所述父进程对应的下载数据的数据量中扣除所述第一类进程对应的下载数据的数据量,得到所述第二类进程的数据量;或者
20.若所述父进程处于已退出状态,则确定最近一级处于启动状态的父进程,并从确定的父进程对应的下载数据的数据量中扣除所述第一类进程对应的下载数据的数据量,得到所述第二类进程的数据量;
21.将所述第二类进程的数据量作为在发出退出指示后退出的应用软件对应的进程,在当前检测周期内下载数据的数据量。
22.在一些实施例中,所述控制器被配置为执行所述禁止所述进程和对应的所述各个线程在所述当前检测周期内继续向emmc中写入所述下载数据和所述下载子数据,包括:
23.向所述应用软件发送禁止写入信号,以指示所述进程和对应的所述各个线程在所述当前检测周期内不再向emmc发送所述下载数据和所述下载子数据;或者
24.切断所述应用软件与所述emmc之间的连通,以使所述进程和对应的所述各个线程无法在所述当前检测周期内向emmc中继续写入所述下载数据和所述下载子数据。
25.在一些实施例中,所述控制器被配置为执行所述针对每一个所述进程,通过所述获取单元分别获取所述进程对应的各个线程在当前检测周期内下载子数据的子数据量之后,还被配置为执行:
26.针对每一个所述进程,监测所述进程在emmc中写入所述下载数据的写入频率;
27.在所述写入频率高于预设频率时,将所述进程在emmc中的写入频率调整为所述预设频率。
28.在一些实施例中,所述控制器还被配置为执行:
29.若在当前检测周期内监测到在发出退出指示后退出的应用软件重新进入启动状态;
30.则在当前检测周期内通过获取单元获取重新进入启动状态的应用软件对应的进程的新增下载数据的新增数据量,将所述新增数据量与所述数据量进行汇总,得到所述进程在当前检测周期内的总数据量。
31.在一些实施例中,所述控制器还被配置为执行:
32.将所述当前检测周期内达到所述预设下载数据量的进程和高于所述预设频率的进程所对应的应用软件均记作目标应用软件,并对所述目标应用软件的缓存进行清理。
33.第二方面,本公开还提供一种对应用软件进行监测的方法,包括:
34.通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,其中,所述进程为智能设备本次开机后启动的应用软件对应的进程,所述获取单元为在所述控制器底层设置的数据量获取通道;
35.针对每一个所述进程,通过所述获取单元分别获取所述进程对应的各个线程在当前检测周期内下载子数据的子数据量;
36.若所述进程的所述数据量和所述进程对应的各个线程的子数据量的总和达到所述进程对应的应用软件的预设下载数据量,则禁止所述进程和对应的所述各个线程,在所述当前检测周期内继续向emmc中写入所述下载数据和所述下载子数据,并禁止所述进程和对应的所述各个线程在所述当前检测周期内继续下载。
37.在一些实施例中,所述通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,包括:
38.通过所述获取单元分别获取当前检测周期内一直处于启动状态以及当前检测周期内退出的所述各个应用软件对应的进程,在当前检测周期内下载数据的数据量,其中,所述获取单元设置在所述控制器底层的linux内核中。
39.在一些实施例中,所述当前检测周期内退出的所述各个应用软件对应的进程包括在应用软件退出后结束运行的第一类进程,以及在应用软件退出后继续运行的第二类进程;
40.所述通过所述获取单元获取当前检测周期内退出的所述各个应用软件对应的进程,在当前检测周期内下载数据的数据量,包括:
41.针对当前检测周期内退出的应用软件:在监测到所述应用软件的退出指示时,通过所述获取单元获取所述第一类进程对应的下载数据的数据量,并查找所述第一类进程对应的父进程,判定所述父进程的运行状态,其中,所述父进程对应的下载数据包括所述进程对应的下载数据和配置参数;
42.若所述父进程处于启动状态,则从所述父进程对应的下载数据的数据量中扣除所述第一类进程对应的下载数据的数据量,得到所述第二类进程的数据量;或者
43.若所述父进程处于已退出状态,则确定最近一级处于启动状态的父进程,并从确定的父进程对应的下载数据的数据量中扣除所述第一类进程对应的下载数据的数据量,得到所述第二类进程的数据量;
44.将所述第二类进程的数据量作为在发出退出指示后退出的应用软件对应的进程,在当前检测周期内下载数据的数据量。
45.综上所述,本公开实施例中,公开了一种显示设备和对应用软件进行监测的方法,该显示设备包括显示器、内嵌式存储器和控制器,控制器被配置为通过获取单元分别获取
各个进程在当前检测周期内下载数据的数据量,获取单元为在控制器底层设置的数据量获取通道,针对每一个进程,通过获取单元分别获取进程对应的各个线程在当前检测周期内下载子数据的子数据量,若进程的数据量和进程对应的各个线程的子数据量的总和达到进程对应的应用软件的预设下载数据量,禁止进程和对应的各个线程,在当前检测周期内继续向emmc中写入下载数据和下载子数据,并禁止进程和对应的各个线程在当前检测周期内继续下载,避免了向emmc中大量写入数据的情况。
附图说明
46.为了更清楚地说明本公开实施例的技术方案,下面将对本公开实施例中所需要使用的附图作简单地介绍,显而易见地,下面所介绍的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
47.图1示出了根据一些实施例的显示设备的使用场景;
48.图2示出了根据一些实施例的控制装置100的硬件配置框图;
49.图3示出了根据一些实施例的显示设备200的硬件配置框图;
50.图4示出了根据一些实施例的对应用软件进行监测的流程示意图;
51.图5示出了根据一些实施例的对第一类进程和第二类进程进行监测的流程示意图;
52.图6示出了根据一些实施例的对进程进行频率限制的流程示意图。
具体实施方式
53.为使本公开的目的和实施方式更加清楚,下面将结合本公开示例性实施例中的附图,对本公开示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本公开一部分实施例,而不是全部的实施例。
54.需要说明的是,本公开中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本公开的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
55.本公开中说明书和权利要求书及上述附图中的术语

第一



第二



第三

等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
56.术语

包括



具有

以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
57.术语

模块

是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
58.图1为根据实施例中显示设备的使用场景的示意图。如图1所示,显示设备200还与服务器400进行数据通信,用户可通过智能设备300或控制装置100操作显示设备200。
59.在一些实施例中,控制装置100可以是遥控器,遥控器和显示设备的通信包括红外协议通信或蓝牙协议通信,及其他短距离通信方式中的至少一种,通过无线或有线方式来
控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等至少一种输入用户指令,来控制显示设备200。
60.在一些实施例中,智能设备300可以包括移动终端、平板电脑、计算机、笔记本电脑,ar/vr设备等中的任意一种。
61.在一些实施例中,也可以使用智能设备300以控制显示设备200。例如,使用在智能设备上运行的应用程序控制显示设备200。
62.在一些实施例中,也可以使用智能设备300和显示设备进行数据的通信。
63.在一些实施例中,显示设备200还可以采用除了控制装置100和智能设备300之外的方式进行控制,例如,可以通过显示设备200设备内部配置的获取语音指令的模块直接接收用户的语音指令控制,也可以通过显示设备200设备外部设置的语音控制装置来接收用户的语音指令控制。
64.在一些实施例中,显示设备200还与服务器400进行数据通信。可允许显示设备200通过局域网(lan)、无线局域网(wlan)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器。
65.在一些实施例中,一个步骤执行主体执行的软件步骤可以随需求迁移到与之进行数据通信的另一步骤执行主体上进行执行。示例性的,服务器执行的软件步骤可以随需求迁移到与之数据通信的显示设备上执行,反之亦然。
66.图2示例性示出了根据示例性实施例中控制装置100的配置框图。如图2所示,控制装置100包括控制器110、通信接口130、用户输入/输出接口140、存储器、供电电源。控制装置100可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起用用户与显示设备200之间交互中介作用。
67.在一些实施例中,通信接口130用于和外部通信,包含wifi芯片,蓝牙模块,nfc或可替代模块中的至少一种。
68.在一些实施例中,用户输入/输出接口140包含麦克风,触摸板,传感器,按键或可替代模块中的至少一种。
69.图3示出了根据示例性实施例中显示设备200的硬件配置框图。
70.在一些实施例中,显示设备200包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、显示器260、音频输出接口270、存储器、供电电源、用户接口中的至少一种。
71.在一些实施例中控制器包括中央处理器,视频处理器,音频处理器,图形处理器,ram,rom,用于输入/输出的第一接口至第n接口。
72.在一些实施例中,显示器260包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件,用于接收源自控制器输出的图像信号,进行显示视频内容、图像内容以及菜单操控界面的组件以及用户操控ui界面等。
73.在一些实施例中,显示器260可为液晶显示器、oled显示器、以及投影显示器中的至少一种,还可以为一种投影装置和投影屏幕。
74.在一些实施例中,调谐解调器210通过有线或无线接收方式接收广播电视信号,以及从多个无线或有线广播电视信号中解调出音视频信号,如以及epg数据信号。
75.在一些实施例中,通信器220是用于根据各种通信协议类型与外部设备或服务器进行通信的组件。例如:通信器可以包括wifi模块,蓝牙模块,有线以太网模块等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器中的至少一种。显示设备200可以通过通信器220与控制装置100或服务器400建立控制信号和数据信号的发送和接收。
76.在一些实施例中,检测器230用于采集外部环境或与外部交互的信号。例如,检测器230包括光接收器,用于采集环境光线强度的传感器;或者,检测器230包括图像采集器,如摄像头,可以用于采集外部环境场景、用户的属性或用户交互手势,再或者,检测器230包括声音采集器,如麦克风等,用于接收外部声音。
77.在一些实施例中,外部装置接口240可以包括但不限于如下:高清多媒体接口(hdmi)、模拟或数据高清分量输入接口(分量)、复合视频输入接口(cvbs)、usb输入接口(usb)、rgb端口等任一个或多个接口。也可以是上述多个接口形成的复合性的输入/输出接口。
78.在一些实施例中,控制器250和调谐解调器210可以位于不同的分体设备中,即调谐解调器210也可在控制器250所在的主体设备的外置设备中,如外置机顶盒等。
79.在一些实施例中,控制器250,通过存储在存储器上中各种软件控制程序,在本公开实施例中,控制器250被配置为通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,其中,进程为智能设备本次开机后启动的应用软件对应的进程,获取单元为在控制器底层设置的数据量获取通道;
80.针对每一个进程,通过获取单元分别获取进程对应的各个线程在当前检测周期内下载子数据的子数据量;
81.若进程的数据量和进程对应的各个线程的子数据量的总和达到进程对应的应用软件的预设下载数据量,则禁止进程和对应的各个线程,在当前检测周期内继续向emmc中写入下载数据和下载子数据,并禁止进程和对应的各个线程在当前检测周期内继续下载。
82.在一些实施例中,用户可在显示器260上显示的图形用户界面(gui)输入用户命令,则用户输入接口通过图形用户界面(gui)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
83.在一些实施例中,

用户界面

,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(graphic user interface,gui),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、widget等可视的界面元素中的至少一种。
84.在一些实施例中,用户接口280,为可用于接收控制输入的接口(如:显示设备本体上的实体按键,或其他等)。
85.在一些实施例中,显示设备的系统可以包括内核(kernel)、命令解析器(shell)、文件系统和应用程序。内核、shell和文件系统一起组成了基本的操作系统结构,它们让用户可以管理文件、运行程序并使用系统。上电后,内核启动,激活内核空间,抽象硬件、初始化硬件参数等,运行并维护虚拟内存、调度器、信号及进程间通信(ipc)。内核启动后,再加
载shell和用户应用程序。应用程序在启动后被编译成机器码,形成一个进程。
86.下面结合附图对本公开提供的显示设备进行详细说明,首先需要说明的是,该显示设备,包括:显示器260、内嵌式存储器(embedded multi media card,emmc)和控制器250,其中:显示器260用于显示信息;图像采集器,用于采集图像;内嵌式存储器,用于存储可被控制器250执行的计算机程序。内嵌式存储器与上述控制器250相连接,控制器250向emmc中写入下载数据和下载子数据,以实现对下载数据的存储。上述智能设备为智能电视、移动终端、平板电脑、计算机、笔记本电脑,ar/vr设备等中的任意一种。
87.下面介绍控制器250的主要功能如下,即控制器250被配置为执行:
88.通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,其中,进程为智能设备本次开机后启动的应用软件对应的进程,获取单元为在控制器250底层设置的数据量获取通道。
89.需要进行说明的是,通常在一台智能设备中装载有多个应用软件,上述应用软件中的某一个或几个可以同时启动(例如,xx音乐和游戏aa),应用软件可以在启动后退出,也可以在启动后退出,之后再启动等等。本公开实施例中的进程为智能设备本次开机后启动的应用软件对应的进程,开机启动为上述应用软件下载数据的起始点。
90.但考虑到数据量获取的准确性,本公开将应用软件下载数据的时间段进行了统一处理,即限定在当前检测周期内,这里的当前检测周期可根据不同的使用场景进行灵活设定,当前检测周期的起点为智能设备本次开机后的任意时刻。
91.在一些实施例中,控制器250被配置为执行通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,具体包括:
92.通过获取单元分别获取当前检测周期内一直处于启动状态以及当前检测周期内退出的各个应用软件对应的进程,在当前检测周期内下载数据的数据量,其中,获取单元设置在控制器250底层的linux内核中。
93.由于,linux内核在每个进程创建时都会有一个进程描述符来保存该进程的相关信息,包括进程名称、进程号、进程的io写入量等等,其中,进程的io写入量为linux内核记录的该进程对应的下载数据的数据量。
94.为了全面准确的获取处于不同运行状态的应用软件对应的下载数据的数据量,本公开实施例中,控制器250被配置为执行以下两种情况:
95.第一种情况:通过获取单元获取当前检测周期内一直处于启动状态的各个应用软件对应的进程,在当前检测周期内下载数据的数据量。
96.实施过程中,从当前检测周期的起始点开始到当前检测周期的结束点为止,采用通过获取单元在各个进程(例如,进程描述符)中遍历的方式直接读取一直处于启动状态的每一个应用软件对应的进程,在当前检测周期内下载数据的数据量,即通过获取单元读取上述io写入量。
97.优选地,可在智能设备中预先申请一段内存,在上述内存中建立链表、数组等的存储结构,当遍历到一个进程所对应的下载数据的数据量后,即在读取到一个io写入量后,将其存入链表、数组等对应的位置中,以此类推,直到通过获取单元获得每个应用软件对应的进程在当前检测周期的下载数据的数据量。
98.第二种情况:通过获取单元获取当前检测周期内退出的各个应用软件对应的进
程,在当前检测周期内下载数据的数据量。
99.这里要进一步说明的是,当前检测周期内退出的各个应用软件对应的进程包括在应用软件退出后结束运行的第一类进程,以及在应用软件退出后继续运行的第二类进程。
100.实施过程中,在当前检测周期内应用软件随时有退出的可能,那么,在该应用软件退出之前,其对应的进程的下载数据的数据量即为该退出的应用软件对应的进程的数据量,即在应用软件退出后其不再下载新的下载数据,因而其在当前检测周期内对应的下载数据的数据量不再增加,这里将该类进程称之为第一类进程。
101.同时,在该应用软件退出后,其对应的配置参数仍会在进程中继续运行,以便在当前检测周期内再次启动该应用软件的时候调用,这里将该类进程称之为第二类进程。
102.针对上述第一类进程和第二类进程,控制器250被配置为执行通过获取单元获取当前检测周期内退出的各个应用软件对应的进程,在当前检测周期内下载数据的数据量,具体包括:
103.针对当前检测周期内退出的应用软件:在监测到应用软件的退出指示时,通过获取单元获取第一类进程对应的下载数据的数据量,并查找第一类进程对应的父进程,判定父进程的运行状态,其中,父进程对应的下载数据包括进程对应的下载数据和配置参数。
104.所有进程退出时都需要调用到linux内核,以完成相关资源的释放,因此,针对当前检测周期内退出的应用软件:应用软件在退出前都要先向linux内核发出退出指示,待退出指示起效后该应用软件才正式退出,在监测到应用软件的退出指示时,通过获取单元获取第一类进程对应的下载数据的数据量,具体获取方式同上述第一种情况。
105.另外,该进程对应的配置参数保存在其对应的父进程中,即父进程对应的下载数据包括进程对应的下载数据和配置参数,因此,实施过程中,需要查找第一类进程对应的父进程,并进一步判定父进程的运行状态。原因在于,父进程在启动状态中时,其对应的下载数据包括旗下的进程对应的下载数据和配置参数;父进程处于已退出状态时,父进程会将旗下的进程对应的下载数据和配置参数移交给最近一级处于启动状态的父进程进行保存。
106.若父进程处于启动状态,则从父进程对应的下载数据的数据量中扣除第一类进程对应的下载数据的数据量,得到第二类进程的数据量。或者
107.实施过程中,在判定父进程处于启动状态时,为了得到上述第二类进程的数据量,从父进程对应的下载数据的数据量中扣除第一类进程对应的下载数据的数据量。即用父进程对应的下载数据的数据量,减去退出的应用软件对应的进程的数据量,得到与已退出的应用软件对应的仍处于启动状态用于参数配置的进程,在当前检测周期内下载数据的数据量。
108.若父进程处于已退出状态,则确定最近一级处于启动状态的父进程,并从确定的父进程对应的下载数据的数据量中扣除第一类进程对应的下载数据的数据量,得到第二类进程的数据量。
109.实施过程中,在判定父进程处于启动状态时,为了得到上述第二类进程的数据量,先要确定当前退出的父进程的最近一级处于启动状态的父进程,这里的最近一级即为上一级父进程中的与当前退出的父进程的关联最近的一级。
110.在确定最近一级处于启动状态的父进程后,从确定的父进程对应的下载数据的数据量中扣除第一类进程对应的下载数据的数据量,也就是用父进程对应的下载数据的数据
量,减去退出的应用软件对应的进程的数据量,得到与已退出的应用软件对应的仍处于启动状态用于参数配置的进程,在当前检测周期内下载数据的数据量,即得到第二类进程的数据量。
111.将第二类进程的数据量作为在发出退出指示后退出的应用软件对应的进程,在当前检测周期内下载数据的数据量。
112.由于,当前检测周期内与已退出的应用软件对应的用于参数配置的进程仍处于启动状态,为了对其进行追踪统计,将得到的上述第二类进程的数据量作为在发出退出指示后退出的应用软件对应的进程,在当前检测周期内下载数据的数据量。
113.另外,针对上述在启动后退出之后再启动的应用软件以及多次重新启动的应用软件,本公开实施例中,控制器250被配置为执行:
114.实施过程中,若在当前检测周期内监测到在发出退出指示后退出的应用软件重新进入启动状态,即在当前检测周期内,再次启动后的应用软件有新的下载数据。
115.则在当前检测周期内通过获取单元获取重新进入启动状态的应用软件对应的进程的新增下载数据的新增数据量,具体获取方式同上述第一种情况,并将新增数据量与数据量进行汇总,这里的数据量为上述第一类进程的数据量,得到进程在当前检测周期内的总数据量。
116.本公开实施例中,控制器250被配置为执行,针对每一个进程,通过获取单元分别获取进程对应的各个线程在当前检测周期内下载子数据的子数据量。
117.考虑到进程的io写入量不会记录进程下的各个线程的下载子数据的子数据量,实施过程中,针对每一个进程,在获取单元中设置多个线程流量监控读取子单元,这里的线程流量监控读取子单元的个数与进程内的线程的数量一致,在每一个线程下载子数据的过程中,线程流量监控读取子单元都会实时对其数据量进行统计,从而获取到当前检测周期内进程对应的各个线程下载子数据的子数据量。
118.若进程的数据量和进程对应的各个线程的子数据量的总和达到进程对应的应用软件的预设下载数据量,则禁止进程和对应的各个线程,在当前检测周期内继续向emmc中写入下载数据和下载子数据,并禁止进程和对应的各个线程在当前检测周期内继续下载。
119.为了有效保障emmc的使用寿命,控制器会为每个应用软件设置预设下载数据量,这里的预设下载数据量为允许应用软件向emmc中写入的最大数据量。智能设备上的各个应用软件的预设下载数据量可以设置成相同的,也可以设置成不同的。
120.实施过程中,将进程的数据量和进程对应的各个线程的子数据量相加,得到上述总和,若应用软件有重新启动的动作,则将上述进程的总数据量和进程对应的各个线程的子数据量相加,得到上述总和,在当前检测周期内判断该总和是否达到进程对应的应用软件的预设下载数据量。
121.当判定当前检测周期内,该总和没达到进程对应的应用软件的预设下载数据量时,则允许应用软件对应的进程继续向emmc中写入下载数据,以及允许该进程下的各个线程继续向emmc中写入下载子数据。
122.当判定当前检测周期内,该总和达到进程对应的应用软件的预设下载数据量时,则禁止进程和对应的各个线程在当前检测周期内继续向emmc中写入下载数据和下载子数据,具体包括以下方式:
123.方式1:向应用软件发送禁止写入信号,以指示进程和对应的各个线程在当前检测周期内不再向emmc发送下载数据和下载子数据。
124.向应用软件发送禁止写入信号,这里的禁止写入信号可以携带时长信息,该时长信息的作用时间范围为当前检测周期内,或者,预先为禁止写入信号设置好作用的范围为当前检测周期内,这样,不影响下一个检测周期内进程和对应的各个线程向emmc发送下载数据和下载子数据。
125.实施过程中,上述应用软件在接收到控制器250发送的禁止写入信号后,使其对应的进程和对应的各个线程在当前检测周期内不再向emmc发送下载数据和下载子数据,从而达到限制向emmc写入数据量的目的。
126.方式2:切断应用软件与emmc之间的连通,以使进程和对应的各个线程无法在当前检测周期内向emmc中继续写入下载数据和下载子数据。
127.这里切断应用软件与emmc之间的连通,该切断动作的作用时间范围为当前检测周期内,或者,预先为切断动作设置好作用的范围为当前检测周期内,这样,不影响下一个检测周期内进程和对应的各个线程向emmc发送下载数据和下载子数据。
128.实施过程中,在控制器250切断应用软件与emmc之间的连通后,应用软件对应的进程和对应的各个线程无法在当前检测周期内向emmc中继续写入下载数据和下载子数据,从而达到限制向emmc写入数据量的目的。
129.采用上述方式1或者方式2,都可以阻止已达到预设下载数据量的应用软件继续向emmc中写入下载数据和下载子数据,这样就可以避免向emmc中大量写入数据的情况,从而保障了emmc的使用寿命。
130.针对每一个进程,通过获取单元分别获取进程对应的各个线程在当前检测周期内下载子数据的子数据量之后,本公开实施例中,控制器250被配置为执行:
131.针对每一个进程,监测进程在emmc中写入下载数据的写入频率。
132.考虑到向emmc中频繁写入下载数据和下载子数据,也会影响其使用寿命。实施过程中,针对每一个进程监测该进程在当前检测周期内向emmc中写入下载数据的写入频率。例如,统计进程每分钟向emmc中写入下载数据的次数。
133.在写入频率高于预设频率时,将进程在emmc中的写入频率调整为预设频率。
134.为了有效保障emmc的使用寿命,为其设置预设频率,即当前检测周期或者其他单位时间内允许向emmc写入的最大次数。实施过程中,在写入频率高于上述预设频率时,将进程在emmc中的写入频率调整为预设频率,从而对进程写入emmc的次数进行限定。
135.相应的,还可对emmc进行碎片整理,例如,每隔一定时间间隔采用trim算法对emmc进行清理,或者,按照与上述数据量的总和成正比的频率对emmc进行清理。
136.此外,为了提升应用软件的使用体验,控制器250还被配置为执行:将当前检测周期内达到预设下载数据量的进程和高于预设频率的进程所对应的应用软件均记作目标应用软件,即将对emmc影响较大的应用软件标记为异常,并对目标应用软件的缓存进行清理,使得目标应用软件在被限制下载数据量和写入频率后,对其正常运行的影响降低,以保证用户的使用体验。
137.当然,在实施过程中,还可以统计达到预设下载数据量的进程和高于预设频率的进程所对应的各个应用软件对应的进程名字,包括当前检测周期内一直处于启动状态的进
程,以及当前检测周期内退出的各个应用软件对应的进程,以便对各个应用软件进行监控。
138.另外,还可将上述目标应用软件发送给服务器,以使服务器进行大数据分析,这样能够在后续进行优化,也可直接将上述目标应用软件发送给与服务器相连接的用户终端(包括其他的智能设备、用户手机等),以便预先告知用户有上述行为的应用软件。
139.在介绍了本公开实施例提供的一种显示设备之后,基于相同的发明构思,参阅图4所示,下面对本公开实施例提供的对应用软件进行监测的方法进行说明:
140.步骤400:通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,其中,进程为智能设备本次开机后启动的应用软件对应的进程,获取单元为在控制器底层设置的数据量获取通道;
141.步骤401:针对每一个进程,通过获取单元分别获取进程对应的各个线程在当前检测周期内下载子数据的子数据量;
142.步骤402:若进程的数据量和进程对应的各个线程的子数据量的总和达到进程对应的应用软件的预设下载数据量,则禁止进程和对应的各个线程,在当前检测周期内继续向内嵌式存储器emmc中写入下载数据和下载子数据,并禁止进程和对应的各个线程在当前检测周期内继续下载。
143.本公开一些实施例中,通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,包括:
144.通过获取单元分别获取当前检测周期内一直处于启动状态以及当前检测周期内退出的各个应用软件对应的进程,在当前检测周期内下载数据的数据量,其中,获取单元设置在控制器底层的linux内核中。
145.本公开一些实施例中,当前检测周期内退出的各个应用软件对应的进程包括在应用软件退出后结束运行的第一类进程,以及在应用软件退出后继续运行的第二类进程;
146.通过获取单元获取当前检测周期内退出的各个应用软件对应的进程,在当前检测周期内下载数据的数据量,参阅图5所示,包括:
147.步骤4000:针对当前检测周期内退出的应用软件:在监测到应用软件的退出指示时,通过获取单元获取第一类进程对应的下载数据的数据量,并查找第一类进程对应的父进程,判定父进程的运行状态,其中,父进程对应的下载数据包括进程对应的下载数据和配置参数;
148.步骤4001:若父进程处于启动状态,则从父进程对应的下载数据的数据量中扣除第一类进程对应的下载数据的数据量,得到第二类进程的数据量;或者
149.步骤4002:若父进程处于已退出状态,则确定最近一级处于启动状态的父进程,并从确定的父进程对应的下载数据的数据量中扣除第一类进程对应的下载数据的数据量,得到第二类进程的数据量;
150.步骤4003:将第二类进程的数据量作为在发出退出指示后退出的应用软件对应的进程,在当前检测周期内下载数据的数据量。
151.本公开一些实施例中,禁止进程和对应的各个线程在当前检测周期内继续向emmc中写入下载数据和下载子数据,包括:
152.向应用软件发送禁止写入信号,以指示进程和对应的各个线程在当前检测周期内不再向emmc发送下载数据和下载子数据;或者
153.切断应用软件与emmc之间的连通,以使进程和对应的各个线程无法在当前检测周期内向emmc中继续写入下载数据和下载子数据。
154.本公开一些实施例中,针对每一个进程,通过获取单元分别获取进程对应的各个线程在当前检测周期内下载子数据的子数据量之后,参阅图6所示,还包括:
155.步骤4030:针对每一个进程,监测进程在emmc中写入下载数据的写入频率;
156.步骤4031:在写入频率高于预设频率时,将进程在emmc中的写入频率调整为预设频率。
157.本公开一些实施例中,方法还包括:
158.若在当前检测周期内监测到在发出退出指示后退出的应用软件重新进入启动状态;
159.则在当前检测周期内通过获取单元获取重新进入启动状态的应用软件对应的进程的新增下载数据的新增数据量,将新增数据量与数据量进行汇总,得到进程在当前检测周期内的总数据量。
160.本公开一些实施例中,方法还包括:
161.将当前检测周期内达到预设下载数据量的进程和高于预设频率的进程所对应的应用软件均记作目标应用软件,并对目标应用软件的缓存进行清理。
162.综上所述,本公开实施例中,公开了一种显示设备和对应用软件进行监测的方法,该显示设备包括显示器、内嵌式存储器和控制器,控制器被配置为通过获取单元分别获取各个进程在当前检测周期内下载数据的数据量,获取单元为在控制器底层设置的数据量获取通道,针对每一个进程,通过获取单元分别获取进程对应的各个线程在当前检测周期内下载子数据的子数据量,若进程的数据量和进程对应的各个线程的子数据量的总和达到进程对应的应用软件的预设下载数据量,禁止进程和对应的各个线程,在当前检测周期内继续向emmc中写入下载数据和下载子数据,并禁止进程和对应的各个线程在当前检测周期内继续下载,避免了向emmc中大量写入数据的情况。
163.最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。
164.为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述示例性的讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从而使得本领域技术人员更好的使用所述实施方式以及适于具体使用考虑的各种不同的变形的实施方式。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1