CN105493048A - 调试装置、调试方法以及调试程序 - Google Patents

调试装置、调试方法以及调试程序 Download PDF

Info

Publication number
CN105493048A
CN105493048A CN201480047777.1A CN201480047777A CN105493048A CN 105493048 A CN105493048 A CN 105493048A CN 201480047777 A CN201480047777 A CN 201480047777A CN 105493048 A CN105493048 A CN 105493048A
Authority
CN
China
Prior art keywords
current sinking
debugging
threshold value
portable terminal
terminal device
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.)
Granted
Application number
CN201480047777.1A
Other languages
English (en)
Other versions
CN105493048B (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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Publication of CN105493048A publication Critical patent/CN105493048A/zh
Application granted granted Critical
Publication of CN105493048B publication Critical patent/CN105493048B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3612Software analysis for verifying properties of programs by runtime analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

本发明的目的在于能够更准确地计算出由便携终端执行的计算机程序的消耗电流或消耗电流量。调试装置(1)计算在便携终端(2)中对计算机程序进行调试执行时的便携终端(2)的消耗电流或消耗电流量,该调试装置(1)具有:终端日志信息获取部(12),其在调试执行时获取终端日志信息,该终端日志信息表示构成便携终端(2)的硬件的动作状态;以及消耗电流计算部(13),其根据由终端日志信息获取部(12)获取的终端日志信息、和预先存储的用于根据硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的便携终端(2)的消耗电流或消耗电流量。

Description

调试装置、调试方法以及调试程序
技术领域
本发明涉及计算机程序开发用的调试装置、调试方法以及调试程序。
背景技术
在智能电话等便携终端上,若在便携终端上执行的计算机程序(软件、应用程序)消耗较多的电力,则充电池容量减少,用户需要控制应用程序的使用。而且,若充电池容量用尽,则不能使用便携终端自身。因此,要求尽量不消耗电力的计算机程序。
在此,以往公知有用于开发能够实现省电化的软件的软件开发装置(例如下述专利文献1)。
现有技术文献
专利文献
专利文献1:日本特开2009-75965号公报
发明内容
发明要解决的课题
在专利文献1所记载的软件开发装置中,根据预先测定的硬件资源的单位消耗电力来计算软件的消耗电力。但是,一般来说,因为硬件资源的消耗电力(消耗电流)根据该硬件资源的动作状况而改变,因此在专利文献1所记载的软件开发装置中,存在不能计算准确的消耗电力的问题。
因此,本发明正是鉴于该课题而完成的,其目的在于提供能够更准确地计算由便携终端执行的计算机程序的消耗电流或消耗电流量的调试装置、调试方法以及调试程序。
用于解决课题的手段
为了解决上述课题,本发明的一个方面的调试装置计算在便携终端中对计算机程序进行调试执行时的便携终端的消耗电流或消耗电流量,该调试装置具有:获取单元,其在调试执行时获取终端日志信息,该终端日志信息表示构成便携终端的硬件的动作状态;以及计算单元,其根据由获取单元获取的终端日志信息、和预先存储的用于根据硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的便携终端的消耗电流或消耗电流量。
根据这样的调试装置,在调试执行时获取终端日志信息,且根据所获取的终端日志信息来计算调试执行时的便携终端的消耗电流或消耗电流量,该终端日志信息表示构成便携终端的硬件的动作状态。在采用该结构时,因为能够计算出执行计算机程序时的反映了实际的硬件的动作状态的消耗电流或消耗电流量,因此能够计算出更准确的消耗电流或消耗电流量。
另外,在本发明的一个方面的调试装置中,优选为,还具有设定终端日志信息的获取时机的获取时机设定单元,获取单元根据由获取时机设定单元设定的获取时机来获取终端日志信息。在采用该结构时,因为能够仅在所设定的时机例如需要计算消耗电流或消耗电流量的时机才获取终端日志信息,且计算该时机的消耗电流或消耗电流量,因此提高用户(计算机程序开发者)的方便性。
另外,在本发明的一个方面的调试装置中,优选为,获取时机设定单元设定计算机程序的规定的范围,在对由获取时机设定单元设定的计算机程序的规定的范围进行了调试执行时,获取单元获取终端日志信息。在采用该结构时,因为能够仅在所设定的计算机程序的范围例如需要计算消耗电流或消耗电流量的范围内获取终端日志信息,且计算该范围的消耗电流或消耗电流量,因此提高用户的方便性。
另外,在本发明的一个方面的调试装置中,优选为,还具有:阈值设定单元,其设定消耗电流或消耗电流量的阈值;以及执行单元,其判定由计算单元计算出的消耗电流或消耗电流量是否超过由阈值设定单元设定的阈值,且在判定为超过的情况下,执行特定的处理。在采用该结构时,能够在超过了所设定的阈值的情况下执行特定的处理,例如能够在超过了所设定的阈值的情况下停止调试执行等,从而提高用户的方便性。
另外,在本发明的一个方面的调试装置中,优选为,获取单元获取构成便携终端的每个硬件的终端日志信息,计算单元根据由获取单元获取的每个硬件的终端日志信息、和预先存储的用于根据该硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的构成便携终端的每个硬件的消耗电流或消耗电流量。在采用该结构时,因为能够计算出执行计算机程序时的反映了实际的每个硬件的动作状态的每个硬件的消耗电流或消耗电流量,因此能够计算出每个硬件的更准确的消耗电流或消耗电流量。
另外,在本发明的一个方面的调试装置中,优选为,还具有:阈值设定单元,其设定构成便携终端的每个硬件的消耗电流或消耗电流量的阈值;以及执行单元,其判定由计算单元计算出的每个硬件的消耗电流或消耗电流量是否超过由阈值设定单元设定的该硬件的阈值,且在判定为超过的情况下,执行特定的处理。在采用该结构时,能够在超过了所设定的每个硬件的消耗电流或消耗电流量的阈值的情况下执行特定的处理,例如,能够在超过了所设定的每个硬件的消耗电流或消耗电流量的阈值的情况下停止调试执行等,从而提高用户的方便性。
另外,在本发明的一个方面的调试装置中,优选为,执行单元在判定为超过阈值的情况下,输出超过了阈值的计算机程序的位置。在采用该结构时,例如,用户重新评价所输出的位置的计算机程序,能够改写成消耗电流或消耗电流量更低的计算机程序等,从而提高用户的方便性。
另外,在本发明的一个方面的调试装置中,优选为,执行单元在输出超过了阈值的计算机程序的位置时,针对该计算机程序的位置,还输出基于由计算单元计算出的消耗电流或消耗电流量的计算机程序的修正候选。在采用该结构时,因为自动地输出计算机程序的修正候选,因此减少用户的工时,从而提高方便性。
然而,本发明的一个方面除了能够如上述那样作为调试装置的发明进行记述之外,也能够如以下那样分别作为调试方法和调试程序的发明进行记述。这仅是类别不同,实质上是相同的发明,实现相同的作用和效果。
即,本发明的一个方面的调试方法,由调试装置执行,该调试装置计算在便携终端中对计算机程序进行调试执行时的便携终端的消耗电流或消耗电流量,其中,该调试方法包括:获取步骤,在调试执行时获取终端日志信息,该终端日志信息表示构成便携终端的硬件的动作状态;以及计算步骤,根据在获取步骤中获取的终端日志信息、和预先存储的用于根据硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的便携终端的消耗电流或消耗电流量。
另外,本发明的一个方面的调试程序使计算机作为下述单元发挥功能:获取单元,在便携终端上对计算机程序进行调试执行时,该获取单元获取终端日志信息,该终端日志信息表示构成便携终端的硬件的动作状态;以及计算单元,其根据由获取单元获取的终端日志信息、和预先存储的用于根据硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的便携终端的消耗电流或消耗电流量。
发明效果
能够更准确地计算出由便携终端执行的计算机程序的消耗电流或消耗电流量。
附图说明
图1是本发明的第1、第2实施方式的调试系统的结构图。
图2是示出在本发明的第1、第2实施方式的调试装置所执行的调试应用程序的画面例的图。
图3是本发明的第1实施方式的调试装置的功能框图。
图4是示出本发明的第1、第2实施方式的调试装置的硬件结构的图。
图5是示出终端日志信息的表例的图。
图6是示出消耗电流运算表的表例(其1)的图。
图7是示出消耗电流运算表的表例(其2)的图。
图8是示出消耗电流运算表的表例(其3)的图。
图9是示出在本发明的第1实施方式的调试装置所执行的处理例(调试方法)的流程图。
图10是本发明的第2实施方式的调试装置的功能框图。
图11是示出在本发明的第2实施方式的调试装置所执行的处理例(调试方法)的流程图。
图12是同时示出本发明的第1、第2实施方式的调试程序的结构、和存储介质的图。
具体实施方式
以下,与附图一起对装置、方法以及程序的优选实施方式详细地进行说明。此外,在附图的说明中,对相同要素标注相同标号并省略重复的说明。
图1是包括本实施方式的调试装置1的调试系统3的结构图。如图1所示,调试系统3构成为包括调试装置1和便携终端2。在调试时由用户(计算机程序开发者)通过有线或无线的网络彼此连接调试装置1和便携终端2。
调试装置1计算在便携终端2中对计算机程序进行调试执行时的便携终端2的消耗电流或消耗电流量。调试装置1由一般的计算机构成,该调试装置1通过在该计算机上执行后述的调试程序60,而提供调试功能。用户通过操作调试装置1而进行作为调试对象的计算机程序的调试。
便携终端2由智能电话或便携电话等构成。调试对象的计算机程序是在便携终端2上进行动作的程序,通过从调试装置1向便携终端2的经由网络的指示或信息的收发,而能够在便携终端2上执行调试对象的计算机程序,且能够利用调试装置1确认调试的执行结果。
图2是示出用于使用由调试装置1所提供的调试功能的调试应用程序的画面例的图。调试应用程序与一般的调试应用程序相同,由多个窗口区域构成。如图2所示的调试应用程序的画面例那样,由如下区域等构成:区域A,其显示调试对象的计算机程序的文件树;区域B,其显示当前开发对象的画面图片;区域C,其显示当前开发对象的程序代码;以及区域D,其在调试执行时实时地显示变量等的值。在本实施方式的调试装置1中,如后述的那样,在区域A~C中设定终端日志信息的获取时机,在区域D中显示与消耗电流或消耗电流量相关的信息。
[第1实施方式]
图3是本发明的第1实施方式的调试装置1和便携终端2的功能框图。如图1所示,调试装置1构成为包括获取时机设定部10(获取时机设定单元)、调试处理部11、终端日志信息获取部12(获取单元)、消耗电流计算部13(计算单元)、以及消耗电流输出部14。另外,便携终端2构成为包括调试处理部20和终端日志信息处理部21。
调试装置1和便携终端2是由CPU等硬件构成的装置。图4是示出调试装置1和便携终端2的硬件结构的一例的图。如图4所示,图3所示的调试装置1和便携终端2作为计算机系统构成,该计算机系统在物理上包括作为中央处理装置的CPU100、作为图像处理用的处理装置的GPU101、作为主存储装置的RAM102和ROM103、显示器等输入输出装置104、通信模块105、作为位置信息获取装置的GPS106、包括加速度传感器或地磁传感器或陀螺仪传感器的传感器107、以及辅助存储装置108等。
图3所示的调试装置1和便携终端2的各功能块的功能通过以下方式来实现:通过在图4所示的CPU100、GPU101、RAM102等硬件上读入规定的计算机软件,从而在CPU100和GPU101的控制下使输入输出装置104、通信模块105、GPS106、传感器107以及辅助存储装置108进行动作,并且进行RAM102中的数据的读出和写入。
接着,对图3所示的调试装置1的各功能块进行说明。
获取时机设定部10根据用户的指示等来设定表示构成便携终端2的硬件的(当前的)动作状态的终端日志信息(后述)的获取时机。获取时机设定部10也可以设定计算机程序的规定的范围。例如,作为获取时机的具体例,可举出开始终端日志信息的获取的计算机程序的行(开始点)和结束终端日志信息的获取的计算机程序的行(结束点)、进行终端日志信息的获取的计算机程序的函数、以及进行终端日志信息的获取的画面(由计算机程序实现的画面)等。另外,获取时机设定部10也可以设定定期地(例如隔1秒)进行终端日志信息的获取等的获取频度作为获取时机。此外,获取时机也处于电力(电流)测定对象范围内。
调试处理部11进行一般的调试应用程序所具有的调试处理。例如,调试处理部11向便携终端2传送(同步)调试对象的计算机程序。另外,调试处理部11向便携终端2发送来自用户的调试执行的指示,且在便携终端2中进行调试执行。另外,调试处理部11向便携终端2发送来自用户的与其他调试处理相关的指示,且从便携终端2接收其响应而进行特定的处理。另外,调试处理部11从便携终端2接收与调试处理相关的指示而进行特定的处理。
终端日志信息获取部12在调试执行时从便携终端2获取终端日志信息。也可以为,终端日志信息获取部12根据由获取时机设定部10设定的获取时机来获取终端日志信息。也可以为,在对由获取时机设定部10设定的计算机程序的规定的范围进行了调试执行时,终端日志信息获取部12获取终端日志信息。也可以为,终端日志信息获取部12获取构成便携终端2的每个硬件的终端日志信息。
图5是示出终端日志信息的表例的图。如图5所示那样,终端日志信息将构成便携终端2的各硬件的名称、表示动作状态的名称、以及动作状态的当前(终端日志信息的获取时)的值对应起来。例如,在图5所示的终端日志信息中,示出当前的CPU的动作频率是0.5GHz,运转率是10%。
消耗电流计算部13根据由终端日志信息获取部12获取的终端日志信息、和预先存储的用于根据硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的便携终端2的消耗电流或消耗电流量。也可以为,消耗电流计算部13根据由终端日志信息获取部12获取的每个硬件的终端日志信息、和预先存储的用于根据该硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的构成便携终端2的每个硬件的消耗电流或消耗电流量。此外,计算信息预先存储于调试装置1的存储器等中。
作为计算信息的具体例,能够举出消耗电流运算表。图6~8是示出消耗电流运算表的表例的图。如图6~8所示那样,消耗电流运算表将构成便携终端2的各硬件的名称、动作状态、以及消耗电流对应起来。例如,在图6所示的消耗电流运算表中,示出在便携终端2的CPU的动作频率为0.5GHz且运转率为3%的情况下,消耗电流为16mA。例如,消耗电流计算部13在由终端日志信息获取部12获取的终端日志信息是前述的“CPU的动作频率是0.5GHz、运转率是3%”的情况下,根据在图6所示的消耗电流运算表的上述的内容“在CPU的动作频率是0.5GHz且运转率是3%的情况下,消耗电流是16mA”,来计算出消耗电流为16mA,且根据该计算出的值来计算调试执行时的便携终端2的CPU的消耗电流。
此外,虽然在图6所示的消耗电流运算表中,使消耗电流与每个1%的运转率对应起来,但不限于1%,也可以与每个其他单位对应起来。另外,运转率0%是考虑到了偏移量。以上的点也适用于图7和图8的内容。
作为计算信息的其他具体例,能够举出以下例示的数学式。
[一次式的例子]
P=ax+b(P:消耗电流、a:按照每个硬件确定的系数、x:每个硬件的变量、b:偏移量)
[二次式的例子]
P=ax^2+bx+c(P:消耗电流、a、b:按照每个硬件确定的系数、x:每个硬件的变量、c:偏移量)
[非线性函数的例子]
P=fa(x)(P:消耗电流、fa(x):以硬件为变量的非线性函数、x:每个硬件的变量)
消耗电流计算部13根据由终端日志信息获取部12获取的终端日志信息和如上述例示那样的数学式,来计算调试执行时的便携终端2的消耗电流。
此外,消耗电流计算部13对每个硬件的消耗电流的运算方法是如下这样的方法:按照所获取的每个终端日志信息运算消耗电流,且在电力(电流)测定对象范围内按顺序累加消耗电流。另外,作为其他方法,也可以为,按照所获取的每个终端日志信息运算消耗电流,当到达电力(电流)测定对象范围的结束点时,累加从开始点到结束点的消耗电流。另外,作为其他方法,也可以为,保存所获取的终端日志信息,当到达电力(电流)测定对象范围的结束点时,收集从开始点到结束点的终端日志信息,且根据所收集的终端日志信息的结果来运算消耗电流。此外,虽然在以上的具体例中对消耗电流进行了说明,但对消耗电流量也同样。即,在以上的具体例中也可以将“消耗电流”改称为“消耗电流量”。
消耗电流输出部14输出由消耗电流计算部13计算出的各硬件的消耗电流或消耗电流量的合计值。例如,消耗电流输出部14在调试装置1的画面(图2的区域D)中显示消耗电流或消耗电流量,或经由网络向其他装置发送消耗电流或消耗电流量。另外,也可以为,消耗电流输出部14向每个硬件(CPU、GPU、GPS等)输出所计算出的消耗电流或消耗电流量。
接着,对图3所示的便携终端2的各功能块进行说明。
调试处理部20与上述的调试装置1的调试处理部11的处理协调地进行调试处理。例如,调试处理部20将从调试处理部11传送的调试对象的计算机程序设定于便携终端2中,而成为能够进行调试执行的状态。另外,调试处理部20接收从调试处理部11发送的来自用户的调试执行的指示,且在便携终端2中进行调试执行。另外,调试处理部20接收从调试处理部11发送的来自用户的与其他调试处理相关的指示,且在便携终端2中进行对应的调试处理,且向调试处理部11返回其响应。另外,调试处理部20对调试处理部11发送与调试处理相关的指示。
终端日志信息处理部21根据来自调试处理部20的指示来获取便携终端2的终端日志信息,且发送给调试装置1的终端日志信息获取部12。
接着,使用图9所示的流程图,对包括调试装置1的调试系统3中的调试方法的具体的处理例进行说明。
首先,由调试装置1的获取时机设定部10设定开始点和结束点(步骤S1)。接着,由调试装置1的调试处理部11向便携终端2传送调试对象的计算机程序(步骤S2),由便携终端2的调试处理部20将所传送的计算机程序设定于便携终端2中(步骤S3)。接着,由调试装置1的调试处理部11对便携终端2指示调试执行(步骤S4),由便携终端2的调试处理部11根据该指示开始计算机程序的调试执行(步骤S5)。
在便携终端2中开始调试执行后,若调试到达所设定的开始点,则由便携终端2的调试处理部20向调试装置1通知该情况(步骤S6)。接着,由调试装置1的调试处理部11接收该通知,且对便携终端2发送终端日志信息的请求(步骤S7)。接着,由便携终端2的调试处理部20接收该请求,且获取便携终端2的终端日志信息,发送给调试装置1(步骤S8)。接着,由调试装置1的终端日志信息获取部12获取所发送的终端日志信息,且存储于调试装置1的存储器等中(步骤S9、获取步骤)。
而且,在便携终端2中开始调试执行后,若调试执行到达所设定的结束点,则由便携终端2的调试处理部20向调试装置1通知该情况(步骤S10)。由调试装置1的调试处理部11接收该通知,且基于调试处理部11的指示,由消耗电流计算部13基于在S9中存储的终端日志信息来计算消耗电流或消耗电流量(步骤S11、计算步骤)。接着,由调试装置1的消耗电流输出部14输出所计算出的消耗电流或消耗电流量(步骤S12)。
在此,作为调试装置1的调试处理部11的功能,将计算机程序上的规定的点的命令改写成计算机程序向调试装置1的调试处理部11通知的命令,且使得实际的命令的执行在刚刚开始终端日志信息的获取之后执行。或者,也可以使用终端上的VM(VirtualMachine:虚拟机)与上述的例同样地具有的调试用的功能。
接着,对如本实施方式那样构成的调试装置1的作用效果进行说明。
根据本实施方式的调试装置1,在调试执行时直接从便携终端2获取表示构成便携终端2的硬件的动作状态的终端日志信息,且根据所获取的终端日志信息,来计算调试执行时的便携终端2的各硬件的消耗电流或消耗电流量、或者所有硬件的消耗电流或消耗电流量的合计值。在采用该结构时,因为能够计算出执行计算机程序时的反映了实际的硬件的动作状态的消耗电流或消耗电流量、以及与每个机型匹配的消耗电流或消耗电流量,因此能够计算出更准确的消耗电流或消耗电流量。
另外,根据本实施方式的调试装置1,因为能够仅在所设定的时机例如需要计算消耗电流或消耗电流量的时机才获取终端日志信息,且计算该时机的消耗电流或消耗电流量,因此提高用户(计算机程序开发者)的方便性。
另外,根据本实施方式的调试装置1,因为能够仅在所设定的计算机程序的范围例如需要计算消耗电流或消耗电流量的范围内获取终端日志信息,且计算该范围的消耗电流或消耗电流量,因此提高用户的方便性。
另外,根据本实施方式的调试装置1,因为能够计算出执行计算机程序时的反映了实际的每个硬件的动作状态的每个硬件的消耗电流或消耗电流量,因此能够计算出每个硬件的更准确的消耗电流或消耗电流量。
[第2实施方式]
接着,对本发明的第2实施方式的调试装置1a进行说明。此外,以下仅对与第1实施方式的调试装置1之间的差别进行说明,对于其他部分与调试装置1相同。
图10是本发明的第2实施方式的调试装置1a和便携终端2的功能框图。如图10所示,调试装置1构成为包括调试处理部11、终端日志信息获取部12(获取单元)、消耗电流计算部13(计算单元)、阈值设定部15(阈值设定单元)以及执行部16(执行单元)。此外,便携终端2与第1实施方式的功能框图相同。
图10所示的调试装置1a,与调试装置1同样地作为在物理上如图4所示那样包括CPU100、GPU101、RAM102、ROM103、输入输出装置104、通信模块105、GPS106、传感器107以及辅助存储装置108等的计算机系统构成。
图10所示的调试装置1a的各功能块的功能通过以下方式来实现:通过在图4所示的CPU100、GPU101、RAM102等硬件上读入规定的计算机软件,从而在CPU100和GPU101的控制下使输入输出装置104、通信模块105、GPS106、传感器107以及辅助存储装置108进行动作,并且进行RAM102中的数据的读出和写入。
接着,关于图10所示的调试装置1a的各功能块,对与调试装置1之间的差别进行说明。
阈值设定部15设定由用户等指定的消耗电流或消耗电流量的阈值。也可以为,阈值设定部15设定构成便携终端2的每个硬件的消耗电流或消耗电流量的阈值。即,消耗电流或消耗电流量的阈值既可以针对各硬件设定,也可以针对所有硬件的消耗电流或消耗电流量的合计值设定。例如,也可以为,阈值设定部15将CPU的消耗电流的阈值设定为100mA,将动作频率为0.5GHz的GPU的消耗电流的阈值设定为50mA,将LTE的消耗电流的阈值设定为300mA等,分别对一个以上的硬件设定消耗电流的阈值。阈值设定部15也可以对消耗电流量的阈值同样地进行设定。
执行部16判定由消耗电流计算部13计算出的消耗电流或消耗电流量是否超过由阈值设定部15设定的阈值,且在判定为超过的情况下执行特定的处理。另外,也可以为,执行部16判定由消耗电流计算部13计算出的每个硬件的消耗电流或消耗电流量是否超过由阈值设定部15设定的该硬件的阈值,且在判定为超过的情况下执行特定的处理。
具体而言,也可以为,执行部16在判定为由消耗电流计算部13计算出的每个硬件的消耗电流或消耗电流量超过由阈值设定部15设定的该硬件的阈值的情况下,显示该硬件的信息。在该情况下,执行部16显示例如硬件的名称、此时的动作状态、以及消耗电流或消耗电流量作为硬件的信息。另外,也可以为,执行部16在判定为超过阈值的情况下,输出超过了阈值的计算机程序的位置。另外,也可以为,执行部16在输出超过了阈值的计算机程序的位置时,针对该计算机程序的位置,还输出基于由消耗电流计算部13计算出的消耗电流或消耗电流量的计算机程序的修正候选。例如,在超过了消耗电流或消耗电流量的阈值的硬件是GPS的情况下,执行部16输出将通信的频度从“1分钟1次”削减至“5分钟1次”的计算机程序的修正候选。
接着,使用图11所示的流程图,对包括调试装置1a的调试系统3中的调试方法的具体的处理例进行说明。
首先,由调试装置1a的阈值设定部15设定阈值(步骤S20)。接着,由调试装置1a的调试处理部11向便携终端2传送调试对象的计算机程序(步骤S21),由便携终端2的调试处理部20将所传送的计算机程序设定于便携终端2中(步骤S22)。接着,由调试装置1a的调试处理部11对便携终端2指示调试执行(步骤S23),由便携终端2的调试处理部11根据该指示开始计算机程序的调试执行(步骤S24)。
在便携终端2中开始调试执行后,由便携终端2的调试处理部20获取终端日志信息,且发送给调试装置1a(步骤S25),由调试装置1a的终端日志信息获取部12获取,且存储至调试装置1a的存储器等中(步骤S26、获取步骤)。
接着,由调试装置1a的消耗电流计算部13基于在S26中存储的终端日志信息来计算消耗电流或消耗电流量(步骤S27、计算步骤)。接着,由调试装置1a的执行部16判定在S27中计算出的消耗电流或消耗电流量是否超过在S20中设定的阈值(步骤S28),且在判定为超过的情况下,由调试装置1a的执行部16对便携终端2指示停止调试执行(步骤S29),且由便携终端2的调试处理部11基于该指示来停止计算机程序的调试执行(步骤S30)。接着,向用户通知超过了阈值的计算机程序的范围(步骤S31)。
接着,对如本实施方式那样构成的调试装置1a的作用效果进行说明。
根据本实施方式的调试装置1a,能够在超过了所设定的阈值的情况下执行特定的处理,例如能够在超过了所设定的阈值的情况下停止调试执行等,从而提高用户的方便性。
根据本实施方式的调试装置1a,能够在超过了所设定的每个硬件的消耗电流或消耗电流量的阈值的情况下执行特定的处理,例如,能够在超过了所设定的每个硬件的消耗电流或消耗电流量的阈值的情况下停止调试执行等,从而提高用户的方便性。
根据本实施方式的调试装置1a,能够在超过了所设定的每个硬件的消耗电流或消耗电流量的阈值的情况下显示该硬件的信息,例如,对于用户来说,在开发能够省电化的软件的方面该信息成为有效的参考信息等,从而提高用户的方便性。
另外,根据本实施方式的调试装置1a,例如,用户重新评价所输出的位置的计算机程序,能够改写成消耗电流或消耗电流量更低的计算机程序等,从而提高用户的方便性。
另外,根据本实施方式的调试装置1a,因为自动地输出计算机程序的修正候选,因此减少用户的工时,从而提高方便性。
[调试程序]
接着,说明用于使计算机执行上述的一系列的由调试装置1进行的处理的调试程序60。如图12所示,调试程序60存储于在存储介质50中形成的程序存储区域51内,其中存储介质50是被插入于计算机而被访问、或者计算机所具有的。更具体而言,调试程序60存储于在调试装置1所具有的存储介质50中形成的程序存储区域51内。
调试程序60构成为具有获取模块61和计算模块62。通过执行获取模块61和计算模块62而实现的功能分别与上述调试装置1的终端日志信息获取部12和消耗电流计算部13的功能相同。
此外,将调试程序60可以构成为将其一部分或全部经由通信线路等传输介质而传输,且由其他机器接收而进行记录(包括安装)。另外,可以将调试程序60的各模块安装于多台计算机的任意台中而不是1台计算机中。在该情况下,由该基于多台计算机的计算机系统执行上述的一系列的调试程序60的处理。
如以上所述,根据本实施方式的调试装置1或调试装置1a,因为能够确定计算机程序的各画面、或函数、或行所消耗的消耗电流或消耗电流量,且实施调试,因此能够进行在便携终端中缩减了消耗电流或消耗电流量的应用程序开发,结果为能够长时间使用便携终端。
此外,调试装置1可以去除所具有的一部分功能而具有调试装置1a所具有的一部分功能。同样,调试装置1a可以去除所具有的一部分功能而具有调试装置1所具有的一部分功能。
标号说明
1、1a:调试装置;2:便携终端;3:调试系统;10:获取时机设定部;11:调试处理部;12:终端日志信息获取部;13:消耗电流计算部;14:消耗电流输出部;15:阈值设定部;16:执行部;20:调试处理部;21:终端日志信息处理部;50:存储介质;51:程序存储区域;60:调试程序;61:获取模块;62:计算模块。

Claims (7)

1.一种调试装置,其计算在便携终端中对计算机程序进行调试执行时的便携终端的消耗电流或消耗电流量,该调试装置具有:
获取单元,其在调试执行时获取终端日志信息,该终端日志信息表示构成便携终端的硬件的动作状态;
计算单元,其根据由所述获取单元获取的终端日志信息、和预先存储的用于根据硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的便携终端的消耗电流或消耗电流量;
阈值设定单元,其设定消耗电流或消耗电流量的阈值;以及
执行单元,其判定由所述计算单元计算出的消耗电流或消耗电流量是否超过由所述阈值设定单元设定的阈值,且在判定为超过的情况下执行特定的处理,
所述执行单元在判定为超过阈值的情况下,输出超过了阈值的计算机程序的位置。
2.一种调试装置,其计算在便携终端中对计算机程序进行调试执行时的便携终端的消耗电流或消耗电流量,该调试装置具有:
获取单元,其在调试执行时获取终端日志信息,该终端日志信息表示构成便携终端的每个硬件的动作状态;
计算单元,其根据由所述获取单元获取的每个硬件的终端日志信息、和预先存储的用于根据该硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的构成便携终端的每个硬件的消耗电流或消耗电流量;
阈值设定单元,其设定构成便携终端的每个硬件的消耗电流或消耗电流量的阈值;以及
执行单元,其判定由所述计算单元计算出的每个硬件的消耗电流或消耗电流量是否超过由所述阈值设定单元设定的该硬件的阈值,且在判定为超过的情况下执行特定的处理,
所述执行单元在判定为超过阈值的情况下,输出超过了阈值的计算机程序的位置。
3.根据权利要求1或2所述的调试装置,其中,
所述执行单元在输出超过了阈值的计算机程序的位置时,针对该计算机程序的位置,还输出基于由所述计算单元计算出的消耗电流或消耗电流量的计算机程序的修正候选。
4.根据权利要求1至3中任意一项所述的调试装置,其中,
该调试装置还具有获取时机设定单元,该获取时机设定单元设定终端日志信息的获取时机,
所述获取单元根据由所述获取时机设定单元设定的获取时机来获取终端日志信息。
5.根据权利要求4所述的调试装置,其中,
所述获取时机设定单元设定计算机程序的规定的范围,
在对由所述获取时机设定单元设定的计算机程序的规定的范围进行了调试执行时,所述获取单元获取终端日志信息。
6.一种调试方法,由调试装置执行该调试方法,该调试装置计算在便携终端中对计算机程序进行调试执行时的便携终端的消耗电流或消耗电流量,其中,
该调试方法包括:
获取步骤,在调试执行时获取终端日志信息,该终端日志信息表示构成便携终端的硬件的动作状态;
计算步骤,根据在所述获取步骤中获取的终端日志信息、和预先存储的用于根据硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的便携终端的消耗电流或消耗电流量;
阈值设定步骤,设定消耗电流或消耗电流量的阈值;以及
执行步骤,判定在所述计算步骤中计算出的消耗电流或消耗电流量是否超过在所述阈值设定步骤中设定的阈值,且在判定为超过的情况下执行特定的处理,
在所述执行步骤中,在判定为超过阈值的情况下,输出超过了阈值的计算机程序的位置。
7.一种调试程序,其中,该调试程序使计算机作为下述单元发挥功能:
获取单元,在便携终端上对计算机程序进行调试执行时,该获取单元获取终端日志信息,该终端日志信息表示构成便携终端的硬件的动作状态;
计算单元,其根据由所述获取单元获取的终端日志信息、和预先存储的用于根据硬件的动作状态计算唯一的消耗电流或消耗电流量的计算信息,来计算调试执行时的便携终端的消耗电流或消耗电流量;
阈值设定单元,其设定消耗电流或消耗电流量的阈值;以及
执行单元,其判定由所述计算单元计算出的消耗电流或消耗电流量是否超过由所述阈值设定单元设定的阈值,且在判定为超过的情况下执行特定的处理,
所述执行单元在判定为超过阈值的情况下,输出超过了阈值的计算机程序的位置。
CN201480047777.1A 2013-09-04 2014-08-15 调试装置、调试方法以及存储介质 Expired - Fee Related CN105493048B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013183152A JP5934160B2 (ja) 2013-09-04 2013-09-04 デバッグ装置、デバッグ方法及びデバッグプログラム
JP2013-183152 2013-09-04
PCT/JP2014/071492 WO2015033759A1 (ja) 2013-09-04 2014-08-15 デバッグ装置、デバッグ方法及びデバッグプログラム

Publications (2)

Publication Number Publication Date
CN105493048A true CN105493048A (zh) 2016-04-13
CN105493048B CN105493048B (zh) 2018-06-01

Family

ID=52628239

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480047777.1A Expired - Fee Related CN105493048B (zh) 2013-09-04 2014-08-15 调试装置、调试方法以及存储介质

Country Status (5)

Country Link
US (1) US10073762B2 (zh)
EP (1) EP3043265A4 (zh)
JP (1) JP5934160B2 (zh)
CN (1) CN105493048B (zh)
WO (1) WO2015033759A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112328491A (zh) * 2020-11-18 2021-02-05 Oppo广东移动通信有限公司 追踪消息的输出方法、电子设备及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2597482B (en) * 2020-07-22 2022-08-24 Advanced Risc Mach Ltd A debug probe for measuring at least one property of a target system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030191976A1 (en) * 2002-04-04 2003-10-09 Cyran Robert J. Power profiling system and method for correlating runtime information
CN1503136A (zh) * 2002-11-21 2004-06-09 深圳市中兴通讯股份有限公司 一种嵌入式软件测试方法
US20130174128A1 (en) * 2011-12-28 2013-07-04 Microsoft Corporation Estimating Application Energy Usage in a Target Device

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11232147A (ja) * 1998-02-16 1999-08-27 Toshiba Corp パワーエスティメーション装置、パワーエスティメーション方法、及びパワーエスティメーションプログラムを記録した機械読み取り可能な記録媒体
US7149636B2 (en) * 2002-04-04 2006-12-12 Texas Instruments Incorporated Method and apparatus for non-obtrusive power profiling
CA2408457A1 (en) * 2002-10-17 2004-04-17 Ibm Canada Limited-Ibm Canada Limitee Collection and detection of differences of values of expressions/variables when debugging a computer process
US7496903B2 (en) * 2003-08-12 2009-02-24 Hewlett-Packard Development Company, L.P. Synthesizing application response measurement (ARM) instrumentation
US7434205B1 (en) * 2004-02-19 2008-10-07 Steenhagen Shawn K Virtual type interpretation, interaction and detection
WO2006024325A1 (en) 2004-08-31 2006-03-09 Freescale Semiconductor, Inc. Method for estimating power consumption
US9146832B2 (en) * 2005-10-14 2015-09-29 Oracle International Corporation Debugging functionality embedded in an application
US7788730B2 (en) * 2006-01-17 2010-08-31 International Business Machines Corporation Secure bytecode instrumentation facility
JP5076381B2 (ja) * 2006-07-07 2012-11-21 富士通セミコンダクター株式会社 ソフトウェア開発装置及びソフトウェア開発方法
US8522209B2 (en) * 2007-03-30 2013-08-27 Sap Ag Method and system for integrating profiling and debugging
JP2009075965A (ja) * 2007-09-21 2009-04-09 Fujitsu Microelectronics Ltd ソフトウェア開発方法及びソフトウェア開発装置
US8166459B2 (en) * 2008-02-27 2012-04-24 Sap Ag Apparatus and method of generating self-debugging computer software
US20100083244A1 (en) * 2008-09-26 2010-04-01 Nokia Corporation Methods, apparatuses, and computer program products for repurposing computing devices
US8972954B2 (en) * 2009-07-13 2015-03-03 Adobe Systems Incorporated Debugging method using program inspectors to debug programs developed using frameworks and libraries
US20110258613A1 (en) * 2010-04-15 2011-10-20 International Business Machines Corporation Software debugger activation based on key performance indicators
US8645761B2 (en) * 2011-01-13 2014-02-04 International Business Machines Corporation Precise fault localization
US9262250B2 (en) * 2011-12-12 2016-02-16 Crashlytics, Inc. System and method for data collection and analysis of information relating to mobile applications
US9020463B2 (en) * 2011-12-29 2015-04-28 The Nielsen Company (Us), Llc Systems, methods, apparatus, and articles of manufacture to measure mobile device usage
US20130247007A1 (en) * 2012-03-16 2013-09-19 International Business Machines Corporation Making debugger behavior conditional on past program state
US8930917B2 (en) * 2012-05-22 2015-01-06 Adobe Systems Incorporated Method and apparatus for mobile application development and testing that avoids repackaging and reinstallation
US9836371B2 (en) * 2013-09-20 2017-12-05 Oracle International Corporation User-directed logging and auto-correction

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030191976A1 (en) * 2002-04-04 2003-10-09 Cyran Robert J. Power profiling system and method for correlating runtime information
CN1503136A (zh) * 2002-11-21 2004-06-09 深圳市中兴通讯股份有限公司 一种嵌入式软件测试方法
US20130174128A1 (en) * 2011-12-28 2013-07-04 Microsoft Corporation Estimating Application Energy Usage in a Target Device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112328491A (zh) * 2020-11-18 2021-02-05 Oppo广东移动通信有限公司 追踪消息的输出方法、电子设备及存储介质

Also Published As

Publication number Publication date
US20160217059A1 (en) 2016-07-28
JP5934160B2 (ja) 2016-06-15
EP3043265A1 (en) 2016-07-13
EP3043265A4 (en) 2016-08-03
WO2015033759A1 (ja) 2015-03-12
US10073762B2 (en) 2018-09-11
CN105493048B (zh) 2018-06-01
JP2015049840A (ja) 2015-03-16

Similar Documents

Publication Publication Date Title
CN109688207A (zh) 日志传输方法、装置及服务器
CN104021060A (zh) Bmc串口调试系统及方法
CN108897546A (zh) 监控apk大小的方法、装置、设备及可读存储介质
CN105786546A (zh) 一种应用程序的卸载方法及装置
CN108200387A (zh) 一种文件的传输方法、系统及相机
Banerjee et al. Future of mobile software for smartphones and drones: Energy and performance
CN104238752A (zh) 一种信息处理方法及第一可穿戴式设备
CN105493048A (zh) 调试装置、调试方法以及调试程序
CN112770285A (zh) 基于5g网络的数字孪生工厂建模方法及装置
CN105988841A (zh) 一种应用程序的更新方法及移动终端
CN113419825B (zh) 资源性能预估方法和装置、系统及电子设备
US11650263B1 (en) System for determining power consumption by devices
EP3210420A1 (en) Power management of a wireless communication device
CN105404529A (zh) 刷机用操作系统弹窗的弹出方法、装置及系统
Lee et al. Automated power model generation method for smartphones
CN111025990B (zh) 一种基于risc-v的车载终端系统
CN115695241A (zh) 通讯压力测试方法及电子设备
CN106844148B (zh) 一种虚拟机启动进度监控方法及装置
JP7377893B2 (ja) 通信機器及びプログラム
US20180011704A1 (en) Development platform for multi-wireless transmission capabilities
Rattagan et al. Clustering and symbolic regression for power consumption estimation on smartphone hardware subsystems
US9479565B2 (en) Selecting a network connection for data communications with a networked device
CN110113743A (zh) 一种应用程序推送方法和无线路由器
CN112448835B (zh) 一种物联网系统
CN116166414A (zh) 工作频率的确定方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180601

Termination date: 20190815

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