# US 12,001,864 B2 · Containerized software discovery and identification

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

- Number: US 12,001,864 B2
- Document ID: US12001864B2
- Status: Granted
- Kind: B2
- Application number: 17/134,086
- Filed: 2020-12-24
- Published: 2022-03-24
- Granted: 2024-06-04
- Earliest claimed: 2020-09-21
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Piotr P. Godowski; Michal Paluch; Tomasz Hanusiak; Szymon Kowalczyk; Andrzej Pietrzak
- Web page: https://patentgrep.com/patent/US12001864B2

## CPC

- G06F 9/44505: {Configuring for program initiating, e.g. using registry, configuration files}
- G06F 9/455: Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/0631: {by allocating resources to storage systems}
- G06F 3/0673: {Single storage device}
- G06F 16/285: {Clustering or classification}
- G06F 18/22: Matching criteria, e.g. proximity measures
- G06F 2218/12: Classification; Matching
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Containerized software discover and identification can include discovering a plurality of container remnants by electronically scanning portions of computer memory of at least one computer system of one or more of computing nodes, the portions of computer memory being allocated to persistent storage of computer data, and each container remnant containing computer data providing a record of system-generated execution attributes generated in response to execution of one or more containerized applications. One or more inactive container remnants unutilized by a currently running containerized application can be identified among the plurality of container remnants. Each inactive container remnant can be categorized, the categorizing being based on system-generated execution attributes contained in each inactive container remnant. Based on the categorizing, a previously run containerized application can be identified by reference to a database comprising data whose structures map identities of containerized applications to patterns of execution attributes.

## Claims

### Claim 1

A computer-implemented method, comprising:
discovering a plurality of container remnants by electronically scanning portions of computer memory of at least one computer system of one or more computing nodes, wherein the portions of computer memory are allocated to persistent storage of computer data, and wherein each container remnant contains computer data providing a record of system-generated execution attributes generated in response to execution of one or more containerized applications;
identifying among the plurality of container remnants one or more inactive container remnants unutilized by a currently running application;
categorizing each inactive container remnant, wherein the categorizing is based on system-generated execution attributes contained in each container remnant identified as an inactive container remnant;
based on the categorizing, identifying a previously run containerized application by reference to a database comprising data whose structure maps identities of containerized applications to patterns of execution attributes; and
freeing up, by a processor, computing resources by deleting an ephemeral container of the previously run containerized application.

### Claim 2 (depends on 1)

The method of claim 1, wherein the identifying one or more inactive container remnants comprises:
identifying container remnants persistently stored in the portions of computer memory of the at least on computer system of the one or more computing nodes;
classifying each identified container remnant utilized by a currently running containerized application as an active container remnant; and
classifying each remaining container remnant as an inactive container remnant.

### Claim 3 (depends on 2)

The method of claim 2, wherein a persistently stored container remnant containing a file handle is classified as a container remnant utilized by a currently running containerized application, the currently running containerized application corresponding to the file handle.

### Claim 4 (depends on 2)

The method of claim 2, wherein a persistently stored container remnant comprises a persistent volume and wherein the persistent volume is classified as a container remnant utilized by a currently running containerized application that is bound to the persistent volume by a persistent volume claim.

### Claim 5 (depends on 1)

The method of claim 1, wherein the categorizing comprises:
performing pattern recognition, using a statistical clustering algorithm, on the system-generated execution attributes contained in each inactive container remnant; and
assigning each inactive container remnant containing same or statistically similar patterns of execution attributes to a same category.

### Claim 6 (depends on 1)

The method of claim 1, wherein the structure of the data comprises a file name and file extension that map to a containerized application name.

### Claim 7 (depends on 1)

The method of claim 1, further comprising inserting into an evidence-of-execution data structure an identity, determined by reference to the database, of the previously run containerized application.
