# US 11,442,832 B2 · Managing synchronized reboot of a system

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

- Number: US 11,442,832 B2
- Document ID: US11442832B2
- Status: Granted
- Kind: B2
- Application number: 17/102,501
- Filed: 2020-11-24
- Published: 2022-05-26
- Granted: 2022-09-13
- Earliest claimed: 2020-11-24
- Assignees: Hewlett Packard Enterprise Development LP
- Applicants: Hewlett Packard Enterprise Development LP
- Inventors: Christopher Murray
- Web page: https://patentgrep.com/patent/US11442832B2

## CPC

- G06F 11/3037: {where the computing system component is a memory, e.g. virtual memory, cache (accessing, addressing or allocating within memory systems or architectures G06F12/00; checking stores for correct operation G11C29/00)}
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/0632: {by initialisation or re-initialisation of storage systems}
- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F 9/4401: Bootstrapping (security arrangements therefor G06F21/57)
- G06F 9/5016: {the resource being the memory}
- G06F 9/5022: {Mechanisms to release resources}
- G06F 11/076: {by exceeding a count or rate limit, e.g. word- or bit count limit}
- G06F 11/0772: {Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers}
- G06F 11/1441: {Resetting or repowering}
- G06F 11/3442: {for planning or managing the needed capacity}
- G06F 12/0238: {Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory}
- G06F 12/08: in hierarchically structured memory systems, e.g. virtual memory systems
- G06F 12/0842: for multiprocessing or multitasking
- G06F 12/0871: Allocation or management of cache space
- G06F 12/0893: Caches characterised by their organisation or structure
- G06F 12/10: Address translation
- G06F 11/3409: {for performance assessment}
- G06F 12/023: {Free address space management}
- G06F 2201/81: Threshold
- G06F 2201/885: Monitoring specific for caches
- G06F 2212/1024: Latency reduction
- G06F 2212/1032: Reliability improvement, data loss prevention, degraded operation etc
- G06F 2212/1044: Space efficiency improvement
- G06F 2212/214: Solid state disk
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Examples described herein relate to a system including a first management system having a primary memory including a free memory, a used memory, and a loosely reserved memory, where the loosely reserved memory comprises cache memory having a reclaimable memory; and a processing resource coupled to the primary memory. The processing resource may monitor an amount of the used memory and an amount of an available memory during runtime of the first management system. Further, the processing resource may enable a synchronized reboot of the first management system if the amount of the used memory is greater than a memory exhaustion first threshold or the amount of the available memory is less than a memory exhaustion second threshold, wherein the memory exhaustion first threshold and the memory exhaustion second threshold are determined based on usage of the reclaimable memory and a number of major page faults.

## Claims

### Claim 1

A system comprising:
a first management system comprising:
a primary memory comprising a used memory, and a loosely reserved memory, wherein the loosely reserved memory comprises cache memory having a reclaimable memory; and
a processing resource coupled to the primary memory, wherein the processing resource is to:
monitor an amount of the used memory and an amount of an available memory during runtime of the first management system, wherein the available memory is an estimate of an amount of memory from the primary memory that is available to start an application; and
enable a synchronized reboot of the first management system if the amount of the used memory is greater than a memory exhaustion first threshold or the amount of the available memory is less than a memory exhaustion second threshold different from the memory exhaustion first threshold, wherein the memory exhaustion first threshold and the memory exhaustion second threshold are determined based on usage of the reclaimable memory and a number of major page faults.

### Claim 2 (depends on 1)

The system of claim 1, wherein the processing resource is to determine whether the amount of the used memory is greater than the memory exhaustion first threshold or whether the amount of the available memory is less than the memory exhaustion second threshold.

### Claim 3 (depends on 2)

The system of claim 2, further comprising a second management system coupled to the first management system, wherein the first management system is an active management system and the second management system is a standby management system, and wherein to enable the synchronized reboot of the first management system, the processing resource is to:
initiate a role change of the second management system in response to determining that the amount of the used memory is greater than the memory exhaustion first threshold or the amount of the available memory is less than the memory exhaustion second threshold; and
reboot the first management system after the role change of the second management system is completed.

### Claim 4 (depends on 2)

The system of claim 2, further comprising a second management system coupled to the first management system, wherein the second management system is an active management system and the first management system is a standby management system, and wherein to enable the synchronized reboot of the first management system, the processing resource is to:
notify the second management system that the first management system is going to reboot in response to determining that the amount of the used memory is greater than the memory exhaustion first threshold or the amount of the available memory is less than the memory exhaustion second threshold; and
reboot the first management system after notifying the second management system.

### Claim 5 (depends on 1)

The system of claim 1, wherein the processing resource is to:
determine whether the amount of the used memory is greater than a used memory decay threshold or whether the amount of the available memory is less than an available memory decay threshold; and
synchronize data stored in the primary memory with a non-volatile memory separate from the primary memory in response to determining that the amount of the used memory is greater than the used memory decay threshold or the amount of the available memory is less than the available memory decay threshold.

### Claim 6 (depends on 5)

The system of claim 5, wherein the processing resource is to:
cause an incremental utilization of the primary memory by a test process during a test phase of the first management system; and
monitor an amount of the reclaimable memory, the amount of the used memory, the amount of the available memory, and the number of the major page faults as the primary memory is utilized by the test process during the test phase.

### Claim 7 (depends on 6)

The system of claim 6, wherein the processing resource is to determine, during the test phase, the used memory decay threshold as the amount of the used memory at which the amount of the reclaimable memory starts to decrease below a predefined threshold.

### Claim 8 (depends on 7)

The system of claim 7, wherein the processing resource is to determine, during the test phase, the memory exhaustion first threshold based on the used memory decay threshold and the amount of the used memory at which the number of major page faults starts to rise above a major page fault threshold.

### Claim 9 (depends on 6)

The system of claim 6, wherein the processing resource is to determine, during the test phase, the available memory decay threshold as the amount of the available memory at which the amount of the reclaimable memory starts to decrease below a predefined threshold.

### Claim 10 (depends on 9)

The system of claim 9, wherein the processing resource is to determine, during the test phase, the memory exhaustion second threshold based on the available memory decay threshold and the amount of the available memory at which the number of major page faults starts to rise above a major page fault threshold.

### Claim 11

A method comprising:
in a first management system comprising a primary memory having a used memory and a loosely reserved memory, wherein the loosely reserved memory comprises cache memory having a reclaimable memory:
monitoring an amount of the used memory and an amount of an available memory during runtime of the first management system, wherein the available memory is an estimate of an amount of memory from the primary memory that is available to start an application;
determining whether the amount of the used memory is greater than a memory exhaustion first threshold or the amount of the available memory is less than a memory exhaustion second threshold different from the memory exhaustion first threshold, wherein the memory exhaustion first threshold and the memory exhaustion second threshold are determined based on usage of the reclaimable memory and a number of major page faults; and
enabling a synchronized reboot of the first management system in response to determining that the amount of the used memory is greater than the memory exhaustion first threshold or the amount of the available memory is less than the memory exhaustion second threshold.

### Claim 12 (depends on 11)

The method of claim 11, wherein the first management system is coupled to a second management system, and wherein the first management system is an active management system and the second management system is a standby management system, wherein enabling the synchronized reboot of the first management system comprises:
initiating a role change of the second management system in response to determining that the amount of the used memory is greater than the memory exhaustion first threshold or the amount of the available memory is less than the memory exhaustion second threshold; and
rebooting the first management system after the role change of the second management system is completed.

### Claim 13 (depends on 11)

The method of claim 11, wherein the first management system is coupled to a second management system, and wherein the second management system is an active management system and the first management system is a standby management system, wherein enabling the synchronized reboot of the first management system comprises:
notifying the second management system that the first management system is going to reboot in response to determining that the amount of the used memory is greater than the memory exhaustion first threshold or the amount of the available memory is less than the memory exhaustion second threshold; and
rebooting the first management system after notifying the second management system.

### Claim 14 (depends on 11)

The method of claim 11, further comprising:
determining whether the amount of the used memory is greater than a used memory decay threshold or whether the amount of the available memory is less than an available memory decay threshold; and
synchronizing data stored in the primary memory with a non-volatile memory separate from the primary memory in response to determining that the amount of the used memory is greater than the used memory decay threshold or the amount of the available memory is less than the available memory decay threshold.

### Claim 15 (depends on 14)

The method of claim 14, further comprising:
during a test phase of the first management system different from the runtime of the first management system:
causing an incremental utilization of the primary memory by a test process;
monitoring an amount of the reclaimable memory, the amount of the used memory, the amount of the available memory, and the number of the major page faults as the primary memory is utilized by the test process;
determining the used memory decay threshold as the amount of the used memory at which the amount of the reclaimable memory starts to decrease below a predefined threshold;
determining the memory exhaustion first threshold based on the used memory decay threshold and the amount of the used memory at which the number of major page faults starts to rise above a major page fault threshold;
determining the available memory decay threshold as the amount of the available memory at which the amount of the reclaimable memory starts to decrease below the predefined threshold; and
determining the memory exhaustion second threshold based on the available memory decay threshold and the amount of the available memory at which the number of major pale faults starts to rise above the major page fault threshold.

### Claim 16 (depends on 11)

The method of claim 11, further comprising determining, during the runtime, a time remaining for the amount of the used memory to reach the memory exhaustion first threshold based on a rate of change in the amount of the used memory.

### Claim 17

A non-transitory machine-readable medium storing instructions executable by a processing resource in a first management system comprising a primary memory having a used memory and a loosely reserved memory, wherein the loosely reserved memory comprises cache memory having a reclaimable memory, the instructions comprising:
instructions to monitor an amount of the used memory and an amount of an available memory during runtime of the first management system, wherein the available memory is an estimate of an amount of memory from the primary memory that is available to start an application;
instructions to determine whether the amount of the used memory is greater than a memory exhaustion first threshold or the amount of the available memory is less than a memory exhaustion second threshold different from the memory exhaustion first threshold, wherein the memory exhaustion first threshold and the memory exhaustion second threshold are determined based on usage of the reclaimable memory and a number of major page faults; and
instructions to enable a synchronized reboot of the first management system in response to determining that the amount of the used memory is greater than the memory exhaustion first threshold or the amount of the available memory is less than the memory exhaustion second threshold.

### Claim 18 (depends on 17)

The non-transitory machine-readable medium of claim 17, further comprising:
instructions to determine whether the amount of the used memory is greater than a used memory decay threshold or whether the amount of the available memory is less than an available memory decay threshold; and
instructions to synchronize data stored in the primary memory with a non-volatile memory separate from the primary memory in response to determining that the amount of the used memory is greater than the used memory decay threshold or the amount of the available memory is less than the available memory decay threshold.

### Claim 19 (depends on 17)

The non-transitory machine-readable medium of claim 17, wherein the first management system is coupled to a second management system, and wherein the first management system an active management system and the second management system is a standby management system, wherein the instructions to enable the synchronized reboot of the first management system comprises:
instructions to initiate a role change of the second management system in response to determining that the amount of the used memory is greater than the memory exhaustion first threshold or the amount of the available memory is less than the memory exhaustion second threshold; and
instructions to reboot the first management system after the role change of the second management system is completed.

### Claim 20 (depends on 17)

The non-transitory machine-readable medium of claim 17, wherein the first management system is coupled to a second management system, and wherein the second management system an active management system and the first management system is a standby management system, wherein the instructions to enable the synchronized reboot of the first management system comprises:
instructions to notify the second management system that the first management system is going to reboot in response to determining that the amount of the used memory is greater than the memory exhaustion first threshold or the amount of the available memory is less than the memory exhaustion second threshold; and
instructions to reboot the first management system after notifying the second management system.
