Live migration of hardware accelerated applications
US-10169065-B1 · Jan 1, 2019 · US
US10521592B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10521592-B2 |
| Application number | US-201715490838-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 18, 2017 |
| Priority date | Apr 27, 2016 |
| Publication date | Dec 31, 2019 |
| Grant date | Dec 31, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In one embodiment, a software application that is downloaded from an untrusted source is marked, based on the untrusted classification of the source, to be translocated when the software application is launched. When the software application is launched it is translocated, through a mirroring file system, to a random mount point that is a partial bind mount to the real file system that stores the image of the software application (e.g. the image of the software application's bundle).
Opening claim text (preview).
What is claimed is: 1. A non-transitory machine readable medium storing executable program instructions which when executed by a data processing system cause the data processing system to perform a method comprising: obtaining an executable software application from a source; determining whether to mark the software application to be translocated based upon the source; receiving an input to launch the software application; and in response to receiving the input to launch the software application, translocating the software application when the software application is marked for translocation by, creating a mount point for use in a mirroring file system, the mount point being used in the mirroring file system to launch the software application, and wherein the mirroring file system is a partial bind mount of another file system, a real path in the another file system to launch the software application is not disclosed to the software application, and the partial bind mount mirrors only a portion of a file hierarchy in the another file system, and launching the software application using the mount point. 2. The medium as in claim 1 wherein the method further comprises: determining whether to exempt the software application from translocation. 3. The medium as in claim 2 wherein the software application is exempted from translocation, even if marked to be translocated during the process of obtaining the software application, when the software application was obtained via trusted installation media or a trusted application delivery channel. 4. The medium as in claim 3 wherein the software application is marked to be translocated before being exempted from translocation and wherein the mount point is a random mount point and wherein determining whether to mark the software application to be translocated comprises determining whether the source is a trusted source or whether a method of installation is classified as a trusted installation. 5. The medium as in claim 4 wherein the software application is exempted from translocation in response to a user action that implicitly indicates the user's trust of the software application and wherein software applications previously installed under a prior operating system are exempted. 6. The medium as in claim 5 wherein the user action that implicitly indicates the user's trust comprises one of: (1) dragging and dropping by the user of a single application bundle, containing the software application, by itself to a new location from a downloaded location; or (2) moving by the user of a single application, which is the software application, by itself to a new location from an old location. 7. The medium as in claim 1 wherein the method further comprises: determining whether to exempt the software application from translocation; and wherein the obtaining of the software application comprises obtaining the software application from at least one of the following untrusted sources: (1) downloading, by a web browser, the software application; or (2) downloading, by an email application, the software application; or (3) downloading, by a calendar application, the software application; or (4) copying the software application from a quarantined location; or (5) downloading, by a messaging application, the software application and wherein the software application is marked to be translocated when obtained from one of the untrusted sources; and wherein the software application is exempted from translocation when the software application was obtained in a disk image that was signed or was obtained in a disk image that is whitelisted; and wherein when the source is an installation from a trusted app store the software application is not marked for translocation. 8. The medium as in claim 1 wherein the software application is marked for translocation and is not exempted from translocation for at least one of when: (1) launching the software application from an untrusted installation media in the location it was downloaded to; or (2) launching the software application from an expanded zip in the location in which the expansion occurred; or (3) launching the software application from an unsigned and non-whitelisted disk image while the software application is still inside the disk image; or (4) launching the software application from a quarantined file system. 9. The medium as in claim 1 wherein the partial bind mount is temporary and the mirroring file system is torn down when the software application quits or is terminated and wherein a new random mount point in a mirroring file system is created each time the software application is launched. 10. The medium as in claim 9 wherein translocation through the mirroring file system is performed automatically without user input at launch time of the software application if the source is an untrusted installation channel. 11. The medium as in claim 9 wherein at least a subset of application extensions of the software application is blocked from executing when the software application is translocated. 12. The medium as in claim 1 wherein the access privileges of the software application to software in the mirroring file system are restricted to read only access. 13. A method comprising: obtaining an executable software application from a source; determining whether to mark the software application to be translocated based upon the source; receiving an input to launch the software application; and in response to receiving the input to launch the software application, translocating the software application when the software application is marked for translocation by, creating a mount point for use in a mirroring file system, the mount point being used in the mirroring file system to launch the software application, and wherein the mirroring file system is a partial bind mount of another file system, a real path in the another file system to launch the software application is not disclosed to the software application, and the partial bind mount mirrors only a portion of a file hierarchy in the another file system, and launching the software application using the mount point. 14. The method as in claim 13 wherein the method further comprises: determining whether to exempt the software application from translocation. 15. The method as in claim 14 wherein the software application is exempted from translocation, even if marked to be translocated during the process of obtaining the software application, when the software application was obtained via trusted installation media or a trusted application delivery channel. 16. The method as in claim 15 wherein the software application is marked to be translocated before being exempted from translocation and wherein the mount point is a random mount point and wherein determining whether to mark the software application to be translocated comprises determining whether the source is a trusted source or whether a method of installation is classified as a trusted installation. 17. The method as in claim 16 wherein the software application is exempted from translocation in response to a user action that implicitly indicates the user's trust of the software application and wherein software applications previously installed under a prior operating system are exempted. 18. The method as in claim 17 wherein the user action that implicitly indicates the user's trust comprises one of: (1) dragging and dropping by the user of a single application bundle, containing the software application, by itself to a new location from a downloaded locat
Plug-ins; Add-ons · CPC title
Computer malware detection or handling, e.g. anti-virus arrangements · CPC title
while running · CPC title
at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability · CPC title
Assessing vulnerabilities and evaluating computer system security · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.