# US 12,112,033 B2 · Selective hibernation of activities in an electronic device

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

- Number: US 12,112,033 B2
- Document ID: US12112033B2
- Status: Granted
- Kind: B2
- Application number: 17/938,293
- Filed: 2022-10-05
- Published: 2023-03-16
- Granted: 2024-10-08
- Earliest claimed: 2009-07-20
- Assignees: QUALCOMM Incorporated
- Applicants: QUALCOMM Incorporated
- Inventors: Daniel Marc Gatan Shiplacoff; Matias Gonzalo Duarte; Jeremy Godfrey Lyon
- Web page: https://patentgrep.com/patent/US12112033B2

## CPC

- G06F 3/0485: Scrolling or panning
- G06F 1/3225: of memory devices
- G06F 1/3243: {Power saving in microcontroller unit}
- G06F 1/3275: {Power saving in memory, e.g. RAM, cache}
- G06F 3/0481: based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F 3/0482: Interaction with lists of selectable items, e.g. menus
- G06F 3/0483: Interaction with page-structured environments, e.g. book metaphor
- G06F 3/04842: Selection of displayed objects or displayed text elements (G06F3/0482 takes precedence)
- G06F 9/4418: {Suspend and resume; Hibernate and awake}
- G09G 5/14: Display of multiple viewports
- G06F 1/3228: Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
- G06F 1/3287: by switching off individual functional units in the computer system
- H04M 1/72403: with means for local support of applications that increase the functionality
- H04W 52/0264: {by selectively disabling software applications}
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- Y02D 30/50: in wire-line communication networks, e.g. low power modes or reduced link rate
- Y02D 30/70: in wireless communication networks
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G09G: ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION (arrangements for transferring data between digital computers and displays G06F3/14; static indicating arrangements comprising an association of a number of separate sources or light control cells G09F9/00; static indicating arrangements comprising integral associations of a number of light sources H01J, H01K, H10H, H05B33/12; scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission, details thereof H04N1/00)
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

In an electronic device capable of running multiple software applications concurrently, applications, documents, cards, or other activities can be selected for hibernation so as to free up system resources for other activities that are in active use. A determination is made as to which activities should hibernate, for example based on a determination as to which activities have not been used recently or based on relative resource usage. When an activity is to hibernate, its state is preserved on a storage medium such as a disk, so that the activity can later be revived in the same state and the user can continue with the same task that was being performed before the activity entered hibernation.

## Claims

### Claim 1

A method of operating a mobile computing device, the method comprising:
concurrently running, on the mobile computing device, a multitude of distinct applications;
presenting a first application of the multitude of applications on a display screen while operating the mobile computing device in a full-screen mode;
placing a second application of the multitude of applications into a hibernation state, wherein the hibernating second application is representable by a second card comprising a static snapshot of a user interface of the second application;
transitioning, in response to a user input, operation of the mobile computing device from the full-screen mode to a windowed mode during which the first application is scaled to occupy a lesser portion of the display screen and represented by a first card containing a view of a user interface of the first application, wherein while operating in the windowed mode, the method further comprises:
displaying, on the display screen, the first card and the second card in a linear arrangement along an axis of the display screen;
moving, in response to a directional input provided by a user along the axis of the display screen, the first card and the second card across the display screen in the same direction as the directional input; and
detecting an input on the second card while the displayed first and second cards remain in the linear arrangement on the display screen;
transitioning, in response to the input on the second card, operation of the mobile computing device from the windowed mode to the full-screen mode so that the second application occupies the full display screen; and
reviving the second application from the hibernation state.

### Claim 2 (depends on 1)

The method of claim 1, wherein:
placing the second application into the hibernation state comprises:
storing, in a storage device of the mobile computing device, state information for the second application; and
reviving the second application comprises:
retrieving state information for the second application from the storage device; and
restoring the second application based on the retrieved state information.

### Claim 3 (depends on 2)

The method of claim 2, wherein the second application is restored based on the retrieved state information to the application's state at the time the second application was placed into the hibernation state.

### Claim 4 (depends on 2)

The method of claim 2, wherein the storage device comprises flash memory.

### Claim 5 (depends on 2)

The method of claim 2, wherein the state information for the second application is stored in the storage device in response to being placed in the hibernation state.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
maintaining the second application in the hibernation state while moving the first and second cards across the display screen.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
closing the second application based on the user dragging the second card out of the linear arrangement along the axis of the display screen.

### Claim 8 (depends on 1)

The method of claim 1, wherein the second application is placed into the hibernation state after not being used for a period of time.

### Claim 9 (depends on 1)

The method of claim 1, wherein the second application is placed into the hibernation state in response to launching another application.

### Claim 10 (depends on 1)

The method of claim 1, wherein the second application is placed into the hibernation state in response to a low-memory condition of the mobile computing device.

### Claim 11 (depends on 1)

The method of claim 1, wherein the second application is placed into the hibernation state based on at least one of a user preference, an amount of processing resources consumed by the running applications, or a limit on the number of applications concurrently running on the mobile computing device.

### Claim 12 (depends on 1)

The method of claim 1, wherein the second card indicates the hibernation state of the second application with a distinctive visual characteristic or effect.

### Claim 13 (depends on 1)

The method of claim 1, wherein the second application is revived in response to detecting the input on the second card.

### Claim 14 (depends on 1)

The method of claim 1, wherein the second application is revived irrespective of a position of the second card in the windowed mode.

### Claim 15 (depends on 1)

The method of claim 1, wherein transitioning the operation of the mobile computing device from the windowed mode to the full-screen mode further comprises enlarging the static snapshot of the user interface of the second application to substantially occupy the display screen.

### Claim 16 (depends on 15)

The method of claim 15, further comprising replacing the enlarged static snapshot of the user interface of the second application with a live user interface of the second application.

### Claim 17 (depends on 1)

The method of claim 1, wherein the static snapshot of the user interface of the second application is taken in response to placing the second application in the hibernation state.

### Claim 18

A mobile computing device, comprising:
a display screen;
a processor coupled to the display screen; and
a memory coupled to the processor and storing instructions that, when executed by the processor, cause the mobile computing device to:
present a first application of a multitude of applications on the display while operating the mobile computing device in a full-screen mode;
place a second application of the multitude of applications into a hibernation state, wherein the hibernating second application is representable by a second card containing a static snapshot of a user interface of the second application; and
transition, in response to a user input, operation of the mobile computing device from the full-screen mode to a windowed mode during which the first application is scaled to occupy a lesser portion of the display screen and represented on the display screen by a first card containing a view of a user interface of the first application, wherein while operating in the windowed mode, execution of the instructions further causes the mobile computing device to:
display, on the display screen, the first card and the second card in a linear arrangement along an axis of the display screen;
move, in response to a directional touch input provided by a user along an axis of the touch-sensitive display screen, the first card and the second card across the display screen in the same direction as the directional touch input; and
detect an input on the second card while the displayed first and second cards remain in the linear arrangement on the display screen;
transition, in response to the input on the second card, operation of the mobile computing device from the windowed mode to the full-screen mode so that the second application occupies the full display screen; and
revive the second application from the hibernation state.

### Claim 19 (depends on 18)

The mobile computing device of claim 18, wherein:
placing the second application into the hibernation state comprises:
storing, in a storage device of the mobile computing device, state information for the second application; and
reviving the second application comprises:
retrieving the state information for the second application from the storage device; and
restoring the second application based on the retrieved state information.

### Claim 20 (depends on 19)

The mobile computing device of claim 19, wherein the second application is restored based on the retrieved state information to the second application's state at the time the second application was placed into the hibernation state.

### Claim 21 (depends on 19)

The mobile computing device of claim 19, wherein the storage device comprises flash memory.

### Claim 22 (depends on 19)

The mobile computing device of claim 19, wherein the state information for the second application is stored in the storage device in response to being placed in the hibernation state.

### Claim 23 (depends on 18)

The mobile computing device of claim 18, wherein execution of the instructions further causes the mobile computing device to:
maintaining the second application in the hibernation state while moving the first and second cards across the display screen.

### Claim 24 (depends on 18)

The mobile computing device of claim 18, wherein execution of the instructions further causes the mobile computing device to:
closing the second application based on the user dragging the second card out of the linear arrangement along the axis of the display screen.

### Claim 25 (depends on 18)

The mobile computing device of claim 18, wherein the second application is placed into the hibernation state after not being used for a period of time.

### Claim 26 (depends on 18)

The mobile computing device of claim 18, wherein the second application is placed into the hibernation state in response to launching another application.

### Claim 27 (depends on 18)

The mobile computing device of claim 18, wherein the second application is placed into the hibernation state in response to a low-memory condition of the mobile computing device.

### Claim 28 (depends on 18)

The mobile computing device of claim 18, wherein the second application is placed into the hibernation state based on at least one of a user preference, an amount of processing resources consumed by the running applications, or a limit on the number of applications concurrently running on the mobile computing device.

### Claim 29 (depends on 18)

The mobile computing device of claim 18, wherein the second card indicates the hibernation state of the second application with a distinctive visual characteristic or effect.

### Claim 30 (depends on 18)

The mobile computing device of claim 18, wherein the second application is revived in response to detecting the input on the second card.

### Claim 31 (depends on 18)

The mobile computing device of claim 18, wherein the second application is revived irrespective of a position of the second card in the windowed mode.

### Claim 32 (depends on 18)

The mobile computing device of claim 18, wherein transitioning the operation of the mobile computing device from the windowed mode to the full-screen mode further comprises enlarging the static snapshot of the user interface of the second application to substantially occupy the display screen.

### Claim 33 (depends on 32)

The mobile computing device of claim 32, wherein execution of the instructions further causes the mobile computing device to replace the enlarged static snapshot of the user interface of the second application with a live user interface of the second application.

### Claim 34 (depends on 18)

The mobile computing device of claim 18, wherein the static snapshot of the user interface of the second application is taken in response to placing the second application in the hibernation state.
