后台运行程序的方法及装置的制造方法_2

文档序号:8361276阅读:来源:国知局
110。应用重加载模块110用于获取应用清理事件,获取应用清理事件对应的应用;判断应用是否属于支持后台运行应用集合,若是,则通过系统守护进程加载应用清理事件对应的应用。
[0046]在本实施例中,如图3所示,后台运行程序的装置还包括内存记录模块112。内存记录模块112用于获取应用清理事件对应的应用的内存堆栈信息并缓存。
[0047]在本实施例中,应用重加载模块110还用于由缓存中读取与应用对应的内存堆栈信息,根据内存堆栈信息还原应用的内存环境。
[0048]上述后台运行程序的方法及装置,通过将系统守护进程发送给后台运行的应用挂起指令替换为继续执行指令,使得在后台运行的应用可以在操作系统的后台持续运行,而不会有生命期的限制,该应用可在系统守护进程每次针对超时发起应用挂起指令时,仍然保持后台运行状态,使得后台运行的应用不会处于挂起状态,从而不会被清理出内存,当再次切换到或运行该应用时,不需要重新加载应用,从而提高了应用切换的速度。
[0049]如图4所示,图4为能实现本发明实施例的一个计算机系统1000的模块图。该计算机系统1000只是一个适用于本发明的计算机环境的示例,不能认为是提出了对本发明的使用范围的任何限制。计算机系统1000也不能解释为需要依赖于或具有图示的示例性的计算机系统1000中的一个或多个部件的组合。
[0050]图4中示出的计算机系统1000是一个适合用于本发明的计算机系统的例子。具有不同子系统配置的其它架构也可以使用。例如有大众所熟知的台式机、笔记本、个人数字助理、智能电话、平板电脑、便携式媒体播放器、机顶盒等类似设备可以适用于本发明的一些实施例。但不限于以上所列举的设备。
[0051]如图4所示,计算机系统1000包括处理器1010、存储器1020和系统总线1022。包括存储器1020和处理器1010在内的各种系统组件连接到系统总线1022上。处理器1010是一个用来通过计算机系统中基本的算术和逻辑运算来执行计算机程序指令的硬件。存储器1020是一个用于临时或永久性存储计算程序或数据(例如,程序状态信息)的物理设备。系统总线1022可以为以下几种类型的总线结构中的任意一种,包括存储器总线或存储控制器、外设总线和局部总线。处理器1010和存储器1020可以通过系统总线1022进行数据通信。其中存储器1020包括只读存储器(ROM)或闪存(图中都未示出),以及随机存取存储器(RAM),RAM通常是指加载了操作系统和应用程序的主存储器。
[0052]计算机系统1000还包括显示接口 1030 (例如,图形处理单元)、显示设备1040 (例如,液晶显示器)、音频接口 1050 (例如,声卡)以及音频设备1060 (例如,扬声器)。显示设备1040和音频设备1060是用于体验多媒体内容的媒体设备。
[0053]计算机系统1000 —般包括一个存储设备1070。存储设备1070可以从多种计算机可读介质中选择,计算机可读介质是指可以通过计算机系统1000访问的任何可利用的介质,包括移动的和固定的两种介质。例如,计算机可读介质包括但不限于,闪速存储器(微型SD卡),CD-ROM,数字通用光盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁存储设备,或者可用于存储所需信息并可由计算机系统1000访问的任何其它介质。
[0054]计算机系统1000还包括输入装置1080和输入接口 1090 (例如,1控制器)。用户可以通过输入装置1080,如键盘、鼠标、显示装置1040上的触摸面板设备,输入指令和信息到计算机系统1000中。输入装置1080通常是通过输入接口 1090连接到系统总线1022上的,但也可以通过其它接口或总线结构相连接,如通用串行总线(USB)。
[0055]计算机系统1000可在网络环境中与一个或者多个网络设备进行逻辑连接。网络设备可以是个人电脑、服务器、路由器、智能电话、平板电脑或者其它公共网络节点。计算机系统1000通过局域网(LAN)接口 1100或者移动通信单元1110与网络设备相连接。局域网(LAN)是指在有限区域内,例如家庭、学校、计算机实验室、或者使用网络媒体的办公楼,互联组成的计算机网络。WiFi和双绞线布线以太网是最常用的构建局域网的两种技术。WiFi是一种能使计算机系统1000间交换数据或通过无线电波连接到无线网络的技术。移动通信单元1110能在一个广阔的地理区域内移动的同时通过无线电通信线路接听和拨打电话。除了通话以外,移动通信单元1110也支持在提供移动数据服务的2G,3G或4G蜂窝通信系统中进行互联网访问。
[0056]应当指出的是,其它包括比计算机系统1000更多或更少的子系统的计算机系统也能适用于发明。例如,计算机系统1000可以包括能在短距离内交换数据的蓝牙单元,用于照相的图像传感器,以及用于测量加速度的加速计。
[0057]如上面详细描述的,适用于本发明的计算机系统1000能执行处理状态展示方法的指定操作。计算机系统1000通过处理器1010运行在计算机可读介质中的软件指令的形式来执行这些操作。这些软件指令可以从存储设备1070或者通过局域网接口 1100从另一设备读入到存储器1020中。存储在存储器1020中的软件指令使得处理器1010执行上述的处理状态展示方法。此外,通过硬件电路或者硬件电路结合软件指令也能同样实现本发明。因此,实现本发明并不限于任何特定硬件电路和软件的组合。
[0058]以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
【主权项】
1.一种后台运行程序的方法,包括: 拦截系统守护进程发起的应用挂起指令; 获取预设的支持后台运行应用集合; 获取所述应用挂起指令对应的应用,判断所述应用是否属于所述支持后台运行应用集合,若是,则将所述挂起指令替换为继续执行指令,并转发给所述应用。
2.根据权利要求1所述的后台运行程序的方法,其特征在于,所述方法还包括: 获取支持后台运行应用选取指令,提取选中的应用; 将所述选中的应用添加到预设的支持后台运行应用集合中。
3.根据权利要求1或2所述的后台运行程序的方法,其特征在于,所述拦截系统守护进程发起的应用挂起指令的步骤之前还包括: 获取应用清理事件,获取所述应用清理事件对应的应用; 判断所述应用是否属于所述支持后台运行应用集合,若是,则通过系统守护进程加载所述应用清理事件对应的应用。
4.根据权利要求3所述的后台运行程序的方法,其特征在于,获取所述应用清理事件对应的应用的步骤还包括: 获取所述应用清理事件对应的应用的内存堆栈信息并缓存。
5.根据权利要求4所述的后台运行程序的方法,其特征在于,所述通过系统守护进程加载所述应用清理事件对应的应用的步骤之后还包括: 由缓存中读取与所述应用对应的内存堆栈信息,根据所述内存堆栈信息还原所述应用的内存环境。
6.一种后台运行程序的装置,其特征在于,包括: 指令拦截模块,用于拦截系统守护进程发起的应用挂起指令; 支持集合获取模块,用于获取预设的支持后台运行应用集合; 指令篡改模块,用于获取所述应用挂起指令对应的应用,判断所述应用是否属于所述支持后台运行应用集合,若是,则将所述挂起指令替换为继续执行指令,并转发给所述应用。
7.根据权利要求1所述的后台运行程序的装置,其特征在于,所述装置还包括应用配置模块,用于获取支持后台运行应用选取指令,提取选中的应用;将所述选中的应用添加到预设的支持后台运行应用集合中。
8.根据权利要求6或7所述的后台运行程序的装置,其特征在于,所述装置还包括应用重加载模块,用于获取应用清理事件,获取所述应用清理事件对应的应用;判断所述应用是否属于所述支持后台运行应用集合,若是,则通过系统守护进程加载所述应用清理事件对应的应用。
9.根据权利要求8所述的后台运行程序的装置,其特征在于,所述装置还包括内存记录模块,用于获取所述应用清理事件对应的应用的内存堆栈信息并缓存。
10.根据权利要求9所述的后台运行程序的装置,其特征在于,所述应用重加载模块还用于由缓存中读取与所述应用对应的内存堆栈信息,根据所述内存堆栈信息还原所述应用的内存环境。
【专利摘要】一种后台运行程序的方法,包括:拦截系统守护进程发起的应用挂起指令;获取预设的支持后台运行应用集合;获取所述应用挂起指令对应的应用,判断所述应用是否属于所述支持后台运行应用集合,若是,则将所述挂起指令替换为继续执行指令,并转发给所述应用。此外,还提供了一种后台运行程序的装置。上述后台运行程序的方法及装置能够提高应用切换速度。
【IPC分类】G06F9-48, G06F9-46
【公开号】CN104679581
【申请号】CN201310643244
【发明人】王永鑫, 叶礼伟, 李斌
【申请人】腾讯科技(深圳)有限公司
【公开日】2015年6月3日
【申请日】2013年12月3日
【公告号】WO2015081713A1
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1