当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于跟踪唤醒锁定使用的技术制造技术

技术编号:13134192 阅读:54 留言:0更新日期:2016-04-06 20:41
各种实施例通常针对生成记录与在应用和内核级的唤醒锁定相关的事件的日志,并且然后在视觉呈现中时间对准那些事件的图以使得能够调试唤醒锁定。一种调试唤醒锁定的装置包括:处理器组件;捕获组件,拦截与应用级唤醒锁定相关联的调用,拦截的调用由操作系统的应用功率管理器从应用例程接收;以及中继组件,与应用功率管理器合作以向耦合到应用功率管理器的操作系统的系统日志生成器提供拦截的调用的指示,系统日志生成器生成系统日志数据,所述系统日志数据包括与通过处理器组件的操作系统的执行相关联的事件的指示以及拦截的调用的指示。其它实施例被描述和要求保护。

【技术实现步骤摘要】
【国外来华专利技术】
本文所述的实施例通常涉及跟踪唤醒锁定(wakelock)的使用以控制计算设备进入较低功率状态的能力。
技术介绍
对于计算设备来说合并功率管理特征以支持在各种功率状态下操作是司空见惯的,各种功率状态均在执行各种任务的特征的可用性和电功率消耗之间取得不同的平衡。特别地,便携式计算设备趋于具有相当复杂的功率管理形式,其中向各种组件提供可从电池得到的有限的电功率是单独可控的。对于计算设备可应用于的许多使用,经常可能的是,允许功率管理组件将计算设备置于较低功率状态中。然而,以下情况确实出现:其中可能期望将计算设备维持在较高功率状态,并且因此,可能期望防止功率管理组件将计算设备置于较低功率状态中。通过示例的方式,计算设备可操作成执行运动视频的回放,从而需要不间断地使用足够的处理资源来对运动视频进行解码,并且不间断地使用显示器来视觉呈现运动视频。此外,可能需要这样的资源的这样的不间断地使用,尽管可用电功率的有限供应接近耗尽(例如,尽管计算设备的电池正消耗殆尽)。因此,提供函数调用以允许应用例程和/或操作系统的各种部分请求计算设备的功率管理组件避免将计算设备置于较低功率状态中已经变得司空见惯。这已经成为通常被称为请求或“获得”“唤醒锁定”,其中计算设备被“锁定”到较高功率状态中或“保持清醒”,使得它不能进入??较低功率状态或“睡眠模式”。各种实现方式包括支持请求唤醒锁定的调用,释放唤醒锁定的调用和/或请求时间受限以使得其在指定时间段的结束处到期的唤醒锁定的调用。遗憾的是,提供对应用例程的这样的支持以利用唤醒锁定已经伴随有所谓的“无睡眠唤醒锁定程序错误(bug)”的出现,其中导致唤醒锁定的过度使用的应用例程中的错误和/或其它意外情况出现,从而导致可用电功率的过早耗尽。这些情况有时被称为“意外电池耗尽”,并且导致识别莫名其妙地请求和授予唤醒锁定但从未释放的方式的调试(debug)努力。遗憾的是,许多便携式计算设备合并未以促进这样的唤醒锁定程序错误源的快速检测的方式来进行架构的操作系统。各种操作系统确实支持系统日志数据的生成,所述系统日志数据详细描述随着时间的各种事件的发生。各种操作系统还确实支持“转储(dump)”寄存器和各种数据结构的当前状态以提供操作系统的组件的状态的详细视图的能力,包括是否存在早期请求但尚未被释放的唤醒锁定。然而,没有做出任何规定来记录或提供对于识别什么例程或操作系统组件可能已经错误地请求唤醒锁定和/或忽略释放唤醒锁定所必需的数据。附图说明图1图示唤醒锁定调试系统的实施例。图2图示唤醒锁定调试系统的替代实施例。图3图示根据实施例的生成日志数据的示例。图4-6均图示根据实施例的促进对唤醒锁定进行调试的示例性图像。图7-9均图示唤醒锁定调试系统的实施例的一部分。图10-12均图示根据实施例的逻辑流程。图13图示根据实施例的处理架构。具体实施方式各种实施例通常针对生成记录与操作系统的以应用和内核(kernel)级的唤醒锁定相关的事件的日志,并且然后在视觉呈现中时间对准那些事件的图,以使得能够调试唤醒锁定。更具体地,操作系统的应用功率管理器用日志补丁例程来扩增,以增强通常由操作系统生成的系统日志数据中的事件的记录。日志设备驱动器也耦合到操作系统的内核功率管理器以生成记录内核级唤醒锁定事件的补充日志数据。此外,在时间对准的图中视觉呈现在系统日志数据和补充日志数据中记录的唤醒锁定事件和相关的事件,以使得能够查看指示唤醒锁定程序错误的事件之间的关联。操作系统通常生成系统日志数据,其中选择的事件的发生贯穿由操作系统被合并到其中的计算设备的处理器组件的操作系统的执行被记录在加时间戳的条目中。经常由计算设备的操作者使得什么事件在被选择以被记录在系统日志数据中的那些之中可变更。更具体地,通常存在其中记录事件的更有限的选择的“正常模式”,以及在其中记录事件的更大的选择的“调试模式”,并且经常有在这样的计算设备的操作者的控制下在这些模式之间动态切换的能力。然而,甚至在调试模式中,通常只不过有存在仍然未决(pending)的唤醒锁定的指示(例如还未被释放的早前请求的唤醒锁定,使得防止进入到较低功率状态中),并且没有哪个(些)应用例程或者多少应用例程请求和/或释放唤醒锁定的指示。什么少量信息被典型地记录在系统日志数据中由应用功率管理器提供。在操作系统内,可由应用功率管理器在应用级以及由应用功率管理器与其通信的分离且不同的内核功率管理器在内核级二者处理功率管理。应用功率管理器从应用例程接收调用,该应用例程在应用级请求或者释放唤醒锁定。由应用功率管理器接收的请求或释放应用级唤醒锁定的调用典型地包括识别指示什么应用例程正在发送调用的信息。此外,在多线程处理环境中,应用功率管理器典型地能够确定每个调用从哪个线程接收。应用功率管理器典型地使用这样??的信息,该信息识别应用例程和/或线程来识别当接收调用以释放应用级唤醒锁定之一时将释放在应用级的哪个先前请求的唤醒锁定。然而,应用功率管理器典型地不提供这样的信息以供在系统日志数据中记录。为了补救系统日志数据中特性的这种缺乏,应用功率管理器用日志补丁例程来扩增。日志补丁例程将指令序列添加到应用功率管理器,以使应用功率管理器提供关于请求或释放应用级唤醒锁定的每个调用的信息,连同识别什么应用例程和/或线程与那些调用中的每一个相关联的信息。应用功率管理器典型地不具有自身直接控制计算设备的当前功率状态(例如将计算设备置于任何特定的较低功率或较高功率状态)的能力。代替地,应用功率管理器将它接收以在应用级请求或释放唤醒锁定的调用聚合成它发送到内核功率管理器以在内核级请求或释放与应用功率管理器相关联的较少数量的唤醒锁定的调用。对内核功率管理器的这些调用典型地缺乏识别在应用级请求或释放唤醒锁定的原始调用所源自的应用和/或线程的信息。经常在从应用功率管理器到内核功率管理器的这些调用中包括的唯一识别信息是作为调用的源的应用功率管理器的指示。内核功率管理器在内核级从应用功率管理器以及从操作系统的其它组件和/或从设备驱动器接收请求或释放内核级唤醒锁定的调用。内核功率管理器典型地被配置成不提供或提供与内核级唤醒锁定或相关事件相关的非常少的信息以供记录在系统日志数据中。为了补救关于与内核级唤醒锁定相关的事件的信息的提供的这种完全缺乏,添加日志设备驱动器以生成记录与内核级唤醒锁定相关的事件的补充日志数据,其包括请求或释放内核级唤醒锁定的调用的发生以及什么操作系统组件做出每个调用(包括应用功率管理器)。日志设备驱动器与内核功率管理器通信,以请求它被通知由内核功率管理器接收以请求或释放内核级唤醒锁定的所有调用。日志设备驱动器还对它在补充日志数据中记录的每个这样的事件的指示加时间戳。在生成系统日志数据(具有关于应用级唤醒锁定的增强的信息)和补充日志数据之后,调试例程解析二者以提取关于唤醒锁定事件和其它相关事件的信息。调试例程采用与在每个日志中的那些事件相关联的时间戳,以时间对准它们并在显示器上视觉呈现那些事件的时间线的时本文档来自技高网...

【技术保护点】
一种跟踪唤醒锁定事件的装置,包括:处理器组件;捕获组件,用于由处理器组件执行以拦截与应用级唤醒锁定相关联的调用,拦截的调用由操作系统的应用功率管理器从应用例程接收;以及中继组件,用于由处理器组件执行以与应用功率管理器合作,以向耦合到应用功率管理器的操作系统的系统日志生成器提供拦截的调用的指示,系统日志生成器生成系统日志数据,所述系统日志数据包括与通过处理器组件的操作系统的执行相关联的事件的指示以及拦截的调用的指示。

【技术特征摘要】
【国外来华专利技术】1.一种跟踪唤醒锁定事件的装置,包括:
处理器组件;
捕获组件,用于由处理器组件执行以拦截与应用级唤醒锁定相关联的调用,拦截的调用由操作系统的应用功率管理器从应用例程接收;以及
中继组件,用于由处理器组件执行以与应用功率管理器合作,以向耦合到应用功率管理器的操作系统的系统日志生成器提供拦截的调用的指示,系统日志生成器生成系统日志数据,所述系统日志数据包括与通过处理器组件的操作系统的执行相关联的事件的指示以及拦截的调用的指示。
2.根据权利要求1所述的装置,包括收集组件,用于由处理器组件执行以与应用功率管理器合作来收集唤醒锁定数据,所述唤醒锁定数据提供未决的应用级唤醒锁定的指示并将未决的应用级唤醒锁定与应用例程相关。
3.根据权利要求2所述的装置,所述中继组件与应用功率管理器合作,以向系统日志生成器提供未决的应用级唤醒锁定的指示,所述系统日志生成器在系统日志数据中包括未决的应用级唤醒锁定的指示。
4.根据权利要求1所述的装置,包括应用功率管理器,应用功率管理器被扩增成包括捕获组件和中继组件。
5.根据权利要求1所述的装置,包括日志设备驱动器的调用组件,用于由处理器组件执行以发信号通知操作系统的内核功率管理器以向日志设备驱动器中继与内核级唤醒锁定相关联的调用,中继的调用由内核功率管理器从设备驱动器或操作系统的组件接收。
6.根据权利要求5所述的装置,操作系统的组件包括应用功率管理器,所述应用功率管理器耦合到内核功率管理器以用与内核级唤醒锁定相关联的调用发信号通知内核功率管理器。
7.根据权利要求5所述的装置,包括:
接收组件,用于由处理器组件执行以在日志设备驱动器处接收中继的调用;以及
记录组件,用于由处理器组件执行以生成包括中继的调用的指示的补充日志数据。
8.根据权利要求7所述的装置,包括:
相关组件,从系统日志数据提取与应用级唤醒锁定相关联的条目,从补充日志数据提取与内核级唤醒锁定相关联的条目,从系统日志数据提取指示包括处理器组件的计算设备的组件的活动级的条目,并且时间对准所提取的条目;以及
呈现组件,在显示器上生成和视觉呈现与应用级唤醒锁定和内核级唤醒锁定相关联的事件以及计算设备的组件的活动级的时间对准的时间线图,事件和活动级在所提取的条目中被指示。
9.根据权利要求7所述的装置,包括接口,向调试设备发送系统日志数据和补充日志数据。
10.一种跟踪唤醒锁定事件的装置,包括:
处理器组件;
相关组件,从系统日志数据提取与针对操作系统的应用功率管理器的应用级唤醒锁定相关联的调用的指示,从补充日志数据提取与针对操作系统的内核功率管理器的内核级唤醒锁定相关联的调用的指示,并从系统日志数据提取在其上执行操作系统的计算设备的组件的活动级的指示;以及
呈现组件,在显示器上生成和视觉呈现与应用级唤醒锁定相关联的调用、与内核级唤醒锁定相关联的调用以及计算设备的组件的活动级方面的改变的时间对准的时间线图。
11.根据权利要求10所述的装置,相关组件从系统日志数据和补充日志数据之一提取映射信息,所述映射信息包括在计算设备上执行的应用例程与在计算设备上执行的过程和计算设备的执行...

【专利技术属性】
技术研发人员:MY林RP奈特G乌帕亚亚N沙马
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1