IP Library Granted Patent US 10,846,101
Granted Patent B2
US 10,846,101 · App. 16/130,501 · Granted Nov 24, 2020

Method and system for starting up application

Inventors: Zheng Liu (Shanghai, CN); Yongcai Ma (Shanghai, CN); Qinghe Xu (Shanghai, CN); Kerong Shen (Shanghai, CN); Lidi Jiang (Shanghai, CN); Xu Zeng (Shanghai, CN)
G06F9/445G06F9/45529G06F9/45533G06F9/48G06F9/54
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,846,101
App. No.
16/130,501
Granted
Nov 24, 2020
Kind
B2
Abstract

Starting up an application is disclosed including prior to launching an application, executing startup processing associated with the application using a parent process; in response to receiving a startup command for the application, creating a child process using the parent process; and launching the application using the child process.

Claims (72)

1. A method, comprising:

prior to launching an application, executing startup processing associated with the application using a parent process, comprising:

performing one or more of the following:

A) executing, using the parent process, a startup processing of functional modules associated with the application, wherein the functional modules include a communication module and a graphics module;

B) executing, using the parent process, a system application programming interface (API) associated with the application, a library associated with the application, or both, wherein the system API includes querying a database, querying a kernel, or both, and wherein the library includes a class library, a standards library, a dynamic link library, or any combination thereof;

C) establishing, using the parent process, a binding relationship between a JavaScript interface and native functional modules associated with the application, wherein the binding relationship includes converting JavaScript values to native values, calling native APIs of the native functional modules, converting native return values back to JavaScript, or any combination thereof; and/or

D) launching a virtual machine in the parent process; and

compiling target JavaScript code associated with the application in the virtual machine to obtain corresponding compilation results, wherein the target JavaScript code includes code of a functional module programmed using the JavaScript language, and wherein the compiling of the target JavaScript code comprises:

analyzing the target JavaScript code associated with the application in the virtual machine to obtain a syntax tree; and

compiling the syntax tree to obtain commands that a smart terminal is configured to recognize;

in response to receiving a startup command for the application, creating a child process using the parent process; and

launching the application using the child process.

2. The method as described in claim 1 , wherein the creating of the child process comprises:

in response to receiving the startup command for the application, running a fork function to obtain the child process using the parent process.

3. The method as described in claim 1 , wherein:

the parent process corresponds to a plurality of child processes; and

the executing of the startup processing associated with the application comprises:

executing startup processing jointly associated with a plurality of applications corresponding to the plurality of child processes.

4. The method as described in claim 1 , wherein the graphics modules includes a graphical user interface (GUI) module, a rendering module, or both.

5. The method as described in claim 1 , wherein prior to launching an application, the executing of the startup processing associated with the application using the parent process comprises:

performing two or more of the following:

A) executing, using the parent process, a startup processing of functional modules associated with the application, wherein the functional modules include a communication module and a graphics module;

B) executing, using the parent process, a system application programming interface (API) associated with the application, a library associated with the application, or both, wherein the system API includes querying a database, querying a kernel, or both, and wherein the library includes a class library, a standards library, a dynamic link library, or any combination thereof;

C) establishing, using the parent process, a binding relationship between a JavaScript interface and native functional modules associated with the application, wherein the binding relationship includes converting JavaScript values to native values, calling native APIs of the native functional modules, converting native return values back to JavaScript, or any combination thereof; and/or

D) launching a virtual machine in the parent process; and

compiling target JavaScript code associated with the application in the virtual machine to obtain corresponding compilation results, wherein the target JavaScript code includes code of a functional module programmed using the JavaScript language, and wherein the compiling of the target JavaScript code comprises:

analyzing the target JavaScript code associated with the application in the virtual machine to obtain a syntax tree; and

compiling the syntax tree to obtain commands that a smart terminal is configured to recognize.

6. The method as described in claim 1 , wherein prior to launching an application, the executing of the startup processing associated with the application using the parent process comprises:

performing three or more of the following:

A) executing, using the parent process, a startup processing of functional modules associated with the application, wherein the functional modules include a communication module and a graphics module;

B) executing, using the parent process, a system application programming interface (API) associated with the application, a library associated with the application, or both, wherein the system API includes querying a database, querying a kernel, or both, and wherein the library includes a class library, a standards library, a dynamic link library, or any combination thereof;

C) establishing, using the parent process, a binding relationship between a JavaScript interface and native functional modules associated with the application, wherein the binding relationship includes converting JavaScript values to native values, calling native APIs of the native functional modules, converting native return values back to JavaScript, or any combination thereof; and/or

D) launching a virtual machine in the parent process; and

compiling target JavaScript code associated with the application in the virtual machine to obtain corresponding compilation results, wherein the target JavaScript code includes code of a functional module programmed using the JavaScript language, and wherein the compiling of the target JavaScript code comprises:

analyzing the target JavaScript code associated with the application in the virtual machine to obtain a syntax tree; and

compiling the syntax tree to obtain commands that a smart terminal is configured to recognize.

7. The method as described in claim 1 , wherein prior to launching an application, the executing of the startup processing associated with the application using the parent process comprises:

performing the following:

A) executing, using the parent process, a startup processing of functional modules associated with the application, wherein the functional modules include a communication module and a graphics module;

B) executing, using the parent process, a system application programming interface (API) associated with the application, a library associated with the application, or both, wherein the system API includes querying a database, querying a kernel, or both, and wherein the library includes a class library, a standards library, a dynamic link library, or any combination thereof;

C) establishing, using the parent process, a binding relationship between a JavaScript interface and native functional modules associated with the application, wherein the binding relationship includes converting JavaScript values to native values, calling native APIs of the native functional modules, converting native return values back to JavaScript, or any combination thereof; and

D) launching a virtual machine in the parent process; and

compiling target JavaScript code associated with the application in the virtual machine to obtain corresponding compilation results, wherein the target JavaScript code includes code of a functional module programmed using the JavaScript language, and wherein the compiling of the target JavaScript code comprises:

analyzing the target JavaScript code associated with the application in the virtual machine to obtain a syntax tree; and

compiling the syntax tree to obtain commands that a smart terminal is configured to recognize.

8. A system, comprising:

a processor; and

a memory coupled with the processor, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:

prior to launching an application, execute startup processing associated with the application using a parent process, comprising to:

perform one or more of the following:

A) execute, using the parent process, a startup processing of functional modules associated with the application, wherein the functional modules include a communication module and a graphics module;

B) execute, using the parent process, a system application programming interface (API) associated with the application, a library associated with the application, or both, wherein the system API includes querying a database, querying a kernel, or both, and wherein the library includes a class library, a standards library, a dynamic link library, or any combination thereof;

C) establish, using the parent process, a binding relationship between a JavaScript interface and native functional modules associated with the application, wherein the binding relationship includes converting JavaScript values to native values, calling native APIs of the native functional modules, converting native return values back to JavaScript, or any combination thereof; and/or

D) launch a virtual machine in the parent process; and

compile target JavaScript code associated with the application in the virtual machine to obtain corresponding compilation results, wherein the target JavaScript code includes code of a functional module programmed using the JavaScript language, and wherein the compiling of the target JavaScript code comprises to:

 analyze the target JavaScript code associated with the application in the virtual machine to obtain a syntax tree; and

 compile the syntax tree to obtain commands that a smart terminal is configured to recognize;

in response to receiving a startup command for the application, create a child process using the parent process; and

launch the application using the child process.

9. A computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for:

prior to launching an application, executing startup processing associated with the application using a parent process, comprising:

performing one or more of the following:

A) executing, using the parent process, a startup processing of functional modules associated with the application, wherein the functional modules include a communication module and a graphics module;

B) executing, using the parent process, a system application programming interface (API) associated with the application, a library associated with the application, or both, wherein the system API includes querying a database, querying a kernel, or both, and wherein the library includes a class library, a standards library, a dynamic link library, or any combination thereof;

C) establishing, using the parent process, a binding relationship between a JavaScript interface and native functional modules associated with the application, wherein the binding relationship includes converting JavaScript values to native values, calling native APIs of the native functional modules, converting native return values back to JavaScript, or any combination thereof; and/or

D) launching a virtual machine in the parent process; and

compiling target JavaScript code associated with the application in the virtual machine to obtain corresponding compilation results, wherein the target JavaScript code includes code of a functional module programmed using the JavaScript language, and wherein the compiling of the target JavaScript code comprises:

analyzing the target JavaScript code associated with the application in the virtual machine to obtain a syntax tree; and

compiling the syntax tree to obtain commands that a smart terminal is configured to recognize;

in response to receiving a startup command for the application, creating a child process using the parent process; and

launching the application using the child process.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: BANMA ZHIXING NETWORK (HONGKONG) CO., LIMITED
Reel/Frame 054384/0014 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2018
From: LIU, ZHENG; MA, YONGCAI; XU, QINGHE; SHEN, KERONG; JIANG, LIDI; ZENG, XU
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 048788/0163 →
Priority Claims (1)
CN 2016 1 0147440 · Mar 15, 2016 · national
Continuity (2)
Continuation In Part PCTCN2017075449 · Mar 2, 2017
Related Publication 20190108038A1 · Apr 11, 2019