CN101639787A - Method and device for starting application program - Google Patents

Method and device for starting application program Download PDF

Info

Publication number
CN101639787A
CN101639787A CN200910174322A CN200910174322A CN101639787A CN 101639787 A CN101639787 A CN 101639787A CN 200910174322 A CN200910174322 A CN 200910174322A CN 200910174322 A CN200910174322 A CN 200910174322A CN 101639787 A CN101639787 A CN 101639787A
Authority
CN
China
Prior art keywords
application program
startup
class
described application
starts
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
CN200910174322A
Other languages
Chinese (zh)
Other versions
CN101639787B (en
Inventor
贺彬
古幼鹏
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN200910174322.7A priority Critical patent/CN101639787B/en
Publication of CN101639787A publication Critical patent/CN101639787A/en
Application granted granted Critical
Publication of CN101639787B publication Critical patent/CN101639787B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a method and a device for starting an application program. In the method, the device for starting the application program after receiving a starting request of an application program to be started determines a condition that the application program is ever started after starting-up; the device for starting the application program selects a second progress copied and established according to a first progress starting the application program to start the application program, wherein the first progress is a progress starting the application program at the last time, and the second progress is loaded with a dynamic library file of the application program. By the scheme of the invention, a plurality of application programs can be started in a short time, especially whena user starts the application program which is ever started again after starting up once, and the dynamic library of the application program does not need to be loaded again, thereby quickening the starting speed of starting the application program again and enhancing the experience degree of the user.

Description

Application program launching method and device
Technical field
The present invention relates to the mobile communication technology field, relate in particular to a kind of application program launching method and device.
Background technology
Portable terminal has welcome smart mobile phone epoch and 3G epoch, and mobile phone only can satisfy the transmission of basic voice call and short message unlike in the past like that function is simple, also needs to support the application of numerous function complexity.High-end smartphones is because its hardware configuration is higher, software systems are also in continuous development, for this reason, many mobile phones are that research and develop on the basis with powerful open operating system (as operating systems such as Windows, Mobile, Linux, Symbian and Android) all.Say that technically application program is moved on open operating system, generally adopt the mode of dynamic link,, improve the extendability and the maintainability of application program to save the storage resources of system.Because mobile phone is subjected to numerous restrictions of aspects such as cpu performance, memory headroom and performance, external memory space and performance, can not adopt the such powerful hardware configuration of desktop PC.The cellphone subscriber in use, can find that the travelling speed of application program is slow partially compared with desktop PC, thereby reduced the operating experience comfort level, wherein the most tangible aspect is that application program launching speed is slow, the user is after starting application program on the mobile phone interface, waiting a period of time just can see and the interface of application program just can carry out various operations.
Analyze from the angle of software, the toggle speed of application program relates to application program self and two aspects of cell phone software platform.From application program self, application program mainly is to carry out various initialization operations, the various objects of establishment etc. when starting.Application program should be accelerated these operations as far as possible, reduces unnecessary operation, and perhaps the execution time of reasonable distribution operation, the operation that for example has is carried out on the backstage after can being placed on application program launching.On the other hand, from cell phone software platform aspect, the platform that has has directly been transferred application program (can pass through execv (...) method of calling as the Linux series platform) by order when starting application program; And the platform of doing better analyzed all application programs the unloading phase public operation that all will experience, by accelerating these operations, thereby support the startup of all application programs to quicken.
To this, some cell phone software platforms have all adopted a kind of thought of pretrigger to solve two above problems.Chinese patent 200810000846.X has proposed the method that a kind of application program of mobile phone starts fast, its basic skills is: the public operation that (1) all will carry out all application programs on the mobile phone when starting the program that is provided by the cell phone software platform is provided finishes, and application program oneself provides an initialization function to finish with oneself again and uses relevant specific start-up operation; (2) the cell phone software platform starts a special program process in advance at running background on the backstage, this application program is carried out the public operation that all application programs all will be carried out when starting, enter then in the incident major cycle, the groundwork that it will be done in this major cycle is to wait for the order of accepting application manager, and this process can be called quick startup background process (quicklauncher process); (3) when mobile phone will start a new application program, send the order that starts new application program to the quicklauncher process by application manager; (4) after operating quicklauncher process receives orders, withdraw from the incident major cycle, from the order of receiving, needing to obtain the dynamic library file of application program started, load this dynamic library file, obtain the initialization function and the execution of this application program then from dynamic library file, and then enter new incident major cycle, the quicklauncher process has just become the process that can carry out the function of wanting application program started like this, promptly the quicklauncher process is become the process of wanting application program started, thereby finished the startup of application program; (5) the cell phone software platform starts a new quicklauncher process again at running background, prepares for starting new application program.
Through a large amount of measured datas is analyzed, find dynamic base loading, create new process and process context be set and in the application start process, spent a lot of times, and these two kinds of operations are all application programs the unloading phase requisite operation.Though method that above-mentioned patent provides has reduced application program is created new process and process context is set when starting time, but do not shorten application program loads dynamic base in start-up course time, particularly after once starting shooting, when starting some application programs once more, shorten the time that loads dynamic base, the application program that therefore starts portable terminal also has very big optimization space technically.
Summary of the invention
In view of this, the invention provides a kind of application program launching scheme, in start-up course, can't shorten the problem of the time that loads dynamic base in order to application program in the solution prior art.
According to an aspect of the present invention, provide a kind of application program launching method, be used to adopt the portable terminal of dynamic link mode to start application program.
According to application program launching method of the present invention, comprising:
After the application program launching device receives the startup request for the treatment of application program started, determine after start, once to start this application program;
The application program launching device selects to duplicate according to first process that starts this application program this application program of second process initiation of establishment, wherein, first process is the last process that starts this application program, has loaded the dynamic library file of this application program in second process.
Further, starting first under the situation of this application program after the start determining, said method also comprises:
The application program launching device starts in the default first kind selects any one first kind to start process in the process collection, and sends the startup command that starts this application program to first kind startup process, and the indication first kind starts this application program of process initiation.
Preferably, first kind startup process initiation application program comprises:
After first kind startup process receives startup command, improve the priority that the first kind starts process, and resolve the startup command that receives;
The first kind starts process according to the startup command after resolving, and obtains the dynamic library file for the treatment of application program started, and loads dynamic library file, and wherein, dynamic library file comprises the initialize routine of application program;
First kind startup process is duplicated new second class startup process of creating, and the second class startup process that will create is recorded in default second class startup process collection, wherein, second class starts the process number of record second class startup process in the process collection and the filename that second class starts the application program of process initiation, and filename comprises the path of application program in cell phone system;
First kind startup process is carried out the initialize routine of dynamic library file, is finished, and the priority of recovering first kind startup process is normal priority;
The application program launching device is created with normal priority and is started a new first kind and starts process, and will create new first kind startup process and record in the first kind startup process collection.
Further, the application program launching device judges that whether application program once started, and comprising after start:
Filename according to described application program to be started, inquire about second class start the filename that whether exists in the process collection with above-mentioned application program corresponding second class start process, if exist, represent that then this application program once started after start, otherwise, represent that this application program starts first after start.
Further, the application program launching device selects the above-mentioned application program of second process initiation to comprise:
The application program launching device starts in second class selects second class corresponding with the filename of this application program to start process as second process in the process collection;
The application program launching device sends the startup command that starts this application program to the second class startup process of selecting, and indicates second class to start this application program of process initiation.
Preferably, above-mentioned second class startup process initiation application program comprises:
After the second class startup process receives startup command, improve the priority that second class starts process;
The second class startup process is duplicated new second class startup process of creating, and the second new class startup process that will create is recorded in default second class startup process collection, wherein, second class starts the process number of record second class startup process in the process collection and the filename that second class starts the application program of process initiation, and filename comprises the path of application program in cell phone system;
The second class startup process is carried out the initialize routine that second class starts the dynamic library file of process, is finished, and the priority of recovering second class startup process is normal priority.
Further, after the first kind started process or second class startup process transmission startup command, said method also comprises: the application program launching device reduced the priority of application program launching device place process at the application program launching device.
Further, after the first kind started process initiation application program or second class startup process initiation application program, said method also comprises: the application program launching device recovered the priority of application program launching device place process.
Preferably, to start the first kind startup process that process collection comprises be the process with following attribute for the above-mentioned first kind:
Finished the execution of the public operation of all application programs, go forward side by side in the incoming event major cycle, in the incident major cycle, wait for the startup command of the startup application program that receives the application program launching device, after receiving startup command, only need to load the dynamic library file for the treatment of application program started and the initialize routine of carrying out dynamic library file;
The second class startup process that second class startup process collection comprises is the process with following attribute:
Finished the execution of the public operation of all application programs, loaded the dynamic library file of described application program to be started, go forward side by side in the incoming event major cycle, in the incident major cycle, wait for the startup command of the startup application program that receives the application program launching device, after receiving startup command, only need to carry out the initialize routine of dynamic library file;
Wherein, public operation comprises: load shared library that the operation of all application programs all needs, initialization graphics subsystem, initialization time processing subsystem and initialization use communication subsystem.
According to another aspect of the present invention, provide a kind of application program launching device, be used to adopt the portable terminal of dynamic link mode to start application program.
According to application program launching device of the present invention, comprising: receiver module, arbitration modules, second select module and second to start module, and wherein, receiver module is used to receive the startup request for the treatment of application program started; Arbitration modules is used for determining whether application program started after start; Second selects module, is used to select second process of duplicating according to first process that starts application program; Second starts module, is used for the second process initiation application program of duplicating according to first process that starts application program.
Further, above-mentioned application program launching device also comprises: first selects module, first to start module, wherein, first selects module, be used for determining to start under the situation of application program any one first kind startup process of selection in default first kind startup process collection after the start first; First starts module, is used for sending the startup command that starts application program to first kind startup process, and the indication first kind starts the process initiation application program.
Further, above-mentioned application program launching device also comprises: priority is provided with module, is used to reduce or recover the priority of application program launching device place process.
By above-mentioned at least one scheme of the present invention, can start a plurality of application programs at short notice, particularly when the user starts the application program that once started once more after once starting shooting, do not need to load once more the dynamic base of this application program, thereby accelerated to start once more the toggle speed of this application program, promoted user's Experience Degree.
Other features and advantages of the present invention will be set forth in the following description, and, partly from instructions, become apparent, perhaps understand by implementing the present invention.Purpose of the present invention and other advantages can realize and obtain by specifically noted structure in the instructions of being write, claims and accompanying drawing.
Description of drawings
Accompanying drawing is used to provide further understanding of the present invention, and constitutes the part of instructions, is used from explanation the present invention with embodiments of the invention one, is not construed as limiting the invention.In the accompanying drawings:
Fig. 1 is the process flow diagram according to the application program launching method of the embodiment of the invention;
Fig. 2 is the process flow diagram that starts the process initiation application program according to the first kind of the embodiment of the invention;
Fig. 3 is the process flow diagram that starts the process initiation application program according to second class of the embodiment of the invention;
Fig. 4 is according to the quick process flow diagram that starts of the application program of mobile phone of the embodiment of the invention one;
Fig. 5 is the process flow diagram according to the establishment of the embodiment of the invention two and startup first kind quicklauncher process;
Fig. 6 is according to the establishment of the embodiment of the invention three and starts the process flow diagram of the second class quicklauncher process;
Fig. 7 is the process flow diagram that the first kind startup process according to the embodiment of the invention four starts fast;
Fig. 8 is the process flow diagram that the second class startup process according to the embodiment of the invention five starts fast;
Fig. 9 is the structural representation according to the application program launching device of the embodiment of the invention.
Embodiment
Functional overview
In embodiments of the present invention, the application program launching device is once starting first or is starting once more after the start by the application program of judgement portable terminal to be started, and selects the first kind startup process or second class to start the above-mentioned application program of process initiation.If this application program is once starting after the start first, then select the first kind to start this application program of process initiation, only need load the dynamic base of this application program, and carry out the setup code in the dynamic base; If this application program was once starting after the start, then select second class to start this application program of process initiation, do not need to load the dynamic base of this application program, only carry out the setup code in the dynamic base, thereby shortened the start-up time of the application program of portable terminal, remedied deficiency of the prior art.
In embodiments of the present invention, the scheme of the startup application program that provides is applicable to the portable terminal that adopts the dynamic link mode, comprise mobile phone, PDA, music portable terminal such as video player, be example all in the embodiment of the invention, describe concrete startup scheme in detail with the handset starting application program.
Under the situation of not conflicting, embodiment and the feature among the embodiment among the application can make up mutually.
Below in conjunction with accompanying drawing the preferred embodiments of the present invention are described, should be appreciated that preferred embodiment described herein only is used for description and interpretation the present invention, and be not used in qualification the present invention.
According to the embodiment of the invention, at first provide a kind of method that starts application program.
For realizing the method for the startup application program that the embodiment of the invention provides, need in cell phone system, set in advance two classes and start process collection, be that the first kind starts process collection, second class starts process collection, start process collection in above-mentioned two classes of specific implementation process and adopt the process chained list to manage, promptly be set to the first kind and start process chained list, second class startup process chained list.
The first kind that the first kind starts in the process chained list starts process (quicklauncher process), has following attribute: carried out the public operation that all application programs all will be carried out when starting, go forward side by side in the incoming event major cycle, in this major cycle, wait for and accept the quick startup background process that application manager starts application command.Analysis by the front as can be known, first kind quicklauncher process possesses becomes any ability that will the application program started process, highly versatile.
Second class that second class starts in the process chained list starts process (quicklauncher process), have following attribute: and the second class quicklauncher process is on the basis of first kind quicklauncher process, further loaded will the application program started specific needs dynamic library file, the incoming event major cycle of going forward side by side waits for that application manager sends the process that its startup is notified in order.At this moment, this process is also carried out the setup code in will the application program started dynamic library file.When the user reuses identical application program after once starting shooting, second class of platform inquiry Dynamic Maintenance starts the process chained list, if when having the second class quicklauncher corresponding in this chained list with this application program, select it also to control the setup code of its direct executive utility dynamic base, can more further shorten start-up time.
Application manager is created simultaneously in cell phone system initialization start-up course and is started the individual first kind of N (N is a natural number) with normal priority and starts process.
Fig. 1 is the process flow diagram according to the application program launching method of the embodiment of the invention, and as shown in Figure 1, this method comprises following flow process (step 102-step 106):
After step 102, application program launching device receive the startup request for the treatment of application program started, judge that this application program is to start first or once started, if start first, then execution in step 104, if once started then execution in step 106.
In concrete implementation process, the application program launching device is according to the filename for the treatment of application program started, inquire about second class and start whether there be the second class startup process corresponding in the process chained list with the filename of described application program, if exist, represent that then described application program once started after start, otherwise, represent that described application program starts first after start.
Step 104, application program launching device select any one first kind to start process in default quick startup process chained list, and send the startup command that starts this application program to this first kind startup process, indicate this first kind to start the process initiation application program.
Step 106, application program launching device select to duplicate according to first process that starts above-mentioned application program this application program of second process initiation of establishment, wherein, first process is the last process that starts application program, has loaded the dynamic library file of this application program in second process.
Particularly, the application program launching device selects second class corresponding with the filename of described application program to start process as described second process in second class startup process chained list; The application program launching device sends the startup command that starts application program to this second class startup process of selecting, indicates this second class to start the process initiation application program.
Further, after the first kind started process or second class startup process transmission startup command, the application program launching device reduced the priority of described application program launching device place process at the application program launching device.
Flow process to first kind startup process initiation application program describes in detail below.
Fig. 2 is the process flow diagram that starts the process initiation application program according to the first kind of the embodiment of the invention, and as shown in Figure 2, the flow process that the first kind starts the process initiation application program comprises (step 202-step 210):
After step 202, first kind startup process receive startup command, improve the priority that the first kind starts process, and resolve the startup command that receives;
Step 204, the first kind start process according to the startup command after resolving, and obtain the dynamic library file for the treatment of application program started, and load this dynamic library file, and wherein, this dynamic library file comprises the initialize routine of application program;
Step 206, first kind startup process are duplicated new second class startup process of creating, and the second class startup process that will create is recorded in default second class startup process chained list, wherein, second class starts the process number of record second class startup process in the process chained list and the filename that second class starts the application program of process initiation, and this document name comprises the path of application program in cell phone system;
Particularly, the first kind starts process duplicates according to self attribute and creates second a new class and start process, when above-mentioned application program starts next time, just can use new this application program of second class startup process initiation of this establishment.Because mobile phone resources is limited, in specific implementation process, cell phone system should dispose the maximum quantity that the second class startup process allows existence, is made as M (M is a natural number) at this.Therefore, when if current second class startup process number has reached maximum permissible value M, must adopt a kind of replacement policy, this strategy can flexible configuration, for example: LRU strategy (least recently used Replacement Strategy) replaces with the second new class with the least-recently-used second old class startup process and starts process.
Step 208, first kind startup process are carried out the initialize routine of above-mentioned dynamic library file, are finished, and the priority of recovering first kind startup process is normal priority;
Step 210, application program launching device are created with normal priority and are started a new first kind and start process, and will create new first kind startup process and record in the first kind startup process chained list.
Particularly,, therefore need to create a new first kind and start process replenishing, and record the first kind and start in the process chained list because after step 208 was finished, the first kind started the process that process has become above-mentioned application program.
Flow process to second class startup process initiation application program describes in detail below.
Fig. 3 is the process flow diagram that starts the process initiation application program according to second class of the embodiment of the invention, and as shown in Figure 3, the flow process that second class starts the process initiation application program comprises (step 302-step 306):
After step 302, the second class startup process receive startup command, improve the priority that second class starts process;
Step 304, startup process are duplicated new second class startup process of creating, and the second new class startup process that will create is recorded in default second class startup process chained list, wherein, second class starts the process number of record second class startup process in the process chained list and the filename that second class starts the application program of process initiation, and filename comprises the path of application program in cell phone system;
Step 306, the second class startup process are carried out the initialize routine that second class starts the dynamic library file of process, are finished, and the priority of recovering second class startup process is normal priority.
Further, after the first kind started process initiation application program or second class startup process initiation application program, the application program launching device recovered the priority of application program launching device place process.
Below in conjunction with accompanying drawing, describe the method for the startup application program that the embodiment of the invention provides in detail by specific embodiment.
The application program launching device that provides in the embodiment of the invention can be provided with separately, also can be provided with the application manager unification, embodiment in following examples all adopts application program launching device and application manager unification to be provided with, so the application manager of mentioning in following examples all has the startup function of application program launching device.
Embodiment one
Fig. 4 is that as shown in Figure 4, this flow process may further comprise the steps (step 401-step 414) according to the quick process flow diagram that starts of the application program of mobile phone of the embodiment of the invention one:
Step 401, at the cell phone software platform, quick startup application program is provided;
Application manager in step 402, the cell phone software platform starts the individual first kind of N (N is a natural number) simultaneously with normal priority and starts process, i.e. first kind quicklauncher process in cell phone system initialization start-up course;
Wherein the N value can be by system's flexible configuration.Such as being configured to: possibility application program started number in the start-up time of first kind quicklauncher process self, and N is more than or equal to 2.
After step 403, application manager received the application start request, the request arbitration modules was to choose the first kind or the second class quicklauncher process that is fit to current system state;
In this step, arbitration modules is analyzed current system running state, and method is described with preamble.
Step 404, the whether first kind quicklauncher process of judging that arbitration modules chooses.If, execution in step 405; Otherwise, execution in step 413;
Step 405, application manager send to the first kind quicklauncher process of selecting and start utility command, the priority of application manager reduction self place process;
After step 406, this first kind quicklauncher process are received startup command, improve self priority, resolve the startup command of receiving;
The dynamic library file that step 407, this first kind quicklauncher process loading application programs need;
Step 408, this first kind quicklauncher process duplicate according to strategy that to create second a new class quicklauncher process standby;
In this step, concrete implementation strategy such as preamble are described, and for example adopt lru algorithm.Like this, when the user reused identical application program after once starting shooting, the arbitration modules of step 403 then entered step 412 if check in the quick startup process that exists in the second class quicklauncher process chained list at this application program.
The setup code of step 409, this first kind quicklauncher process executive utility dynamic base recovers self priority then;
After this step executed, this first kind quicklauncher process had promptly become program process, and the startup of application program is finished.
Step 410, application manager start a new first kind quicklauncher process;
In this step, a new quicklauncher process that starts is identical with the first kind quicklauncher process that starts in the step 402, be used for remedying that quicklauncher process, thereby have N available first kind quicklauncher process in the assurance system in step 406 loss.
The priority of step 411, application manager recovery self place process, the processing of selecting first kind quicklauncher to start application program leaves it at that;
Step 412, application manager send to the second class quicklauncher process of selecting and start utility command, the priority of application manager reduction self place process;
After step 413, this second class quicklauncher process are received startup command, improve self priority, duplicate and create second a new class quicklauncher process, with standby;
The setup code of step 414, this second class quicklauncher process executive utility recovers self priority then.Last execution in step 411 allows application manager recover the priority of self place process, and the processing of selecting the second class quicklauncher to start application program leaves it at that.
Below by specific embodiment, introduce establishment of mentioning in the step 402 of the foregoing description one and the step 410 and the idiographic flow that starts first kind quicklauncher process in detail.
Embodiment two
In the present embodiment, adopting (SuSE) Linux OS with portable terminal is example (portable terminal is not limited to adopt (SuSE) Linux OS), and the flow process of creating and start first kind quicklauncher process is introduced.
Fig. 5 is that as shown in Figure 5, this flow process may further comprise the steps (step 501-step 506) according to the process flow diagram of the establishment of the embodiment of the invention two and startup first kind quicklauncher process:
The fork () of step 501, application manager call operation system calls and creates a new subprocess;
The rreturn value that step 502, judgement fork () call, if equal 0, the subprocess that this new establishment is described is exactly that first kind quickluancher will be in the process of this operation, then execution in step 503; If be not equal to 0, explanation is to move execution in step 505 in the former process at application manager place;
Step 503, application manager are provided with process running environment for the first kind quickiuancher process that will move, such as for the signal Processing of this process setting operation system, close and unnecessary inherit system resource of getting off and the system resource of opening needs for this process etc. from parent process;
Step 504, in subprocess execv (...) function of call operation system, carry out the code of first kind quicklauncher application program, the processing that application manager starts first kind quicklauncher process leaves it at that;
Step 505, application manager just call the subprocess sign ID that returns to fork () and are recorded in the ID chained list of the first kind quicklauncher process of himself safeguarding, the content of each node in this chained list has been represented current available first kind quicklauncher process in the system;
Step 506, application manager continue other processing.
Particularly, when system start-up, application manager need repeat above flow process N time.
Below by specific embodiment, introduce establishment of mentioning in the step 408 of the foregoing description one and the step 413 and the idiographic flow that starts the second class quicklauncher process in detail.
Embodiment three
In the present embodiment, adopting (SuSE) Linux OS with portable terminal is example (portable terminal is not limited to adopt (SuSE) Linux OS), and the flow process of creating and start the second class quicklauncher process is introduced.
Fig. 6 is according to the establishment of the embodiment of the invention three and starts the process flow diagram of the second class quicklauncher process that as shown in Figure 6, this flow process may further comprise the steps (step 601-step 603):
Step 601, create new subprocess by the first kind quicklauncher process at current place or the second class quicklauncher process transfer fork ();
The rreturn value that step 602, judgement fork () call, if equal 0, the subprocess that this new establishment is described is exactly that the second class quickluancher will be in the process of this operation, processing leaves it at that; If be not equal to 0, explanation is to move in the former process at the first kind quicklauncher process or the second class quicklauncher process place, changes step 603 over to;
Step 603, notice application manager bundle process ID and title (containing application program in the cell phone system absolute path) that will application program started record in the second class quicklauncher chained list of application manager.
Below in conjunction with specific embodiment, introduce the first kind in detail from the angle of process and start process, second class startup process idiographic flow of startup fast.
Embodiment four
Fig. 7 is the process flow diagram that the first kind startup process according to the embodiment of the invention four starts fast, and as shown in Figure 7, this flow process may further comprise the steps (step 701-step 709):
Step 701, first kind quicklauncher process load in all platforms all application programs operations all needs the shared library used;
Step 702, the system that all will use all application programs carry out initialization.For example, the initialization in graphics subsystem storehouse, event handling subsystem library, application communication subsystem storehouse etc.;
Step 703, enter the incident major cycle, in this circulation, wait for the application start order that application manager sends over;
Step 704, after this first kind quicklauncher process is received startup command, improve self priority, withdraw from the incident major cycle, promptly no longer receive and handle other outside incident;
Step 705, this first kind quicklauncher process are resolved startup command;
Step 706, this first kind quicklauncher process load the corresponding application dynamic base according to the analysis result of startup command;
Step 707, this first kind quicklauncher process are duplicated the new first kind quicklauncher process corresponding with it of creating according to strategy;
Step 708, this first kind quicklauncher process are carried out the application initializes code in the application program dynamic base that loads, and recover self priority then;
Step 709, this first kind quicklauncher process enter the incident major cycle once more, since the application initializes function to should with execution environment be provided with again according to oneself needs, therefore, in the incident major cycle that enters specifically, to the reception of incident with to handle all be that flow process according to the logic of new application has been handled, be the process that original first kind qulckiauncher process has become the function of finishing new application, just new application process.
Embodiment five
Fig. 8 is the process flow diagram that the second class startup process according to the embodiment of the invention five starts fast, and as shown in Figure 8, this flow process may further comprise the steps (step 801-step 805):
Step 801, this second class quicklauncher process are being created laggard incoming event major cycle, wait for the startup utility command that application manager sends in this circulation;
Step 802, after this second class quicklauncher process is received startup command, improve self priority, withdraw from the incident major cycle, promptly no longer receive and handle other outside incident;
Step 803, this second class quicklauncher duplicate and create second a new class quicklauncher process, with standby;
The setup code of step 804, this second class quicklauncher process executive utility recovers self process priority;
Step 805, this second class quicklauncher process enter the incident major cycle once more.
According to the embodiment of the invention, a kind of application program launching device also is provided, be used to adopt the portable terminal of dynamic link mode to start application program.
Fig. 9 is the structural representation of following according to the application program launching device of the embodiment of the invention, as shown in Figure 9, this device comprises: receiver module 91, arbitration modules 92, second select module 93 and second to start module 94, wherein, receiver module 91 is used to receive the startup request for the treatment of application program started; Arbitration modules 92 is used for determining whether application program started after start; Second selects module 93, is used to select second process of duplicating according to first process that starts application program; Second starts module 94, is used for the second process initiation application program of duplicating according to first process that starts application program.
Preferably, application program launching device according to the embodiment of the invention also comprises: first selects module 95, first to start module 96, wherein, first selects module 95, be used for determining to start under the situation of application program any one first kind startup process of selection in default first kind startup process collection after the start first; First starts module 96, is used for sending the startup command that starts application program to described first kind startup process, and the indication first kind starts the process initiation application program.
Preferably, the application program launching device according to the embodiment of the invention also comprises: priority is provided with module 97, is used to reduce or recover the priority of application program launching device place process.
As mentioned above, the technical scheme that provides by the embodiment of the invention, a plurality of as can be seen first kind start process or second class starts the existence of process in system, can both find the available first kind to start process when having guaranteed a plurality of application program of quick startup or second class starts process, thereby make each application program start process or second class startup process realization startup fast by the first kind, particularly when the user reuses the application program that once started after once starting shooting, can obtain to start first this and use toggle speed faster.Start in the startup command process of process or second class startup process processing application manager in the first kind in addition, assurance moves with high priority, thereby make the start-up course of each application program without disturbance, avoided because the application program launching process that the influence of other incident causes in the system is slack-off.
The above is the preferred embodiments of the present invention only, is not limited to the present invention, and for a person skilled in the art, the present invention can have various changes and variation.Within the spirit and principles in the present invention all, any modification of being done, be equal to replacement, improvement etc., all should be included within protection scope of the present invention.

Claims (12)

1. an application program launching method is used to adopt the portable terminal of dynamic link mode to start application program, it is characterized in that, comprising:
After the application program launching device receives the startup request of described application program to be started, determine after start, once to start described application program;
Described application program launching device selects to duplicate according to first process that starts described application program the described application program of second process initiation of establishment, wherein, described first process is the last process that starts described application program, has loaded the dynamic library file of described application program in described second process.
2. method according to claim 1 is characterized in that, is starting first after the start under the situation of described application program determining, described method also comprises:
Described application program launching device starts in the default first kind selects any one first kind to start process in the process collection, and send the startup command that starts described application program to described first kind startup process, indicate the described first kind to start the described application program of process initiation.
3. method according to claim 2 is characterized in that, the described first kind starts the described application program of process initiation and comprises:
After described first kind startup process receives described startup command, improve the priority that the described first kind starts process, and resolve the described startup command that receives;
The described first kind starts process according to the described startup command after resolving, and obtains the dynamic library file of described application program to be started, and loads described dynamic library file, and wherein, described dynamic library file comprises the initialize routine of described application program;
Described first kind startup process is duplicated new second class startup process of creating, and the described second class startup process that will create is recorded in default second class startup process collection, wherein, described second class starts the process number of record second class startup process in the process collection and the filename that second class starts the application program of process initiation, and described filename comprises the path of described application program in cell phone system;
Described first kind startup process is carried out the described initialize routine of described dynamic library file, is finished, and the priority of recovering described first kind startup process is normal priority;
Described application program launching device is created with normal priority and is started a new first kind and starts process, and will create new described first kind startup process and record in the described first kind startup process collection.
4. method according to claim 3 is characterized in that, described application program launching device judges that whether described application program once started, and comprising after start:
Filename according to described application program to be started, inquire about second class start the filename that whether exists in the process collection with described application program corresponding second class start process, if exist, represent that then described application program once started after start, otherwise, represent that described application program starts first after start.
5. method according to claim 4 is characterized in that, described application program launching device selects the described application program of described second process initiation to comprise:
Described application program launching device starts in described second class selects second class corresponding with the filename of described application program to start process as described second process in the process collection;
Described application program launching device sends the startup command that starts described application program to the described second class startup process of selecting, and indicates described second class to start the described application program of process initiation.
6. method according to claim 5 is characterized in that, described second class starts the described application program of process initiation and comprises:
After the described second class startup process receives described startup command, improve the priority that described second class starts process;
The described second class startup process is duplicated new second class startup process of creating, and the described second new class startup process that will create is recorded in default second class startup process collection, wherein, described second class starts the process number of record second class startup process in the process collection and the filename that second class starts the application program of process initiation, and described filename comprises the path of described application program in cell phone system;
The described second class startup process is carried out the initialize routine that described second class starts the dynamic library file of process, is finished, and the priority of recovering described second class startup process is normal priority.
7. method according to claim 6 is characterized in that, after the described first kind started process or described second class startup process transmission startup command, described method also comprised at the application program launching device:
Described application program launching device reduces the priority of described application program launching device place process.
8. method according to claim 7 is characterized in that, after the first kind started described application program of process initiation or the described application program of second class startup process initiation, described method also comprised:
Described application program launching device recovers the priority of described application program launching device place process.
9. according to each described method in the claim 3 to 8, it is characterized in that,
The first kind startup process that described first kind startup process collection comprises is the process with following attribute:
Finished the execution of the public operation of all application programs, go forward side by side in the incoming event major cycle, in described incident major cycle, wait for the startup command of the described application program of startup that receives described application program launching device, after receiving described startup command, the initialize routine that only needs to load the dynamic library file of described application program to be started and carry out described dynamic library file;
The second class startup process that described second class startup process collection comprises is the process with following attribute:
Finished the execution of the public operation of all described application programs, loaded the dynamic library file of described application program to be started, go forward side by side in the incoming event major cycle, in described incident major cycle, wait for the startup command of the described application program of startup that receives described application program launching device, after receiving described startup command, only need to carry out the initialize routine of described dynamic library file;
Wherein, described public operation comprises: load shared library that all described application programs operations all need, initialization graphics subsystem, initialization time processing subsystem and initialization use communication subsystem.
10. an application program launching device is used to adopt the portable terminal of dynamic link mode to start application program, it is characterized in that described device comprises:
Receiver module is used to receive the startup request of described application program to be started;
Arbitration modules is used for determining whether described application program started after start;
Second selects module, is used to select second process of duplicating according to first process that starts described application program;
Second starts module, is used for the described application program of second process initiation of duplicating according to first process that starts described application program.
11., it is characterized in that described application program launching device also comprises according to right 10 described application program launching devices:
First selects module, is used for determining to start under the situation of described application program any one first kind startup process of selection in default first kind startup process collection after the start first;
First starts module, is used for sending the startup command that starts described application program to described first kind startup process, indicates the described first kind to start the described application program of process initiation.
12., it is characterized in that described application program launching device also comprises according to right 11 described application program launching devices:
Priority is provided with module, is used to reduce or recover the priority of described application program launching device place process.
CN200910174322.7A 2009-09-07 2009-09-07 Method and device for starting application program Expired - Fee Related CN101639787B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910174322.7A CN101639787B (en) 2009-09-07 2009-09-07 Method and device for starting application program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910174322.7A CN101639787B (en) 2009-09-07 2009-09-07 Method and device for starting application program

Publications (2)

Publication Number Publication Date
CN101639787A true CN101639787A (en) 2010-02-03
CN101639787B CN101639787B (en) 2013-02-27

Family

ID=41614780

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910174322.7A Expired - Fee Related CN101639787B (en) 2009-09-07 2009-09-07 Method and device for starting application program

Country Status (1)

Country Link
CN (1) CN101639787B (en)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789999A (en) * 2010-02-09 2010-07-28 中兴通讯股份有限公司 Method and device for scene management and backup restoration of mobile terminal
CN101882092A (en) * 2010-05-11 2010-11-10 中兴通讯股份有限公司 Management method and device for application program
CN102439564A (en) * 2011-10-24 2012-05-02 华为技术有限公司 Method and system for starting application program in linux container
CN102591770A (en) * 2011-12-27 2012-07-18 奇智软件(北京)有限公司 Method and device for detecting starting time of target application
WO2013056555A1 (en) * 2011-10-18 2013-04-25 青岛海信移动通信技术股份有限公司 User terminal partitioning method, device and user terminal
CN103853575A (en) * 2012-12-06 2014-06-11 腾讯科技(深圳)有限公司 Configuration method and configuration device for management of application of intelligent terminal
CN103927207A (en) * 2014-04-10 2014-07-16 安一恒通(北京)科技有限公司 Software acceleration method and device
CN104077151A (en) * 2013-03-26 2014-10-01 联想(北京)有限公司 Method for fast starting network application and electronic equipment
WO2014187402A1 (en) * 2013-10-10 2014-11-27 中兴通讯股份有限公司 Method and device for realizing acceleration of starting network management client
CN104735030A (en) * 2013-12-23 2015-06-24 广州华多网络科技有限公司 Application opening method, device and system
CN105389174A (en) * 2014-09-04 2016-03-09 Tcl集团股份有限公司 Application program acceleration starting method and system based on mobile operating system
CN105488386A (en) * 2014-10-13 2016-04-13 腾讯科技(深圳)有限公司 IOS terminal protection method and terminal
CN105893087A (en) * 2016-03-30 2016-08-24 珠海市魅族科技有限公司 Application program starting method and device
WO2017157175A1 (en) * 2016-03-15 2017-09-21 阿里巴巴集团控股有限公司 Application starting method and apparatus, and smart terminal
CN108958824A (en) * 2017-05-18 2018-12-07 龙芯中科技术有限公司 Starting method, apparatus, electronic equipment and the storage medium of application program
CN109144596A (en) * 2017-06-16 2019-01-04 腾讯科技(深圳)有限公司 Quickly starting method, apparatus, terminal, server and system
CN110007981A (en) * 2019-02-28 2019-07-12 Oppo广东移动通信有限公司 Start method, apparatus, electronic equipment and the medium of application program
CN110162345A (en) * 2019-05-05 2019-08-23 网宿科技股份有限公司 A kind of application program access method, device and storage medium
CN110750284A (en) * 2019-10-15 2020-02-04 Oppo(重庆)智能科技有限公司 Application quick starting method, terminal and computer readable storage medium
CN110990075A (en) * 2019-11-18 2020-04-10 北京小米移动软件有限公司 Starting method, device and equipment of fast application and storage medium
CN111142955A (en) * 2019-12-31 2020-05-12 联想(北京)有限公司 Information processing method and device
CN112825538A (en) * 2019-11-20 2021-05-21 Oppo(重庆)智能科技有限公司 Application starting method and device and terminal equipment
WO2024037470A1 (en) * 2022-08-16 2024-02-22 华为技术有限公司 Audio data processing method and apparatus, and storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103888619B (en) * 2014-04-16 2016-03-23 青岛海信电子设备股份有限公司 A kind of message treatment method and system thereof

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100518198C (en) * 2004-12-30 2009-07-22 上海贝豪通讯电子有限公司 Method for increasing handset starting response speed
CN101222709B (en) * 2008-01-22 2011-08-10 中兴通讯股份有限公司 Fast starting method of mobile phone application program

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789999B (en) * 2010-02-09 2014-04-30 中兴通讯股份有限公司 Method and device for scene management and backup restoration of mobile terminal
CN101789999A (en) * 2010-02-09 2010-07-28 中兴通讯股份有限公司 Method and device for scene management and backup restoration of mobile terminal
CN101882092A (en) * 2010-05-11 2010-11-10 中兴通讯股份有限公司 Management method and device for application program
WO2011140760A1 (en) * 2010-05-11 2011-11-17 中兴通讯股份有限公司 Application program management method and device
CN101882092B (en) * 2010-05-11 2013-06-05 中兴通讯股份有限公司 Management method and device for application program
WO2013056555A1 (en) * 2011-10-18 2013-04-25 青岛海信移动通信技术股份有限公司 User terminal partitioning method, device and user terminal
US9183008B2 (en) 2011-10-24 2015-11-10 Huawei Technologies Co., Ltd. Method and system for starting application program in Linux container
CN102439564A (en) * 2011-10-24 2012-05-02 华为技术有限公司 Method and system for starting application program in linux container
WO2012167529A1 (en) * 2011-10-24 2012-12-13 华为技术有限公司 Method and system for starting application in linux container
CN102439564B (en) * 2011-10-24 2014-03-26 华为技术有限公司 Method and system for starting application program in linux container
CN102591770A (en) * 2011-12-27 2012-07-18 奇智软件(北京)有限公司 Method and device for detecting starting time of target application
CN103853575B (en) * 2012-12-06 2017-08-22 腾讯科技(深圳)有限公司 The collocation method and device of intelligent terminal application program management
CN103853575A (en) * 2012-12-06 2014-06-11 腾讯科技(深圳)有限公司 Configuration method and configuration device for management of application of intelligent terminal
CN104077151A (en) * 2013-03-26 2014-10-01 联想(北京)有限公司 Method for fast starting network application and electronic equipment
CN104077151B (en) * 2013-03-26 2017-11-24 联想(北京)有限公司 The method and electronic equipment of fast start network application
WO2014187402A1 (en) * 2013-10-10 2014-11-27 中兴通讯股份有限公司 Method and device for realizing acceleration of starting network management client
CN104735030A (en) * 2013-12-23 2015-06-24 广州华多网络科技有限公司 Application opening method, device and system
CN104735030B (en) * 2013-12-23 2019-04-16 广州华多网络科技有限公司 Using open method, device and system
CN103927207A (en) * 2014-04-10 2014-07-16 安一恒通(北京)科技有限公司 Software acceleration method and device
CN103927207B (en) * 2014-04-10 2017-07-25 安一恒通(北京)科技有限公司 Software acceleration method and apparatus
CN105389174A (en) * 2014-09-04 2016-03-09 Tcl集团股份有限公司 Application program acceleration starting method and system based on mobile operating system
CN105488386A (en) * 2014-10-13 2016-04-13 腾讯科技(深圳)有限公司 IOS terminal protection method and terminal
WO2017157175A1 (en) * 2016-03-15 2017-09-21 阿里巴巴集团控股有限公司 Application starting method and apparatus, and smart terminal
US10846101B2 (en) 2016-03-15 2020-11-24 Alibaba Group Holding Limited Method and system for starting up application
CN105893087A (en) * 2016-03-30 2016-08-24 珠海市魅族科技有限公司 Application program starting method and device
CN108958824A (en) * 2017-05-18 2018-12-07 龙芯中科技术有限公司 Starting method, apparatus, electronic equipment and the storage medium of application program
CN109144596A (en) * 2017-06-16 2019-01-04 腾讯科技(深圳)有限公司 Quickly starting method, apparatus, terminal, server and system
CN109144596B (en) * 2017-06-16 2020-09-18 腾讯科技(深圳)有限公司 Quick starting method, device, terminal, server and system
CN110007981A (en) * 2019-02-28 2019-07-12 Oppo广东移动通信有限公司 Start method, apparatus, electronic equipment and the medium of application program
CN110162345A (en) * 2019-05-05 2019-08-23 网宿科技股份有限公司 A kind of application program access method, device and storage medium
CN110162345B (en) * 2019-05-05 2022-02-18 网宿科技股份有限公司 Application program access method and device and storage medium
CN110750284A (en) * 2019-10-15 2020-02-04 Oppo(重庆)智能科技有限公司 Application quick starting method, terminal and computer readable storage medium
CN110750284B (en) * 2019-10-15 2023-03-28 Oppo(重庆)智能科技有限公司 Application quick starting method, terminal and computer readable storage medium
CN110990075A (en) * 2019-11-18 2020-04-10 北京小米移动软件有限公司 Starting method, device and equipment of fast application and storage medium
CN110990075B (en) * 2019-11-18 2023-08-29 北京小米移动软件有限公司 Method, device, equipment and storage medium for starting fast application
CN112825538A (en) * 2019-11-20 2021-05-21 Oppo(重庆)智能科技有限公司 Application starting method and device and terminal equipment
CN112825538B (en) * 2019-11-20 2022-04-12 Oppo(重庆)智能科技有限公司 Application starting method and device, terminal equipment and storage medium
CN111142955A (en) * 2019-12-31 2020-05-12 联想(北京)有限公司 Information processing method and device
CN111142955B (en) * 2019-12-31 2021-07-16 联想(北京)有限公司 Information processing method and device
WO2024037470A1 (en) * 2022-08-16 2024-02-22 华为技术有限公司 Audio data processing method and apparatus, and storage medium

Also Published As

Publication number Publication date
CN101639787B (en) 2013-02-27

Similar Documents

Publication Publication Date Title
CN101639787B (en) Method and device for starting application program
CN101222709B (en) Fast starting method of mobile phone application program
EP1769351B1 (en) Method, software and apparatus for using application state history information when re-launching applications
CN104102506B (en) A kind of Android Acceleration of starting methods based on ARM platforms
CN102163150B (en) A kind of system start method and device
JP5214537B2 (en) Multiprocessor system
RU2011122658A (en) ISOLATION OF ACCEPTED INFORMATION ON A LOCKED DEVICE
KR20170096103A (en) Improved function callback mechanism between a central processing unit (cpu) and an auxiliary processor
CN112596960A (en) Distributed storage service switching method and device
CN102214113A (en) Method, device and terminal for upgrading operating system
CN106528210A (en) Application running method and apparatus
CN101924820A (en) A kind of method for downloading software, system and portable terminal
CN101364178A (en) Executing method and management method of BIOS while starting up for computer
CN104216776A (en) Quick starting method for Android operating system based on BLCR (Berkeley lab checkpoint restart) technology
CN103257700A (en) Energy saving method and energy saving device for Android system
CN101799772A (en) Kernel dispatching method, kernel backup method and multi-core processor
CN104714839A (en) Method and device for controlling life cycle of processes
CN102214105B (en) Parallelization quick start method and the electronic installation with multiplied unit
CN102279762A (en) Method for improving service efficiency of internal memory on mobile phone platform
CN106020822B (en) Weak reference implementation method and device towards Pool object
CN108024052A (en) intelligent photographing method and device
KR100857824B1 (en) Method for managing execution of mobile platform based ram residence application
CN102122249B (en) Java application program starting method and Java application program starting device
CN102541945B (en) Multi-file copying method for terminal and terminal
KR20070006517A (en) Mobile communication terminal and booting method thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20170906

Address after: Fugou County town of Zhoukou Bian gang of 461321 cities in Henan Province in the west of the village in the village administrative camp

Patentee after: Zhu Ruihong

Address before: 518057 Nanshan District science and technology, Guangdong Province, South Road, No. 55, No.

Patentee before: ZTE Corporation

TR01 Transfer of patent right
CB03 Change of inventor or designer information

Inventor after: Zhu Ruihong

Inventor before: He Bin

Inventor before: Gu Youpeng

CB03 Change of inventor or designer information
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130227

Termination date: 20190907

CF01 Termination of patent right due to non-payment of annual fee