IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0534772
(2009-08-03)
|
등록번호 |
US-8352937
(2013-01-08)
|
발명자
/ 주소 |
- Sanders, James
- McCarten, Ryan M.
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
5 인용 특허 :
30 |
초록
▼
A system and method for streaming an install package into a virtual environment. The system includes a server and a client. The server streams an install package to the client as a series of streamlets. The client starts an installer component in a suspended state outside the virtual environment. Th
A system and method for streaming an install package into a virtual environment. The system includes a server and a client. The server streams an install package to the client as a series of streamlets. The client starts an installer component in a suspended state outside the virtual environment. The client registers the installer component in the virtual environment and initiates execution of the installer component in the virtual environment to receive portions of the install package and install the received portions of the install package in the virtual environment. During package installation, a virtualization manager detects an attempt to execute a call to a file system and confines file system changes resulting from the call to the virtual environment in response to determining that the attempt was made by the installer component and the installer component is registered in the virtual environment.
대표청구항
▼
1. A computing system comprising: a server configured to stream an application install package; anda client comprising:a virtual environment within which processes may execute, and a non-virtual system environment within which processes may execute; anda process table which identifies processes conf
1. A computing system comprising: a server configured to stream an application install package; anda client comprising:a virtual environment within which processes may execute, and a non-virtual system environment within which processes may execute; anda process table which identifies processes configured to run in the virtual environment;wherein responsive to a request to install said application in the virtual environment, the client is configured to:start an installer component in a suspended state in the non-virtual system environment;register the installer component in the virtual environment; andresume execution of the installer component in the virtual environment;wherein subsequent to resuming execution, the installer component is configured to:begin installation of the application in the virtual environment; andinitiate an attempt to perform an action configured to affect a file system or registry of the non-virtual system environment;wherein responsive to detecting said attempt, a virtualization manager is configured to:access the process table;compare a process ID of the given process to process IDs in the process table;permit the given process to access the non-virtual system environment, in response to determining the process table indicates the process ID is not associated with the virtual environment; andprevent the given process from accessing the non-virtual system environment, in response to determining the process table indicates the process ID is associated with the virtual environment. 2. The computing system of claim 1, wherein subsequent to installing the application in the virtual environment the client is configured to unregister the installer service from the virtual environment and register the installer service in the non-virtual system environment. 3. The computing system of claim 1, wherein the client is further configured to receive instructions from the server that identify a virtual environment into which to install the install package. 4. The computing system of claim 2, wherein the server is configured to stream the install package to the client as a series of streamlets;wherein the installer component is configured to extract data from a streamlet and issue a write request to write the data into the virtual environment; anda driver outside of the virtual environment is configured to detect the write request. 5. The computing system of claim 4, wherein in response to detecting the write request, the driver is further configured to: determine if the file is a sparse file; andif the file is a sparse file:register the file as a sparse file; andallocate an amount of storage space for the sparse file that is sufficient to store a non-sparse file that corresponds to the sparse file. 6. The computing system of claim 5, wherein the sparse file includes a marker identifying a location from which the non-sparse file data may be retrieved; andwherein in response to detecting a read request to read the sparse file, the driver is configured to retrieve the non-sparse file data from said location. 7. The computing system of claim 1, wherein in response to detecting said attempt and determining the process table indicates the process ID is associated with the virtual environment, the virtualization manager is further configured to redirect said action so that it affects the virtual environment instead of the non-virtual system environment. 8. A computer implemented method of streaming an install package into a virtual environment, the method comprising: starting an installer component in a suspended state in a non-virtual system environment of a client, said non-virtual system environment being an environment within which processes may execute;registering the installer component in a virtual environment of the client, said virtual environment being an environment within which processes may execute;maintaining a process table which identifies processes configured to run in the virtual environment;resuming execution of the installer component in the virtual environment;subsequent to resuming execution in the virtual environment, the installer component:beginning installation of the application in the virtual environment; andinitiating an attempt to perform an action configured to affect a file system or registry of the non-virtual system environment;a virtualization manager:detecting the attempt to perform said action;accessing the process table;comparing a process ID of the given process to process IDs in the process table;permitting the given process to access the non-virtual system environment, in response to determining the process table indicates the process ID is not associated with the virtual environment; andpreventing the given process from accessing the non-virtual system environment, in response to determining the process table indicates the process ID is associated with the virtual environment. 9. The method of claim 8, wherein subsequent to installing the application in the virtual environment, the method further comprises unregistering the installer service from the virtual environment and registering the installer service in the non-virtual system environment. 10. The method of claim 9, further comprising receiving instructions from a streaming server that identify the virtual environment into which to install the install package. 11. The method of claim 9, further comprising: receiving the install package as a series of streamlets;the installer component extracting data from a received streamlet and issuing a write request to write the data into the virtual environment; anda driver outside of the virtual environment detecting the write request. 12. The method of claim 11, further comprising in response to detecting the write request, the driver: determining if the file is a sparse file; andif the file is a sparse file:registering the file as a sparse file; andallocating an amount of storage space for the sparse file that is sufficient to store a non-sparse file that corresponds to the sparse file. 13. The method of claim 12, wherein the sparse file includes a marker identifying a location from which the non-sparse file data may be retrieved, wherein in response to detecting a read request to read the sparse file, the method further comprises retrieving the non-sparse file data from said location. 14. The method of claim 11, wherein the installer component includes an installer service and an installer executable process. 15. A computer readable storage medium storing first program instructions executable by a client computing system to: start an installer component in a suspended state in a non-virtual system environment of the client, said non-virtual system environment being an environment within which processes may execute;register the installer component in a virtual environment of the client, the virtual environment being an environment within which processes may execute; andmaintain a process table which identifies processes configured to run in the virtual environment;resume execution of the installer component in the virtual environment;wherein subsequent to resuming execution, the installer component on the client comprises program instructions executable to:begin installation of the application in the virtual environment; andinitiate an attempt to perform an action configured to affect a file system or registry of the non-virtual system environment;wherein a virtualization manager on the client comprises program instructions executable to:detect the attempt to perform said action;access the process table;compare a process ID of the given process to process IDs in the process table;permit the given process to access the non-virtual system environment, in response to determining the process table indicates the process ID is not associated with the virtual environment; andprevent the given process from accessing the non-virtual system environment, in response to determining the process table indicates the process ID is associated with the virtual environment. 16. The computer readable storage medium of claim 15, wherein subsequent to installing the application in the virtual environment, the first program instructions are configured to unregister the installer service from the virtual environment and register the installer service in the non-virtual system environment. 17. The computer readable storage medium of claim 15, wherein first program instructions are further executable by a client computing system to: receiving the install package from a streaming server as a series of streamlets; andreceiving instructions from the streaming server computing system that identify a virtual environment into which to install the install package. 18. The computer readable storage medium of claim 16, wherein the installer component is configured to extract data from a streamlet and issue a write request to write the data into the virtual environment; anda driver outside of the virtual environment is configured to detect the write request. 19. The computer readable storage medium of claim 18, wherein in response to detecting the write request, the driver is further configured to: determine if the file is a sparse file; andif the file is a sparse file:register the file as a sparse file; andallocate an amount of storage space for the sparse file that is sufficient to store a non-sparse file that corresponds to the sparse file.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.