Automated Container Migration in a Platform-as-a-Service System
US-2016217050-A1 · Jul 28, 2016 · US
US9928062B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9928062-B2 |
| Application number | US-201615060750-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 4, 2016 |
| Priority date | Mar 4, 2016 |
| Publication date | Mar 27, 2018 |
| Grant date | Mar 27, 2018 |
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.
A software container image that includes components dependent on a first computer instruction set architecture (ISA) is ported to enable a container to execute using the container image on a computer having a second ISA different from the first. Porting the container image entails replacing components of the container image not compatible with the second ISA with equivalent components compatible with the second ISA. The porting is performed, in some instances, dynamically as part of running a container with the container image on a computer implementing the second ISA.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method for porting a software container image to a target instruction set architecture (ISA), the software container image selected for execution on a first computer, the first computer implementing the target ISA, the method comprising: forming a ported image, the ported image capable of executing on the first computer, the forming performed in association with at least one of preparing the software container image for execution on the first computer and executing the software container image on the first computer; selecting a source image, the source image included in the software container image; selecting a source component, the source component included in the source image; determining that the source component is not compatible with the target ISA, the determining based, at least in part, on the source component dependent on a first ISA, the first ISA different from the target ISA; and including in the ported image an at least one first target-ISA equivalent component, the at least one first target-ISA equivalent component performing a function equivalent to at least one function of the source component, the at least one first target-ISA equivalent component compatible with the target ISA, the at least one first target-ISA equivalent component replacing, in the ported image, the source component, determining that the source component includes a source binary file, the source binary file not compatible with the target ISA; determining that the source component does not have a second target-ISA equivalent component, the second target-ISA equivalent component compatible with the target ISA; determining that the source binary file does not have at least one target-ISA equivalent binary file; and including, in the at least one first target-ISA equivalent component, the source binary file and at least one target-ISA stub program, the at least one target-ISA stub program invoking execution of the source binary file, the at least one target-ISA stub program invoking execution of at least one ISA translator, the execution of the at least one ISA translator translating the source binary file from the first ISA to the target ISA. 2. The method of claim 1 further comprising: determining that the source component has an at least one second target-ISA equivalent component, the at least one second target-ISA equivalent component performing a function equivalent to at least one function of the source component, the at least one second target-ISA equivalent component compatible with the target ISA; and including, in the at least one first target-ISA equivalent component, the at least one second target-ISA equivalent component. 3. The method of claim 1 further comprising: determining that the source component does not have a second target-ISA equivalent component, the second target-ISA equivalent component compatible with the target ISA; forming an at least one second target-ISA equivalent component, the at least one second target-ISA equivalent component performing a function equivalent to at least one function of the source component, the at least one second target-ISA equivalent component compatible with the target ISA; and including, in the at least one first target-ISA equivalent component, the at least one second target-ISA equivalent component. 4. The method of claim 1 further comprising: determining that the source component includes a source binary file, the source binary file not compatible with the target ISA; determining that the source component does not have a second target-ISA equivalent component, the second target-ISA equivalent component compatible with the target ISA; determining that source binary file has at least one target-ISA equivalent binary file, the at least one target-ISA equivalent binary file performing a function equivalent to at least one function of the source binary file, the at least one target-ISA equivalent binary file compatible with the target ISA; and including, in the at least one first target-ISA equivalent component, the at least one target-ISA equivalent binary file. 5. The method of claim 1 further comprising including, in the first target-ISA equivalent component, the at least one ISA translator. 6. The method of claim 1 wherein the at least one first target-ISA equivalent component includes at least one component included in a repository, and wherein the at least one first target-ISA equivalent component includes the component included in the repository replacing the at least one component in the first target-ISA equivalent component. 7. A computer program product for porting a software container image to a target instruction set architecture (ISA), the software container image selected for execution on a first computer, the first computer implementing the target ISA, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a first computer to perform a method comprising: forming, by a second computer, a ported image, the ported image capable of executing on the first computer, the forming performed in association with at least one of preparing the software container image for execution on the first computer and executing the software container image on the first computer; selecting, by the second computer, a source image, the source image included in the software container image; selecting, by the second computer, a source component, the source component included in the source image; determining, by the second computer, that the source component is not compatible with the target ISA, the determining based, at least in part, on the source component dependent on a first ISA, the first ISA different from the target ISA; and including, by the second computer, in the ported image an at least one first target-ISA equivalent component, the at least one first target-ISA equivalent component performing a function equivalent to at least one function of the source component, the at least one first target-ISA equivalent component compatible with the target ISA, the at least one first target-ISA equivalent component replacing, in the ported image, the source component determining, by the second computer, that the source component includes a source binary file, the source binary file not compatible with the target ISA; determining, by the second computer, that the source component does not have a second target-ISA equivalent component, the second target-ISA equivalent component compatible with the target ISA; determining, by the second computer, that the source binary file does not have at least one target-ISA equivalent binary file; and including, by the second computer, in the at least one first target-ISA equivalent component, the source binary file and at least one target-ISA stub program, the at least one target-ISA stub program invoking execution of the source binary file, the at least one target-ISA stub program invoking execution of at least one ISA translator, the execution of the at least one ISA translator translating the source binary file from the first ISA to the target ISA. 8. The computer program product of claim 7 , the method further comprising: determining, by the second computer, that the source component has an at least one second target-ISA equivalent component, the at least one second target-ISA equivalent component performing a function equivalent to at least one function of the source component, the at least one second target-ISA equivalent component compatible with the target ISA; and including, by the second computer, in the at least one first target-ISA equivalent component, the at least one second target-ISA equivalent compo
Related publications grouped by family.
Answers are generated from the same data shown on this page.