# US 11,030,072 B2 · Creating and starting fast-start container images

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,030,072 B2
- Document ID: US11030072B2
- Status: Granted
- Kind: B2
- Application number: 16/177,555
- Filed: 2018-11-01
- Published: 2020-05-07
- Granted: 2021-06-08
- Earliest claimed: 2018-11-01
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Hai Huang; Jia Jun Brandon Lum; Alaa Youssef
- Web page: https://patentgrep.com/patent/US11030072B2

## CPC

- G06F 11/3414: {Workload generation, e.g. scripts, playback}
- G06F 9/45508: {Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 9/4806: {Task transfer initiation or dispatching}
- G06F 9/485: {Task life-cycle, e.g. stopping, restarting, resuming execution (G06F9/4881 takes precedence)}
- G06F 9/505: {considering the load}
- G06F 9/5077: {Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455)}
- G06F 11/0706: {the processing taking place on a specific hardware platform or in a specific software environment}
- G06F 11/0751: {Error or fault detection not based on redundancy (power supply failures G06F1/30; network fault management H04L41/06)}
- G06F 11/0793: {Remedial or corrective actions (recovery from an exception in an instruction pipeline G06F9/3861; by retry G06F11/1402; for recovering from a failure of a protocol instance or entity H04L69/40)}
- G06F 11/3612: {by runtime analysis (performance monitoring G06F11/3466)}
- G06F 9/4862: {the task being a mobile agent, i.e. specifically designed to migrate}
- G06F 11/3604: Analysis of software for verifying properties of programs (testing of software G06F11/3668)
- G06F 11/3668: Testing of software
- G06F 2009/45575: {Starting, stopping, suspending or resuming virtual machine instances}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Aspects of the invention include creating and starting fast-start container images. A preview image of a container is received at a host computer. The preview image includes a subset of an original image of the container. The preview image of the container is executed, at the host computer, for a workload. Based at least in part on detecting a fault during the executing of the preview image of the container, one of the original image of the container and a portion of the original image not included in the preview image of the container is accessed for continuing execution of the workload.

## Claims

### Claim 1

A computer-implemented method comprising:
receiving, at a host computer, a preview image of a container, the preview image comprising a subset of an original image of the container;
executing, at the host computer, the preview image of the container for a workload;
receiving in a background mode, at the host computer, subsequent to receiving the preview image of the container, a portion of the original image of the container that does not include the subset of the original image of the container included in the preview image, wherein the portion combined with the subset is the original image; and
based at least in part on detecting a fault during the executing of the preview image of the container, accessing, for continuing execution of the workload, the portion of the original image of the container that does not include the subset of the original image of the container included in the preview image of the container.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the preview image comprises a subset of functions included in the original image of the container.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein the preview image is created based at least in part on a file system block analysis.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein the preview image is created based at least in part on a package usage analysis.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein the preview image is created based at least in part on a run-time analysis of varying workloads.

### Claim 6

A system comprising:
a memory having computer readable instructions; and
one or more processors for executing the computer readable instructions, the computer readable instructions controlling the one or more processors to perform operations comprising:
receiving, at a host computer, a preview image of a container, the preview image comprising a subset of an original image of the container;
executing, at the host computer, the preview image of the container for a workload;
receiving in a background mode, at the host computer, subsequent to receiving the preview image of the container a portion of the original image of the container that does not include the subset of the original image of the container included in the preview image, wherein the portion combined with the subset is the original image; and
based at least in part on detecting a fault during the executing of the preview image of the container, accessing, for continuing execution of the workload, the portion of the original image of the container that does not include the subset of the original image of the container included in the preview image of the container.

### Claim 7 (depends on 6)

The system of claim 6, wherein the preview image comprises a subset of functions included in the original image of the container.

### Claim 8 (depends on 6)

The system of claim 6, wherein the preview image is created based at least in part on a file system block analysis.

### Claim 9 (depends on 6)

The system of claim 6, wherein the preview image is created using a package usage analysis.

### Claim 10 (depends on 6)

The system of claim 6, wherein the preview image is created based at least in part on a run-time analysis of varying workloads.

### Claim 11

A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform operations comprising:
receiving, at a host computer, a preview image of a container, the preview image comprising a subset of an original image of the container;
executing, at the host computer, the preview image of the container for a workload;
receiving in a background mode, at the host computer, subsequent to receiving the preview image of the container a portion of the original image of the container that does not include the subset of the original image of the container included in the preview image, wherein the portion combined with the subset is the original image; and
based at least in part on detecting a fault during the executing of the preview image of the container, accessing, for continuing execution of the workload, the portion of the original image of the container that does not include the subset of the original image of the container included in the preview image of the container.

### Claim 12 (depends on 11)

The computer program product of claim 11, wherein the preview image comprises a subset of functions included in the original image of the container.

### Claim 13 (depends on 11)

The computer program product of claim 11, wherein the preview image is created based at least in part on one of a file system block analysis and a package usage analysis.

### Claim 14 (depends on 11)

The computer program product of claim 11, wherein the preview image is created based at least in part on a run-time analysis of varying workloads.
