掌桥专利:专业的专利平台
掌桥专利
首页

通过自动功率分析的损害检测

文献发布时间:2023-06-19 10:14:56


通过自动功率分析的损害检测

背景技术

本发明总体上涉及一种用于软件检测的方法,并且更具体地涉及一种用于确定在数据处理设备上执行的至少一个应用的功耗模式的计算机实现的方法。本发明进一步涉及一种用于确定在数据处理设备上执行的至少一个应用的功耗模式的系统,以及一种计算机程序产品。

信息技术(information technology,IT)安全领域的主要挑战是当不可能在系统上安装恶意软件检测软件时检测受损系统。当系统具有网络连接但是另外是封闭盒时,这适用于操作技术(operation technology,OT)领域,适用于具有未知或过时的操作系统的系统,并且适用于具有有限的用户界面的系统。

检测系统损害(compromise)的一种方式是分析所讨论的系统的功耗。这已经被研究用于运行一个操作系统和一个应用的设备的损害检测。然而,今天,服务器虚拟化被广泛使用。在同一硬件实例上执行多个操作系统实例(客户OS/操作系统)。在这种情况下,基于功耗检测异常更加具有挑战性,这是因为每个客户OS运行一个或多个不同的应用,并且因此表现出不同的功率使用模式。除了应用模式的混合之外,来自管理程序的功率使用模式(换入和换出操作系统和相关应用)使得整体功率信号更加难以识别和解释。即使当人们具有指示恶意软件的功率使用模式时,人们也必须确定许多客户操作系统中的哪一个被感染,特定的一个、一些或全部。

发明内容

根据本发明的一个方面,可以提供一种用于确定在数据处理设备上执行的至少一个应用的功耗模式的计算机实现的方法。该方法可以包括使用电流传感器测量流入数据处理装置的DC电流,通过该电流传感器可以创建带时间戳电流值样本的流。

该方法可以进一步包括使用电压传感器来测量提供给数据处理设备的DC电源电压,通过该电压传感器可以创建带时间戳电压值样本的流。

此外,该方法可以包括使用I/Q数字信号处理确定在相同时间测量的时间戳样本的流的乘积,并且将该乘积转换成实数数据流和虚数数据流,将该实数数据流及该虚数数据流组合成复数(complex)数据流,以及对该复数数据流应用信号处理解调步骤,从而生成解调的数据流。

最后但并非最不重要,该方法可包括从解调的数据流中提取至少一个基于流的参数签名,每个基于流的参数签名表示在数据处理设备上执行的至少一个相应应用的功耗模式。

根据本发明的另一方面,可以提供一种用于确定在数据处理设备上执行的至少一个应用的功耗模式的系统。该系统可包括用于测量流入数据处理装置的DC电流的电流传感器。由此,可以创建带时间戳的电流值样本的流。

该系统还可以包括电压传感器,用于测量提供给数据处理设备的DC电源电压。由此,可以创建带时间戳电压值样本的流。

此外,该系统可以包括一个处理器。处理器可使用I/Q数字信号处理来确定在相同时间测量的带时间戳样本的流的乘积,并将该乘积转换成实数数据流和虚数数据流。处理器可将实数数据流和虚数数据流组合成复数数据流。处理器可将信号处理解调步骤应用于复数数据流以产生经解调的数据流。

此外,处理器可以从解调的数据流提取至少一个基于流的参数签名,每个基于流的参数签名表示在数据处理设备上执行的至少一个相应应用的功耗模式。

所提出的用于确定在数据处理设备上执行的至少一个应用的功耗模式的计算机实现的方法,可以提供多个优点和技术效果:

所提出的概念——以方法或相关系统的形式——可以应用于各种各样不同的硬件系统。它可以独立于操作系统、所使用的管理程序以及所使用的应用。对系统的功耗中的异常的检测可以允许检测任意虚拟系统中的恶意软件。这通过促进允许检测行为改变的目标系统的功耗的自动高分辨率实时信道分析来实现,不仅是软件,而且使用故意修改的数据集和模型来攻击系统的损害对抗学习攻击,这是因为所有这些情况将由于变化的计算需求而导致目标功率使用的变化。

所提出的方法还可以将输出到分析引擎的总数据减少到仅签名而不是样本数据的原始流。实质上,所提出的方法描述了提供驻留在表示功率使用的实际签名中的增强的功率使用表征,而不是将需要传输到分析引擎并由分析引擎处理的大量原始数据。

所提出的概念可以以不同格式来应用,只要所需的功率使用监测在从目标的电源到目标(即,处理设备本身)的所有DC电源导轨上处于高速率和分辨率。电功率是电压和电流的乘积。在没有电压的情况下监控电流仍然被使用,但是没有准确地反映真实的电力使用、电力电缆上的电压降以及其他条件。因此,监视功耗可能是上述问题的最适当的方法。

经丰富的数据流包括表示关于在任何给定时间点的功率使用的详细签名的大量附加数据。取决于时域分析,重复模式将是容易提取的。该经丰富的数据可被发送到分析平台中,该分析平台可以是机器学习环境或其他分析平台,或者来自设备的签名数据可被处理,从而寻找由签名描述的行为的改变。某些改变可以是预期的并且将匹配预期的参数,而其他改变可以被检测到,这可以指示目标的行为签名。一旦行为签名已被正确地添加到数据集,就可使用该技术容易地检测不同类型的损害的签名。

还可以值得注意的是,所提出的概念可以传递对在处理设备(即,服务器)上的管理程序的控制下运行的虚拟机中执行的不允许的潜在恶意应用的检测的适当结果。这明显超出了在没有增强的I/Q信号处理的情况下使用针对专用处理器的简单电压和电流传感器对功耗模式的简单检测。

该方法也可以按比例放大或缩小,并且适用于从单个电源导轨通过到复杂SCADA(监督控制和数据采集)和ICS(工业控制系统)系统的单板计算机。在后者的背景下,它可以适用于不可能安装监控代理的传统系统。

对于不允许监控监视代理的安全关键系统,此方法可提供监控,而不会对目标认证或监管合规造成任何影响。

对于同样将不允许监控代理的高可靠性系统,这种方法是有用的,因为它对被监控的目标是完全被动的。

相同的方法还可以被小型化并且构建到移动计算设备(电话、平板、膝上型计算机等)中,并且提供用于高安全设备的软件不可知的接口,因为这样的设备可以具有可以显示操作行为的独立接口;因此,如果高安全设备受损,所提出的系统可以在这样的情况下独立地运行以显示该设备不再安全。

在下文中,将描述适用于该方法以及相关系统的本发明构思的附加实施例。只要技术考虑不使其困难或不可能,相关特征可以任何组合用于实施例中。

根据一个有利实施例,该方法还可以包括将至少一个基于流的参数签名与已知应用的已知参数签名进行比较。以此方式,该方法可以检测在数据处理设备上执行什么种类的应用或者多个应用。这是可能的,而无需与操作系统和/或调度器或管理程序或任何其他数据处理设备元件和操作系统固有信息进行任何交互。由此,可以调查较旧的数据处理设备或控制器,并且可以确定是仅执行允许的应用还是未知的应用。

根据该方法的一个优选实施例,该至少一个基于流的参数签名可以是从包括频率签名、振幅签名、和相位签名的组中选择的至少一个参数分量。可通过数字信号处理从测量的电流和电压信号中提取这些信号和信号的参数。

根据该方法的另一优选实施例,所述至少一个基于流的参数签名还可包括选自包括每个签名参数分量的模式值、平均值、最小值和最大值的组中的至少一个。可以针对频率签名、振幅签名和相位签名确定这些附加值。因此,从测量的信号可确定的所有信息(电流和电压)可以用于确定具有特征功耗模式(即,特征功耗模式)的应用。

根据一个有用的实施例,该方法可以进一步包括:将多个信道化滤波器应用于复数数据流;生成多个滤波器输出信号;以及对滤波器输出信号中的每个滤波器输出信号执行签名边缘检测。由此,通过增强与数据处理设备的功耗模式的确定相关的时域信息来表征滤波器输出信号。因此,可以从原始I/Q数据流中创建多个信道。示例可以是DC至1kHz、1kHz至10kHz、以及10kHz至100kHz等。也可以应用其他通道。在每个信道内发生的相位、频率和振幅解调可以被馈送到边缘检测器或边缘检测算法中以支持确定行为的开始和结束特定签名(即,模式)。例如,可以检测DC至1kHz信道(或频带)中的边缘,但是在其他信道中不这样做。

根据一个可能的实施例,该方法还可以包括使用Canny-Edge算法用于签名边缘检测。来自图像处理的这种算法已知是鲁棒的(robust)并且对于边缘检测是非常有用的。因此,可以使用良好研究的方法来支持当前提出的概念的目标。

根据一个允许的实施例,该方法可以另外包括应用无限脉冲响应信号滤波器(IIR)和/或有限脉冲响应(FIR)信号滤波器——具体为多个IIR和/或FIR滤波器——以便提高该经解调数据流的信噪比,同时减少引入的相位滞后以便提高签名振幅。数字信号处理中的这些滤波器易于实施,且可表示较好地将所要信号与噪声隔离的先进方式。

根据一个可选实施例,该方法可进一步包括:检测至少一个基于流的参数签名中的一个或多个签名边,并且将相关的功率签名数据聚合成适合于分析引擎的数据格式。这些数据可由使用启发式算法的签名分析引擎或包括基于机器学习的系统的高级分析引擎进一步处理。因为用于分析引擎的数据格式可能已经由在此提出的方法和/或系统准备好,所以分析引擎可以不承担转换数据格式的负担。

因此,在进一步的实施例中,该方法还可以包括将聚集的相关数据功率签名数据传输至分析引擎用于监测。所以,连续监测可防止观察到的数据处理执行损害软件。这可以表示用于保护较旧的数据处理系统(例如,防欺诈软件不可用的那些数据处理系统)免受欺诈和恶意软件的安全方式。

此外,实施例可以采取相关计算机程序产品的形式,该相关计算机程序产品可从计算机可用或计算机可读介质访问,该计算机可用或计算机可读介质提供用于由计算机或任何指令执行系统使用或与其结合使用的程序代码。出于本说明的目的,计算机可用或计算机可读介质可以是可包含用于存储、通信、传播或传输供指令执行系统、装置或设备使用或结合指令执行系统、装置或设备使用的程序的装置的任何装置。

附图说明

应注意的是,参考不同的主题描述了本发明的实施例。特别地,一些实施例参考方法类型权利要求来描述,而其他实施例参考装置类型权利要求来描述。然而,本领域的技术人员将从以上和以下说明中得出,除非另有说明,除了属于一种类型的主题的特征的任何组合之外,还涉及不同主题的特征之间的任何组合,特别是方法类型权利要求的特征以及装置类型权利要求的特征之间的任何组合,被视为在本文件内公开。

以上定义的方面以及本发明的其他方面从下文将要描述的实施例的示例中是清楚的并且参考实施例的实例进行解释,但是本发明不限于此。

将仅以举例方式并且参考以下附图来描述本披露的优选实施例。

图1示出根据本公开的实施例的用于确定在数据处理设备上执行的至少一个应用的功耗模式的发明的计算机实现的方法的实施例的框图。

图2示出根据本公开的实施例的方法的初始校准的第一阶段的框图。

图3示出根据本公开的实施例的方法的总体实现的第二阶段的框图。

图4示出根据本公开的实施例的系统的实施例,该系统包括具有功率适配器的物理主机以及检测单元和分析单元。

图5示出根据本公开的实施例的I/Q流至频率转换信号处理系统的外观的信号采样的实施例。

图6示出根据本公开的实施例的用于确定在数据处理设备上执行的至少一个应用的功耗模式的系统的简化版本的实施例。

图7示出根据本公开的实施例的在这里提出的概念中使用的计算系统的实施例。

具体实施方式

在本说明书的上下文中,可以使用以下惯例、术语和/或表达式:

术语“功耗模式”可以表示执行软件(例如,应用)的数据处理设备、控制器或任何其他电气设备的功耗中的特征信号模式。由于在执行应用时改变数据处理装置的处理器、存储器和/或其他组件的使用,所以设备的功率消耗可能以特征方式变化。

术语“数据处理设备”可以表示典型地包括处理器和附接至该处理器的存储器的计算机系统、运行软件的专用设备、控制器、和I/O设备以及类似装置。可以加载和执行类似操作系统、虚拟化层(例如,管理程序)、设备驱动程序和应用程序的软件。

术语“带时间戳电流值样本”可以表示从电源流向数据处理设备的电流的测量值的连续序列。每个测量值可被数字化并与测量和/或数字化的时间相关。同样的情况可以应用于项“带时间戳电压值样本”。而且,这些测量值可被数字化并被附加到时间值。

术语“I/Q数字信号处理”可以表示比仅使用信号的瞬时振幅的一系列样本更精确的信号表示。通常,不可能从一系列样本确定频率,这是因为在复杂环境中,不能确定其是正频率还是负频率,因为例如它们可以生成相同的曲线(例如,cos(x)=cos(-x))。其次,难以确定信号的功率(峰值振幅,包络)。这里只能看到0°,180°,360°等处的峰值振幅。然而,最大功耗可能在其他地方。这些实例的I/Q表示解决了这个问题。代替如上所述将信号看作平坦曲线,可以在三维中将其看作拔塞钻(corkscrew)(螺旋(helix)、螺旋(spiral)、螺旋弹簧(coil spring))。因此,I/Q数据样本表示沿着拔塞钻的时间轴看到的信号的坐标。调幅的正弦波被称为同相和正交分量。该概念是本领域技术人员熟知的。

术语“复数数据流”可以表示在数学意义上具有实部和复数或虚部两者的数字值的连续序列。

术语“信号处理解调”可以表示从载波提取原始信息承载信号的过程。解调器可以被实现为执行用于从调制载波恢复信息内容的一些数字滤波器程序的电子电路或计算机程序。存在许多类型的调制,因此存在许多类型的解调器方法。

术语“基于流的参数签名”可以表示时间上的特征信号模式,其可以与使用管理程序的计算机系统上的特定应用或应用的组合的执行有关。

在下文中,将给出附图的详细描述。附图中的所有说明都是示意性的。首先,给出了用于确定在数据处理设备上执行的至少一个应用的功耗模式的发明的计算机实现的方法的实施例的框图。之后,将描述进一步的实施例,以及用于确定在数据处理设备上执行的至少一个应用的功耗模式的系统的实施例。

图1示出用于确定在数据处理设备上执行的至少一个应用的功耗模式的计算机实现的方法100的实施例的框图。该方法包括使用电流传感器测量102流入数据处理设备的DC电流。电流传感器连接在数据处理设备和电源之间;由此,产生带时间戳电流值样本流。

然后,方法100包括使用电压传感器测量104由电源提供给数据处理设备的DC电源电压。电压传感器分别连接至处理设备和电源——具体地,分别为并联或跨接。由此,产生带时间戳电压值样本流。

此外,方法100包括:确定(106)在相同时间测量的时间戳样本的流的乘积(数学上讲,确定其乘积),并且将该乘积转换成实数数据流和虚数数据流。为此,使用I/Q数字信号处理。基本上,确定消耗的功率。

对于实际实施,通过将源流与适当的COS和SIN函数值混合以产生I和Q分量的过程从源信号流提取实数(Q)和虚数(I)流也将是有用的。

接下来,将实数据流和虚数据流组合(108)成复数数据流,对复数数据流应用

(110)信号处理解调步骤,从而生成经解调的数据流,以及从经解调的数据流中提取(112)至少一个基于流的参数签名。因此,基于流的参数签名中的每一个——具体地组合地——表示在数据处理设备上执行的至少一个对应应用的功耗模式,该设备还潜在地执行管理程序和多个应用。

使用充分建立的技术作为基础,连同信号处理技术一起建立该方法和提出的示例实现,以提供描述数据处理目标的功率使用的经丰富的数据流。实质上,每个服务器的电源内或附接到每个服务器的电源的自动的和嵌入式设备可以通过能够识别任务切换和每个组成虚拟化任务的功率签名来提供具有虚拟化计算环境的特定受损虚拟主机的确定。

通常,所提出的概念可以用作两阶段方法:

图2示出了初始校准的第一阶段的框图200。针对一个或多个管理程序204、操作系统206和应用208收集功率使用签名(202)。这可以在连续细化功率特征的循环过程中完成。然后记录指示正常运行的系统的这些功率签名,210。

图3示出总体方法的第二阶段(特别是检测模式)的框图300。首先,在302,从目标系统的功耗中提取签名。在304,将这些签名馈送到分析单元。在306,将分离的参数签名分离为指示正常行为(308)的签名和指示损害行为(310)的签名。

在找到指示正常行为的签名的情况下,这些签名用于细化(312)管理程序、操作系统和应用的参数签名,例如,如图2的上下文中所述。然后,该过程返回到提取签名的步骤302。

在参数签名指示损害行为(310)的情况下,任选地,可以进行与已知的恶意参数签名的比较314,并且如果超过某个阈值,则可以发出警报并且可以触发响应(316)。作为用于比较314的输入,从外部存储源检索表示恶意行为(即在目标系统上执行的恶意软件)的已知签名318。此外,在警报已经发出(316)之后,在320,检测到的恶意签名可以被发送到外部目的地。还如图3所示,在警报被发出之后,该过程返回到在步骤302中提取签名。

应注意,在图3中,仅频率用作若干信号特征。可使用信号振幅和/或信号相位来绘制类似流程图。另外,这些信号特征也可以组合进行评估。可替代地,可以用信号特征代替术语“频率”以获得更一般的流程图。

图4示出包括具有功率适配器412、以及检测单元414、分析单元430和警报和反应系统434的物理主机400的系统的实施例。物理主机400包括变压器412,其使用AC功率并将其转换成物理主机中使用的DC功率。物理主机400包括处理器、存储器单元和子系统,统称为附图标记402。物理主机400执行表示为虚拟系统1,404、虚拟系统2,406、虚拟系统3,408和虚拟系统4,410的一系列虚拟系统。可以在物理主机400上执行更多的虚拟系统。虚拟系统可以在管理程序(未示出)上执行。在每个虚拟系统中,可以执行操作系统和一个或多个应用。

检测单元414适于执行信号处理。尽管以抽象形式示出,但电流传感器426串联连接在电源412的DC输出与物理主机400的功率消耗装置之间。以类似的方式,电压传感器424连接在来自电源412的DC输出的输出线路上,测量从电源412的DC功率输出提供给物理主机400的功率消耗装置的电压。

来自电压传感器424和电流传感器426的两个信号流被馈送至模数转换器420。每个信号流被独立A/D(模拟/数字)转换。模拟传感器输入以电流感测设备的模拟带宽的两倍(奈奎斯特速率)的带宽来采样。

多于一个电压/电流组合可以被采样,例如,1MHz的电流模拟带宽的从典型的计算机电源到计算机内的各个部件的3.3V、5V和12V电源导轨。

频率产生器416的输出和A/D转换器420的输出用于通过I/Q混频器428将这些样本与正弦和余弦进行数字混合以将此数据流转换成I和Q流(实数和虚数)。这是提供用于数据流的实时特征的相关数据的信号处理方法。

数字信号处理器422使用来自I/Q混频器428的I和Q数据流作为输入信号来提取有用的数据,包括但不限于:

·数据流的振幅,

·数据流的频率,以及

·数据流的相位

·和AC耦合分量一起,具有上面的平均值、最大值、最小值(Mean、Max、Min是平均值、最大值和最小值的数学值的缩写)的额外运行值。

可以针对每个功率传感器跨多个采样信道频率(由频率产生器416生成)提取以上数据。通过将信道频率目标为任务切换频率的倍数以及其他特征处理时域活动,信道数据聚合帮助以与诸如John F.Canny的“Canny边缘检测”算法类似的方式识别功率签名的边缘,以帮助表征机器学习系统的视觉图像。

数字信号处理可以由子系统使用高速加速微控制器来执行。其可以是以2MHz对电流感测和电压线中的每一个进行采样的SoC(片上系统),将ADC样本与SIN/COS表进行混合,以提供每个模拟样本的数字I和Q值。

在将功率签名传送到以太网模块、TCP/IP网络适配器418之前,运行信号处理软件的微控制器DSP核心执行信号处理、信道化和其他任务。以太网功能允许功率分析器连接到标准以太网网络。结果是具有网络套接字的服务器电源,其以非常好的分辨率发送恒定的经丰富的侧信道功率分析数据流。

从设备馈送的数据然后被馈送到包括模式识别引擎432的分析处理平台430,该模式识别引擎432用于检测功耗模式中的异常行为、特定签名和/或异常。通过警报和反应系统434,可以启动预定义的任务以保护物理服务器避免执行损害软件。为此目的,警报和反应系统434还可包括表示层和自动响应引擎436。

转到图5,允许在分析过程的不同阶段对不同示例性波形进行更详细的视图。图5示出了模拟I/Q流至频率转换信号处理系统的信号采样的实施例。信号源502(可与图4的频率产生器416相同)可示例性地递送以下数据:信号速率:44.1[kHz];波形:正弦;频率:10[kHz];振幅:1[V];偏移:0。框504可表示来自图4的功率传感器426的输入。

信号源502的输出在图520中示出为正弦/余弦。图524示出了源信号。

延迟单元506产生正弦和余弦信号。通过将正弦信号延迟90%来产生余弦信号。此外,延迟单元506的输出参照信号图520。

乘法器508接收针对Q流的信号源502和延迟单元506的输出信号;乘法器510接收延迟单元506和功率传感器504的输出作为I流的输入信号。浮点到复数转换器512使用Q数据流和I数据流作为输入。在图522中示出浮点到复数转换器512的输出信号,尤其是叠加在源信号上的I/Q数据流。

在信号流中跟随的具有以下特征的示例性低通滤波器514:抽取:1[1/sec];采样率44.1[kHz];截止频率:1.5[kHz];过渡宽度:200;窗口:Hamming,beta:6.76。作为后续单元,使用具有门7.01874k的正交解调器516。其再次跟随具有以下特性的低通滤波器518:抽取:1[1/sec];门1;采样率44.1[kHz];截止频率:400[Hz];过渡宽度10;窗口:Hamming,beta6.76。正交解调器514是共轭乘法块,并且在复数理论上,提供与包含在I/Q流内的频率具有线性关系的输出。应注意,术语‘抽取’涉及每秒抽取信号样本。因此,如果每秒具有1000个样本并且抽取值为10,则仅存在100个样本作为输出。这可使处理器和其他电路免于过载。过渡宽度形成-3dB频率窗口。

在频率下降(sink)中,信号图526示出了可以与特征应用和管理程序和操作系统活动相关的功率使用的频率分量。具体地,图526的迹线的左侧示出了示例中预期的一致的功率使用;图526的右侧示出了一个不同的频率模式,在该示例中,该模式突出显示了与原始电源信号中的重叠信号噪声相关的行为变化。

可以注意到,这里以简化的形式示出了实际的信号处理,以演示具有用于采样和滤波速率的一些具体数字以及一些其他参数的的原理。

图6示出了用于确定在数据处理设备上执行的至少一个应用的功耗模式的系统600的简化版本的实施例。系统600包括电流传感器602(相当于电流传感器426和504),用于使用电流传感器测量流入数据处理设备的DC电流。电流传感器602连接在数据处理设备和电源之间,从而创建带时间戳电流值样本的流。

系统600还包括电压传感器604(相当于电压传感器424),用于利用电压传感器测量由电源提供给数据处理设备的DC电源电压。电压传感器604被连接到处理设备和电源,由此创建带时间戳电压值样本的流。

此外,系统600包括I/Q数字信号处理器606,该I/Q数字信号处理器606适于使用I/Q数字信号处理,确定在相同的时间所测量的带时间戳样本的流的乘积,并且将该乘积转换成实数数据流(I流)和虚数数据流(Q流),以及组合模块608(相当于浮点到复数转换器512),其适于将实数据流和虚数据流组合成复数据流。

此外,系统600包括解调器单元610(相当于正交解调器516)和提取单元612,解调器单元610适于对复数数据流应用信号处理解调步骤,从而产生解调数据流,提取单元612适于从解调数据流提取至少一个基于流的参数签名。基于流的参数签名中的每一个表示在数据处理设备上执行的至少一个对应应用的功耗模式。因此,可以在允许的和不允许的或潜在危险的管理程序/操作系统/应用组合之间进行区分。

本发明的实施例可以与几乎任何类型的计算机一起实现,而不管平台适于存储和/或执行程序代码。图7作为实例展示适于执行与所提议方法(例如,用于信号边缘检测处理或其他数字滤波器算法)有关的程序代码的计算系统700。然而,数字信号处理器(DSP)或FPGA也可以用于这些任务。

计算系统700仅是合适的计算机系统的一个示例,并且不旨在对在此描述的本发明的实施例的用途或功能的范围提出任何限制,而不管计算机系统700是否能够被实现和/或执行上文阐述的任何功能。在计算机系统700中,存在可与许多其他通用或专用计算系统环境或配置一起操作的组件。可以适合于与计算机系统/服务器700一起使用的众所周知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机系统、服务器计算机系统、瘦客户机、厚客户机,手持式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品,网络PC、小型计算机系统、大型计算机系统和包括任何上述系统或设备的分布式云计算环境,等等。可以在由计算机系统700执行的计算机系统可执行指令(诸如程序模块)的一般上下文中描述计算机系统/服务器700。一般而言,程序模块可包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。计算机系统/服务器700可在分布式云计算环境中实现,其中任务由通过通信网络链接的远程处理设备执行。在分布式云计算环境中,程序模块可位于本地和远程计算机系统存储介质(包括存储器存储设备)两者中。

如图所示,计算机系统/服务器700以通用计算设备的形式示出。计算机系统/服务器700的组件可以包括但不限于一个或多个处理器或处理单元702、系统存储器704以及将包括系统存储器704的不同系统组件耦合到处理器702的总线706。总线706表示若干类型的总线结构中的任一种总线结构中的一种或多种,包括存储器总线或存储器控制器、外围总线、加速图形端口、以及使用各种总线架构中的任一种的处理器或局部总线。作为示例而非限制,此类架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线和外围组件互连(PCI)总线。计算机系统/服务器700通常包括各种计算机系统可读介质。这样的介质可以是可由计算机系统/服务器700访问的任何可用介质,并且它包括易失性和非易失性介质、可移动和不可移动介质。

系统存储器704可包括易失性存储器形式的计算机系统可读介质,诸如随机存取存储器(RAM)708和/或高速缓存存储器710。计算机系统/服务器700还可以包括其他可移动/不可移动、易失性/非易失性计算机系统存储介质。仅作为示例,存储系统712可被提供用于从不可移动、非易失性磁介质(未示出,并且通常被称为“硬盘驱动器”)读取和向其写入。虽然未示出,但是可以提供用于从可移除非易失性磁盘(例如,“软盘”)读取和向可移除非易失性磁盘写入的磁盘驱动器,以及用于从可移除非易失性光盘(诸如CD-ROM、DVD-ROM或其他光学介质)读取或向其写入的光盘驱动器。在这样的实例中,每一个都可以通过一个或多个数据介质接口连接到总线706。如下面将进一步描绘和描述的,存储器704可以包括至少一个程序产品,该程序产品具有被配置为执行本发明的实施例的功能的程序模块(例如,至少一个)的集合。

具有一组(至少一个)程序模块716的程序/实用工具、以及操作系统、一个或多个应用程序、其他程序模块和程序数据可以通过示例而非限制的方式存储在存储器704中。操作系统、一个或多个应用程序、其他程序模块和程序数据中的每一者或其的一些组合可包含联网环境的实施例。如本文所述,程序模块716通常执行本发明的实施例的功能和/或方法。

计算机系统/服务器700还可以与一个或多个外部设备718通信,诸如键盘、定点设备、显示器720等;使得用户能够与计算机系统/服务器700交互的一个或多个设备;和/或使计算机系统/服务器700能够与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)。这样的通信可以经由输入/输出(I/O)接口714发生。此外,计算机系统/服务器700可以经由网络适配器722与诸如局域网(LAN)、通用广域网(WAN)和/或公共网络(例如,互联网)之类的一个或多个网络通信。如所描绘的,网络适配器722可以经由总线706与计算机系统/服务器700的其他部件通信。应当理解,虽未示出,其他硬件和/或软件组件可以与计算机系统/服务器700结合使用。示例包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动器阵列、RAID系统、磁带驱动器和数据归档存储系统等。

已经出于说明的目的呈现了本发明的不同实施例的描述,但并不旨在是穷尽性的或局限于所披露的实施例。在不背离所描述的实施例的范围和精神的情况下,许多修改和变化对本领域的普通技术人员而言将是显而易见的。这里使用的术语被选择以最佳地解释实施例的原理、实际应用或对市场上存在的技术的技术改进,或者使得本领域普通技术人员能够理解这里公开的实施例。

本发明可以体现为系统、方法和/或计算机程序产品。计算机程序产品可包含其上具有计算机可读程序指令的计算机可读存储介质,该计算机可读程序指令用于致使处理器执行本发明的方面。

该介质可以是用于传播介质的电、磁、光、电磁、红外或半导体系统。计算机可读介质的示例可包括半导体或固态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、刚性磁盘和光盘。光盘的当前示例包括致密盘只读存储器(CD-ROM)、致密盘读/写(CD-R/W)、DVD和蓝光光盘。

计算机可读存储介质可以是可以保留和存储指令以供指令执行设备使用的有形设备。计算机可读存储介质可以是,例如但不限于,电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述各项的任何合适的组合。计算机可读存储介质的更具体例子的非穷举列表包括以下:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存),静态随机存取存储器(SRAM)、便携式致密盘只读存储器(CD-ROM),数字通用盘(DVD)、记忆棒、软盘、机械编码设备(诸如穿孔卡片或具有记录在其上的指令的凹槽中的凸起结构),以及上述各项的任意合适的组合。如本文中所使用的计算机可读存储介质不应被解释为瞬态信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输媒质传播的电磁波(例如,通过光纤电缆的光脉冲)、或通过导线传输的电信号。

本文所述的计算机可读程序指令可从计算机可读存储介质下载到相应的计算/处理设备,或经由网络(例如,互联网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。

用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据,或者以一种或多种编程语言的任意组合编写的源代码或目标代码,包括面向对象的Smalltalk、C++等编程语言,以及常规的过程式编程语言,例如“C”编程语言或类似的编程语言。计算机可读程序指令可以完全地在用户的计算机上执行、部分地作为独立软件包在用户的计算机上执行、部分地在用户的计算机上部分在远程计算机上执行、或者完全地在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA))可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化,以便执行本发明的方面。

本文中参考根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图说明和/或框图描述本发明的方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令来实现。

这些计算机可读程序指令可以被提供给通用计算机的处理器,专用计算机或其他可编程数据处理装置,以产生机器,这样指令通过计算机或其他可编程数据处理装置的处理器执行,创建用于实现在流程图和/或方框图的一个或多个方框中指定的功能/动作的装置。这些计算机可读程序指令还可存储在可指导计算机、可编程数据处理装置、和/或以特定方式运作的其他设备的计算机可读存储介质中,这样具有存储在其中的指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各方面的指令。

计算机可读程序指令还可以加载到计算机、其他可编程数据处理装置、或另一设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,使得在计算机、其他可编程装置或另一设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和/或框图图示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。对此,流程图或框图中的每个方框可以代表模块、段或指令的一部分,其包括用于实现规定的逻辑功能的一个或多个可执行指令。在一些替代实现方式中,框中所标注的功能可以不以图中所标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还将注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合可以由基于专用硬件的系统来实现,该基于专用硬件的系统执行指定的功能或动作或执行专用硬件与计算机指令的组合。

在此使用的术语仅用于描述具体实施例的目的并且不旨在限制本发明。如在此使用的,单数形式“a”、“an”和“the”旨在也包括复数形式,除非上下文另外清楚地指示。将进一步理解的是,当在本说明书中使用术语“包括(comprises)”和/或“包括(comprising)”时,其指定所陈述的特征、整体、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其他特征、整体、步骤、操作、元件、组件和/或其组的存在或添加。

所附权利要求中的所有装置或步骤加功能元件的对应结构、材料、动作和等效物旨在包括用于结合其他要求保护的元件(如具体要求保护的)来执行功能的任何结构、材料或动作。本发明的描述是出于说明和描述的目的而呈现的,但不旨在是穷尽性的或局限于所披露的形式的本发明。在不脱离本发明的范围和精神的情况下,许多修改和变化对本领域的普通技术人员将是显而易见的。选择和描述这些实施例是为了最好地解释本发明的原理和实际应用,并且使得本领域的普通技术人员能够针对适合于所考虑的具体用途的具有不同修改的不同实施例理解本发明。

根据本发明的另一方面,可以提供一种用于确定在数据处理设备上执行的至少一个应用的功耗模式的系统。该系统可以包括电流传感器,用于使用电流传感器来测量流入数据处理设备中的DC电流。电流传感器可以连接在数据处理设备和电源之间。由此,可以创建带时间戳的电流值样本的流。

该系统还可以包括电压传感器,用于使用电压传感器测量由电源提供给数据处理设备的DC电源电压。电压传感器可以连接到处理设备和电源。由此,可以创建带时间戳电压值样本的流。

此外,该系统可以包括I/Q数字信号处理器,被适配为使用I/Q数字信号处理确定在相同时间所测量的带时间戳样本的流的乘积并且将该乘积转换成实数数据流和虚数数据流,组合模块,被适配为将该实数数据流和虚数数据流组合为复数数据流,以及解调器单元,被适配为将信号处理解调步骤应用于该复数数据流,从而生成解调的数据流。

此外,该系统可以包括提取单元,被适配为用于从解调的数据流中提取至少一个基于流的参数签名,基于流的参数签名中的每一个表示在该数据处理设备上执行的至少一个相应应用的功耗模式。

相关技术
  • 通过自动功率分析的损害检测
  • 针对天馈线分析仪端口实现输出功率自动检测的方法、系统、装置、处理器及其存储介质
技术分类

06120112474469