SERVICE OPERATION METHOD AND ELECTRONIC DEVICE SUPPORTING SAME

An electronic device including a memory including an application and a plurality of services, and a processor is provided. The processor is configured to register, in a first service among the plurality of services, a service other than the first service among the plurality of services, the service being registered in an inactive state preparing for execution by the application, wherein the first service includes a list in which the service in the inactive state is registered, execute a first application using a second service among the plurality of services, confirm whether the second service is registered in the list in response to a request for the second service of the first application, and switch the second service from the inactive state to an active state, in which the second service can be executed by the application, when it is confirmed that the second service is registered in the list.

BACKGROUND

The disclosure relates to a service operation method and an electronic device supporting the same.

2. Description of Related Art

As the distribution of electronic devices equipped with an independent operating system becomes more widespread, the electronic devices can support various services grafted onto their core functions. For example, electronic devices includes system services provided by the manufacturer of the operating system or a business operator of an original equipment manufacturer (OEM) in memory, and may execute these system services based on applications.

SUMMARY

In the boot-up process of the electronic device, the system services included in the memory may be controlled to have an active state that is available to an application (or executable by an application) according to routines defined in the framework. Therefore, the system services that are collectively activated according to formal routines may reside in the memory in an active state regardless of whether the corresponding system service is executed, and can meaninglessly occupy available space in the memory. In addition, the system services that are collectively activated may operate in the background on the electronic device regardless of whether the system service is executed, thereby affecting battery power consumption or processor response speed deterioration.

Aspects of the disclosure are to address at least the above-mentioned problems and/or disadvantages and to provide at least the advantages described below. Accordingly, an aspect of the disclosure is to provide a service operation method and an electronic device that supports the method, which may dynamically control the active or inactive state of a system service based on whether there is a request (or call) of an application for the system service.

In accordance with an aspect of the disclosure, an electronic device is provided. The electronic device includes a memory including at least one application and a plurality of services, and a processor electrically connected to the memory, wherein the processor is configured to register, in response to booting the electronic device, in a first service among the plurality of services, at least one service other than the first service among the plurality of services, the at least one service being registered in an inactive state preparing for execution by the at least one application, the first service including a list in which the at least one service in the inactive state is registered, execute a first application using a second service among the plurality of services, identify whether the second service is registered in the list in response to a request for the second service of the first application, and switch the second service from the inactive state to an active state, in which the second service can be executed by the at least one application, when it is identified that the second service is registered in the list.

In accordance with another aspect of the disclosure, a service operation method of an electronic device is provided. The service operation method includes registering, in response to booting the electronic device, in a first service among a plurality of services included in a memory, at least one service other than the first service among the plurality of services, the at least one service being registered in an inactive state preparing for execution by at least one application included in the memory, the first service including a list in which the at least one service in the inactive state is registered, executing a first application using a second service among the plurality of services, identifying whether the second service is registered in the list in response to a request for the second service of the first application, and switching the second service from the inactive state to an active state, in which the second service can be executed by the at least one application, when it is identified that the second service is registered in the list.

According to various embodiments of the disclosure, a process capable of dynamically controlling an active state or an inactive state of a system service based on whether there is a request (or call) of an application for the system service may be provided.

According to various embodiments of the disclosure, available memory space may be efficiently managed based on the state control of the system service.

According to various embodiments of the disclosure, power consumption or response speed of the electronic device may be improved based on the state control of the system service.

DETAILED DESCRIPTION

FIG.1is a diagram illustrating an electronic device in a network environment according to an embodiment of the disclosure.

The camera module180may capture a still image or moving images. According to an embodiment of the disclosure, the camera module180may include one or more lenses, image sensors, image signal processors, or flashes.

FIG.2is a diagram illustrating some components of an electronic device according to an embodiment of the disclosure.

Referring toFIG.2, an electronic device101according to an embodiment may include a processor120and a memory130. According to various embodiments of the disclosure, the electronic device101may additionally include components other than the above-described components. For example, the electronic device101may further include at least some of the components mentioned throughFIG.1.

The memory130may include a paging area230, a service manager210, a system server220, and at least one application146. In various embodiments of the disclosure, at least one of the service manager210and the system server220included in the memory130may be configured as a software program or a hardware module. In an embodiment of the disclosure, the at least one of the service manager210and the system server220may execute or operate under the control of the processor120to perform a function related to a corresponding component. In another embodiment of the disclosure, the at least one of the service manager210and the system server220may independently perform a function related to a corresponding component independently of the processor120.

In an embodiment of the disclosure, the paging area230may include a plurality of services. For example, the paging area230may include a plurality of system services231to N (e.g., at least one of java system service and native system service) provided by at least one of a manufacturer of an operating system (e.g., Android, Ubuntu, iOS, or Windows) applied to the electronic device101and an operator of an original equipment manufacturer (OEM). In an embodiment of the disclosure, the paging area230may include resources (e.g., data and commands) required for execution of the plurality of system services231to N. In various embodiments of the disclosure, the paging area230may be an area to which a portion of the total capacity of the memory130is allocated or an area including lower layers of the memory130. Alternatively, the paging area230may be a cache area that at least temporarily includes the plurality of system services231to N.

In an embodiment of the disclosure, the service manager210may support the use (or execution) of at least one application146for at least some of the plurality of system services231to N included in the paging area230. For example, in the service manager210, at least one system service among the plurality of system services231to N may be registered in an active state (e.g., initialized state) that can be executed by the at least one application146. In various embodiments of the disclosure, the fact that the at least one system service is registered in the service manager210in the active state may mean an operation in which identification information and address information (e.g., path information in which the system service is located) of each of the at least one system service having the active state are recorded or registered in the service manager210. According to an embodiment of the disclosure, the at least one system service being in the active state, which is registered in the service manager210, may be switched to an inactive state based on a use end event for the corresponding system service.

In some embodiments of the disclosure, a lazy service221included in the system server220described below may be registered in the service manager210. In addition, at least one system service being in an inactive state (e.g., un-initialized state) preparing for execution by at least one application146may be registered in the lazy service221registered in the service manager210. In various embodiments of the disclosure, the fact that the at least one system service is registered in the inactive state in the lazy service221may mean an operation in which only identification information of each of the at least one system service having the inactivate state is recorded or registered in the lazy service221. According to an embodiment of the disclosure, the at least one system service being in the inactivate state, which is registered in the lazy service221, may be switched to the activate state based on a request (or call) of the at least one application146for the corresponding system service.

Hereinafter, the fact that the at least one system service is registered in the active state executable by the at least one application146may mean an operation in which identification information and address information of each of the at least one system service being in the active state are recorded or registered in an object in which the at least one system service is registered. Correspondingly, the fact that the at least one system service is registered in the inactive state preparing for execution by the at least one application146may mean an operation in which only identification information of each of the at least one system service being in the inactive state is recorded or registered in an object in which the at least one system service is registered.

In an embodiment of the disclosure, the system server220may support state transition for at least some of the plurality of system services231to N included in the paging area230. In this regard, with respect to the at least one system service having the inactive state, the system server220may include the lazy service221that supports transition to the active state according to a request (or call) of the at least one application146for the corresponding system service. In addition, the system server220may include a release service223that supports a transition to the inactive state according to a use end event for the corresponding system service, with respect to the at least one system service having the active state.

In an embodiment of the disclosure, the at least one application146may execute at least one system service related to a function of the corresponding application. For example, the at least one application146may execute the at least one system service being in the active state, which is registered in the service manager210, based on access to the service manager210. In various embodiments of the disclosure, the at least one application146may independently execute each of the at least one system service being in the active state or may interlock and execute some of the at least one system service being in the active state. In various embodiments of the disclosure, the at least one application146may include at least one of an application loaded in the form of a preload when the electronic device101is manufactured and an application downloaded in the form of a third party from an online market.

In an embodiment of the disclosure, the processor120may be electrically or operatively connected to the memory130to control a function or operation of the memory130. For example, the processor120may transmit, to at least one of the at least one application146included in the memory130, the service manager210, and the system server220, at least one instruction related to the function or operation of the corresponding component. In addition, the processor120may perform an operation or process on data received from the at least one of the at least one application146, the service manager210, and the system server220. In an embodiment of the disclosure, the processor120may control the service manager210and the system server220to dynamically change the states of at least some of the plurality of system services231to N included in the paging area230. For example, the processor120may identify the state of the corresponding system service in response to a system service request (or call) of the at least one application146. When it is identified that the requested state of the system service is the inactive state, the processor120may switch the corresponding system service to the active state executable by the at least one application146. For another example, the processor120may identify the state of the corresponding system service in response to the occurrence of a use end event for at least one system service. When it is identified that the state of the system service corresponding to the use end event is the active state, the processor120may switch the corresponding system service to the inactive state preparing for execution by the at least one application146. Hereinafter, with reference toFIG.3or.4, various embodiments related to dynamic state transition of at least one system service will be described.

FIG.3is a flowchart300illustrating an operation of controlling activation for a system service of an electronic device according to an embodiment of the disclosure.

Referring toFIG.3, the processor120of the electronic device101may identify booting of the electronic device101. In response to the boot-up process, in operation310, the processor120may register a plurality of system services231to N included in the paging area230of the memory130in the system server220. For example, the processor120may register the plurality of system services231to N included in the paging area230in an inactive state (e.g., un-initialized state) preparing for execution by at least one application146in the system server220.

In operation320, the processor120may register at least some of the plurality of system services231and233to N being in the inactive state, which are registered in the system server220, in the lazy service221included in the system server220. For example, the processor120may maintain at least one system service in the inactive state and register the at least one system service in the lazy service221. Accordingly, identification information of each of the at least one system service being in the inactive state may be recorded or registered in the lazy service221in the form of a list321.

According to an embodiment of the disclosure, the processor120may register all of the plurality of system services231and233to N being in the inactive state, which are registered in the system server220, in the lazy service221.

According to another embodiment of the disclosure, the processor120may register some (e.g., service A231and service B233) among the plurality of system services231and233to N being in the inactive state, which are registered in the system server220, in the lazy service221. In this regard, the memory130may include a first white list in which identification information of at least one system service (e.g., the remaining system services except service A231and service B233among the plurality of system services231and233to N) to be excluded from being registered for the lazy service221. According to an embodiment of the disclosure, the first white list may be generated by the processor120and stored in the memory130. In this regard, when a first boot-up process of the electronic device101is completed, the processor120may identify at least one system service that is executed within a designated period after the completion of the first boot-up process based on log information related to the execution history of the plurality of system services231and233to N. The processor120may record identification information on a designated number of system services, which are determined in descending order of execution count among the identified at least one system service, in the first white list. According to an embodiment of the disclosure, the processor120may refer to the first white list stored in the memory130when performing a second boot-up process after the first boot-up process. For example, the operation of registering at least some of the plurality of services231and233to N being in the inactive state, which are registered in the system server220, in the lazy service221, the processor120may exclude a designated number of system services corresponding to the identification information recorded in the first white list from being registered for the lazy service221. According to various embodiments of the disclosure, the number of system services recorded in the first white list may be determined as a default value based on the capacity of the memory130or may be determined, or changed according to user control.

Alternatively, the memory130may include a second white list in which identification information of at least one system service to be excluded from being registered for the lazy service221is recorded. According to an embodiment of the disclosure, the second white list may be generated based on training of the processor120and stored in the memory130. In this regard, the processor120may include a machine learning algorithm. When the first boot-up process of the electronic device101is completed, the processor120may use the machine learning algorithm to train the execution pattern (e.g., at least one of time information at the time of execution and location information of the electronic device101at the time of execution) of the at least one system service that is executed for a designated first period (e.g., a period between the first boot-up process and a third boot-up process before the first boot-up process). The processor120may group (e.g., at least one of groups classified according to execution time and groups classified according to execution location) identification information of the at least one system service whose execution pattern has been trained, for each of the execution patterns, and record the grouped information in the second white list. According to an embodiment of the disclosure, the processor120may refer to the second white list stored in the memory130when performing the second boot-up process after the first boot-up process. For example, in the operation of registering at least some of the plurality of system services231and233to N being in the inactive state, which are registered in the system server220, in the lazy service221, the processor120may identify a group corresponding to information of the current time (e.g., at least one of time information and location information of the electronic device101) with reference to the second white list. The processor120may exclude at least one system service corresponding to the identified identification information in the group from being registered for the lazy service221. According to various embodiments of the disclosure, at least one of the first white list and the second white list may be updated by the processor120in response to the boot-up process of the electronic device101.

As described above, the plurality of system services231to N included in the paging area230may be registered in the inactive state in the system server220(or the lazy service221included in the system server220) in response to the boot-up process of the electronic device101. Accordingly, the plurality of system services231to N may not reside in the active state on the memory130and may not operate in the background on the electronic device101.

In operation330, the processor120may register the lazy service221included in the system server220in the service manager210. In this case, in operation320, the at least one system service registered in the inactive in the lazy service221may be registered in the service manager210based on the lazy service221while maintaining the inactive state. In an embodiment of the disclosure, when only some (e.g., service A231and service B233) of the plurality of system services231and233to N being in the inactive state, which are registered in the system server220are registered in the lazy service221, the processor120may register the remaining some system services (e.g., service N{N}) among the plurality of system services231and233to N being in the inactive state in the service manager210while registering the lazy service221for the service manager210. For example, the processor120may switch the remaining some system services (e.g., service N{N}) from the inactive state to the activate state executable by the at least one application146to register the switched system services in the service manager210. In this case, identification information and address information of the remaining some system services (e.g., service N{N}) switched to the active state may be recorded or registered in the service manager210.

In operation340, the processor120may detect a first user input for executing a first application among the at least one application146included in the memory130. The processor120may execute the first application in response to the detection of the first user input. According to an embodiment of the disclosure, the first application may use (or execute) at least one of the plurality of system services231to N included in the paging area230in relation to the function operation of the corresponding application. For example, in operation350, the processor120may detect a second user input for using a service related to the function of the first application, and receive a signal or data for requesting (or calling) at least one system service corresponding to the service from the first application.

In operation360, the processor120may identify the service manager210in response to at least one system service request (or call) of the first application. For example, the processor120may identify the lazy service221registered in the service manager210by accessing the service manager210. According to an embodiment of the disclosure, the processor120may identify a list321included in the lazy service221as at least part of the operation of identifying the lazy service221. The processor120may identify at least one system service (e.g., service A231and service B233) registered in the list321and the state of the corresponding system service.

In an embodiment of the disclosure, the at least one system service requested (or called) by the first application may correspond to at least some (e.g., service A231) among the at least one system service (e.g., service A231and service B233) being in the inactive state, which is registered in the form of the list321in the lazy service221. In this case, the processor120may control the state of the at least one system service (e.g., service A231) requested (or called) from the first application. For example, in operation370, the processor120may switch the requested or called at least one system service (e.g., service A231) being in the inactive state on the lazy service221, which is registered in the service manager210, to the active state (e.g., initialized state) executable by the first application. The processor120may register the at least one system service (e.g., service A231) switched to the active state in the service manager210. In addition, the processor120may release the registration of the requested (or called) at least one system service (e.g., service A231) on the lazy service221registered in the service manager210. Accordingly, identification information and address information on the at least one system service (e.g., service A231) being in the active state, which is registered in the service manager210, may be recorded or registered in the service manager210. In an embodiment of the disclosure, the processor may use resources (e.g., data and instruction) of the corresponding system service included in the paging area230, based on the identification information and address information of the at least one system service (e.g., service A231) which is recorded or registered in the service manager210. The processor120may use the resources to execute the at least one system service (e.g., service A231) requested (or called) from the first application.

As described above, at least some (at least one system service registered in the lazy service221) of the plurality of system services231to N included in the paging area230may be controlled in the inactive state preparing for execution before the request (or call) of the at least one application146, and may be controlled in the executable active state from the inactive state based on the request (or call) of the at least one application146.

In an embodiment of the disclosure, the at least one system service requested (or called) from the first application may not correspond to the at least one system service (e.g., service A231and service B233) being in the inactive state, which is registered in the form of the list321in the lazy service221. In this case, the processor120may identify the at least one system service (e.g., service N{N}) being in the active state, which is registered in the service manager210. For example, the processor120may identify at least one system service corresponding to the at least one system service requested (or called) from the first application among the at least one system service (e.g., service N{N}) being in the active state, which is registered in the service manager210. The processor120may use resources (e.g., data and instruction) of the corresponding system service included in the paging area230, based on address information on the identified at least one system service recorded or registered in the service manager210. The processor120may use the resources to execute the at least one system service requested (or called) from the first application.

In various embodiments of the disclosure, the processor120may perform the operation of identifying the at least one system service being in the inactive state, which is registered in the list321of the lazy service221, in response to the at least one system service request (or call) of the first application, and the operation of identifying the at least one system service being in the active state, which is registered in the service manger210, substantially simultaneously or sequentially according to a designated order.

FIG.4is a flowchart400illustrating an operation of controlling inactivation for a system service of an electronic device according to an embodiment of the disclosure.

Referring toFIG.4, an embodiment at least partially related to the embodiment ofFIG.3will be described. For example, in the embodiment described with reference toFIG.4, there will be described operations of the electronic device of switching at least one system service (e.g., service A231ofFIG.3) from an active state (e.g., initialized state) to an inactive state (e.g., un-initialized state), wherein the at least one system service has been switched from the inactive state to the active state according to a request (or a call) of a first application and has been registered in a service manager (e.g., the service manager210ofFIG.3). In this regard, at least some of the components of the electronic device shown inFIG.4may be the same as the components of the electronic device mentioned throughFIG.3, and duplicate descriptions of the same components will be omitted below.

Referring toFIG.4, in operation410, an end event for using at least one system service of at least one application146included in the memory130of the electronic device101may occur. For example, an event in which execution of a first application capable of using at least one system service (e.g., service A231) among a plurality of system services231to N included in the paging area230ends may occur. For another example, in the operating environment of the first application, an event in which the execution of the at least one system service (e.g., service A231) that can be used by the first application ends may occur. For another example, an even in which the at least one system service (e.g., service A231), which has been switched from the inactive state to the active state according to a request (or call) of the first application and has been registered in the service manager210, is not executed by the first application until a designated first time elapses from the registration for the service manager210may occur.

In operations420and430, the processor120may identify the occurrence of the end event related to the first application, and in response to the identification, execute (or call) a release service223included in the system server220. In operation440, the processor120may access the service manager210based on the execution of the release service223. The processor120may identify the at least one system service (e.g., service A231) corresponding to the end event among the at least one system service (e.g., the service A231and service N{N}) being in the active state, which is registered in the service manager210.

In operation450, the processor120may control the state of the identified at least one system service (e.g., service A231). For example, as the end event occurs, the processor120may switch the at least one system service (e.g., service A231) which is registered in the service manager210as the active state, to the inactive state preparing for execution by the first application, and release the registration from the service manager210. In this case, identification information and address information on the at least one system service (e.g., service A231) recorded or registered in the service manager210may be removed from the service manager210. In addition, the processor120may register the at least one system service (e.g., service A231) switched to the inactive state in the system server220as the inactive state. In operation460, the processor120may register the lazy service221registered in the service manager210while maintaining the at least one system service (e.g., service A231) being in the inactive state, which is registered in the system server220. Accordingly, a list321included in the lazy service221may be updated from a state in which the existing at least one system service (e.g., service B233) is registered to a state in which the at least one system service (e.g., service A231) being in the inactive state is further registered.

According to various embodiments of the disclosure, in the operation of switching the at least one system service (e.g., service A231), which has been registered in the service manager210as the active state, to the inactive state according to the occurrence of the end event, the processor120may refer to log information related to the execution history of the plurality of system services231to N. For example, the processor120may identify at least one other system service executed in conjunction with the at least one system service (e.g., service A231) based on the log information. The processor120may generate a third white list in which identification information of the identified at least one other system service is recorded, and store the generated third white list in the memory130. In an embodiment of the disclosure, the processor120may refer to the third white list when performing a second boot-up process after the first boot-up process of the electronic device101. For example, in the operation of registering at least some of the plurality of system services231to N included in the paging area230, in the lazy service221, the processor120may exclude at least one system service corresponding to identification information recorded in the third white list from being registered for the lazy service221. In this embodiment of the disclosure, in a case in which the at least one system service (e.g., service A231) available in the first application is requested (or called) from the first application, since a request (or call) of the at least one other system service that can be executed in conjunction with the at least one system service (e.g., service A231) is expected, this case may be understood as an operation for registering the at least one other system service in the service manger210as the active state.

FIG.5is a diagram illustrating a service operation method of an electronic device according to an embodiment of the disclosure.

At least some of the operations of the electronic device described with reference toFIG.5may correspond to the operations of the electronic device (or processor) mentioned above with reference toFIG.3, and duplicate descriptions of the same components will be omitted below.

Referring toFIG.5, in operation510, a processor (e.g., the processor120ofFIG.1,2, and3, or4) of an electronic device (e.g., the electronic device101ofFIG.1,2, and3, or4) may identify booting of the electronic device101and perform a series of boot-up processes.

In operation520, the processor120, in response to the boot-up process, may register at least some of a plurality of system services (e.g., the plurality of system services231to N ofFIGS.2and3or4) included in a memory (e.g., the memory130ofFIG.1,2, and3, or4) of the electronic device101, in an inactive state in a designated first service (e.g., the lazy service221ofFIG.2or3). For example, the processor120may register the registered at least one system service in an inactive state (e.g., un-initialized state) preparing for execution by at least one application (e.g., the at least one application146ofFIG.1,2, and3, or4) included in the memory130, in the first service (e.g., the lazy service221). In an embodiment of the disclosure, the fact that the at least one system service is registered in the inactive state in the first service (e.g., the lazy service221) may mean an operation in which identification information of each of the at least one system service being in the inactive state is recorded or registered in the first service (e.g., the lazy service221).

In operation530, the processor120may detect a first user input for executing a first application among the at least one application146, and execute the first application in response to the detection of the first user input. In an embodiment of the disclosure, the first application may use (or execute) at least one second system service among the plurality of system services231to N in relation to the function operation of the corresponding application.

In operation540, the processor120may detect a second user input for using a service related to the function of the first application, and receive a signal or data for requesting (or calling) at least one second system service corresponding to the service from the first application.

In operation550, in response to the request (or call) for the at least one second system service, the processor120may determine whether the at least one second system service is registered in the first service (e.g., the lazy service221). For example, the processor120may identify a list included in the first service (e.g., the lazy service221), and identify the at least one system service registered in the list and the state of the corresponding system service.

In an embodiment of the disclosure, the at least one second system service requested (or called) by the first application may correspond to at least some of the at least one system service being in the inactive state, which is registered in the first service (e.g., the lazy service221). In this case, in operation560, the processor120may control the state of at least one second system service requested (or called) by the first application. For example, the processor120may switch the at least one second system service registered in the first service (e.g., the lazy service221) from an inactive state to an active state (e.g., initialized state) executable by the first application. In addition, the processor120may release the registration of the at least one second system service switched to the active state on the first service (e.g., the lazy service221). In an embodiment of the disclosure, the fact that the at least one second system service has the active state may mean that address information (e.g., path information in which the at least one second system service is located) on the at least one second system service can be used or provided.

In operation570, the processor120may use resources (e.g., data and instruction) of the corresponding system service based on the address information of the at least one second system service switched to the active state, thereby executing the at least one second system service.

An electronic device according to the above described various embodiments may include a memory including at least one application and a plurality of services, and a processor electrically connected to the memory.

According to various embodiments of the disclosure, the processor may register, in response to booting the electronic device, in a first service among the plurality of services, at least one service other than the first service among the plurality of services, the at least one service being registered in an inactive state preparing for execution by the at least one application.

According to various embodiments of the disclosure, the first service may include a list in which the at least one service being in the inactive state is registered.

According to various embodiments of the disclosure, the processor may execute a first application using a second service among the plurality of services, identify whether the second service is registered in the list in response to a request for the second service of the first application, and switch the second service from the inactive state to an active state, in which the second service can be executed by the at least one application, when it is identified that the second service is registered in the list.

According to various embodiments of the disclosure, at least some of the plurality of services may include at least one of a java system service and a native system service.

According to various embodiments of the disclosure, the processor may generate at least one white list in which at least one service to be excluded from being listed for the first service among the plurality of services is recorded, and store the generated at least one white list in the memory.

According to various embodiments of the disclosure, in an operation of performing another booting after the booting, the processor may determine at least one service other than the first service among the plurality of services by using the at least one white list.

According to various embodiments of the disclosure, the at least one white list may include a first white list.

According to various embodiments of the disclosure, after completion of the booting, the processor may record, in the first white list, a designated number of at least one service, which is determined in a descending order of execution count among at least one service executed for a designated period.

According to various embodiments of the disclosure, the at least one white list may include a second white list.

According to various embodiments of the disclosure, after completion of the booting, the processor may train an execution pattern of at least one service executed during a period between the booting and the previous booting, and group the at least one service executed during the period between the booting and the previous booting based on the trained execution pattern to record the at least one service in the second white list.

According to various embodiments of the disclosure, in the operation of performing the other booting after the booting, the processor may identify a first service group corresponding to time information at the time of performing the other booting or location information of the electronic device at the time of performing the other booting among at least one service group recorded in the second white list, and determine at least one service included in the first service group as the at least one service to be excluded from being registered for the first service.

According to various embodiments of the disclosure, the at least one white list may include a third white list.

According to various embodiments of the disclosure, the processor may identify at least one service executed in conjunction with the second service in the first application among the plurality of services, and record the at least one service executed in conjunction with the second service in the third white list.

According to various embodiments of the disclosure, in response to the booting of the electronic device, the processor may control at least one service that is not registered in the first service among the plurality of services to be in an active state executable by the at least one application.

According to various embodiments of the disclosure, when it is identified that the second service is registered in the list, the processor may release the registration of the second service from the list included in the first service.

According to various embodiments of the disclosure, the processor may identify at least one end event related to the use of the second service by the first application, and switch, in response to the end event, the second service switched to the active state from the active state to an inactive state preparing for execution by the at least one application.

According to various embodiments of the disclosure, when the second service is switched from the active state to the inactive state, the processor may register the second service being in the inactive state in the first service.

A service operation method of an electronic device according to the above-described various embodiments may include registering, in response to booting the electronic device, in a first service among a plurality of services included in a memory, at least one service other than the first service among the plurality of services, the at least one service being registered in an inactive state preparing for execution by at least one application included in the memory, the first service including a list in which the at least one service in the inactive state is registered, executing a first application using a second service among the plurality of services, identifying whether the second service is registered in the list in response to a request for the second service of the first application, and switching the second service from the inactive state to an active state, in which the second service can be executed by the at least one application, when it is identified that the second service is registered in the list.

According to various embodiments of the disclosure, the service operation method may further include generating at least one white list in which at least one service to be excluded from being registered for the first service among the plurality of services is recorded, storing the at least one white list in the memory, and determining at least one service other than the first service among the plurality of services by using the at least one white list in an operation of performing another booting after the booting.

According to various embodiments of the disclosure, the generating of the at least one white list may include generating, after completion of the booting, a first white list in which a designated number of at least one service, which is determined in a descending order of execution count among at least one service executed for a designated period, is recorded.

According to various embodiments of the disclosure, the generating of the at least one white list may include training an execution pattern of at least one service executed during a period between the booting and the previous booting, after completion of the booting, and generating a second white list in which the at least one service executed during the period between the booting and the previous booting is grouped and recorded based on the trained execution pattern.

According to various embodiments of the disclosure, the determining of the at least one service other than the first service among the plurality of services may include identifying a first service group corresponding to time information at the time of performing the other booting or location information of the electronic device at the time of performing the other booting among at least one service group recorded in the second white list in the operation of performing the other booting after the booting, and determining at least one service included in the first service group as the at least one service to be excluded from being registered for the first service.

According to various embodiments of the disclosure, the generating of the at least one white list may include identifying at least one service executed in conjunction with the second service in the first application among the plurality of services, and generating a third white list in which the at least one service executed in conjunction with the second service is recorded.

According to various embodiments of the disclosure, the switching of the second service from the inactive state to the active state executable by the at least one application may include releasing the registration of the second service from the list included in the first service.

According to various embodiments of the disclosure, the service operation method may further include identifying at least one end event related to the use of the second service by the first application, and switching, in response to the end event, the second service switched to the active state from the active state to an inactive state preparing for execution by the at least one application.

According to various embodiments of the disclosure, the switching of the second service from the active state to the inactive state preparing for execution by the at least one application may include registering the second service being in the inactive state in the first service.