CN112988244A - 双操作系统智能终端中启停后台操作系统的方法和设备 - Google Patents
双操作系统智能终端中启停后台操作系统的方法和设备 Download PDFInfo
- Publication number
- CN112988244A CN112988244A CN201911301845.3A CN201911301845A CN112988244A CN 112988244 A CN112988244 A CN 112988244A CN 201911301845 A CN201911301845 A CN 201911301845A CN 112988244 A CN112988244 A CN 112988244A
- Authority
- CN
- China
- Prior art keywords
- operating system
- background operating
- background
- init
- starting
- 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
Images
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/4401—Bootstrapping
- G06F9/442—Shutdown
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5022—Mechanisms to release resources
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种双操作系统智能终端中智能启停后台操作系统的方法,该方法包括:当需要关闭后台操作系统时,结束所述后台操作系统的初始化(init)进程,使所述后台操作系统退出,使所述双操作系统智能终端进入单容器模式,所述后台操作系统释放出所占用的内存;当需要启动所述后台操作系统时,启动所述后台操作系统的init进程。应用本申请公开的技术方案,能够提升双操作系统智能终端的性能。
Description
技术领域
本申请涉及智能终端技术领域,特别涉及双操作系统智能终端中智能启停后台操作系统的方法和设备。
背景技术
基于LXC技术的双操作系统实现了一个手机同时运行两个安卓(Android)系统,做到了操作系统隔离、进程隔离、用户数据隔离,保证了用户的安全性。两个操作系统同时在线,两个操作系统自由切换,可以同时满足用户工作和生活场景的不同需求,解决了用户携带多个手机的烦恼。正是凭借这些优点,双操作系统智能终端设备备受行业客户的喜爱,市场占有率大幅度上升。
双操作系统智能终端在开机时使用LXC工具启动两个容器(Container),然后分别在这两个Container中运行各自的Android操作系统。对于单个操作系统而言,内存占用分为两部分:Android内存+kernel内存。以EMUI9.0为例,Android内存约1.4G,kernel内存为0.7G,而如果是双操作系统,整个手机的内存占用会增加1.4G。对于一个内存容量为6G的手机来说,启动双操作系统之后,可用内存就只剩2G左右,很容易造成内存紧张,在运行一些大内存应用时出现内存不足的情况,偶尔还会出现卡顿现象。
除上述双操作系统之外,现有技术中也存在一些其他基于多用户技术的双系统。但是,这些其他的双系统实质上还是一个Android系统,这种系统下,系统的框架层共用,仅应用层隔离,这种方案在内存的占用上会大幅度减少,但由于两个操作系统、进程、数据未隔离,虽然性能有提升,但是安全性大幅度下降。可见,类似的技术不应视为真正意义的双操作系统。
如前所述,由于双操作系统手机相比于单操作系统手机在相同的硬件配置上,多运行了一个操作系统,因此,会导致内存紧缺。如果长期使用,可能会出现因为内存短缺引起的卡顿,尤其是在配置较低的双操作系统手机上,偶尔会出现系统卡顿现象。
有鉴于此,在不影响双操作系统隔离性、安全性的基础上,如何提高系统可用内存,提升系统流畅性,是本申请要解决的技术问题。
发明内容
本申请提供了一种双操作系统智能终端中智能启停后台操作系统的方法和设备,以提升双操作系统智能终端的性能。
本申请公开了一种双操作系统智能终端中智能启停后台操作系统的方法,包括:
当需要关闭后台操作系统时,结束所述后台操作系统的初始化init进程,使所述后台操作系统退出,使所述双操作系统智能终端进入单容器模式,所述后台操作系统释放出所占用的内存;
当需要启动所述后台操作系统时,启动所述后台操作系统的init进程。
较佳的,该方法还包括:
在root域中增加具有超级管理员root权限的进程;
其中,所述进程提供两个接口,一个接口用于关闭后台操作系统的init进程,另一个接口用于启动后台操作系统的init进程。
较佳的,结束所述后台操作系统的init进程具体包括:
检测到用户关闭后台操作系统的命令后,调用所述用于关闭后台操作系统的init进程的接口,执行kill-9PID命令;其中,PID为所述后台操作系统的init进程的进程标识。
较佳的,启动所述后台操作系统的init进程具体包括:
调用所述用于启动后台操作系统的init进程的接口,执行启动初始化进程startinit命令。
本申请还公开了一种双操作系统智能终端,包括:处理器,所述处理器具体用于:
当需要关闭后台操作系统时,结束所述后台操作系统的初始化init进程,使所述后台操作系统退出,使所述双操作系统智能终端进入单容器模式,所述后台操作系统释放出所占用的内存;
当需要启动所述后台操作系统时,启动所述后台操作系统的init进程。
较佳的,所述双操作系统智能终端的root域中设置有具有超级管理员root权限的进程;
其中,所述进程提供两个接口,一个接口用于关闭后台操作系统的init进程,另一个接口用于启动后台操作系统的init进程。
较佳的,所述处理器具体用于:
在检测到用户关闭后台操作系统的命令后,调用所述用于关闭后台操作系统的init进程的接口,执行kill-9PID命令,以结束所述后台操作系统的init进程;其中,PID为所述后台操作系统的init进程的进程标识。
较佳的,所述处理器具体用于:
调用所述用于启动后台操作系统的init进程的接口,执行启动初始化进程startinit命令,以启动所述后台操作系统的init进程。
由上述技术方案可见,本申请提供了一种双操作系统智能终端中智能启停后台操作系统的方法,该方法在需要关闭后台操作系统时,结束后台操作系统的init进程,使所述后台操作系统退出,从而使所述双操作系统智能终端进入单容器模式,释放出所占用的内存;而当需要启动后台操作系统时,启动所述后台操作系统的init进程,从而,通过动态关闭和启动后台操作系统,实现了在单操作系统和双操作系统之间的快速切换,提升了双操作系统智能终端的性能。
举例而言,在下班、休假时,可以关闭用于工作的操作系统(简称:工作系统),使用于生活的操作系统(简称:生活系统)的使用内存增加1.4G以上。反之,关闭生活系统,使工作系统的内存随之提升。这样既保证了原系统数据安全等级不下降,又提升了智能终端的性能。
附图说明
图1为本申请实施例中双操作系统智能终端停止后台操作系统的前后对照示意图。
具体实施方式
为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请作进一步详细说明。
为解决现有技术所存在的问题,本申请提出一种双操作系统智能终端中智能启停后台操作系统的技术方案,其主要思想在于:通过动态地关闭、打开后台的容器,将双容器临时变为单容器,以此来扩大智能终端的可用内存,进而提升系统的流畅性。
双操作系统共用一个内核,在内核之上同时创建两个linux container,并在各自的container中运行各自系统的初始化进程(init进程),由init进程创建本地进程(native进程)、孵化器(zygote)等,最终孵化出两个同时运行的Android系统。init进程是每个Android系统的父进程,一旦init进程结束,整个操作系统的所有进程会全部退出,这样,就可以将后台操作系统所占用的内存全部释放出来,用以增加前台操作系统的可用内存。
为此,本申请提出一种双操作系统智能终端中智能启停后台操作系统的方法,该方法包括:
当需要关闭后台操作系统时,结束后台操作系统的init进程,使后台操作系统退出,使双操作系统智能终端进入单容器模式,从而,后台操作系统释放出所占用的内存;
当需要启动后台操作系统时,启动后台操作系统的init进程。
为了实现对后台操作系统的启动和停止,本申请在root域中增加具有超级管理员(root)权限的进程,该进程提供两个接口,一个接口用于关闭后台操作系统的init进程,另一个接口用于启动后台操作系统的init进程。
基于上述新增的具有root权限的进程,本发明结束后台操作系统的init进程具体包括:
当检测到用户关闭后台操作系统的命令后,调用所述用于关闭后台操作系统的init进程的接口,执行kill-9PID命令;其中,PID为后台操作系统的init进程的进程标识,从而使后台操作系统退出,使双操作系统智能终端进入单容器模式,从而,后台操作系统释放出所占用的内存。
基于上述新增的具有root权限的进程,本发明启动后台操作系统的init进程具体包括:调用所述用于启动后台操作系统的init进程的接口,执行启动初始化进程startinit命令,从而启动后台操作系统。
对应于上述方法,本申请还提供了一种双操作系统智能终端,该双操作系统智能终端至少包括:处理器,所述处理器具体用于:
当需要关闭后台操作系统时,结束所述后台操作系统的初始化init进程,使所述后台操作系统退出,使所述双操作系统智能终端进入单容器模式,所述后台操作系统释放出所占用的内存;
当需要启动所述后台操作系统时,启动所述后台操作系统的init进程。
较佳的,所述双操作系统智能终端的root域中设置有具有超级管理员root权限的进程;其中,所述进程提供两个接口,一个接口用于关闭后台操作系统的init进程,另一个接口用于启动后台操作系统的init进程。
当需要关闭后台操作系统时,所述处理器具体用于:
在检测到用户关闭后台操作系统的命令后,调用所述用于关闭后台操作系统的init进程的接口,执行kill-9PID命令,以结束所述后台操作系统的init进程;其中,PID为所述后台操作系统的init进程的进程标识。
当需要启动所述后台操作系统时,所述处理器具体用于:
调用所述用于启动后台操作系统的init进程的接口,执行启动初始化进程startinit命令,以启动所述后台操作系统的init进程。
下面通过一个较佳实施例对本申请技术方案进行进一步详细说明。
本实施例在root域中增加一个具有root权限的进程,并提供两个接口,一个接口用于关闭后台操作系统的init进程,另一个接口用于启动后台操作系统的init进程。当需要关闭后台操作系统时,用户在设置中手动关闭后台操作系统,系统检测到用户的这一命令后,调用用于关闭后台操作系统的init进程的接口,执行“kill-9PID”命令,结束后台操作系统的init进程(即:杀掉后台操作系统的init进程),其中,PID为后台操作系统的init进程的进程标识,从而使整个后台操作系统退出,使本智能终端设备进入单容器模式,后台操作系统释放出所占用的内存,这时,前台操作系统的可用内存将增加约1.4G。
当需要启动后台操作系统时,在设置中调用用于启动后台操作系统的init进程的接口,执行启动初始化进程“start init”的命令,启动后台操作系统,大约需要15s左右,整个后台操作系统即可启动完成。后台操作系统恢复后,即可进行两个操作系统的自由切换。
图1为本实施例中双操作系统智能终端停止后台操作系统的前后对照示意图。
图1左侧为智能终端运行双操作系统的示意图,从下往上依次为:硬件层(Hardware)、Linux内核(Linux kernel)、ROOT域、以及两个操作系统的容器Container1和Container2。其中,在Container1和Container2中分别是两个Android操作系统的Native进程、框架(Framework)层和应用(Application)层。
图1右侧为智能终端的后台操作系统停止后的示意图。从图中可以看到,结束后台操作系统的init进程后,整个后台操作系统退出,Container2关闭,智能终端设备进入单容器模式。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (8)
1.一种双操作系统智能终端中智能启停后台操作系统的方法,其特征在于,包括:
当需要关闭后台操作系统时,结束所述后台操作系统的初始化init进程,使所述后台操作系统退出,使所述双操作系统智能终端进入单容器模式,所述后台操作系统释放出所占用的内存;
当需要启动所述后台操作系统时,启动所述后台操作系统的init进程。
2.根据权利要求1所述的方法,其特征在于,该方法还包括:
在root域中增加具有超级管理员root权限的进程;
其中,所述进程提供两个接口,一个接口用于关闭后台操作系统的init进程,另一个接口用于启动后台操作系统的init进程。
3.根据权利要求2所述的方法,其特征在于,结束所述后台操作系统的init进程具体包括:
检测到用户关闭后台操作系统的命令后,调用所述用于关闭后台操作系统的init进程的接口,执行kill-9PID命令;其中,PID为所述后台操作系统的init进程的进程标识。
4.根据权利要求2所述的方法,其特征在于,启动所述后台操作系统的init进程具体包括:
调用所述用于启动后台操作系统的init进程的接口,执行启动初始化进程start init命令。
5.一种双操作系统智能终端,其特征在于,包括:处理器,所述处理器具体用于:
当需要关闭后台操作系统时,结束所述后台操作系统的初始化init进程,使所述后台操作系统退出,使所述双操作系统智能终端进入单容器模式,所述后台操作系统释放出所占用的内存;
当需要启动所述后台操作系统时,启动所述后台操作系统的init进程。
6.根据权利要求5所述的双操作系统智能终端,其特征在于:
所述双操作系统智能终端的root域中设置有具有超级管理员root权限的进程;
其中,所述进程提供两个接口,一个接口用于关闭后台操作系统的init进程,另一个接口用于启动后台操作系统的init进程。
7.根据权利要求6所述的双操作系统智能终端,其特征在于,所述处理器具体用于:
在检测到用户关闭后台操作系统的命令后,调用所述用于关闭后台操作系统的init进程的接口,执行kill-9PID命令,以结束所述后台操作系统的init进程;其中,PID为所述后台操作系统的init进程的进程标识。
8.根据权利要求6所述的双操作系统智能终端,其特征在于,所述处理器具体用于:
调用所述用于启动后台操作系统的init进程的接口,执行启动初始化进程start init命令,以启动所述后台操作系统的init进程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911301845.3A CN112988244A (zh) | 2019-12-17 | 2019-12-17 | 双操作系统智能终端中启停后台操作系统的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911301845.3A CN112988244A (zh) | 2019-12-17 | 2019-12-17 | 双操作系统智能终端中启停后台操作系统的方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112988244A true CN112988244A (zh) | 2021-06-18 |
Family
ID=76342234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911301845.3A Pending CN112988244A (zh) | 2019-12-17 | 2019-12-17 | 双操作系统智能终端中启停后台操作系统的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112988244A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103309737A (zh) * | 2012-03-07 | 2013-09-18 | 联想(北京)有限公司 | 一种切换操作系统的方法及设备 |
CN103927227A (zh) * | 2014-04-16 | 2014-07-16 | 乐视致新电子科技(天津)有限公司 | 多操作系统的切换方法和装置、及智能电视 |
CN104268017A (zh) * | 2014-09-19 | 2015-01-07 | 福建升腾资讯有限公司 | 一种同时运行Android/Linux操作系统的方法 |
CN104331337A (zh) * | 2014-11-25 | 2015-02-04 | 宇龙计算机通信科技(深圳)有限公司 | 系统内存管理方法、系统内存管理装置和终端 |
CN107766145A (zh) * | 2016-08-18 | 2018-03-06 | 成都鼎桥通信技术有限公司 | 双系统下的内存管理方法和装置 |
CN109558174A (zh) * | 2018-11-28 | 2019-04-02 | 江苏艾萨克机器人股份有限公司 | 基于zynq双核处理器的rtos-gpos双操作系统机器人控制器 |
-
2019
- 2019-12-17 CN CN201911301845.3A patent/CN112988244A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103309737A (zh) * | 2012-03-07 | 2013-09-18 | 联想(北京)有限公司 | 一种切换操作系统的方法及设备 |
CN103927227A (zh) * | 2014-04-16 | 2014-07-16 | 乐视致新电子科技(天津)有限公司 | 多操作系统的切换方法和装置、及智能电视 |
CN104268017A (zh) * | 2014-09-19 | 2015-01-07 | 福建升腾资讯有限公司 | 一种同时运行Android/Linux操作系统的方法 |
CN104331337A (zh) * | 2014-11-25 | 2015-02-04 | 宇龙计算机通信科技(深圳)有限公司 | 系统内存管理方法、系统内存管理装置和终端 |
CN107766145A (zh) * | 2016-08-18 | 2018-03-06 | 成都鼎桥通信技术有限公司 | 双系统下的内存管理方法和装置 |
CN109558174A (zh) * | 2018-11-28 | 2019-04-02 | 江苏艾萨克机器人股份有限公司 | 基于zynq双核处理器的rtos-gpos双操作系统机器人控制器 |
Non-Patent Citations (1)
Title |
---|
新时代的IT人: ""Linux中的kill命令及强制终止进程的方法"", 《WWW.CNBLOGS.COM/BLOGYUAN/P/3739658.HTML》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016090702A1 (zh) | 一种双卡双待通话方法、装置及终端 | |
CN104142844B (zh) | 一种清理移动终端进程的方法及装置 | |
CN101788926A (zh) | J2me应用前台切换的资源调配方法及装置 | |
CN104252389A (zh) | 应用程序运行方法、系统及应用程序 | |
CN106055384A (zh) | 多环境操作系统 | |
US20170118797A1 (en) | Dual System-Based Communication Method and Terminal | |
CN113467884B (zh) | 资源配置方法和装置、电子设备及计算机可读存储介质 | |
CN105786519B (zh) | 安卓设备程序管理方法和安卓设备 | |
CN103729210A (zh) | 一种实现一个刷机包支持多种制式智能终端的方法及装置 | |
CN104239131A (zh) | 一种关闭应用程序的方法及装置 | |
CN103257700A (zh) | 一种Android系统的节能方法及装置 | |
CN111488207B (zh) | 应用进程保活方法、装置、网络设备及存储介质 | |
CN105653304B (zh) | 运行模式的切换方法、运行模式的切换装置和终端 | |
CN104267997A (zh) | 一种终端设备中应用软件的启动方法及终端设备 | |
CN106557404B (zh) | 一种应用控制的方法及移动终端 | |
CN103037153A (zh) | 一种基于摄像头的监测方法及具有摄像头的电子设备 | |
CN104102498B (zh) | 一种移动终端及其开机方法 | |
CN105740071B (zh) | 一种安卓系统运行速度管理方法及系统 | |
CN112988244A (zh) | 双操作系统智能终端中启停后台操作系统的方法和设备 | |
CN111726453B (zh) | 系统切换的方法、装置、终端及可读存储介质 | |
CN106331863A (zh) | 一种Android系统电视的关机控制方法及装置、Android系统电视 | |
CN103077052A (zh) | 一种处理移动终端运行卡顿问题的方法及装置 | |
US9961621B2 (en) | Wireless customer premise equipment and access method therefor | |
CN106879056A (zh) | 一种终端的省电方法及装置 | |
CN107203426A (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 |