首页> 中国专利> 任务处理装置、智能设备、任务处理方法及基带处理器

任务处理装置、智能设备、任务处理方法及基带处理器

摘要

本发明公开了一种任务处理装置、智能设备、任务处理方法及基带处理器,涉及计算机领域。所述任务处理装置用于智能设备的基带处理器中,包括:触发信息获取模块,用于获取任务触发信息,所述任务触发信息用于触发所述智能设备中的应用对应的任务;判断模块,用于判断所述任务是否为所述应用的托管任务;第一执行模块,用于若所述判断模块的判断结果为所述任务是所述应用的托管任务,则调用并执行所述任务对应的托管代码。基带处理器直接调用并执行任务对应的托管代码,将原本由应用处理器和基带处理器协作的处理流程简化为由基带处理器单独处理,解决了应用处理器被频繁唤醒的问题,达到减少任务处理过程中的设备功耗,提高功耗控制效果的目的。

著录项

  • 公开/公告号CN105874773A

    专利类型发明专利

  • 公开/公告日2016-08-17

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN201480071515.9

  • 发明设计人 张远荣;

    申请日2014-11-20

  • 分类号

  • 代理机构北京三高永信知识产权代理有限责任公司;

  • 代理人张耀光

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2023-06-19 00:17:55

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-03-20

    授权

    授权

  • 2016-09-14

    实质审查的生效 IPC(主分类):H04M1/73 申请日:20141120

    实质审查的生效

  • 2016-08-17

    公开

    公开

说明书

技术领域

本发明涉及计算机领域,特别涉及一种任务处理装置、智能设备、任务处理方法及基带处理器。

背景技术

随着计算机及无线通信领域的不断发展,智能手机、平板电脑以及电子书阅读器等智能设备也越来越普及。这些智能设备大多通过预先或者后续安装的第三方应用来为用户提供服务。

智能设备通常包括应用处理器和基带处理器,在现有技术提供的任务处理方法中,智能手机中安装的应用所对应的各种本地或网络任务都需要由应用处理器和基带处理器两者彼此协调来完成处理。为了控制智能设备的功耗,提高续航,当智能设备处于锁屏状态,且没有需要应用处理器和基带处理器协调处理的任务时,应用处理器进入休眠状态,只有触发了需要应用处理器和基带处理器协调处理的任务时,才将应用处理器唤醒进行处理。

在实现本发明的过程中,申请人发现现有技术至少存在如下缺陷:

智能设备中安装的很多应用都需要与服务器保持通信,而保持通信的过程会产生很多需要应用处理器来处理的任务,当智能设备中安装的此类应用较多时,应用处理器会被频繁唤醒,导致设备功耗的控制效果较差。

发明内容

为了解决现有技术中智能设备中安装的应用在与服务器保持通信的过程中产生很多需要应用处理器来处理的任务,导致应用处理器被频繁唤醒的问题,本发明实施例提供了一种任务处理装置、智能设备、任务处理方法及基带处理器。所述技术方案如下:

第一方面,提供一种任务处理装置,用于智能设备的基带处理器中,所述装置包括:

触发信息获取模块,用于获取任务触发信息,所述任务触发信息用于触发 所述智能设备中的应用对应的任务;

判断模块,用于判断所述任务是否为所述应用的托管任务,所述托管任务为所述智能设备的应用处理器预先通知所述基带处理器进行处理的任务;

第一执行模块,用于若所述判断模块的判断结果为所述任务是所述应用的托管型任务,则调用并执行所述任务对应的托管代码。

在第一方面的第一种可能实现方式中,所述第一执行模块,包括:第一执行单元、第二执行单元或者第三执行单元中的至少一个;

所述第一执行单元,用于当所述任务触发信息为指示网络可用的信息时,调用并执行所述应用对应的连接建立代码,所述连接代码用于建立所述智能设备与所述应用的服务器之间的网络连接;

所述第二执行单元,用于当所述任务触发信息为指示所述智能设备与所述应用的服务器之间的网络连接建立完成的信息时,调用并执行所述应用对应的登录代码,所述登录代码用于登录所述应用的服务器;

所述第三执行单元,用于当所述任务触发信息为指示向所述应用的服务器发送心跳数据的信息时,调用并执行所述应用对应的心跳数据发送代码,所述心跳数据发送代码用于向所述应用的服务器发送所述心跳数据。

结合第一方面或者第一方面的第一种可能实现方式,在第一方面的第二种可能实现方式中,所述装置还包括:

托管信息接收模块,用于在所述获取任务触发信息之前,接收所述应用处理器发送的托管信息,所述托管信息中包含有所述托管代码的调用路径;

第一设置模块,用于将所述托管代码对应的任务设置为托管任务。

结合第一方面、第一方面的第一种可能实现方式,或者第一方面的第二种可能实现方式,在第一方面的第三种可能实现方式中,所述装置还包括:

检测模块,用于若所述判断模块的判断结果为所述任务不是所述应用的托管任务,则检测所述任务是否为唤醒任务;

第二执行模块,用于若所述检测模块的检测结果为所述任务为唤醒任务,则调用并执行所述任务对应的唤醒代码,所述唤醒代码用于唤醒所述智能设备的应用处理器,并请求所述应用处理器处理所述任务。

结合第一方面的第三种可能实现方式,在第一方面的第四种可能实现方式中,所述装置还包括:

唤醒信息接收模块,用于在所述获取任务触发信息之前,接收所述应用处 理器发送的唤醒信息,所述唤醒信息中包含有所述唤醒代码的调用路径;

第二设置模块,用于将所述唤醒代码对应的任务设置为唤醒任务。

结合第一方面或者第一方面的第一至四种可能实现方式中的任一种,在第一方面的第五种可能实现方式中,所述装置还包括:

连接记录获取模块,用于获取所述应用的网络连接记录;

优化模块,用于根据所述网络连接记录对所述应用的网络任务进行优化。

结合第一方面的第五种可能实现方式,在第一方面的第六种可能实现方式中,所述优化模块,包括:第一优化单元和/或第二优化单元;

所述第一优化单元,用于当所述网络任务为断开所述智能设备与所述应用的服务器之间的连接,且所述网络连接记录表示所述连接的已建立时长小于预设阈值时,对所述网络任务不予执行;

所述第二优化单元,用于当所述网络任务为向所述应用的服务器发送网络请求,且所述网络连接记录表示在以当前时刻定位的历史时间段内向所述应用的服务器发送的历史网络请求未接收到响应时,对所述网络任务不予执行。

第二方面,提供了一种智能设备,所述智能设备包括:总线,以及连接到所述总线的基带处理器、应用处理器、存储器、发射器和接收器。其中,所述存储器用于存储若干个指令,所述若干个指令被配置成由所述基带处理器和所述应用处理器执行;

所述基带处理器,用于获取任务触发信息,所述任务触发信息用于触发所述智能设备中的应用对应的任务;

所述基带处理器,用于判断所述任务是否为所述应用的托管任务,所述托管任务为所述应用处理器预先通知所述基带处理器进行处理的任务;

所述基带处理器,用于若判断结果为所述任务是所述应用的托管任务,则调用并执行所述任务对应的托管代码。

在第二方面的第一种可能实现方式中,所述基带处理器,用于执行如下步骤中的至少一个:

当所述任务触发信息为指示网络可用的信息时,调用并执行所述应用对应的连接建立代码,所述连接代码用于建立所述智能设备与所述应用的服务器之间的网络连接;

当所述任务触发信息为指示所述智能设备与所述应用的服务器之间的网络连接建立完成的信息时,调用并执行所述应用对应的登录代码,所述登录代 码用于登录所述应用的服务器;

当所述任务触发信息为指示向所述应用的服务器发送心跳数据的信息时,调用并执行所述应用对应的心跳数据发送代码,所述心跳数据发送代码用于向所述应用的服务器发送所述心跳数据。

结合第二方面或者第二方面的第一种可能实现方式,在第二方面的第二种可能实现方式中,

所述基带处理器,用于在获取任务触发信息之前,接收所述应用处理器发送的托管信息,所述托管信息中包含有所述托管代码的调用路径,并将所述托管代码对应的任务设置为托管任务。

结合第二方面、第二方面的第一种可能实现方式,或者第二方面的第二种可能实现方式,在第二方面的第三种可能实现方式中,

所述基带处理器,用于若判断出所述任务不是所述应用的托管任务,则检测所述任务是否为唤醒任务,所述唤醒任务为唤醒所述智能设备中的应用处理器进行处理的任务;

所述基带处理器,用于若检测出所述任务为唤醒任务,则调用并执行所述任务对应的唤醒代码,所述唤醒代码用于唤醒所述智能设备的应用处理器,并请求所述应用处理器处理所述任务。

结合第二方面的第三种可能实现方式,在第二方面的第四种可能实现方式中,

所述基带处理器,用于在获取任务触发信息之前,接收所述应用处理器发送的唤醒信息,所述唤醒信息中包含有所述唤醒代码的调用路径,并将所述唤醒代码对应的任务设置为唤醒任务。

结合第二方面或者第二方面的第一至四种可能实现方式中的任一种,在第二方面的第五种可能实现方式中,

所述基带处理器,用于获取所述应用的网络连接记录,根据所述网络连接记录对所述应用的网络任务进行优化。

结合第二方面的第五种可能实现方式,在第二方面的第六种可能实现方式中,

所述基带处理器,用于当所述网络任务为断开所述智能设备与所述应用的服务器之间的连接,且所述网络连接记录表示所述连接的已建立时长小于预设阈值时,对所述网络任务不予执行;

和/或,所述基带处理器,用于当所述网络任务向所述应用的服务器发送网络请求,且所述网络连接记录表示在以当前时刻定位的历史时间段内向所述应用的服务器发送的历史网络请求未接收到响应时,对所述网络任务不予执行。

第三方面,提供了一种任务处理方法,用于包含有基带处理器的智能设备中,所述方法包括:

所述基带处理器获取任务触发信息,所述任务触发信息用于触发所述智能设备中的应用对应的任务;

所述基带处理器判断所述任务是否为所述应用的托管任务,所述托管任务为所述智能设备中的应用处理器预先通知所述基带处理器进行处理的任务;

若判断结果为所述任务是所述应用的托管任务,则所述基带处理器调用并执行所述任务对应的托管代码。

在第三方面的第一种可能实现方式中,所述基带处理器执行所述任务对应的托管代码,包括以下三种情形中的至少一种:

当所述任务触发信息为指示网络可用的信息时,所述基带处理器调用并执行所述应用对应的连接建立代码,所述连接代码用于建立所述智能设备与所述应用的服务器之间的网络连接;

当所述任务触发信息为指示所述智能设备与所述应用的服务器之间的网络连接建立完成的信息时,所述基带处理器调用并执行所述应用对应的登录代码,所述登录代码用于登录所述应用的服务器;

当所述任务触发信息为指示向所述应用的服务器发送心跳数据的信息时,所述基带处理器调用并执行所述应用对应的心跳数据发送代码,所述心跳数据发送代码用于向所述应用的服务器发送所述心跳数据。

结合第三方面或者第三方面的第一种可能实现方式,在第三方面的第二种可能实现方式中,所述方法还包括:

在所述获取任务触发信息之前,所述基带处理器接收所述应用处理器发送的托管信息,所述托管信息中包含有所述托管代码的调用路径;

所述基带处理器将所述托管代码对应的任务设置为托管任务。

结合第三方面、第三方面的第一种可能实现方式,或者第三方面的第二种可能实现方式,在第三方面的第三种可能实现方式中,所述方法还包括:

若判断结果为所述任务不是所述应用的托管任务,则所述基带处理器检测所述任务是否为唤醒任务,所述唤醒任务为唤醒所述智能设备中的应用处理器 进行处理的任务;

若检测结果为所述任务为唤醒任务,则所述基带处理器调用并执行所述任务对应的唤醒代码,所述唤醒代码用于唤醒所述智能设备的应用处理器,并请求所述应用处理器处理所述任务。

结合第三方面的第三种可能实现方式,在第三方面的第四种可能实现方式中,所述方法还包括:

在所述获取任务触发信息之前,所述基带处理器接收所述应用处理器发送的唤醒信息,所述唤醒信息中包含有所述唤醒代码的调用路径;

所述基带处理器将所述唤醒代码对应的任务设置为唤醒任务。

在第三方面的第五种可能实现方式中,所述方法还包括:

所述基带处理器获取所述应用的网络连接记录;

所述基带处理器根据所述网络连接记录对所述应用的网络任务进行优化。

结合第三方面的第五种可能实现方式,在第三方面的第六种可能实现方式中,所述基带处理器根据所述网络连接记录对所述应用的网络任务进行优化,包括:

当所述网络任务为断开所述智能设备与所述应用的服务器之间的连接,且所述网络连接记录表示所述连接的已建立时长小于预设阈值时,所述基带处理器对所述网络任务不予执行;

和/或,当所述网络任务为向所述应用的服务器发送网络请求,且所述网络连接记录表示在以当前时刻定位的历史时间段内向所述应用的服务器发送的历史网络请求未接收到响应时,所述基带处理器对所述网络任务不予执行。

第四方面,提供了一种基带处理器,所述基带处理器包括:

如上述第一方面或者第一方面的任一种可能实现方式所述的任务处理装置。

第五方面,提供了一种任务处理方法,用于包含有基带处理器的智能设备中,所述方法包括:

基带处理器获取应用的网络连接记录;

所述基带处理器根据所述网络连接记录对所述应用的网络任务进行优化。

在第五方面的第一种可能实现方式中,所述基带处理器根据所述网络连接记录对所述应用的网络任务进行优化,包括:

当所述网络任务为断开智能设备与所述应用的服务器之间的连接,且所述 网络连接记录表示所述连接的已建立时长小于预设阈值时,所述基带处理器对所述网络任务不予执行,所述智能设备为包含所述基带处理器的设备;

和/或,当所述网络任务为向所述应用的服务器发送网络请求,且所述网络连接记录表示在以当前时刻定位的历史时间段内向所述应用的服务器发送的历史网络请求未接收到响应时,所述基带处理器对所述网络任务不予执行。

第六方面,提供了一种任务处理装置,用于智能设备的基带处理器中,所述装置包括:

连接记录获取模块,用于获取所述应用的网络连接记录;

优化模块,用于根据所述网络连接记录对所述应用的网络任务进行优化。

结合第一方面的第五种可能实现方式,在第一方面的第六种可能实现方式中,所述优化模块,包括:第一优化单元和/或第二优化单元;

所述第一优化单元,用于当所述网络任务为断开所述智能设备与所述应用的服务器之间的连接,且所述网络连接记录表示所述连接的已建立时长小于预设阈值时,对所述网络任务不予执行;

所述第二优化单元,用于当所述网络任务为向所述应用的服务器发送网络请求,且所述网络连接记录表示在以当前时刻定位的历史时间段内向所述应用的服务器发送的历史网络请求未接收到响应时,对所述网络任务不予执行。

第七方面,提供了一种基带处理器,所述基带处理器包括:

如上述第六方面或者第六方面的第一种可能实现方式所述的任务处理装置。

本发明实施例提供的技术方案带来的有益效果是:

通过基带处理器判断任务触发信息对应的任务是否为应用的托管任务,若是,则该基带处理器直接调用并执行该任务对应的托管代码,以执行该任务,将原本由应用处理器和基带处理器协作的处理流程简化为由基带处理器单独处理,解决了现有技术中智能设备中安装的应用在与服务器保持通信的过程中产生很多需要应用处理器来处理的任务而导致应用处理器被频繁唤醒的问题,达到减少任务处理过程中的设备功耗,提高功耗控制效果的目的。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一个实施例提供的任务处理装置的装置结构图;

图2是本发明另一实施例提供的任务处理装置的装置结构图;

图3是本发明一个实施例提供的智能设备的框图;

图4是本发明另一实施例提供的智能设备的框图;

图5是本发明一个实施例提供的任务处理方法的方法流程图;

图6是本发明另一实施例提供的任务处理方法的方法流程图;

图7是本发明一个实施例提供的基带处理器的框图;

图8是本发明一个实施例提供的任务处理方法的方法流程图;

图9是本发明一个实施例提供的任务处理装置的装置结构图;

图10是本发明一个实施例提供的基带处理器的框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

请参考图1,其示出了本发明一个实施例提供的任务处理装置的装置结构图,该任务处理装置用于包含智能设备的基带处理器中,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该任务处理装置可以包括:

触发信息获取模块101,用于获取任务触发信息,所述任务触发信息用于触发所述智能设备中的应用对应的任务;

判断模块102,用于判断所述任务是否为所述应用的托管任务,所述托管任务为所述智能设备中的应用处理器预先通知所述基带处理器进行处理的任务;

第一执行模块103,用于若所述判断模块102的判断结果为所述任务是所述应用的托管型任务,则调用并执行所述任务对应的托管代码。

在智能设备中,应用处理器负责会话层以上的事务,通常负责应用的运行和具体任务的处理;而基带处理器负责传输层以下的事务,比如数据的收发,在本发明实施例提供的任务处理方法中,将应用对应的部分任务设定为托管任 务,该托管任务可以由基带处理器直接处理,当应用处理器处于休眠状态时,若基带处理器判断出生成的任务为托管任务,则直接进行处理,不需要唤醒应用处理器,从而减少本次任务处理过程中应用处理器的功耗,由于应用处理器在处理任务的过程中需要唤醒设备的全部功能,而基带处理器在工作时仅需要处理网络通讯功能,因此,基带处理器的功耗较比应用处理器低很多,通过本发明实施例所示的方法,将原本由应用处理器和基带处理器协作的任务处理流程简化为由基带处理器单独处理,可以极大的减少任务处理过程中的设备功耗,提高功耗控制的效果。

综上所述,本发明实施例提供的任务处理装置,通过基带处理器判断任务触发信息对应的任务是否为应用的托管任务,若是,则该基带处理器直接调用并执行该任务对应的托管代码,以执行该任务,将原本由应用处理器和基带处理器协作的处理流程简化为由基带处理器单独处理,解决了现有技术中智能设备中安装的应用在与服务器保持通信的过程中产生很多需要应用处理器来处理的任务而导致应用处理器被频繁唤醒的问题,达到减少任务处理过程中的设备功耗,提高功耗控制效果的目的。

请参考图2,其示出了本发明另一实施例提供的任务处理装置的装置结构图,该任务处理装置用于包含智能设备的基带处理器中,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该任务处理装置可以包括:

触发信息获取模块201,用于获取任务触发信息,所述任务触发信息用于触发所述智能设备中的应用对应的任务;

可选的,所述装置还包括:托管信息接收模块204,用于在所述获取任务触发信息之前,接收所述应用处理器发送的托管信息,所述托管信息中包含有所述托管代码的调用路径;

第一设置模块205,用于将所述托管代码对应的任务设置为托管任务。

可选的,所述装置还包括:唤醒信息接收模块206,用于在所述获取任务触发信息之前,接收所述应用处理器发送的唤醒信息,所述唤醒信息中包含有所述唤醒代码的调用路径;

第二设置模块207,用于将所述唤醒代码对应的任务设置为唤醒任务。

智能设备的功耗主要包括两部分:一部分称为有效功耗,有效功耗主要是 处理直接服务类任务所产生的功耗,直接服务类任务是指直接向用户提供服务的任务,比如收发短信、主被动呼叫、即时通讯数据的收发、网页数据的请求与接收等任务;另一部分称为无效功耗,无效功耗主要是处理支撑任务所产生的功耗,此类支撑任务不向用户提供直接服务,而是对直接服务类任务提供支撑,比如,连接或者断开网络、自动登录应用服务器以及通过发送和接收心跳数据保持与应用服务器之间的连接等。

此外,智能设备中的任务还可以按照处理优先级分为两类:一类是智能设备处于休眠状态时可以不予处理的任务,另一类是智能设备处于休眠状态时也需要处理的任务。

在本发明实施例中,可以针对智能设备中产生无效功耗的支撑任务中,在智能设备处于休眠状态时也需要处理的任务设置托管任务回调接口,典型的,该此类任务可以包括建立网络连接、登录服务器、主动发送心跳数据以及被动发送心跳数据等任务。比如,可以设置的托管任务回调接口可以是建立连接的回调接口、登录服务器的回调接口、被动发送心跳数据的回调接口以及主动发送心跳数据的回调接口等。第三方应用的开发者根据智能设备中预先规定的基托管任务的回调接口,设置对应任务的托管代码。当应用程序在智能设备中成功安装后,智能设备中的应用处理器在首次运行该应用时,若第三方应用需要将预先设置的托管代码对应的任务委托由基带处理器在应用处理器休眠时处理,则应用处理器通过调用基带处理器侧的接口,向基带处理器发送包含有该托管代码的调用路径的托管信息,该调用路径可以是该托管代码的库文件存储路径。其中,该库文件可以是.jar文件或者.so文件。

此外,本发明实施例还针对智能设备中产生有效功耗支撑任务中,在智能设备处于休眠状态时需要处理的任务设置唤醒任务回调接口,典型的,这些产生有效功耗支撑任务中,在智能设备处于休眠状态时需要处理的任务可以包括接收短信或者接受呼叫等。比如,第三方应用的开发者还可以根据智能设备中预先规定的唤醒操作回调接口,对需要由应用处理器进行处理的任务设置唤醒代码。当应用程序在智能设备中成功安装后,智能设备中的应用处理器在首次运行该应用时,应用处理器通过调用基带处理器侧的接口,向基带处理器发送包含有唤醒代码的调用路径的唤醒信息。同样的,该调用路径可以是该唤醒代码的库文件存储路径,该库文件可以是.jar文件或者.so文件。

以智能设备为智能手机为例,智能手机中预先规定的可委托由基带处理器 管理的托管任务可以包括建立网络连接、登录服务器、主动发送心跳数据或者被动发送心跳数据等,需要唤醒应用处理器进行处理的唤醒任务可以包括接收到短信或者接收到呼叫等,这些托管任务回调接口以及唤醒任务回调接口的代码可以如下:

需要说明的是,在本发明实施例中,仅以上述几种托管任务和唤醒任务进行举例说明,在实际应用中,还可以是具体情况将其它种类的任务设置为托管任务或者唤醒任务。本发明实施例对托管任务和唤醒任务的种类不做限定。

基带处理器将接收到的托管信息对应的任务设置为托管任务,并将接收到的唤醒信息对应的任务设置为唤醒任务。

其中,任务触发信息可以是主动触发应用对应的任务的信息。比如,当智能设备检测出网络由不可用变为可用时,生成用于指示网络可用的任务触发信息,主动触发建立与应用服务器之间的网络连接的任务;当智能设备检测出与应用服务器之间的网络连接建立完成时,生成用于指示连接建立成功的任务触发信息,主动触发登录该应用服务器的任务;登录成功后,当智能设备检测出主动向该应用服务器发送心跳数据的时间点达到时,生成用于指示发送心跳数据的任务触发信息,主动触发向该应用服务器发送心跳数据的任务。

此外,任务触发信息还可以是被动触发应用对应的任务的信息。比如,当智能设备检测出接收到该应用服务器发送的心跳数据时,生成用于指示发送心跳数据的任务触发信息,被动触发向该应用服务器发送心跳数据的任务;或者,智能设备检测出接收到短信或者呼叫时,生成用于指示触发唤醒应用处理器的任务触发信息,被动触发唤醒应用处理器,由应用处理器处理短信或呼叫任务。

判断模块202,用于判断所述任务是否为所述应用的托管任务,所述托管任务为所述应用处理器预先通知所述基带处理器进行处理的任务;

当智能设备的应用处理器处于休眠状态时,若基带处理器接收到任务触发信息,可以首先判断该任务触发信息触发的任务是否为托管任务。

第一执行模块203,用于若所述判断模块202的判断结果为所述任务是所述应用的托管型任务,则调用并执行所述任务对应的托管代码。

可选的,所述第一执行模块203,包括:第一执行单元、第二执行单元或者第三执行单元中的至少一个;

第一执行单元203a,用于当所述任务触发信息为指示网络可用的信息时,调用并执行所述应用对应的连接建立代码,所述连接代码用于建立所述智能设备与所述应用的服务器之间的网络连接;

第二执行单元203b,用于当所述任务触发信息为指示所述智能设备与所述应用的服务器之间的网络连接建立完成的信息时,调用并执行所述应用对应的登录代码,所述登录代码用于登录所述应用的服务器;

第三执行单元203c,用于当所述任务触发信息为指示向所述应用的服务器发送心跳数据的信息时,调用并执行所述应用对应的心跳数据发送代码,所述心跳数据发送代码用于向所述应用的服务器发送所述心跳数据。

若基带处理器判断出该任务触发信息触发的任务是已经设置的托管任务,则可以根据该任务对应的托管代码的调用路径,通过对应的调用接口调用该托管代码并执行。

以应用A成功安装在智能手机中之后,通过基带处理器提供的托管任务回调接口向基带处理器发送托管信息为例。智能手机接入某一个路由器,在该路由器未接入公网之前,路由器仅能实现局域网通讯功能,此时智能手机中的应用A无法登录网络侧的服务器;当该路由器接入公网之后,智能手机的无线接入点没有发生变化,但是可以与公网进行数据交互;当基带处理器获知路由器接入公网(比如,检测到智能手机成功接收到网络侧发送的数据)时,可以通过应用A预先通知的连接建立代码的调用路径,调用并执行onConnect()函数,以建立智能手机与应用A的服务器之间的网络连接。当网络连接建立完成后,基带处理器可以通过应用A预先通知的登录代码的调用路径,调用并执行onRequestLogin(input,output)函数,自动登录应用A的服务器。当智能手机接收到应用A的服务器发送的心跳数据,或者到达向应用A的服务器发送心跳 数据的时间点时,基带处理器通过应用A预先通知的心跳数据发送代码的调用路径,调用并执行的onHearBeatTimeReceviced()函数,向应用A的服务器发送心跳数据。

比如,以托管代码包括连接建立代码和登录代码为例,该托管代码可以实现如下:

可选的,所述装置还包括:

检测模块208,用于若所述判断模块202的判断结果为所述任务不是所述应用的托管任务,则检测所述任务是否为唤醒任务;

第二执行模块209,用于若所述检测模块208的检测结果为所述任务为唤醒任务,则调用并执行所述任务对应的唤醒代码,所述唤醒代码用于唤醒所述智能设备的应用处理器,并请求所述应用处理器处理所述任务。

比如,当智能手机中的应用处理器处于休眠状态,且接收到短信时,基带处理器执行onDataReceived(socket,datas)函数,以唤醒智能手机中的应用处理器来处理该短信。

在实际应用中,还有一些在智能设备处于休眠状态时不需要处理的任务, 比如接收即时通讯数据或者网页数据的任务,对于此类任务,基带处理器可以不予处理。

可选的,所述装置还包括:

连接记录获取模块210,用于获取所述应用的网络连接记录;

优化模块211,用于根据所述网络连接记录对所述应用的网络任务进行优化。

可选的,所述优化模块211,包括:第一优化单元211a和/或第二优化单元211b;

第一优化单元211a,用于当所述网络任务为断开所述智能设备与所述应用的服务器之间的连接,且所述网络连接记录表示所述连接的已建立时长小于预设阈值时,对所述网络任务不予执行;

第二优化单元211b,用于当所述网络任务为向所述应用的服务器发送网络请求,且所述网络连接记录表示在以当前时刻定位的历史时间段内向所述应用的服务器发送的历史网络请求未接收到响应时,对所述网络任务不予执行。

其中,该网络任务为该应用相关的,与网络侧进行交互的任务,比如发送网络请求、收发数据以及建立或者断开连接等。

由于基带处理器主要任务为维护传输层,熟悉网络情况,更易于根据网络情况对网络任务进行优化。以便根据网络连接的情况减少执行不必要的网络任务,从而减少设备功耗。

比如,智能手机运行某一应用时,应用会尝试不断连接服务器,因为同一时间只需要一个与服务器之间的连接,因此,当建立下一个连接时,原来的连接就需要先关闭,然后再发起新的连接请求,如果两个连接的断开和发起的时间相隔太近,并且前一个连接的已建立时长小于2分钟,则可以确定本次断开重连的任务为不必要的任务,可以不予处理。

或者,用户使用智能手机浏览网站时,获取网页上的资源通常是并行的,比如,并行获取同一网页中的多个图片。某一网页对应有10个获取资源的请求,在请求过程中,如果基带处理器发现在当前时刻之前三分钟内发出的连续6个请求都失败,则在网络连接情况没有发生变化的情况下,基带处理器暂不发送剩余的4个请求。

综上所述,本发明实施例提供的任务处理装置,通过基带处理器判断任务触发信息对应的任务是否为应用的托管任务,若是,则该基带处理器直接调用 并执行该任务对应的托管代码,以执行该任务,将原本由应用处理器和基带处理器协作的处理流程简化为由基带处理器单独处理,解决了现有技术中智能设备中安装的应用在与服务器保持通信的过程中产生很多需要应用处理器来处理的任务而导致应用处理器被频繁唤醒的问题,达到减少任务处理过程中的设备功耗,提高功耗控制效果的目的。

此外,本发明实施例提供的任务处理装置,通过基带处理器获取应用的网络连接记录,根据该网络连接记录对该应用的网络任务进行优化,以便根据网络连接的情况减少执行不必要的网络任务,从而减少设备功耗,达到进一步提高功耗控制效果的目的。

请参考图3,其示出了本发明一个实施例提供的智能设备的框图,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该智能设备300可以包括:总线301,以及连接到所述总线的基带处理器302、应用处理器303、存储器304、发射器305和接收器306。其中,所述存储器304用于存储若干个指令,所述若干个指令被配置成由所述基带处理器302和所述应用处理器303执行;

所述基带处理器302,用于获取任务触发信息,所述任务触发信息用于触发所述智能设备中的应用对应的任务;

所述基带处理器302,用于判断所述任务是否为所述应用的托管任务,所述托管任务为所述应用处理器预先通知所述基带处理器进行处理的任务;

所述基带处理器302,用于若判断结果为所述任务是所述应用的托管任务,则调用并执行所述任务对应的托管代码。

在智能设备中,应用处理器负责会话层以上的事务,通常负责应用的运行和具体任务的处理;而基带处理器负责传输层以下的事务,比如数据的收发,在本发明实施例提供的任务处理方法中,将应用对应的部分任务设定为托管任务,该托管任务可以由基带处理器直接处理,当应用处理器处于休眠状态时,若基带处理器判断出生成的任务为托管任务,则直接进行处理,不需要唤醒应用处理器,从而减少本次任务处理过程中应用处理器的功耗,由于应用处理器在处理任务的过程中需要唤醒设备的全部功能,而基带处理器在工作时仅需要处理网络通讯功能,因此,基带处理器的功耗较比应用处理器低很多,通过本发明实施例所示的方法,将原本由应用处理器和基带处理器协作的任务处理流 程简化为由基带处理器单独处理,可以极大的减少任务处理过程中的设备功耗,提高功耗控制的效果。

综上所述,本发明实施例提供的智能设备,通过基带处理器判断任务触发信息对应的任务是否为应用的托管任务,若是,则该基带处理器直接调用并执行该任务对应的托管代码,以执行该任务,将原本由应用处理器和基带处理器协作的处理流程简化为由基带处理器单独处理,解决了现有技术中智能设备中安装的应用在与服务器保持通信的过程中产生很多需要应用处理器来处理的任务而导致应用处理器被频繁唤醒的问题,达到减少任务处理过程中的设备功耗,提高功耗控制效果的目的。

请参考图4,其示出了本发明另一实施例提供的智能设备的框图,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该智能设备400可以包括:总线401,以及连接到所述总线的基带处理器402、应用处理器403、存储器404、发射器405和接收器406。其中,所述存储器404用于存储若干个指令,所述若干个指令被配置成由所述基带处理器402和所述应用处理器403执行;

所述基带处理器402,用于获取任务触发信息,所述任务触发信息用于触发所述智能设备中的应用对应的任务;

所述基带处理器402,用于判断所述任务是否为所述应用的托管任务,所述托管任务为所述应用处理器预先通知所述基带处理器进行处理的任务;

所述基带处理器402,用于若判断结果为所述任务是所述应用的托管任务,则调用并执行所述任务对应的托管代码。

在智能设备中,应用处理器负责会话层以上的事务,通常负责应用的运行和具体任务的处理;而基带处理器负责传输层以下的事务,比如数据的收发,在本发明实施例提供的任务处理方法中,将应用对应的部分任务设定为托管任务,该托管任务可以由基带处理器直接处理,当应用处理器处于休眠状态时,若基带处理器判断出生成的任务为托管任务,则直接进行处理,不需要唤醒应用处理器,从而减少本次任务处理过程中应用处理器的功耗,由于应用处理器在处理任务的过程中需要唤醒设备的全部功能,而基带处理器在工作时仅需要处理网络通讯功能,因此,基带处理器的功耗较比应用处理器低很多,通过本发明实施例所示的方法,将原本由应用处理器和基带处理器协作的任务处理流 程简化为由基带处理器单独处理,可以极大的减少任务处理过程中的设备功耗,提高功耗控制的效果。

可选的,所述基带处理器402,用于执行如下步骤中的至少一个:

当所述任务触发信息为指示网络可用的信息时,调用并执行所述应用对应的连接建立代码,所述连接代码用于建立所述智能设备与所述应用的服务器之间的网络连接;

当所述任务触发信息为指示所述智能设备与所述应用的服务器之间的网络连接建立完成的信息时,调用并执行所述应用对应的登录代码,所述登录代码用于登录所述应用的服务器;

当所述任务触发信息为指示向所述应用的服务器发送心跳数据的信息时,调用并执行所述应用对应的心跳数据发送代码,所述心跳数据发送代码用于向所述应用的服务器发送所述心跳数据。

其中,基带处理器调用并执行托管代码的具体步骤请参考图2对应的实施例中的描述,此处不再赘述。

可选的,所述基带处理器402,用于在获取任务触发信息之前,接收所述应用处理器发送的托管信息,所述托管信息中包含有所述托管代码的调用路径,并将所述托管代码对应的任务设置为托管任务。

可选的,所述基带处理器402,用于在获取任务触发信息之前,接收所述应用处理器发送的唤醒信息,所述唤醒信息中包含有所述唤醒代码的调用路径,并将所述唤醒代码对应的任务设置为唤醒任务。

其中,基带处理器对外提供托管任务和唤醒任务的回调接口,应用通过基带处理器的接口向基带处理器发送托管信息和唤醒信息,以及基带处理器根据应用发送的信息设置托管任务和唤醒任务的步骤请参考图2对应的实施例中的描述,此处不再赘述。

可选的,所述基带处理器402,用于若判断出所述任务不是所述应用的托管任务,则检测所述任务是否为唤醒任务,所述唤醒任务为唤醒所述智能设备中的应用处理器进行处理的任务。

其中,基带处理器对唤醒任务进行处理的步骤请参考图2对应的实施例中的描述,此处不再赘述。

可选的,所述基带处理器402,用于获取所述应用的网络连接记录,根据所述网络连接记录对所述应用的网络任务进行优化。

可选的,所述基带处理器402,用于当所述网络任务为断开所述智能设备与所述应用的服务器之间的连接,且所述网络连接记录表示所述连接的已建立时长小于预设阈值时,对所述网络任务不予执行;

和/或,所述基带处理器402,用于当所述网络任务为向所述应用的服务器发送网络请求,且所述网络连接记录表示在以当前时刻定位的历史时间段内向所述应用的服务器发送的历史网络请求未接收到响应时,对所述网络任务不予执行。

其中,基带处理器根据网络连接情况对应用的网络任务进行优化的具体步骤请参考图2对应实施例中的描述,此处不再赘述。

综上所述,本发明实施例提供的智能设备,通过基带处理器判断任务触发信息对应的任务是否为应用的托管任务,若是,则该基带处理器直接调用并执行该任务对应的托管代码,以执行该任务,将原本由应用处理器和基带处理器协作的处理流程简化为由基带处理器单独处理,解决了现有技术中智能设备中安装的应用在与服务器保持通信的过程中产生很多需要应用处理器来处理的任务而导致应用处理器被频繁唤醒的问题,达到减少任务处理过程中的设备功耗,提高功耗控制效果的目的。

此外,本发明实施例提供的智能设备,通过基带处理器获取应用的网络连接记录,根据该网络连接记录对该应用的网络任务进行优化,以便根据网络连接的情况减少执行不必要的网络任务,从而减少设备功耗,达到进一步提高功耗控制效果的目的。

请参考图5,其示出了本发明一个实施例提供的任务处理方法的方法流程图,该任务处理方法用于包含应用处理器和基带处理器的智能设备中,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该任务处理方法可以包括如下步骤。

步骤502,基带处理器获取任务触发信息,该任务触发信息用于触发该智能设备中的应用对应的任务。

步骤504,该基带处理器判断该任务是否为该应用的托管任务,该托管任务为该智能设备中的应用处理器预先通知该基带处理器进行处理的任务。

步骤506,若判断结果为该任务是该应用的第一类型任务,则该基带处理器调用并执行该任务对应的托管代码。

在智能设备中,应用处理器负责会话层以上的事务,通常负责应用的运行和具体任务的处理;而基带处理器负责传输层以下的事务,比如数据的收发,在本发明实施例提供的任务处理方法中,将应用对应的部分任务设定为托管任务,该托管任务可以由基带处理器直接处理,当应用处理器处于休眠状态时,若基带处理器判断出生成的任务为托管任务,则直接进行处理,不需要唤醒应用处理器,从而减少本次任务处理过程中应用处理器的功耗,由于应用处理器在处理任务的过程中需要唤醒设备的全部功能,而基带处理器在工作时仅需要处理网络通讯功能,因此,基带处理器的功耗较比应用处理器低很多,通过本发明实施例所示的方法,将原本由应用处理器和基带处理器协作的任务处理流程简化为由基带处理器单独处理,可以极大的减少任务处理过程中的设备功耗,提高功耗控制的效果。

综上所述,本发明实施例提供的任务处理方法,通过基带处理器判断任务触发信息对应的任务是否为应用的托管任务,若是,则该基带处理器直接调用并执行该任务对应的托管代码,以执行该任务,将原本由应用处理器和基带处理器协作的处理流程简化为由基带处理器单独处理,解决了现有技术中智能设备中安装的应用在与服务器保持通信的过程中产生很多需要应用处理器来处理的任务而导致应用处理器被频繁唤醒的问题,达到减少任务处理过程中的设备功耗,提高功耗控制效果的目的。

请参考图6,其示出了本发明另一实施例提供的任务处理方法的方法流程图,该任务处理方法用于包含应用处理器和基带处理器的智能设备中,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该任务处理方法可以包括如下步骤。

步骤602,基带处理器接收应用处理器发送的托管信息和唤醒信息,托管信息中包含有托管代码的调用路径,唤醒信息中包含有唤醒代码的调用路径。

智能设备的功耗主要包括两部分:一部分称为有效功耗,有效功耗主要是处理直接服务类任务所产生的功耗,直接服务类任务是指直接向用户提供服务的任务,比如收发短信、主被动呼叫、即时通讯数据的收发、网页数据的请求与接收等任务;另一部分称为无效功耗,无效功耗主要是处理支撑任务所产生的功耗,此类支撑任务不向用户提供直接服务,而是对直接服务类任务提供支撑,比如,连接或者断开网络、自动登录应用服务器以及通过发送和接收心跳 数据保持与应用服务器之间的连接等。

此外,智能设备中的任务还可以按照处理优先级分为两类:一类是智能设备处于休眠状态时可以不予处理的任务,另一类是智能设备处于休眠状态时也需要处理的任务。

在本发明实施例中,可以针对智能设备中产生无效功耗的支撑任务中,在智能设备处于休眠状态时也需要处理的任务设置托管任务回调接口,典型的,该此类任务可以包括建立网络连接、登录服务器、主动发送心跳数据以及被动发送心跳数据等任务。比如,可以设置的托管任务回调接口可以是建立连接的回调接口、登录服务器的回调接口、被动发送心跳数据的回调接口以及主动发送心跳数据的回调接口等。第三方应用的开发者根据智能设备中预先规定的基托管任务的回调接口,设置对应任务的托管代码。当应用程序在智能设备中成功安装后,智能设备中的应用处理器在首次运行该第三方应用时,若第三方应用需要将预先设置的托管代码对应的任务委托由基带处理器在应用处理器休眠时处理,则应用处理器通过调用基带处理器侧的接口,向基带处理器发送包含有该托管代码的调用路径的托管信息,该调用路径可以是该托管代码的库文件存储路径。其中,该库文件可以是.jar文件或者.so文件。

此外,本发明实施例还针对智能设备中产生有效功耗支撑任务中,在智能设备处于休眠状态时需要处理的任务设置唤醒任务回调接口,典型的,这些产生有效功耗支撑任务中,在智能设备处于休眠状态时需要处理的任务可以包括接收短信或者接受呼叫等。比如,第三方应用的开发者还可以根据智能设备中预先规定的唤醒操作回调接口,对需要由应用处理器进行处理的任务设置唤醒代码。当应用程序在智能设备中成功安装后,智能设备中的应用处理器在首次运行时,通过调用基带处理器侧的接口,向基带处理器发送包含有唤醒代码的调用路径的唤醒信息。同样的,该调用路径可以是该唤醒代码的库文件存储路径,该库文件可以是.jar文件或者.so文件。

以智能设备为智能手机为例,智能手机中预先规定的可委托由基带处理器管理的托管任务可以包括建立网络连接、登录服务器、主动发送心跳数据或者被动发送心跳数据等,需要唤醒应用处理器进行处理的唤醒任务可以包括接收到短信或者接收到呼叫等,这些托管任务回调接口以及唤醒任务回调接口的代码可以如下:

需要说明的是,在本发明实施例中,仅以上述几种托管任务和唤醒任务进行举例说明,在实际应用中,还可以是具体情况将其它种类的任务设置为托管任务或者唤醒任务。本发明实施例对托管任务和唤醒任务的种类不做限定。

步骤604,基带处理器将托管代码对应的任务设置为托管任务,并将唤醒代码对应的任务设置为唤醒任务,托管任务为应用预先通知基带处理器进行处理的任务,唤醒任务为唤醒智能设备中的应用处理器进行处理的任务。

基带处理器将接收到的托管信息对应的任务设置为托管任务,并将接收到的唤醒信息对应的任务设置为唤醒任务。

步骤606,基带处理器获取任务触发信息,该任务触发信息用于触发智能设备中的应用对应的任务。

其中,任务触发信息可以是主动触发应用对应的任务的信息。比如,当智能设备检测出网络由不可用变为可用时,生成用于指示网络可用的任务触发信息,主动触发建立与应用服务器之间的网络连接的任务;当智能设备检测出与应用服务器之间的网络连接建立完成时,生成用于指示连接建立成功的任务触发信息,主动触发登录该应用服务器的任务;登录成功后,当智能设备检测出主动向该应用服务器发送心跳数据的时间点达到时,生成用于指示发送心跳数据的任务触发信息,主动触发向该应用服务器发送心跳数据的任务。

此外,任务触发信息还可以是被动触发应用对应的任务的信息。比如,当智能设备检测出接收到该应用服务器发送的心跳数据时,生成用于指示发送心跳数据的任务触发信息,被动触发向该应用服务器发送心跳数据的任务;或者,智能设备检测出接收到短信或者呼叫时,生成用于指示触发唤醒应用处理器的任务触发信息,被动触发唤醒应用处理器,由应用处理器处理短信或呼叫任务。

步骤608,基带处理器判断该任务是否为该应用的托管任务,若是,进入步骤610,否则,进入步骤612。

当智能设备的应用处理器处于休眠状态时,若基带处理器接收到任务触发信息,可以首先判断该任务触发信息触发的任务是否为托管任务。

步骤610,基带处理器调用并执行该任务对应的托管代码。

若基带处理器判断出该任务触发信息触发的任务是已经设置的托管任务,则可以根据该任务对应的托管代码的调用路径,通过对应的调用接口调用该托管代码并执行。

比如,当该任务触发信息为指示网络可用的信息时,该基带处理器调用并执行某个应用对应的连接建立代码,该连接代码用于建立智能设备与该应用的服务器之间的网络连接;当该任务触发信息为指示该智能设备与该应用的服务器之间的网络连接建立完成的信息时,该基带处理器调用并执行该应用对应的登录代码,该登录代码用于登录该应用的服务器;当该任务触发信息为指示向该应用的服务器发送心跳数据的信息时,该基带处理器调用并执行该应用对应的心跳数据发送代码,该心跳数据发送代码用于向该应用的服务器发送心跳数据。

以应用A成功安装在智能手机中之后,通过基带处理器提供的托管任务回调接口向基带处理器发送托管信息为例。智能手机接入某一个路由器,在该路由器未接入公网之前,路由器仅能实现局域网通讯功能,此时智能手机中的应用A无法登录网络侧的服务器;当该路由器接入公网之后,智能手机的无线接入点没有发生变化,但是可以与公网进行数据交互;当基带处理器获知路由器接入公网(比如,检测到智能手机成功接收到网络侧发送的数据)时,可以通过应用A预先通知的连接建立代码的调用路径,调用并执行onConnect()函数,以建立智能手机与应用A的服务器之间的网络连接。当网络连接建立完成后,基带处理器可以通过应用A预先通知的登录代码的调用路径,调用并执行onRequestLogin(input,output)函数,自动登录应用A的服务器。当智能手机接收到应用A的服务器发送的心跳数据,或者到达向应用A的服务器发送心跳数据的时间点时,基带处理器通过应用A预先通知的心跳数据发送代码的调用路径,调用并执行的onHearBeatTimeReceviced()函数,向应用A的服务器发送心跳数据。

比如,以托管代码包括连接建立代码和登录代码为例,该托管代码可以实 现如下:

步骤612,基带处理器检测该任务是否为唤醒任务,若检测结果为该任务是唤醒任务,则调用并执行该应用对应的唤醒代码。

其中,该唤醒代码用于唤醒该智能设备的应用处理器,并请求该应用处理器处理该唤醒任务。

比如,当智能手机中的应用处理器处于休眠状态,且接收到短信时,基带处理器执行onDataReceived(socket,datas)函数,以唤醒智能手机中的应用处理器来处理该短信。

在实际应用中,还有一些在智能设备处于休眠状态时不需要处理的任务,比如接收即时通讯数据或者网页数据的任务,对于此类任务,基带处理器可以不予处理。

可选的,基带处理器还可以获取某一个应用的网络连接记录,根据该网络连接记录对该应用的网络任务进行优化。

其中,该网络任务为该应用相关的,与网络侧进行交互的任务,比如发送网络请求、收发数据以及建立或者断开连接等。

比如,当该网络任务为断开该智能设备与该应用的服务器之间的连接,且该网络连接记录表示所述连接的已建立时长小于预设阈值时,该基带处理器对该网络任务不予执行。

和/或,当该网络任务为向所述应用的服务器发送网络请求,且所述网络连接记录表示在以当前时刻定位的历史时间段内向所述应用的服务器发送的历史网络请求未接收到响应时,该基带处理器对该网络任务不予执行。

由于基带处理器主要任务为维护传输层,熟悉网络情况,更易于根据网络情况对网络任务进行优化。以便根据网络连接的情况减少执行不必要的网络任务,从而减少设备功耗。

比如,智能手机运行某一应用时,应用会尝试不断连接服务器,因为同一时间只需要一个与服务器之间的连接,因此,当建立下一个连接时,原来的连接就需要先关闭,然后再发起新的连接请求,如果两个连接的断开和发起的时间相隔太近,并且前一个连接的已建立时长小于2分钟,则可以确定本次断开重连的任务为不必要的任务,可以不予处理。

或者,用户使用智能手机浏览网站时,获取网页上的资源通常是并行的,比如,并行获取同一网页中的多个图片。某一网页对应有10个获取资源的请求,在请求过程中,如果基带处理器发现在当前时刻之前三分钟内发出的连续6个请求都失败,则在网络连接情况没有发生变化的情况下,基带处理器暂不发送剩余的4个请求。

综上所述,本发明实施例提供的任务处理方法,通过基带处理器判断任务触发信息对应的任务是否为应用的托管任务,若是,则该基带处理器直接调用并执行该任务对应的托管代码,以执行该任务,将原本由应用处理器和基带处理器协作的处理流程简化为由基带处理器单独处理,解决了现有技术中智能设备中安装的应用在与服务器保持通信的过程中产生很多需要应用处理器来处理的任务而导致应用处理器被频繁唤醒的问题,达到减少任务处理过程中的设备功耗,提高功耗控制效果的目的。

此外,本发明实施例提供的任务处理方法,通过基带处理器获取应用的网络连接记录,根据该网络连接记录对该应用的网络任务进行优化,以便根据网络连接的情况减少执行不必要的网络任务,从而减少设备功耗,达到进一步提高功耗控制效果的目的。

请参考图7,其示出了本发明一个实施例提供的基带处理器的框,该基带处理器可以用于实现上述图5或图6任一所示的任务处理方法。该基带处理器用于智能设备中,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该基带处理器700可以包括:

如上述图1或图2所示的任务处理装置710。

综上所述,本发明实施例提供的基带处理器,通过判断任务触发信息对应的任务是否为应用的托管任务,若是,则该基带处理器直接调用并执行该任务对应的托管代码,以执行该任务,将原本由应用处理器和基带处理器协作的处理流程简化为由基带处理器单独处理,解决了现有技术中智能设备中安装的应用在与服务器保持通信的过程中产生很多需要应用处理器来处理的任务而导致应用处理器被频繁唤醒的问题,达到减少任务处理过程中的设备功耗,提高功耗控制效果的目的。

请参考图8,其示出了本发明一个实施例提供的任务处理方法的方法流程图,该任务处理方法用于包含应用处理器和基带处理器的智能设备中,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该任务处理方法可以包括如下步骤。

步骤802,基带处理器获取应用的网络连接记录。

步骤804,基带处理器根据该网络连接记录对该应用的网络任务进行优化。

其中,基带处理器根据网络连接记录对该应用的网络任务进行优化,可以包括:

当该网络任务为断开智能设备与该应用的服务器之间的连接,且该网络连接记录表示该连接的已建立时长小于预设阈值时,该基带处理器对该网络任务不予执行,该智能设备为包含该基带处理器的设备;

当该网络任务为向该应用的服务器发送网络请求,且该网络连接记录表示在以当前时刻定位的历史时间段内向该应用的服务器发送的历史网络请求未接收到响应时,该基带处理器对该网络任务不予执行;

或者,当该网络任务为建立与应用服务器之间的连接时,若该网络连接记录表示智能设备的网络由不可用变化为可用,则立刻执行该网络任务。

其中,该网络任务为该应用相关的,与网络侧进行交互的任务,比如发送网络请求、收发数据以及建立或者断开连接等。

由于基带处理器主要任务为维护传输层,熟悉网络情况,更易于根据网络情况对网络任务进行优化。以便根据网络连接的情况减少执行不必要的网络任务,从而减少设备功耗。

比如,智能手机运行某一应用时,应用会尝试不断连接服务器,因为同一时间只需要一个与服务器之间的连接,因此,当建立下一个连接时,原来的连接就需要先关闭,然后再发起新的连接请求,如果两个连接的断开和发起的时间相隔太近,并且前一个连接的已建立时长小于2分钟,则可以确定本次断开重连的任务为不必要的任务,可以不予处理。

或者,用户使用智能手机浏览网站时,获取网页上的资源通常是并行的,比如,并行获取同一网页中的多个图片。某一网页对应有10个获取资源的请求,在请求过程中,如果基带处理器发现在当前时刻之前三分钟内发出的连续6个请求都失败,则在网络连接情况没有发生变化的情况下,基带处理器暂不发送剩余的4个请求。

或者,智能手机接入某一个路由器,在该路由器未接入公网之前,路由器仅能实现局域网通讯功能,此时智能手机中的应用无法登录网络侧的服务器;当该路由器接入公网之后,智能手机的无线接入点没有发生变化,但是可以与公网进行数据交互;当基带处理器获知路由器接入公网(比如,检测到智能手机成功接收到网络侧发送的数据)时,可以立即建立智能手机与该应用的服务器之间的网络连接,减少业务断连时间。

综上所述,本公开实施例提供的任务处理方法,通过基带处理器获取获取应用的网络连接记录,并根据该网络连接记录对该应用的网络任务进行优化,由于基带处理器主要任务为维护传输层,熟悉网络情况,更易于根据网络情况对网络任务进行优化,从而根据网络连接的情况减少执行不必要的网络任务,减少设备功耗。

请参考图9,其示出了本发明一个实施例提供的任务处理装置的装置结构图,该任务处理装置用于包含智能设备的基带处理器中,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该任务处理装置可以包括:

连接记录获取模块910,用于获取所述应用的网络连接记录;

优化模块911,用于根据所述网络连接记录对所述应用的网络任务进行优 化。

可选的,所述优化模块911,包括:第一优化单元911a和/或第二优化单元911b;

所述第一优化单元911a,用于当所述网络任务为断开所述智能设备与所述应用的服务器之间的连接,且所述网络连接记录表示所述连接的已建立时长小于预设阈值时,对所述网络任务不予执行;

所述第二优化单元911b,用于当所述网络任务为向所述应用的服务器发送网络请求,且所述网络连接记录表示在以当前时刻定位的历史时间段内向所述应用的服务器发送的历史网络请求未接收到响应时,对所述网络任务不予执行。

其中,该网络任务为该应用相关的,与网络侧进行交互的任务,比如发送网络请求、收发数据以及建立或者断开连接等。

由于基带处理器主要任务为维护传输层,熟悉网络情况,更易于根据网络情况对网络任务进行优化。以便根据网络连接的情况减少执行不必要的网络任务,从而减少设备功耗。

比如,智能手机运行某一应用时,应用会尝试不断连接服务器,因为同一时间只需要一个与服务器之间的连接,因此,当建立下一个连接时,原来的连接就需要先关闭,然后再发起新的连接请求,如果两个连接的断开和发起的时间相隔太近,并且前一个连接的已建立时长小于2分钟,则可以确定本次断开重连的任务为不必要的任务,可以不予处理。

或者,用户使用智能手机浏览网站时,获取网页上的资源通常是并行的,比如,并行获取同一网页中的多个图片。某一网页对应有10个获取资源的请求,在请求过程中,如果基带处理器发现在当前时刻之前三分钟内发出的连续6个请求都失败,则在网络连接情况没有发生变化的情况下,基带处理器暂不发送剩余的4个请求。

或者,智能手机接入某一个路由器,在该路由器未接入公网之前,路由器仅能实现局域网通讯功能,此时智能手机中的应用无法登录网络侧的服务器;当该路由器接入公网之后,智能手机的无线接入点没有发生变化,但是可以与公网进行数据交互;当基带处理器获知路由器接入公网(比如,检测到智能手机成功接收到网络侧发送的数据)时,可以立即建立智能手机与该应用的服务器之间的网络连接,减少业务断连时间。

综上所述,本公开实施例提供的任务处理装置,通过基带处理器获取获取应用的网络连接记录,并根据该网络连接记录对该应用的网络任务进行优化,由于基带处理器主要任务为维护传输层,熟悉网络情况,更易于根据网络情况对网络任务进行优化,从而根据网络连接的情况减少执行不必要的网络任务,减少设备功耗。

请参考图10,其示出了本发明一个实施例提供的基带处理器的框,该基带处理器可以用于实现上述图8所示的任务处理方法。该基带处理器用于智能设备中,该智能设备可以是智能手机、平板电脑、电子书阅读器以及智能可穿戴设备等。该基带处理器1000可以包括:

如上述图9所示的任务处理装置1010。

综上所述,本公开实施例提供的基带处理器,通过获取获取应用的网络连接记录,并根据该网络连接记录对该应用的网络任务进行优化,由于基带处理器主要任务为维护传输层,熟悉网络情况,更易于根据网络情况对网络任务进行优化,从而根据网络连接的情况减少执行不必要的网络任务,减少设备功耗。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号