CN108431767A - 一种加载软件程序的方法、用户终端及存储介质 - Google Patents
一种加载软件程序的方法、用户终端及存储介质 Download PDFInfo
- Publication number
- CN108431767A CN108431767A CN201680077350.5A CN201680077350A CN108431767A CN 108431767 A CN108431767 A CN 108431767A CN 201680077350 A CN201680077350 A CN 201680077350A CN 108431767 A CN108431767 A CN 108431767A
- Authority
- CN
- China
- Prior art keywords
- software program
- installation
- user terminal
- executable file
- options
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种加载软件程序的方法、用户终端及存储介质,该方法包括:当接收到用于安装第一软件程序的安装指令时,用户终端将第一软件程序的可执行文件加载至随机存取存储器RAM。可见,通过实施第一方面所提供的方法,减少了恢复ROM中的软件程序的流程。
Description
本发明涉及终端技术领域,尤其涉及一种加载软件程序的方法、用户终端及存储介质。
目前很多用户终端(如手机、电脑等)都安装有软件程序。通常,软件程序可包括系统软件程序和应用软件程序。
在实际应用中,用户经常会对用户终端中的软件程序进行版本更新或者安装其他软件程序。目前,用户终端安装软件程序的流程可以为:用户终端通过有线网络、WLAN或数据业务,从软件程序的官方网页中下载软件程序的安装包到用户终端的只读存储器(Read Only Memory,ROM)或外部存储卡。然后用户终端通过下载的软件程序的安装包,将软件程序安装至ROM中,并对ROM中安装的软件程序进行替换。例如,ROM中安装有操作系统Android 6.0,用户终端将Android 7.0安装至ROM中时,会替换ROM中安装的Android 6.0。
然而在实践中发现,很多用户安装新的软件程序之后,对新的软件程序并不适应。这时,若用户想要恢复到ROM中被替换的软件程序,就需要去官方网页中重新下载被替换的软件程序的安装包,并重新安装被替换的软件程序。可见,恢复被替换的软件程序的过程非常繁琐。
发明内容
本发明实施例公开了一种加载软件程序的方法、用户终端及存储介质,有利于减少恢复ROM中的软件程序的流程。
第一方面,提供了一种加载软件程序的方法,该方法包括:当用户终端接收到用于安装第一软件程序的安装指令时,将第一软件程序的可执行文件加载至随机存取存储器RAM。
可见,通过实施第一方面所提供的方法,用户终端安装软件程序时,用户
终端将软件程序的可执行文件加载至RAM中,以将软件程序的安装在RAM中。可见,用户终端安装软件程序时,并不替换ROM中已安装的软件程序的可执行文件。在用户终端将软件程序安装至用户终端的RAM后,用户终端不用重新下载并安装ROM中的软件程序,用户终端只需将软件程序切换到安装于ROM中的软件程序或只需重启用户终端就可使用户终端运行安装于ROM中的软件程序。可见,通过实施第一方面所提供的方法,减少了恢复ROM中的软件程序的流程。
作为一种可选的实施方式,用户终端将第一软件程序的可执行文件加载至RAM之后,可自动运行第一软件程序的可执行文件。通过实施实施第一方面所提供的方法,软件程序的代码直接保存在RAM中,因此,在运行软件程序时,可直接运行RAM中软件程序的代码,省略了从ROM中加载软件程序的代码到RAM中的步骤,从而达到了快速运行软件程序的效果。
在一种可能的实现方式中,用户终端还可通过安装选择项接收安装指令;该安装选择项包括临时安装选择项和永久安装选择项;该临时安装选择项用于接收安装第一软件程序的临时安装指令;该永久安装选择项用于接收安装第一软件程序的永久安装指令;相应地,当接收到用于安装第一软件程序的安装指令时,用户终端将第一软件程序的可执行文件加载至RAM可以包括:当通过临时安装选择项接收到用于安装第一软件程序的临时安装指令时,用户终端将第一软件程序的可执行文件加载至RAM。
可见,通过实施该实现方式,可便于用户灵活地选择是将软件程序安装至RAM,还是将软件程序安装至ROM。
在一种可能的实现方式中,用户终端可在下载完第一软件程序的安装包之后,输出第一软件程序的安装选择项。或者,用户终端可在下载第一软件程序的安装包之前,就输出第一软件程序的安装选择项。在用户选择一个安装选择项之后,用户终端就下载第一软件程序的安装包,并在下载第一软件程序的安装包之后,根据用户通过安装选择项输入的安装指令,对第一软件程序进行临时安装或永久安装。
在实际应用中,用户下载完第一软件程序的安装包之后,一般会马上安装第一软件程序。因此,在用户下载完第一软件程序的安装包之后就输出第一软件程序的安装选择项,可满足用户的软件程序安装需求。
作为一种可选的实施方式,用户终端可在开机过程中检测到第一软件程序的安装包之后,输出第一软件程序的安装选择项。
通过实施该实施方式,有利于更快地安装和运行第一软件程序。
在一种可能的实现方式中,用户终端还可在接收到用于安装第一软件程序的永久安装指令时,将第一软件程序的可执行文件加载至ROM中,并删除安装在ROM的第二软件程序的可执行文件。可选的,当用户终端接收到用于安装第一软件程序的永久安装指令时,用户终端可通过第一软件程序的安装包,将第一软件程序的可执行文件加载至ROM中。可选的,用户终端将第一软件程序的可执行文件加载至ROM中之后,可删除第一软件程序的安装包,以节省ROM的存储空间。可选的,当用户终端接收到用于安装第一软件程序的永久安装指令时,若第一软件程序已安装在RAM中,则用户终端可直接将RAM中的第一软件程序的可执行文件加载至ROM中,以将第一软件程序安装至ROM中,而不通过运行第一软件程序的安装包来将第一软件程序的可执行文件加载至ROM中。
通过实施该实现方式,用户可灵活地选择将软件程序安装至ROM。
在一种可能的实现方式中,用户终端还可将第一软件程序安装至随机存取存储器RAM中之后,当运行安装在RAM的第一软件程序,且接收到软件程序切换指令时,运行安装在只读存储器ROM的第二软件程序。
可见,通过实施该实现方式,用户终端可在安装于RAM中的软件程序和安装于ROM中的软件程序之间随意切换,增加了软件程序使用的灵活性。
在一种可能的实现方式中,用户终端还可在检测到至少一个软件程序的安装包时,输出软件程序选择项,该软件程序选择项与检测到的安装包一一对应,该软件程序选择项用于输入安装该软件程序的安装指令;其中,在用户终端接收到用于安装第一软件程序的安装指令时,将第一软件程序的可执行文件加载至RAM的方式具体为:当接收到通过与第一软件程序对应的软件程序选择项输入的用于安装第一软件程序的安装指令时,将第一软件程序的可执行文件加载至RAM。
通过实施该实现方式,可用于测试人员对软件程序进行测试。通过实施该实现方式,有利于测试人员快速地、便捷地切换需要测试的软件程序。
作为一种可选的实施方式,用户终端具体可以在开机的过程中输出软件程
序选择项。或者,用户终端也可在开机之后,输出软件程序选择项。
在一种可能的实现方式中,用户终端将第一软件程序的可执行文件加载至RAM的具体实施方式为:当随机存取存储器RAM的剩余内存容量满足预设条件时,将第一软件程序的可执行文件加载至RAM;该预设条件为剩余内存容量大于目标内存容量,该目标内存容量为安装该第一软件程序所需的内存容量与运行该第一软件程序所需的最小内存容量之和,或该预设条件为剩余内存容量大于预设容量。
可见,通过实施该实施方式,可提高第一软件程序安装和运行的成功率。
作为一种可选的实施方式,用户终端可在RAM中开辟预设容量的内存区域来安装以及运行第一软件程序。或者,用户终端可计算运行第一软件程序所需的内存容量,并在RAM中开辟计算得到的内存容量的内存区域来安装以及运行第一软件程序。
第二方面,提供了一种用户终端,该用户终端具有实现上述第一方面或第一方面可能的实现方式中用户终端行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的单元。该单元可以是软件和/或硬件。基于同一发明构思,由于该用户终端解决问题的原理以及有益效果可以参见上述第一方面和第一方面的各可能的方法实施方式以及所带来的有益效果,因此该用户终端的实施可以参见上述第一方面和第一方面的各可能的方法实施方式,重复之处不再赘述。
第三方面,提供了一种用户终端,用户终端包括一个或多个处理器、存储器、总线系统以及一个或多个程序,存储器包括随机存取存储器RAM,处理器和存储器通过总线系统相连;其中,一个或多个程序被存储在存储器中,一个或多个程序包括指令,该处理器调用存储在该存储器中的指令以实现上述第一方面的方法设计中的方案,由于该用户终端解决问题的实施方式以及有益效果可以参见上述第一方面和第一方面的各可能的方法的实施方式以及有益效果,因此该用户终端的实施可以参见方法的实施,重复之处不再赘述。
第四方面,提供了一种显示界面,应用于用户终端,用户终端具有用于呈现该显示界面的显示器、存储器以及执行存储于存储器中的一个或多个程序的处理器,存储器包括随机存取存储器RAM,通过该显示界面显示安装选择项,该安装选择项用于接收安装指令;该安装选择项包括临时安装选择项和永久安
装选择项;该临时安装选择项用于接收安装第一软件程序的临时安装指令;该永久安装选择项用于接收安装所述第一软件程序的永久安装指令;当通过临时安装选择项接收到用于安装该第一软件程序的临时安装指令时,将第一软件程序的可执行文件加载至RAM,显示将该第一软件程序安装至该RAM的显示界面。
第五方面,提供了一种显示界面,应用于用户终端,用户终端具有用于呈现该显示界面的显示器、存储器以及执行存储于存储器中的一个或多个程序的处理器,存储器包括随机存取存储器RAM;当检测到至少一个软件程序的安装包时,显示软件程序选择项,该软件程序选择项与检测到的安装包一一对应,所述软件程序选择项用于输入安装所述安装包的安装指令;其中:当接收到通过与第一软件程序对应的软件程序选择项输入的用于安装第一软件程序的安装指令时,将第一软件程序的可执行文件加载至RAM,显示将该第一软件程序安装至该RAM的显示界面。
第六方面,提供了一种存储一个或多个程序的计算机可读存储介质,一个或多个程序包括指令,指令当被用户终端执行时使用户终端执行第一方面的方法或第一方面可能的实现方式。
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种加载软件程序的方法的流程示意图;
图2是本发明实施例提供的一种现有的RAM内存布局示意图;
图3是本发明实施例提供的一种RAM内存布局示意图;
图4是本发明实施例提供的另一种加载软件程序的方法的流程示意图;
图5~图7是本发明实施例提供的一种软件程序安装的过程示意图;
图8是本发明实施例提供的一种加载软件程序的方法的流程示意图;
图9是本发明实施例提供的一种软件程序安装的过程示意图;
图10~12是本发明实施例提供的一种用户终端的功能框图;
图13是本发明实施例提供的一种用户终端的结构示意图。
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例的技术方案进行描述。
为了便于理解本发明实施例,下面对本发明实施中涉及的专业术语进行介绍:
只读存储器(Read Only Memory,ROM):也叫内部存储,ROM的一部分可用于存储软件程序(也就是说软件程序可安装于ROM中),ROM的另一部分可用于存储用户数据(如音乐、文件等等)。断电之后ROM中存储的数据不会丢失。
随机存取存储器(random access memory,RAM):是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的应用程序的临时数据存储媒介。断电以后RAM中存储的数据会丢失。
栈内存(Stack):由操作系统控制,其中主要存储函数地址、函数参数或局部变量等等。
堆内存(Heap):由程序员控制,例如,可使用malloc、new、free或delete等函数调用来操作这片地址空间。
内核空间(Kernel Space):内核代码的执行区域,不允许用户执行。
内存映射段(Memory Mapping Segment):该区域用于映射可执行文件用到的动态链接库。
BSS段(BSS Segment):通常是指用来存放程序中未初始化的全局变量的一块内存区域。
数据段(Data segment):通常是指用来存放程序中已初始化的全局变量的一块内存区域。数据段属于静态内存分配。
代码段(Text segment):通常是指用来存放程序执行代码的一块内存区域。
这部分区域的大小在程序运行前就已经确定,并且内存区域通常属于只读。
软件程序:包括系统软件程序(又称操作系统)和应用软件程序。
系统软件程序:是指用于控制和协调计算机及外部设备,支持应用软件开发和运行的系统,是无需用户干预的各种程序的集合;系统软件程序使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。例如,系统软件程序可包括但不限于Android操作系统、IOS操作系统、Windows Phone操作系统和Windows操作系统等。
应用软件程序:是为满足用户不同领域、不同问题的应用需求而提供的软件。例如,应用软件程序可包括但不限于通信应用、社交应用、电商应用和办公应用等。
安装软件程序在存储器中,可以理解为将软件程序的可执行文件加载到存储器中,例如:将第一软件程序安装至RAM,实际为将第一软件程序的可执行文件加载到RAM中;将第一软件程序安装至ROM,实际为将第一软件程序的可执行文件加载到ROM中。
运行软件程序可以理解为执行该软件程序的可执行文件。
在实际应用中,通常软件程序被安装在ROM中,以保证断电后安装的软件程序不被丢失。然而在软件程序的安装过程中,用户终端会替换已安装在ROM中的软件程序,这就导致恢复安装在ROM中的软件程序的过程非常繁琐。例如,ROM中安装有操作系统Android 6.0,用户想要安装操作系统Android 7.0,则用户终端会将Android 7.0安装至ROM中,并替换ROM中安装的Android 6.0。因此,若用户想要将操作系统恢复到Android 6.0,用户必须重新下载Android 6.0的安装包来重新安装Android 6.0。
为了减少恢复ROM中的软件程序的流程,本发明实施例提供了一种加载软件程序的方法、用户终端及存储介质。
其中,本发明实施例中的用户终端可以为手机、可穿戴设备(如智能手表等)、平板电脑、个人电脑(PC,Personal Computer)、PDA(Personal Digital Assistant,个人数字助理)或车载电脑等终端。
请参见图1,图1为本发明实施例提供的一种加载软件程序的方法的流程示
意图。如图1所示,该加载软件程序的方法可以包括101部分。
在101部分中,当用户终端接收到用于安装第一软件程序的安装指令时,将第一软件程序的可执行文件加载至RAM。
作为一种可选的实施方式,该第一软件程序可以为操作系统或应用软件程序。
作为一种可选的实施方式,该第一软件程序可以为安装于ROM中的软件程序的不同版本。
例如,ROM中安装有操作系统Android 6.0,该第一软件程序可以为操作系统Android 7.0,或Android其他版本的操作系统。
再如,ROM中安装有应用软件程序Microsoft Office Word 2007,该第一软件程序可以为操作系统Microsoft Office Word 2010,或Microsoft Office Word的其他版本。
作为一种可选的实施方式,用户终端通过第一软件程序的安装包将第一软件程序的可执行文件加载至RAM。其中,第一软件程序的安装包可以为完整的安装包(该完整的安装包为包括第一软件程序的所有可执行文件的安装包)或升级包(该升级包为包括第一软件程序的部分可执行文件的安装包)。
作为一种可选的实施方式,用户终端将第一软件程序的可执行文件加载至RAM中的具体实施方式可以为:用户终端将第一软件程序的完整的安装包中包括的可执行文件加载至RAM。将第一软件程序的可执行文件加载至RAM中之后,即完成将第一软件程序安装至RAM。
作为一种可选的实施方式,用户终端将第一软件程序的可执行文件加载至RAM中的具体实施方式可以为:用户终端将第一软件程序的升级包中的可执行文件与ROM中第一软件程序的上一版本的软件程序的可执行文件加载至RAM中进行组合,得到第一软件程序的可执行文件。得到第一软件程序的可执行文件之后,即完成将第一软件程序的可执行文件加载至RAM,也就完成将第一软件程序安装至RAM。例如,第一软件程序为操作系统Android 7.0,ROM中安装有操作系统Android 6.0,操作系统Android 6.0即为操作系统Android 7.0的上一版本。当用户终端接收到用于安装操作系统Android 7.0的安装指令时,用户终端将ROM中操作系统Android 6.0的可执行文件和操作系统Android 7.0的升级包中的可执行文件加载至RAM中进行组合,得到操作系
统Android 7.0的所有可执行文件,组合完成即操作系统Android 7.0成功安装至RAM中。用户终端如何将Android 6.0的可执行文件和操作系统Android 7.0的升级包中的可执行文件进行组合得到操作系统Android 7.0的所有可执行文件为业界公知技术,在此不再赘述。
作为一种可选的实施方式,用户终端可在接收到用于安装第一软件程序的安装指令时,下载第一软件程序的安装包至用户终端的ROM中。下载完成之后,用户终端再从用户终端的ROM将第一软件程序的安装包中的可执行文件加载到用户终端的RAM中,以将第一软件程序安装至RAM中。
作为一种可选的实施方式,用户终端可在接收到用于安装第一软件程序的安装指令时,用户终端从其他设备(如云端服务器)将第一软件程序的安装包中的可执行文件加载到用户终端的RAM中,以将第一软件程序安装至RAM中。
作为一种可选的实施方式,用户终端可在接收用于安装第一软件程序的安装指令之前,就已经下载了第一软件程序的安装包至用户终端的ROM中。在接收到用于安装第一软件程序的安装指令时,用户终端就从用户终端的ROM中加载第一软件程序的安装包中的可执行文件至RAM,以将第一软件程序安装至RAM中。
作为一种可选的实施方式,该第一软件程序也可以为与ROM中的软件程序不相关的任意软件程序。
例如,ROM中安装有操作系统Windows7,该第一软件程序可以为操作系统Linux。ROM中安装有应用软件程序Microsoft Office Word 2007,该第一软件程序可以为其他非Microsoft Office Word软件程序。
在101部分中,将第一软件程序的可执行文件加载至RAM时,应保证ROM中的软件程序的可执行文件不被删除或更改。
例如,ROM中安装有操作系统Android 6.0,第一软件程序为操作系统Android 7.0。在用户终端将操作系统Android 7.0的可执行文件加载至RAM时,不对ROM中的操作系统Android 6.0的可执行文件进行删除或更改。
可见,通过实施图1所描述的加载软件程序的方法,用户终端安装软件程序时,用户终端将软件程序的可执行文件加载至RAM中,以将软件程序的安装在RAM中。可见,用户终端安装软件程序时,并不替换ROM中已安装的
软件程序的可执行文件。在用户终端将软件程序安装至用户终端的RAM后,用户终端不用重新下载并安装ROM中的软件程序,用户终端只需将软件程序切换到ROM中的软件程序或只需重启用户终端就可使用户终端运行ROM中的软件程序。例如,ROM中安装了操作系统Android 6.0,用户终端在RAM中安装了新的操作系统Android 7.0。由于RAM中存储的数据在断电时丢失,因此当用户终端重启后,安装在RAM中的新的操作系统Android 7.0已不存在,用户终端可按照默认设置自动加载并运行安装于ROM中的操作系统Android 6.0。也就是说,用户终端重启之后,就可运行操作系统Android 6.0。可见,通过实施图1所描述的加载软件程序的方法来安装软件程序,减少了恢复ROM中的软件程序的流程。
作为一种可选的实施方式,用户终端将第一软件程序的可执行文件加载至RAM之后,可自动运行第一软件程序的可执行文件。例如,用户终端将操作系统Android 7.0的可执行文件加载至RAM之后,自动运行操作系统Android 7.0的可执行文件。
在实际应用,用户终端运行软件程序时,需要将软件程序的可执行文件加载到RAM中,再在RAM中运行软件程序的可执行文件,从而实现软件程序对应的功能。例如,在实际应用中,操作系统启动的流程为:用户终端先将安装于ROM中的操作系统的内核相关的可执行文件加载到RAM中,再在RAM中运行该内核相关的可执行文件,以启动内核;用户终端再将操作系统的其他服务相关的可执行文件加载到RAM中,再在RAM中运行操作系统的其他服务相关的可执行文件,以启动操作系统的其他服务。应用软件程序的运行方式同理,需要先将应用软件程序的可执行文件加载到RAM,才能运行应用软件程序。可见,这样运行软件程序的速度非常慢。然而,通过实施图1所描述的加载软件程序的方法,软件程序的可执行文件直接保存在RAM中,因此,在运行软件程序时,可直接运行RAM中软件程序的可执行文件,省略了从ROM中加载软件程序的可执行文件到RAM中的步骤,从而达到了快速运行软件程序的效果。
作为一种可选的实施方式,在用户终端接收到用于安装第一软件程序的安装指令之后,当RAM的剩余内存容量满足预设条件时,用户终端才将第一软件程序的可执行文件加载至RAM,完成第一软件程序的安装。其中,该预设
条件为剩余内存容量大于预设容量。
或者,该预设条件可以为剩余内存容量大于目标内存容量,该目标内存容量为安装第一软件程序所需的内存容量与运行第一软件程序所需的最小内存容量之和。安装第一软件程序所需的内存容量为将第一软件程序的可执行文件加载到内存所需的容量;运行第一软件程序所需的最小内存容量为运行第一软件程序的可执行文件时用户终端需要在RAM中动态开辟的最小内存。例如,用户终端可在接收到用于安装第一软件程序的安装指令之后,根据第一软件程序的可执行文件来计算安装第一软件程序所需的内存容量与运行第一软件程序所需的最小内存容量(可选的,运行第一软件程序所需的最小内存容量也可不由用户终端计算,用户终端可从第一软件程序的安装包中直接获取),然后判断RAM的剩余内存容量是否大于计算得到的安装第一软件程序所需的内存容量与运行第一软件程序所需的最小内存容量之和。若RAM的剩余内存容量小于安装第一软件程序所需的内存容量,则用户终端不能成功安装第一软件程序至RAM;在成功安装第一软件程序在RAM中之后,若RAM的剩余内存容量小于运行第一软件程序所需的最小内存容量,则用户终端不能成功运行第一软件程序。因此,通过实施该实施方式,在RAM的剩余内存容量大于安装第一软件程序所需的内存容量与运行第一软件程序所需的最小内存容量之和时,才将第一软件程序安装至RAM中,可提高第一软件程序安装和运行的成功率。
作为一种可选的实施方式,用户终端可在RAM中开辟预设容量的内存区域来安装以及运行第一软件程序。或者,用户终端可计算安装和运行第一软件程序所需的最小内存容量之和,并在RAM中开辟计算得到的内存容量的内存区域来安装以及运行第一软件程序。
请参见图2,图2为一种现有的RAM内存布局示意图。如图2所示,RAM原本的内存可包括栈内存、堆内存、内核空间、内存映射段、BSS段、数据段和代码段这7个部分。关于这7个部分的介绍具体可参见本发明实施例的专业术语介绍部分。如图2所示,RAM的内存容量为4G,内核空间的内存容量为1G,其余部分总共为3G。当然,在实际应用中,RAM的内存容量也可不为4G,RAM中也可不止包括上述7个部分,也可不完全包括上述7个部分,为便于说明,以图2示意的一种内存布局示意图示例性说明,不对此构成限制说明。
如图3所示,用户终端可在RAM中开辟一块容量为1G的内存区域1来安装以及运行第一软件程序。RAM中除内存区域1之外的存储区域可用来运行ROM中的软件程序。如图3所示,内存区域1也可包括上述7个部分。其中,该内存区域1的内存容量(即1G)可以是用户终端计算得到的安装和运行第一软件程序需要的内存容量,或者是预设的内存容量。
作为一种可选的实施方式,用户终端安装第一软件程序在RAM中之后,在再次接收到用于安装第二软件程序(该第二软件程序为除第一软件程序之外的任意软件程序)的安装指令时,用户终端将该第二软件程序的可执行文件加载至RAM,并保证RAM中的第一软件程序的可执行文件不被删除,也就是说,再开辟一个内存区域来安装以及运行该第二软件程序。若第一软件程序为应用软件,则这样可以在RAM中同时运行多个新安装的应用软件。若第一软件程序为系统软件,则这样可便于用户对RAM中的操作系统进行切换使用。
或者,用户终端可将RAM中第一软件程序的可执行文件删除,再开辟一个内存区域来安装和运行该第二软件程序。这样可以节省RAM的内存容量。
例如,用户终端接收到用于安装第一软件程序Android 6.0的安装指令时,用户终端将第一软件程序Android 6.0的可执行文件加载至RAM。在用户终端又接收到用于安装第二软件程序Android 7.0的安装指令时,用户终端将第二软件程序Android 7.0的可执行文件加载至RAM,并保证第一软件程序Android 6.0的可执行文件不被删除。也就是说RAM中安装了Android 6.0和Android 7.0这两个软件程序。或者,用户终端将第二软件程序Android 7.0的可执行文件加载至RAM,并删除第一软件程序Android 6.0的可执行文件。也就是说RAM中只安装了最后一个软件程序。
作为一种可选的实施方式,当运行安装在RAM的第一软件程序,且接收到软件程序切换指令时,运行安装在只读存储器ROM的第二软件程序。可选的,该第二软件程序可以为安装在ROM中的任意一个软件程序。例如,操作系统Android 7.0安装在RAM中,操作系统Android 6.0安装在ROM中,用户终端在操作系统Android 7.0下,可接收用户输入的用于将操作系统切换为Android 6.0的操作系统切换指令。在用户终端接收到该操作系统切换指令之后,用户终端停止运行操作系统Android 7.0,并运行操作系统Android 6.0。同理,用户终端在操作系统为Android 6.0下,接收到用户输入的用于将操作
系统切换为Android 7.0的操作系统切换指令时,也可停止运行操作系统Android 6.0,并运行操作系统Android 7.0。
可见,通过实施该实施方式,用户终端可在安装在RAM中的软件程序和安装在ROM中的软件程序之间随意切换,增加了软件程序使用的灵活性。
请参见图4,图4为本发明实施例提供的另一种加载软件程序的方法的流程示意图。如图4所示,该加载软件程序的方法可以包括401~404部分。
在401部分中,用户终端通过安装选择项接收安装指令。
其中,该安装选择项包括临时安装选择项和永久安装选择项,该临时安装选择项用于接收安装第一软件程序的临时安装指令。该永久安装选择项用于接收安装第一软件程序的永久安装指令。
在402部分中,用户终端检测是否通过临时安装选择项接收到用于安装第一软件程序的临时安装指令,以及检测是否接收到用于安装第一软件程序的永久安装指令。
当用户终端检测到通过临时安装选择项接收到用于安装第一软件程序的临时安装指令时,执行403部分;当用户终端检测到接收到用于安装第一软件程序的永久安装指令时,执行404部分。
可选的,402部分中的永久安装指令可以是用户终端通过永久安装选择项接收到的;或者该永久安装指令也可以不是通过永久安装选择项接收到的,例如:在用户终端选择第一软件程序之后,用户终端可输出用于提示是否将第一软件程序安装至ROM的提示信息。当用户终端接收到用户针对该提示信息输入的确认指令时,用户终端确认接收到用于安装第一软件程序的永久安装指令;或者通过用户终端的菜单输入永久安装指令。
当用户终端通过永久安装选择项接收到402部分中的永久安装指令时,402部分的检测是否接收到用于安装第一软件程序的永久安装指令的步骤可在401部分之后,在403或404部分之前执行。当用户终端不通过永久安装选择项接收到402部分中的永久安装指令时,402部分中的检测是否接收到用于安装第一软件程序的永久安装指令的步骤可在403部分之后执行,在404部分之前执行。
在403部分中,用户终端将第一软件程序的可执行文件加载至RAM。
其中,用户终端如何将第一软件程序的可执行文件加载至RAM的具体实
施方式与图1的101部分中的将第一软件程序的可执行文件加载至RAM的具体实施方式相同,可参见图1的101部分中对应的描述,在此不赘述。
在404部分中,用户终端将第一软件程序的可执行文件加载至ROM中,并删除安装在ROM的第二软件程序的可执行文件。
可选的,在404部分中,用户终端可通过第一软件程序的升级包或完整的安装包,将第一软件程序的可执行文件加载至ROM中,以将第一软件程序安装在ROM中。
可选的,用户终端通过第一软件程序的完整的安装包,将第一软件程序的可执行文件加载至ROM中的具体实施方式可以为:用户终端将第一软件程序的完整的安装包中的可执行文件加载至ROM中。
可选的,用户终端通过第一软件程序的升级包,将第一软件程序的可执行文件加载至ROM中的具体实施方式可以为:用户终端将第一软件程序的升级包中的可执行文件加载至RAM,并将ROM中第一软件程序的上一版本的软件程序的可执行文件加载至RAM中进行组合,得到第一软件程序的可执行文件;用户终端将得到第一软件程序的可执行文件加载至ROM。
可选的,用户终端将第一软件程序的可执行文件加载至ROM中之后,可删除第一软件程序的安装包,以节省ROM的存储空间。
可选的,在404部分中,当用户终端接收到用于安装第一软件程序的永久安装指令时,若第一软件程序已安装在RAM中,即RAM中存在第一软件程序的可执行文件,则用户终端可直接将RAM中的第一软件程序的可执行文件加载至ROM中,而不通过第一软件程序的安装包来将第一软件程序安装至ROM中。
可见,通过实施图4所描述的方法,用户可灵活的选择是将软件程序安装至RAM,还是将软件程序安装至ROM。
作为一种可选的实施方式,用户终端可在下载完第一软件程序的安装包之后,输出第一软件程序的安装选择项。或者,用户终端可在下载第一软件程序的安装包之前,就输出第一软件程序的安装选择项。在用户选择一个安装选择项之后,用户终端就下载第一软件程序的安装包,并在下载第一软件程序的安装包之后,根据用户通过安装选择项输入的安装指令,对第一软件程序进行临时安装或永久安装。
在实际应用中,用户下载完第一软件程序的安装包之后,一般会马上安装第一软件程序。因此,在用户终端下载完第一软件程序的安装包之后就输出第一软件程序的安装选择项,可满足用户的软件程序安装需求。
作为一种可选的实施方式,用户终端可在开机过程中检测到第一软件程序的安装包之后,就输出第一软件程序的安装选择项。
通过实施该实施方式,有利于更快地安装和运行第一软件程序。有利于更快地安装和运行第一软件程的原理将在下文中结合具体的应用场景2进行说明。
下面通过具体的应用场景1和2,对图4所提供的加载软件程序的方法进一步进行说明。在应用场景1中,用户终端在下载完第一软件程序的安装包之后,输出第一软件程序的安装选择项。在应用场景2中,用户终端在开机过程中检测到第一软件程序的安装包之后,输出第一软件程序的安装选择项。在实际应用中,应用场景1和2可适用于普通用户安装软件程序。
应用场景1:用户终端的ROM中安装有操作系统Android 6.0,第一软件程序为操作系统Android 7.0。如图5所示,用户终端从服务器下载完操作系统Android 7.0的安装包之后,输出界面1,该界面1中包括第一软件程序的安装选择项。该安装选择项包括临时安装选择项和永久安装选择项。当然,在实际应用中,该临时安装选择项可以被称为其他名称(如试安装选择项或一次性安装选择项等)。同理,永久安装选择项也可为其他名称,本发明实施例对此不做限制。如图5所示,当通过临时安装选择项接收到用于安装第一软件程序的临时安装指令,即:检测到用户选择临时安装选择项时,用户终端将操作系统Android 7.0的可执行文件加载至RAM中(可通过安装包将操作系统Android 7.0的可执行文件加载至RAM中)。如图6所示,当通过永久安装选择项接收到用于安装第一软件程序的永久安装指令,即:检测到用户选择永久安装选择项时,用户终端将操作系统Android 7.0的可执行文件加载至ROM中(可通过安装包将操作系统Android 7.0的可执行文件加载至ROM中),并删除ROM中的操作系统Android 6.0的可执行文件。
应用场景2:在用户终端经过图5所示的流程,将操作系统Android 7.0安装在RAM中之后,若用户对操作系统Android 7.0使用满意,则用户可在运行ROM中的操作系统Android 6.0,或运行RAM中的操作系统Android 7.0时,
通过用户终端的显示界面输入用于安装操作系统Android 7.0的永久安装指令。用户终端接收到该永久安装指令时,将操作系统Android 7.0的可执行文件加载至ROM中(可通过安装包将操作系统Android 7.0的可执行文件加载至ROM中,或直接将RAM中的操作系统Android 7.0的可执行文件加载至ROM中),并删除ROM中的操作系统Android 6.0的可执行文件。需要说明的是,当用户终端运行操作系统Android 7.0时,用户终端重启后即可运行操作系统Android 6.0;或当用户终端运行操作系统Android 7.0时,通过操作系统Android7.0的运行界面可切换到操作系统Android 6.0。
或者,如图7所示,在用户终端开机或重启的过程中,由于检测到操作系统Android 7.0的安装包(该操作系统Android 7.0的安装包可以是在用户终端的ROM中,或在用户终端的外部存储卡中,或可以在除用户终端之外的其他设备中,本发明实施例不做限制),用户终端在开机界面输出操作系统Android 7.0的安装选择项。在用户终端通过永久安装选择项接收到用于安装第一软件程序的永久安装指令时,即:用户终端检测到用户选择永久安装选择项时,用户终端将操作系统Android 7.0的可执行文件加载至ROM中(可通过安装包将操作系统Android 7.0的可执行文件加载至ROM中),删除ROM中的操作系统Android 6.0的可执行文件,并运行操作系统Android 7.0,完成开机。
可见,通过在开机过程中安装并启动操作系统Android 7.0,用户终端不用在重启(默认启动安装在ROM中的操作系统Android 6.0)之后,再在操作系统Android 6.0下,将操作系统Android 7.0安装在ROM中。省略了启动操作系统Android 6.0的步骤,因此,能够更快地安装和运行操作系统Android 7.0。
请参见图8,图8为本发明实施例提供的另一种加载软件程序的方法的流程示意图。如图8所示,该加载软件程序的方法可以包括801和802部分。
在801部分中,当用户终端检测到至少一个软件程序的安装包时,输出软件程序选择项。
其中,该软件程序选择项与检测到的安装包一一对应。该软件程序选择项用于输入安装软件程序的安装指令。可选的,该软件程序选择项具体可以为软件程序的版本号,或软件程序的名称。该安装包可以为软件程序的升级包或完整的安装包。
在802部分中,当用户终端通过与第一软件程序对应的软件程序选择项接
收到用于安装第一软件程序的安装指令时,将第一软件程序的可执行文件加载至RAM。
其中,用户终端如何将第一软件程序的可执行文件加载至RAM的具体实施方式与图1的101部分中的将第一软件程序的可执行文件加载至RAM的具体实施方式相同,可参见图1的101部分中对应的描述,在此不赘述。
作为一种可选的实施方式,801部分中所述的至少一个软件程序的安装包可保存于用户终端的ROM、RAM、外部存储卡(通过挂载的方式让用户终端使用)或其他外部设备(如服务器、云端等)中。
作为一种可选的实施方式,用户终端具体可以在开机的过程中执行801部分和802部分。或者,用户终端也可在开机之后,执行801部分和802部分。
图8所描述的软件安装方法,可用于测试人员对软件程序进行测试。通过实施图8所描述的软件安装方法,有利于测试人员快速地、便捷地切换需要测试的软件程序。能够快速地、便捷地切换需要测试的软件程序的原理在下文中结合具体应用场景3进行说明。
应用场景3:用户终端中包括操作系统Android 6.0和操作系统Android 7.0的安装包。用户终端在开机的过程中,检测到这两个操作系统的安装包之后,会输出如图9所示的开机界面,该开机界面中包括这两个操作系统的软件程序选择项。当用户终端接收到通过与操作系统Android 7.0对应的软件程序选择项输入的用于安装操作系统Android 7.0的安装指令时,即:用户终端检测到测试人员选择操作系统Android 7.0的软件程序选择项时,将操作系统Android 7.0的可执行文件加载至RAM中,然后运行操作系统Android 7.0的可执行文件,完成开机。在测试人员测试完操作系统Android 7.0之后,测试人员可重启用户终端。用户终端可通过上述流程再次输出上述开机界面。当用户终端接收到通过与操作系统Android 6.0对应的软件程序选择项输入的用于安装操作系统Android 6.0的安装指令时,即:用户终端检测到用户选择操作系统Android 6.0时,用户终端将操作系统Android 6.0的可执行文件加载至RAM中,然后运行操作系统Android 6.0的可执行文件,完成开机。
在现有技术中,例如,若测试人员需要测试操作系统Android 6.0和操作系统Android 7.0。测试人员需要先下载操作系统Android 6.0的安装包,再安装操作系统Android 6.0至ROM中。测试完操作系统Android 6.0之后,又需
要下载操作系统Android 7.0的安装包,再替换ROM中的操作系统Android 6.0。而且,若用户想要再次测试操作系统Android 6.0,又需下载一次操作系统Android 6.0的安装包重新安装。可见,测试人员不能便捷地、快速地在操作系统Android 6.0和操作系统Android 7.0之间进行切换测试。然而,通过本发明实施例提供的应用场景3所描述的操作系统安装方法,测试人员只需事先下载好操作系统Android 6.0和操作系统Android 7.0的安装包保存在ROM、外部存储卡或其他外部设备中。用户终端在开机过程中,就可直接安装操作系统在RAM,不用替换之前安装的操作系统(一般替换之前安装的操作系统大概需要5分钟时间,而直接安装操作系统至RAM则只需要大约几十秒的时间),因此,可更快速地安装软件程序。且测试人员无需多次下载要安装的操作系统的安装包。而且安装操作系统在RAM中,操作系统的启动速度也非常快。且在开机过程中就安装操作系统至RAM,安装操作系统之后,就可直接启动RAM中的操作系统,不用在开机时先启动默认的操作系统,再在默认的操作系统下将需要测试的操作系统安装至RAM,再启动RAM中的操作系。因此,节省了启动默认的安装在ROM中的操作系统的步骤,可更快的安装操作系统。因此,通过实施应用场景3所描述的操作系统安装方法,可便捷地、快速地在操作系统Android 6.0和操作系统Android 7.0之间进行切换测试。
当然在实际应用中,用户终端也可在开机完成之后,再执行801部分。只是如上述所说,操作系统的安装和启动速度不如在开机过程中安装效果好。
同理,测试人员对软件应用程序进行安装的原理与上述应用场景3中安装操作系统的原理相同,具体可参照应用场景3的描述,在此不赘述。
本发明实施例还提供了一种显示界面,该显示界面可应用于上述方法实施例中所涉及的用户终端,该显示界面可包括上述方法实施例中图5、图6、图7和图9中任意一个用户终端的界面,其中,对显示界面的具体描述以及功能可参见图5、图6、图7和图9的描述,在此不赘述。
本发明实施例可以根据上述方法示例对用户终端进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用
软件功能单元的形式实现。需要说明的是,本发明实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
请参见图10,图10示出了本发明实施例提供的一种用户终端的功能框图。如图10所示,用户终端包括接收模块1001和安装模块1002。其中:
安装模块1002,用于当接收模块1001接收到用于安装第一软件程序的安装指令时,将第一软件程序的可执行文件加载至RAM。
其中,安装模块1002用于执行本发明方法实施例图1中步骤101的方法,安装模块1002的实施方式可以参考本发明方法实施例图1中步骤101对应的描述,在此不再赘述。
作为一种可选的实施方式,安装模块1002将第一软件程序的可执行文件加载至RAM的方式具体可以为:
当随机存取存储器RAM的剩余内存容量满足预设条件时,将第一软件程序的可执行文件加载至RAM;该预设条件为剩余内存容量大于目标内存容量,该目标内存容量为安装第一软件程序所需的内存容量与运行第一软件程序所需的最小内存容量之和,或预设条件为剩余内存容量大于预设容量。
请一并参见图11,图11示出了本发明实施例提供的另一种用户终端的功能框图。与图11所示的用户终端是图10所示的用户终端的优化。图11所示的用户终端除包括图10所示的模块外,还包括切换模块1003,其中:
切换模块1003,用于当运行安装在RAM的第一软件程序,且接收模块1001接收到软件程序切换指令时,运行安装在只读存储器ROM的第二软件程序。
其中,切换模块1003的具体实施方式可参见上述方法实施例对应的描述,为简洁描述,在这里不再赘述。
作为一种可选的实施方式,接收模块1001,用于通过安装选择项接收安装指令;安装选择项包括临时安装选择项和永久安装选择项;该临时安装选择项用于接收安装第一软件程序的临时安装指令;该永久安装选择项用于接收安装第一软件程序的永久安装指令。相应地,安装模块1002具体用于:当接收模块1001通过临时安装选择项接收到用于安装第一软件程序的临时安装指令时,将第一软件程序的可执行文件加载至RAM。
安装模块1002,还用于当接收模块1001接收到用于安装第一软件程序的永久安装指令时,将第一软件程序的可执行文件加载至只读存储器ROM中,并删除安装在ROM的第二软件程序的可执行文件。
其中,接收模块1001用于执行本发明方法实施例图4中步骤401的方法,安装模块1002用于执行本发明方法实施例图4中步骤403和404的方法,接收模块1001和安装模块1002的实施方式可以参考本发明方法实施例图4中步骤401、403和404对应的描述,在此不再赘述。
请一并参见图12,图12示出了本发明实施例提供的另一种用户终端的功能框图。与图12所示的用户终端是图10所示的用户终端的优化。图12所示的用户终端除包括图10所示的模块外,还包括输出模块1004和检测模块1005,其中:
输出模块1004,用于当检测模块1005检测到至少一个软件程序的安装包时,输出软件程序选择项,该软件程序选择项与检测到的安装包一一对应。该软件程序选择项用于输入安装软件程序的安装指令。
安装模块1002,具体用于当接收模块1001接收到通过与第一软件程序对应的软件程序选择项输入的用于安装第一软件程序的安装指令时,将第一软件程序的可执行文件加载至随机存取存储器RAM。
其中,输出模块1004用于执行本发明方法实施例图8中801部分,安装模块1002用于执行本发明方法实施例图8中802部分,输出模块1004和安装模块1002的实施方式可以参考本发明方法实施例图8中步骤801和802部分对应的描述,在此不再赘述。
基于同一发明构思,本发明实施例中提供的软件程序安装的用户终端解决问题的原理与本发明方法实施例中的软件程序安装的方法相似,因此该用户终端的实施可以参见方法的实施,为简洁描述,在这里不再赘述。
本发明实施例还提供了一种用户终端,以该用户终端为手机为例,图13示出的是与本发明实施例相关的手机1300的部分结构的框图。参考图13,手机1300包括RF(Radio Frequency,射频)电路1301、存储器1302、其他输入设备1303、显示屏1304、传感器1305、音频电路1306、I/O子系统1307、处理器1308、以及电源1309等部件。本领域技术人员可以理解,图13中示
出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。
下面结合图13对手机1300的各个构成部件进行具体的介绍:
RF电路1301可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1308处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路1301还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。
存储器1302可用于存储计算机可执行程序代码,程序代码包括指令;处理器1308通过运行存储在存储器1302的软件程序以及模块,从而执行手机1300的各种功能应用以及数据处理。其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图象播放功能等)等;存储数据区可存储根据手机1300的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1302可以包括ROM和RAM,还可包括高速随机存取存储器、非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其他输入设备1303可用于接收输入的数字或字符信息,以及产生与手机1300的用户设置以及功能控制有关的键信号输入。具体地,其他输入设备1303可包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆、光鼠(光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸)等中的一种或多种。其他输入设备1303与I/O子系统1307的其他输入设备控制器171相连接,在其他设备输入控制
器171的控制下与处理器1308进行信号交互。
显示屏1304可用于显示由用户输入的信息或提供给用户的信息以及手机1300的各种菜单,还可以接受用户输入。例如,显示屏1304可显示上述方法实施例中需要显示的信息,如未读专属消息、包括消息选择项的选择列表、包括多个时间段的选择项的选择列表、向上跳转箭头或向下跳转箭头等。具体的显示屏1304可包括显示面板141,以及触控面板142。其中显示面板141可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板141。触控面板142,也称为触摸屏、触敏屏等,可收集用户在其上或附近的接触或者非接触操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板142上或在触控面板142附近的操作,也可以包括体感操作;该操作包括单点控制操作、多点控制操作等操作类型。),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板142可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位、姿势,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成处理器能够处理的信息,再送给处理器1308,并能接收处理器1308发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板142,也可以采用未来发展的任何技术实现触控面板142。进一步的,触控面板142可覆盖显示面板141,用户可以根据显示面板141显示的内容(该显示内容包括但不限于,软键盘、虚拟鼠标、虚拟按键、图标等等),在显示面板141上覆盖的当触控面板142上或者附近进行操作,触控面板142检测到在其上或附近的触摸操作后,通过I/O子系统1307传送给处理器1308以确定触摸事件的类型以确定用户输入,随后处理器1308根据触摸事件的类型在显示面板根据用户输入通过I/O子系统1307在显示面板141上提供相应的视觉输出。虽然在图13中,触控面板142与显示面板141是作为两个独立的部件来实现手机1300的输入和输入功能,但是在某些实施例中,可以将触控面板142与显示面板141集成而实现手机1300的输入和输出功能。
手机1300还可包括至少一种传感器1305,比如指纹传感器、光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,
接近传感器可在手机1300移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机1300还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1306、扬声器161,麦克风162可提供用户与手机1300之间的音频接口。音频电路1306可将接收到的音频数据转换后的信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,麦克风162将收集的声音信号转换为信号,由音频电路1306接收后转换为音频数据,再将音频数据输出至RF电路1301以发送给比如另一手机,或者将音频数据输出至存储器1302以便进一步处理。
I/O子系统1307用来控制输入输出的外部设备,可以包括其他输入设备控制器171、传感器控制器172、显示控制器173。可选的,一个或多个其他输入设备控制器171从其他输入设备1303接收信号和/或者向其他输入设备1303发送信号,其他输入设备1303可以包括物理按钮(按压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击滚轮、光鼠(光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸)。值得说明的是,其他输入设备控制器171可以与任一个或者多个上述设备连接。所述I/O子系统1307中的显示控制器173从显示屏1304接收信号和/或者向显示屏1304发送信号。显示屏1304检测到用户输入后,显示控制器173将检测到的用户输入转换为与显示在显示屏1304上的用户界面对象的交互,即实现人机交互。传感器控制器172可以从一个或者多个传感器1305接收信号和/或者向一个或者多个传感器1305发送信号。
处理器1308是手机1300的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1302内的软件程序和/或模块,以及调用存储在存储器1302内的数据,执行手机1300的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1308可包括一个或多个处理单元;优选的,处理器1308可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线
通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1308中。当处理器1308执行存储器1302所存储的指令时,指令使手机1300执行本发明实施例的加载软件程序的方法,可以参考图1中的101部分、图4中401~404部分、图8中的801和802部分或上述方法实施例中用户终端的其他执行过程对应的描述,在此不再赘述。基于同一发明构思,本发明实施例中提供的软件程序安装的用户终端解决问题的原理与本发明方法实施例中的软件程序安装的方法相似,因此该用户终端的实施可以参见上述方法的实施,为简洁描述,在这里不再赘述。
手机1300还包括给各个部件供电的电源1309(比如电池),优选的,电源可以通过电源管理系统与处理器1308逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗等功能。
尽管未示出,手机1300还可以包括摄像头、蓝牙模块等,在此不再赘述。
另外,本发明实施例还提供了一种存储一个或者多个程序的非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有至少一个程序,每个所述程序包括指令,该指令当被本发明实施例提供的用户终端执行时,使用户终端执行本发明实施例图1中的101部分、图4中的401~403部分、图8中的801和802部分或上述方法实施例中用户终端的其他执行过程,可以参考方法实施例中对图1中的101部分、图4中的401~404部分、图8中的801和802部分或上述方法实施例中用户终端的其他执行过程对应的描述,在此不再赘述。
还需要说明的是,在本发明实施例中,诸如第一、第二、第三、第四以及管脚序号等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者任何其他涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅仅包括那些要素,而且还包括没有明确列出的其他要素,或者还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括…”、
“包含…”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种非易失性计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明的目的、技术方案有益效果进行了进一步详细说明,所应理解的是,不同的实施例可以进行组合,以上所述进而本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何组合、修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (14)
- 一种加载软件程序的方法,应用于用户终端,其特征在于,所述方法包括:当接收到用于安装第一软件程序的安装指令时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM。
- 根据权利要求1所述的方法,其特征在于,所述方法还包括:通过安装选择项接收安装指令;所述安装选择项包括临时安装选择项和永久安装选择项;所述临时安装选择项用于接收安装第一软件程序的临时安装指令;所述永久安装选择项用于接收安装所述第一软件程序的永久安装指令;所述当接收到用于安装第一软件程序的安装指令时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM,包括:当通过临时安装选择项接收到用于安装第一软件程序的临时安装指令时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM。
- 根据权利要求1或2所述的方法,其特征在于,所述方法还包括:当接收到用于安装所述第一软件程序的永久安装指令时,将所述第一软件程序的可执行文件加载至只读存储器ROM中,并删除安装在所述ROM的第二软件程序的可执行文件。
- 根据权利要求1~3任意一项所述的方法,其特征在于,所述将所述第一软件程序的可执行文件加载至随机存取存储器RAM之后,所述方法还包括:当运行安装在所述RAM的第一软件程序,且接收到软件程序切换指令时,运行安装在只读存储器ROM的第二软件程序。
- 根据权利要求1所述的方法,其特征在于,所述方法还包括:当检测到至少一个软件程序的安装包时,输出软件程序选择项,所述软件程序选择项与检测到的安装包一一对应,所述软件程序选择项用于输入安装所述软件程序的安装指令;所述当接收到用于安装第一软件程序的安装指令时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM,包括:当接收到通过与所述第一软件程序对应的软件程序选择项输入的用于安装所述第一软件程序的安装指令时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM。
- 根据权利要求1~5任意一项所述的方法,其特征在于,所述将所述第一软件程序的可执行文件加载至随机存取存储器RAM,包括:当随机存取存储器RAM的剩余内存容量满足预设条件时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM;所述预设条件为所述剩余内存容量大于目标内存容量,所述目标内存容量为安装所述第一软件程序所需的内存容量与运行所述第一软件程序所需的最小内存容量之和,或所述预设条件为所述剩余内存容量大于预设的内存容量。
- 一种用户终端,其特征在于,所述用户终端包括接收模块和安装模块,其中:所述安装模块,用于当所述接收模块接收到用于安装第一软件程序的安装指令时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM。
- 根据权利要求7所述的用户终端,其特征在于,所述接收模块,用于通过安装选择项接收安装指令;所述安装选择项包括临时安装选择项和永久安装选择项;所述临时安装选择项用于接收安装第一软件程序的临时安装指令;所述永久安装选择项用于接收安装所述第一软件程序的永久安装指令;所述安装模块具体用于:当所述接收模块通过临时安装选择项接收到用于安装第一软件程序的临时安装指令时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM。
- 根据权利要求7或8所述的用户终端,其特征在于,所述安装模块,还用于当所述接收模块接收到用于安装所述第一软件程序的永久安装指令时,将所述第一软件程序的可执行文件加载至只读存储器ROM中,并删除安装在所述ROM的第二软件程序的可执行文件。
- 根据权利要求7~9任意一项所述的用户终端,其特征在于,所述用户终端还包括:切换模块,用于当运行安装在所述RAM的第一软件程序,且所述接收模块接收到软件程序切换指令时,运行安装在只读存储器ROM的第二软件程序。
- 根据权利要求7所述的用户终端,其特征在于,所述用户终端还包括输出模块和检测模块,其中:所述输出模块,用于当所述检测模块检测到至少一个软件程序的安装包时,输出软件程序选择项,所述软件程序选择项与检测到的安装包一一对应,所述软件程序选择项用于输入安装所述软件程序的安装指令;所述安装模块具体用于:当所述接收模块接收到通过与所述第一软件程序对应的软件程序选择项输入的用于安装所述第一软件程序的安装指令时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM。
- 根据权利要求7~11任意一项所述的用户终端,其特征在于,所述安装模块将所述第一软件程序的可执行文件加载至随机存取存储器RAM的方式具体为:当随机存取存储器RAM的剩余内存容量满足预设条件时,将所述第一软件程序的可执行文件加载至随机存取存储器RAM;所述预设条件为所述剩余内存容量大于目标内存容量,所述目标内存容量为安装所述第一软件程序所需的内存容量与运行所述第一软件程序所需的最小内存容量之和,或所述预设条件为所述剩余内存容量大于预设的内存容量。
- 一种用户终端,其特征在于,所述用户终端包括一个或多个处理器、存储器、总线系统以及一个或多个程序,所述存储器包括非易失性计算机可读 存储介质和随机存取存储器RAM,所述处理器和所述存储器通过所述总线系统相连;其中,所述一个或多个程序被存储在所述非易失性计算机可读存储介质中,所述一个或多个程序包括指令,当所述处理器执行所述指令时,所述指令使所述用户终端执行如权利要求1至6任一项所述的方法。
- 一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当被用户终端执行时使所述用户终端执行如权利要求1至6任一项所述方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2016/100819 WO2018058436A1 (zh) | 2016-09-29 | 2016-09-29 | 一种加载软件程序的方法、用户终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108431767A true CN108431767A (zh) | 2018-08-21 |
Family
ID=61763094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680077350.5A Pending CN108431767A (zh) | 2016-09-29 | 2016-09-29 | 一种加载软件程序的方法、用户终端及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108431767A (zh) |
WO (1) | WO2018058436A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109656571A (zh) * | 2018-09-27 | 2019-04-19 | 深圳壹账通智能科技有限公司 | 加载方法、装置、终端及计算机可读存储介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110187929B (zh) * | 2019-05-13 | 2023-10-17 | 努比亚技术有限公司 | 图标加载方法、终端和计算机可读存储介质 |
CN112464077A (zh) * | 2019-09-06 | 2021-03-09 | 百度在线网络技术(北京)有限公司 | 终端控制方法、装置及终端 |
CN110780940A (zh) * | 2019-09-24 | 2020-02-11 | 维沃移动通信有限公司 | 应用程序加载方法、电子设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030093420A1 (en) * | 2001-10-02 | 2003-05-15 | Ramme Kay P. | Method and system for retrieving sharable information using a hierarchically dependent directory structure |
CN102520987A (zh) * | 2011-11-30 | 2012-06-27 | Tcl集团股份有限公司 | 应用程序在线体验与安装方法、装置、服务器及管理系统 |
CN103019760A (zh) * | 2012-04-28 | 2013-04-03 | 珠海市君天电子科技有限公司 | 安装软件的结构及安装方法 |
CN105824700A (zh) * | 2015-07-29 | 2016-08-03 | 维沃移动通信有限公司 | 移动终端及其应用程序管理方法 |
-
2016
- 2016-09-29 CN CN201680077350.5A patent/CN108431767A/zh active Pending
- 2016-09-29 WO PCT/CN2016/100819 patent/WO2018058436A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030093420A1 (en) * | 2001-10-02 | 2003-05-15 | Ramme Kay P. | Method and system for retrieving sharable information using a hierarchically dependent directory structure |
CN102520987A (zh) * | 2011-11-30 | 2012-06-27 | Tcl集团股份有限公司 | 应用程序在线体验与安装方法、装置、服务器及管理系统 |
CN103019760A (zh) * | 2012-04-28 | 2013-04-03 | 珠海市君天电子科技有限公司 | 安装软件的结构及安装方法 |
CN105824700A (zh) * | 2015-07-29 | 2016-08-03 | 维沃移动通信有限公司 | 移动终端及其应用程序管理方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109656571A (zh) * | 2018-09-27 | 2019-04-19 | 深圳壹账通智能科技有限公司 | 加载方法、装置、终端及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2018058436A1 (zh) | 2018-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10466830B2 (en) | Electronic device and method of controlling electronic device | |
US10186244B2 (en) | Sound effect processing method and device, plug-in unit manager and sound effect plug-in unit | |
CN105929925B (zh) | 电子装置以及用于在电子装置中管理功率的方法 | |
CN107734616B (zh) | 应用程序关闭方法、装置、存储介质和电子设备 | |
CN107239295B (zh) | 一种软件升级的方法及软件升级装置 | |
CN106502703B (zh) | 一种函数调用方法和装置 | |
CN106371900B (zh) | 一种实现异步调用的数据处理方法及装置 | |
CN106066686B (zh) | 一种信息处理方法及终端设备 | |
US10474507B2 (en) | Terminal application process management method and apparatus | |
EP3637251B1 (en) | Method, device and terminal for executing hotpatch | |
CN106775828B (zh) | 应用程序安装方法及装置、计算机设备 | |
CN107908407B (zh) | 编译方法、装置及终端设备 | |
CN103473163A (zh) | 应用程序检测方法及装置 | |
CN106713608B (zh) | 应用的功能状态修改方法、装置及终端 | |
CN109240902B (zh) | 一种获取电子设备的固件代码的方法和装置 | |
CN108431767A (zh) | 一种加载软件程序的方法、用户终端及存储介质 | |
EP2869604B1 (en) | Method, apparatus and device for processing a mobile terminal resource | |
EP3657326A1 (en) | Broadcast event processing method and device | |
CN106095423B (zh) | 提供浏览服务的方法、终端及服务器 | |
CN106919458B (zh) | Hook目标内核函数的方法及装置 | |
EP3129883B1 (en) | Method and apparatus for repairing dynamic link library file | |
CN105278942B (zh) | 组件管理方法及装置 | |
US11150913B2 (en) | Method, device, and terminal for accelerating startup of application | |
CN107122204B (zh) | 应用的卸载状态检测方法及装置 | |
CN109145598B (zh) | 脚本文件的病毒检测方法、装置、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180821 |
|
RJ01 | Rejection of invention patent application after publication |