System and Method to Deploy or Update Operating System Service Capabilities
An information handling system includes an application package and a service. The application package includes an assembly of at least one service function binary. The application is configured to send a register request to a service with a location of the assembly and send a service call for the service function binary to the service. The service receives the register request from the application, copies the assembly to a memory location, loads the service function, receives the service call from the application, and performs the requested service function and return the result to the application.
1 . An information handling system comprising:
a hardware processor executing an application including an assembly of at least one service function binary, the application configured to:
send a register request to a service with a location of the assembly; and
send a service call for the service function binary to the service; and
the service configured to:
receive the register request from the application;
copy the assembly to a memory location;
load the service function;
receive the service call from the application; and
perform the requested service function and return the result to the application;
wherein the application is retrieved from an application store and conforms with application store restrictions that prevent the application from directly performing the at least one service function.
2 . The information handling system of claim 1 , wherein the service function binary includes instructions that when executed perform a service level task required by the application.
3 . The information handling system of claim 1 , wherein the register request includes a trust certificate or is signed by the trust certificate and the service is further configured to verify the trust certificate prior to copying the assembly to the memory location.
4 . The information handling system of claim 1 , wherein the service call includes a trust certificate or is signed by the trust certificate and the service is further configured to verify the trust certificate prior to performing the requested service function.
5 . The information handling system of claim 1 , wherein the service deletes the copy of the assembly from the memory location when the application is closed.
6 . The information handling system of claim 1 , wherein the service maintains the copy of the assembly in the memory location when the application is closed.
7 . The information handling system of claim 5 , wherein the service is configured to delete the copy of the assembly from the memory location when the application is deleted or updated.
8 . A non-transitory computer-readable medium including an application package comprising:
an assembly including at least one service function having instructions that when executed by a service perform a service level task required by an application; and
the application including instructions that when executed:
register with the service;
provide the assembly location to the service; and
call the service function via the service;
wherein the application package conforms to restrictions of an application store limiting the application from directly performing the service level task.
9 . The non-transitory computer-readable medium of claim 8 , wherein registering with the service includes utilizes a trust certificate to verify security of the application.
10 . The non-transitory computer-readable medium of claim 8 , wherein call the at least one service function utilizes a trust certificate to verify security of the application.
11 . The non-transitory computer-readable medium of claim 8 , wherein the instructions to register with the service include instructions to register each time the application is launched.
12 . The non-transitory computer-readable medium of claim 8 , wherein the instructions to register with the service include instructions to register the first time the application is launched.
13 . A method comprising:
receiving a registration request from an application, the registration request including an assembly location;
copying an assembly from the assembly location to a memory location, the assembly including at least one service function binary, each service function binary including instructions that when executed by the service perform a service level task required by the application;
loading the service function;
receiving a service function call from the application;
executing the at least one service function; and
returning the results of the at least one service function to the application;
wherein the application conforms with application store restrictions preventing he application from directly performing the service level task.
14 . The method of claim 13 , further comprising verifying a trust certificate of the application prior to copying the assembly to the memory location.
15 . The method of claim 13 , further comprising verifying a trust certificate of the application prior to prior to performing the requested service function.
16 . The method of claim 13 , further comprising deleting the copy of the assembly from the memory location when the application is closed.
17 . The method of claim 13 , further comprising maintaining the copy of the assembly in the memory location when the application is closed.
18 . The method of claim 13 , further comprising deleting the copy of the assembly from the memory location when the application is deleted or updated.