CN111414256A - 基于麒麟移动操作系统的应用程序进程派生方法、系统及介质 - Google Patents

基于麒麟移动操作系统的应用程序进程派生方法、系统及介质 Download PDF

Info

Publication number
CN111414256A
CN111414256A CN202010229350.0A CN202010229350A CN111414256A CN 111414256 A CN111414256 A CN 111414256A CN 202010229350 A CN202010229350 A CN 202010229350A CN 111414256 A CN111414256 A CN 111414256A
Authority
CN
China
Prior art keywords
application program
derivation
kylin
template
operating system
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.)
Granted
Application number
CN202010229350.0A
Other languages
English (en)
Other versions
CN111414256B (zh
Inventor
余杰
刘晓东
夏若冰
彭龙
谭郁松
吴庆波
张毅
李睿
李文杰
毛涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Kirin Software Co Ltd
Original Assignee
National University of Defense Technology
Kirin Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology, Kirin Software Co Ltd filed Critical National University of Defense Technology
Priority to CN202010229350.0A priority Critical patent/CN111414256B/zh
Publication of CN111414256A publication Critical patent/CN111414256A/zh
Application granted granted Critical
Publication of CN111414256B publication Critical patent/CN111414256B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation 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/5016Allocation 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/524Deadlock detection or avoidance

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)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于麒麟移动操作系统的应用程序进程派生方法、系统及介质,本发明方法包括:启动以守护进程方式运行的进程派生服务进程;进程派生服务进程创建包含应用程序运行所需基本资源的模板进程;监测用户操作,当监测到用户打开新应用程序时使用模板进程打开指定的入口html文件开始运行新应用程序;新应用程序读取预设的配置文件获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置。本发明能够满足多线程派生协作要求,提高进程派生的速度和安全性、以及降低内存资源的使用量。

Description

基于麒麟移动操作系统的应用程序进程派生方法、系统及 介质
技术领域
本发明涉及麒麟移动操作系统的系统优化技术,具体涉及一种基于麒麟移动操作系统的应用程序进程派生方法、系统及介质。
背景技术
麒麟移动操作系统是国防科技大学研制的移动终端操作系统,基于Linux内核以及网络排版引擎设计,支持WEB应用运行。在麒麟移动操作系统上,一个应用是运行在单独的进程内的,而每个应用进程都是系统主进程b2g的子进程,应用的打开的效率依赖进程的派生效率,Linux现有的进程派生方式在进程派生速度、与多线程的协作性、进程安全性这几个方面无法满足麒麟移动操作系统的需求,因此需要改进和发展现有的进程派生技术。
麒麟移动操作系统上运行的是WEB应用,单个的应用运行在独立进程,因此麒麟移动操作系统上应用的打开速度,运行效率,安全性等都与进程相关。现有的进程派生方法存在不足之处:(1)传统的进程派生方式,响应速度较慢。没有缓冲机制来加速进程派生的过程,每次新进程的派生都需要将临时执行,如果父进程需要拷贝大量资源或者代码数据,则这个过程会对程序运行速度造成较大影响,而实际上,大部分创建新进程所需的操作,都是可以提前完成的。(2)传统的进程派生方式与多线程的协作性很差,在多线程执行的情况下调用fork()函数,仅会将发起调用的线程复制到子进程中,不能同时创建出与父进程一样多线程的子进程。这样会导致一系列互斥量锁死或者内存泄漏的问题。而麒麟移动终端操作系统的每个应用进程的运行环境都是多线程的,所以上述问题无法避免的需要解决。(3)传统的进程派生方式,存在内存资源浪费。目前的主流进程派生方法,都是将父进程的所有资源拷贝给新创建的进程,这所有的资源复制给新创建的进种实现方式过于简单,有两个明显缺陷:第一,也许父进程给子进程拷贝的资源双方并不共享,拷贝操作是无用功;第二,父进程和子进程的内存空间中存在大量重复的资源,而在理论上,这些资源都是可复用的,双方只要使用一个物理空间上的资源即可。因此,如何改进和发展现有的进程派生技术,已经成为麒麟移动终端操作系统优化亟待解决的关键技术问题。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种基于麒麟移动操作系统的应用程序进程派生方法、系统及介质,本发明能够满足多线程派生协作要求,提高进程派生的速度和安全性、以及降低内存资源的使用量。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于麒麟移动操作系统的应用程序进程派生方法,实施步骤包括:
1)启动以守护进程方式运行的进程派生服务进程;
2)进程派生服务进程创建包含应用程序运行所需基本资源的模板进程;
3)监测用户操作,当监测到用户打开新应用程序时使用模板进程打开指定的入口html文件开始运行新应用程序;
4)新应用程序读取预设的配置文件获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置;跳转执行步骤2)。
可选地,步骤1)的详细步骤包括:
1.1)通过系统主进程b2g在设备开机后在系统初始化阶段启动以守护进程方式运行的进程派生服务进程;
1.2)进程派生服务进程创建用于和系统主进程b2g进行通讯的通信对象,且在通信对象创建完毕后向系统主进程b2g发送就绪消息;
1.3)系统主进程b2g收到就绪消息后跳转执行步骤2)。
可选地,步骤2)的详细步骤包括:
2.1)系统主进程b2g向进程派生服务进程发送模板进程创建请求;
2.2)进程派生服务进程创建包含应用程序运行所需基本资源的模板进程,且在完成后通知系统主进程b2g;
2.3)系统主进程b2g收到创建模板进程完成的通知后,创建一个用于与模板进程用于通信的通信对象并将该通信对象保存以便后续进行调用。
可选地,步骤2.2)中进程派生服务进程创建包含应用程序运行所需基本资源的模板进程的详细步骤包括:
2.2.1)进程派生服务进程对线程创建函数pthread_create()进行封装,在创建线程时将线程相关信息存储到结构体数组threads_info_structure中;
2.2.2)进程派生服务进程执行创建的线程功能相关函数;
2.2.3)进程派生服务进程保存当前线程现场记为现场#1,以互斥锁的方式暂停线程运行,等待派生新进程的IPC指令,当收到派生新进程的IPC指令的时候跳转执行下一步;
2.2.4)进程派生服务进程复刻出一个子进程,只为新生成的子进程创建虚拟内存空间结构,它们复制与父进程的虚拟内存空间结构,但是不为这段空间结构分配物理内存,它们共享父进程的物理空间,当父子进程中有更改相应段的行为发生时,再为子进程相应的段分配物理空间;新生成的子进程根据结构体数组threads_info_structure中的信息重建线程,接着保存此时线程现场记为现场#2,然后恢复现场#1,执行完现场#1相关的操作后又恢复到现场#2继续工作,使得恢复子进程中的线程在复刻被调用之前的互斥量以及对全局变量的更新操作,保证互斥量不会死锁且全局变量的状态保持一致。
可选地,步骤4)的详细步骤包括:
4.1)新应用程序读取预设的配置文件manifest.webapp;
4.2)根据配置文件manifest.webapp获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置;
可选地,步骤4)中的新应用程序运行在独立的沙箱中,每个进程都分配独立的数据存储空间。
此外,本发明还提供一种基于麒麟移动操作系统的应用程序进程派生系统,包括服务启动程序单元和进程派生服务进程,所述服务启动程序单元用于启动以守护进程方式运行的进程派生服务进程,所述进程派生服务进程包括:
模板进程创建程序单元,用于创建模板进程;
操作监测程序单元,用于监测用户操作,当监测到用户打开新应用程序时使用模板进程打开指定的入口html文件开始运行新应用程序;
子进程安全配置程序单元,用于新应用程序读取预设的配置文件获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置。
此外,本发明还提供一种基于麒麟移动操作系统的应用程序进程派生系统,包括计算机设备,该计算机设备被编程或配置以执行所述基于麒麟移动操作系统的应用程序进程派生方法的步骤,或者该计算机设备的存储器上存储有被编程或配置以执行所述基于麒麟移动操作系统的应用程序进程派生方法的计算机程序。
此外,本发明还提供一种移动终端,该移动终端运行麒麟移动操作系统,该移动终端被编程或配置以执行所述基于麒麟移动操作系统的应用程序进程派生方法的步骤,或者该移动终端的存储器上存储有被编程或配置以执行所述基于麒麟移动操作系统的应用程序进程派生方法的计算机程序。
此外,本发明还提供一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行所述基于麒麟移动操作系统的应用程序进程派生方法的计算机程序。
和现有技术相比,本发明具有下述优点:
1、本发明通过进程派生服务进程创建包含应用程序运行所需基本资源的模板进程生成一个包含应用程序运行所需基本资源的模板进程,在实际应用程序运行时,无需再次创建子进程,直接使用空壳进程即可,加快了应用程序的启动速度。
2、传统的进程派生方法子进程与父进程有同样的权限,本发明新应用程序读取预设的配置文件获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置,使得应用程序进程的权限受到操作系统的控制。
3、本发明进一步在应用程序进程与父进程的内存资源分配时只为新生成的子进程创建虚拟内存空间结构,它们复制与父进程的虚拟内存空间结构,但是不为这段空间结构分配物理内存,它们共享父进程的物理空间,当父子进程中有更改相应段的行为发生时,再为子进程相应的段分配物理空间,从而能够有效降低内存使用量。
附图说明
下面结合附图和实施例对本发明作进一步的详细说明。此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定。另外,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
图1为本发明实施例方法的基本流程示意图。
图2为本发明实施例方法的通信流程示意图。
图3为本发明实施例中进程派生服务进程创建包含应用程序运行所需基本资源的模板进程的流程示意图。
图4为本发明实施例系统的程序架构示意图。
具体实施方式
如图1和图2所示,本实施例基于麒麟移动操作系统的应用程序进程派生方法的实施步骤包括:
1)启动以守护进程方式运行的进程派生服务进程;
2)进程派生服务进程创建包含应用程序运行所需基本资源的模板进程;
3)监测用户操作,当监测到用户打开新应用程序时使用模板进程打开指定的入口html文件开始运行新应用程序;
4)新应用程序读取预设的配置文件获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置;跳转执行步骤2)。
参见图2,步骤1)的详细步骤包括:
1.1)通过系统主进程b2g在设备开机后在系统初始化阶段启动以守护进程方式运行的进程派生服务进程;
1.2)进程派生服务进程创建用于和系统主进程b2g进行通讯的通信对象,且在通信对象创建完毕后向系统主进程b2g发送就绪消息;
1.3)系统主进程b2g收到就绪消息后跳转执行步骤2)。
参见图2,步骤2)的详细步骤包括:
2.1)系统主进程b2g向进程派生服务进程发送模板进程创建请求;
2.2)进程派生服务进程创建包含应用程序运行所需基本资源的模板进程,且在完成后通知系统主进程b2g;
2.3)系统主进程b2g收到创建模板进程完成的通知后,创建一个用于与模板进程用于通信的通信对象并将该通信对象保存以便后续进行调用。当用户打开应用程序时,就可以方便应用程序打开时使用模板进程。
如图3所示,步骤2.2)中进程派生服务进程创建包含应用程序运行所需基本资源的模板进程的详细步骤包括:
2.2.1)进程派生服务进程对线程创建函数pthread_create()进行封装,在创建线程时将线程相关信息存储到结构体数组threads_info_structure中;
2.2.2)进程派生服务进程执行创建的线程功能相关函数;
2.2.3)进程派生服务进程保存当前线程现场记为现场#1,以互斥锁的方式暂停线程运行,等待派生新进程的IPC指令,当收到派生新进程的IPC指令的时候跳转执行下一步;
2.2.4)进程派生服务进程复刻出一个子进程,只为新生成的子进程创建虚拟内存空间结构,它们复制与父进程的虚拟内存空间结构,但是不为这段空间结构分配物理内存,它们共享父进程的物理空间,当父子进程中有更改相应段的行为发生时,再为子进程相应的段分配物理空间;新生成的子进程根据结构体数组threads_info_structure中的信息重建线程,接着保存此时线程现场记为现场#2,然后恢复现场#1,执行完现场#1相关的操作后又恢复到现场#2继续工作,使得恢复子进程中的线程在复刻被调用之前的互斥量以及对全局变量的更新操作,保证互斥量不会死锁且全局变量的状态保持一致。
在完成进程派生服务进程创建包含应用程序运行所需基本资源的模板进程后,当监测到用户打开新应用程序时使用模板进程打开指定的入口html文件开始运行新应用程序;当用户打开一个新应用时,此时应用只需要直接使用模板进程即可,无需再做复刻的操作,模板进程已准备好应用打开所需资源,直接打开应用指定的入口html文件即可运行应用。
参见图2,步骤4)的详细步骤包括:
4.1)新应用程序读取预设的配置文件manifest.webapp;
4.2)根据配置文件manifest.webapp获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置;
本实施例中,步骤4)中的新应用程序运行在独立的沙箱中,每个进程都分配独立的数据存储空间,这样意味着用户安装的两个不同的应用,会有完全不一样的数据和权限,两者数据不能互通。数据存储空间用于存储cookies信息,localStorage信息,indexDB数据等。
此外,本实施例还提供一种基于麒麟移动操作系统的应用程序进程派生系统,包括服务启动程序单元和进程派生服务进程,服务启动程序单元用于启动以守护进程方式运行的进程派生服务进程(本实施例中是采用系统主进程b2g实现的)。
如图4所示,进程派生服务进程包括:
模板进程创建程序单元,用于创建模板进程;
操作监测程序单元,用于监测用户操作,当监测到用户打开新应用程序时使用模板进程打开指定的入口html文件开始运行新应用程序;
子进程安全配置程序单元,用于新应用程序读取预设的配置文件获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置。
本实施例中在Linux现有进程派生方法的基础上,扩展一个进程派生服务进程作为服务层,服务层以守护进程的方式在系统中运行,系统主进程b2g通过进程间通信的方式向服务层发送消息来完成子进程派生的操作,进程派生服务进程与系统主进程b2g以及其新派生的子进程通信,通过消息传递控制派生子进程的一系列操作。在系统主进程b2g运行时,模板进程创建程序单元会接收系统主进程b2g消息创建出一个新进程,开始进程是一个空壳进程,随后将预先拉起应用程序运行所需的基础资源,因此也是创建新进程的模板进程,在应用程序启动时,可以直接使用该模板进程;由于麒麟移动操作系统的应用进程是多线程的运行方式,需要增加线程状态现场保护机制:让需要被重建的线程在父进程里暂停下来,并记录下它们暂停前的状态,稍后在复刻出来的子进程里重建新的线程,让它们从暂停的状态继续往下执行。在新进程派生后,子进程安全配置程序单元按照应用的配置文件manifest.webapp中的用户权限字段,指定新进程的uid以及euid,并且建立WebAPI调用列表并存储在进程空间中,应用只能调用列表中允许的API。此外,进程派生服务进程还包括通信模块,用于通过建立的通信对象处理IPC处理系统主进程b2g发送的子进程派生的相关指令以及模板进程与系统主进程b2g通信。进程派生服务进程和子进程之间使用IPC的方式进行消息通信,服务中的每个模块对应主进程或子进程端的一个控制接口,上层应用打开时只需通过主进程申请模板进程资源即可。进程派生服务进程的模板进程创建程序单元在主进程运行时接收指示自动创建出一个新进程,该进程是一个模板进程,会预先拉起应用程序运行所需的基础资源,在上层没有应用打开时,该模板进程处在暂停的状态;在上层打开一个新的应用程序时,可以直接使用该模板进程,增加应用的打开速度;在模板进程被占用后,马上进入下一个模板进程的创建流程。本实施例中,进程派生服务进程在派生的子进程中设置内存管理模块,采用通过epoll机制监听父子进程共享内存资源变化;通过虚拟内存映射地址改写的方式修改内存调用栈的实际指向地址。子进程安全配置程序单元在派生进程过程中根据安全配置清单对子进程安全策略进行设置,其中安全配置清单是与应用可执行文件打包在一起被读取到内存中,具体包括如下配置项:应用程序权限属组、应用程序可调用接口列表。
此外,本实施例还提供一种基于麒麟移动操作系统的应用程序进程派生系统,包括计算机设备,该计算机设备被编程或配置以执行前述基于麒麟移动操作系统的应用程序进程派生方法的步骤,或者该计算机设备的存储器上存储有被编程或配置以执行前述基于麒麟移动操作系统的应用程序进程派生方法的计算机程序。
此外,本实施例还提供一种移动终端,该移动终端运行麒麟移动操作系统,该移动终端被编程或配置以执行前述基于麒麟移动操作系统的应用程序进程派生方法的步骤,或者该移动终端的存储器上存储有被编程或配置以执行前述基于麒麟移动操作系统的应用程序进程派生方法的计算机程序。
此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行前述基于麒麟移动操作系统的应用程序进程派生方法的计算机程序。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种基于麒麟移动操作系统的应用程序进程派生方法,其特征在于,实施步骤包括:
1)启动以守护进程方式运行的进程派生服务进程;
2)进程派生服务进程创建包含应用程序运行所需基本资源的模板进程;
3)监测用户操作,当监测到用户打开新应用程序时使用模板进程打开指定的入口html文件开始运行新应用程序;
4)新应用程序读取预设的配置文件获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置;跳转执行步骤2)。
2.根据权利要求1所述的基于麒麟移动操作系统的应用程序进程派生方法,其特征在于,步骤1)的详细步骤包括:
1.1)通过系统主进程b2g在设备开机后在系统初始化阶段启动以守护进程方式运行的进程派生服务进程;
1.2)进程派生服务进程创建用于和系统主进程b2g进行通讯的通信对象,且在通信对象创建完毕后向系统主进程b2g发送就绪消息;
1.3)系统主进程b2g收到就绪消息后跳转执行步骤2)。
3.根据权利要求2所述的基于麒麟移动操作系统的应用程序进程派生方法,其特征在于,步骤2)的详细步骤包括:
2.1)系统主进程b2g向进程派生服务进程发送模板进程创建请求;
2.2)进程派生服务进程创建包含应用程序运行所需基本资源的模板进程,且在完成后通知系统主进程b2g;
2.3)系统主进程b2g收到创建模板进程完成的通知后,创建一个用于与模板进程用于通信的通信对象并将该通信对象保存以便后续进行调用。
4.根据权利要求3所述的基于麒麟移动操作系统的应用程序进程派生方法,其特征在于,步骤2.2)中进程派生服务进程创建包含应用程序运行所需基本资源的模板进程的详细步骤包括:
2.2.1)进程派生服务进程对线程创建函数pthread_create()进行封装,在创建线程时将线程相关信息存储到结构体数组threads_info_structure中;
2.2.2)进程派生服务进程执行创建的线程功能相关函数;
2.2.3)进程派生服务进程保存当前线程现场记为现场#1,以互斥锁的方式暂停线程运行,等待派生新进程的IPC指令,当收到派生新进程的IPC指令的时候跳转执行下一步;
2.2.4)进程派生服务进程复刻出一个子进程,只为新生成的子进程创建虚拟内存空间结构,它们复制与父进程的虚拟内存空间结构,但是不为这段空间结构分配物理内存,它们共享父进程的物理空间,当父子进程中有更改相应段的行为发生时,再为子进程相应的段分配物理空间;新生成的子进程根据结构体数组threads_info_structure中的信息重建线程,接着保存此时线程现场记为现场#2,然后恢复现场#1,执行完现场#1相关的操作后又恢复到现场#2继续工作,使得恢复子进程中的线程在复刻被调用之前的互斥量以及对全局变量的更新操作,保证互斥量不会死锁且全局变量的状态保持一致。
5.根据权利要求1所述的基于麒麟移动操作系统的应用程序进程派生方法,其特征在于,步骤4)的详细步骤包括:
4.1)新应用程序读取预设的配置文件manifest.webapp;
4.2)根据配置文件manifest.webapp获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置。
6.根据权利要求5所述的基于麒麟移动操作系统的应用程序进程派生方法,其特征在于,步骤4)中的新应用程序运行在独立的沙箱中,每个进程都分配独立的数据存储空间。
7.一种基于麒麟移动操作系统的应用程序进程派生系统,其特征在于,包括服务启动程序单元和进程派生服务进程,所述服务启动程序单元用于启动以守护进程方式运行的进程派生服务进程,所述进程派生服务进程包括:
模板进程创建程序单元,用于创建模板进程;
操作监测程序单元,用于监测用户操作,当监测到用户打开新应用程序时使用模板进程打开指定的入口html文件开始运行新应用程序;
子进程安全配置程序单元,用于新应用程序读取预设的配置文件获取对应的应用权限和可调用API列表,并根据获取的应用权限和可调用API列表对进程安全参数进行配置。
8.一种基于麒麟移动操作系统的应用程序进程派生系统,包括计算机设备,其特征在于,该计算机设备被编程或配置以执行权利要求1~6中任意一项所述基于麒麟移动操作系统的应用程序进程派生方法的步骤,或者该计算机设备的存储器上存储有被编程或配置以执行权利要求1~6中任意一项所述基于麒麟移动操作系统的应用程序进程派生方法的计算机程序。
9.一种移动终端,该移动终端运行麒麟移动操作系统,其特征在于,该移动终端被编程或配置以执行权利要求1~6中任意一项所述基于麒麟移动操作系统的应用程序进程派生方法的步骤,或者该移动终端的存储器上存储有被编程或配置以执行权利要求1~6中任意一项所述基于麒麟移动操作系统的应用程序进程派生方法的计算机程序。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有被编程或配置以执行权利要求1~6中任意一项所述基于麒麟移动操作系统的应用程序进程派生方法的计算机程序。
CN202010229350.0A 2020-03-27 2020-03-27 基于麒麟移动操作系统的应用程序进程派生方法、系统及介质 Active CN111414256B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010229350.0A CN111414256B (zh) 2020-03-27 2020-03-27 基于麒麟移动操作系统的应用程序进程派生方法、系统及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010229350.0A CN111414256B (zh) 2020-03-27 2020-03-27 基于麒麟移动操作系统的应用程序进程派生方法、系统及介质

Publications (2)

Publication Number Publication Date
CN111414256A true CN111414256A (zh) 2020-07-14
CN111414256B CN111414256B (zh) 2022-10-04

Family

ID=71491511

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010229350.0A Active CN111414256B (zh) 2020-03-27 2020-03-27 基于麒麟移动操作系统的应用程序进程派生方法、系统及介质

Country Status (1)

Country Link
CN (1) CN111414256B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190282A (zh) * 2021-04-07 2021-07-30 北京鲸鲮信息系统技术有限公司 安卓运行环境构建的方法及装置
CN113326139A (zh) * 2021-06-28 2021-08-31 上海商汤科技开发有限公司 一种任务处理方法、装置、设备及存储介质
CN113391909A (zh) * 2021-06-28 2021-09-14 上海商汤科技开发有限公司 进程创建方法、装置、电子设备及存储介质
CN114579062A (zh) * 2022-04-29 2022-06-03 深圳市杉岩数据技术有限公司 基于分布式存储系统的磁盘优化方法及装置
WO2023273025A1 (zh) * 2021-06-28 2023-01-05 上海商汤科技开发有限公司 任务处理系统、电子设备和存储介质
CN115964353A (zh) * 2023-03-10 2023-04-14 阿里巴巴(中国)有限公司 一种分布式文件系统及其访问计量方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102439564A (zh) * 2011-10-24 2012-05-02 华为技术有限公司 在Linux容器中启动应用程序的方法和系统
US20160098491A1 (en) * 2014-10-02 2016-04-07 Institute For Information Industry Service provider system and service provider method
CN105843668A (zh) * 2016-03-11 2016-08-10 北京奇虎科技有限公司 派生进程驻存方法、派生程序生成方法及相应的装置
CN105893087A (zh) * 2016-03-30 2016-08-24 珠海市魅族科技有限公司 一种应用程序启动的方法以及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102439564A (zh) * 2011-10-24 2012-05-02 华为技术有限公司 在Linux容器中启动应用程序的方法和系统
US20160098491A1 (en) * 2014-10-02 2016-04-07 Institute For Information Industry Service provider system and service provider method
CN105843668A (zh) * 2016-03-11 2016-08-10 北京奇虎科技有限公司 派生进程驻存方法、派生程序生成方法及相应的装置
CN105893087A (zh) * 2016-03-30 2016-08-24 珠海市魅族科技有限公司 一种应用程序启动的方法以及装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190282A (zh) * 2021-04-07 2021-07-30 北京鲸鲮信息系统技术有限公司 安卓运行环境构建的方法及装置
CN113190282B (zh) * 2021-04-07 2024-04-09 北京字节跳动网络技术有限公司 安卓运行环境构建的方法及装置
CN113326139A (zh) * 2021-06-28 2021-08-31 上海商汤科技开发有限公司 一种任务处理方法、装置、设备及存储介质
CN113391909A (zh) * 2021-06-28 2021-09-14 上海商汤科技开发有限公司 进程创建方法、装置、电子设备及存储介质
WO2023273025A1 (zh) * 2021-06-28 2023-01-05 上海商汤科技开发有限公司 任务处理系统、电子设备和存储介质
CN114579062A (zh) * 2022-04-29 2022-06-03 深圳市杉岩数据技术有限公司 基于分布式存储系统的磁盘优化方法及装置
CN114579062B (zh) * 2022-04-29 2022-08-05 深圳市杉岩数据技术有限公司 基于分布式存储系统的磁盘优化方法及装置
CN115964353A (zh) * 2023-03-10 2023-04-14 阿里巴巴(中国)有限公司 一种分布式文件系统及其访问计量方法
CN115964353B (zh) * 2023-03-10 2023-08-22 阿里巴巴(中国)有限公司 一种分布式文件系统及其访问计量方法

Also Published As

Publication number Publication date
CN111414256B (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
CN111414256B (zh) 基于麒麟移动操作系统的应用程序进程派生方法、系统及介质
EP3561669B1 (en) Containerized application deployment
US7788300B2 (en) Garbage collection for shared data entities
US8904386B2 (en) Running a plurality of instances of an application
US20150277993A1 (en) Task Processing Method and Virtual Machine
US9378069B2 (en) Lock spin wait operation for multi-threaded applications in a multi-core computing environment
CN105700939A (zh) 一种分布式系统中多线程同步的方法和系统
US8893272B2 (en) Method and device for recombining runtime instruction
US20200409841A1 (en) Multi-threaded pause-less replicating garbage collection
US10831400B2 (en) Method and apparatus to represent activation frame for pause-less garbage collection
CN110162344B (zh) 一种隔离限流的方法、装置、计算机设备及可读存储介质
US11042409B2 (en) Leader election with lifetime term
WO2011096163A1 (ja) 情報処理システム、排他制御方法および排他制御用プログラム
US8966212B2 (en) Memory management method, computer system and computer readable medium
US7552434B2 (en) Method of performing kernel task upon initial execution of process at user level
CN112948050A (zh) 一种部署pod的方法及装置
CN108345452B (zh) 一种线程管理方法及装置
CN104731634A (zh) 一种实时在线的分布式计算框架的实现方法
CN113360893A (zh) 基于容器的智能合约执行方法、装置及存储介质
CN112464182A (zh) 一种移动设备管理的安全管控方法、装置、介质和设备
CN114816662A (zh) 应用于Kubernetes的容器编排方法和系统
US9619277B2 (en) Computer with plurality of processors sharing process queue, and process dispatch processing method
CN111767155A (zh) 死锁检测方法、装置、设备及计算机可读存储介质
CN114327828B (zh) 一种共享数据的无锁并发访问方法、装置、设备及介质
CN113569231B (zh) 多进程的mpu保护方法、装置及电子设备

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
GR01 Patent grant
GR01 Patent grant