# US 2010/0169679 A1 · Controlling multilevel shared resources in a computing device

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

- Number: US 2010/0169679 A1
- Document ID: US20100169679A1
- Status: Published application
- Kind: A1
- Application number: 12/063,199
- Filed: 2006-08-08
- Published: 2010-07-01
- Earliest claimed: 2005-08-10
- Assignees: Symbian Software Limited
- Inventors: Carlos Freitas
- Web page: https://patentgrep.com/patent/US20100169679A1

## CPC

- G06F 1/325: {Power saving in peripheral device}
- G06F 1/3215: Monitoring of peripheral devices
- G06F 1/3287: by switching off individual functional units in the computer system
- 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
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- 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

A computing device is arranged to include a resource manager that controls access to all power resources on the device. The resource manager detects unused devices by counting the components that have requested usage and powers down unused resources, and for those resources offering multiple power levels, it guarantees that the operating level is no higher than is needed.

## Claims

### Claim 1

A method of managing a shared power resource on a computing device by means of a first component and in which all further components requiring access to the power resource can only do so by making requests of the first component.

### Claim 2 (depends on 1)

A method according to claim 1 wherein
a. the shared power resource has an off state and an on state; and
b. the first component provides a usage counter which is incremented each time a further component requests access to the resource and is decremented each time a further component releases the resource; and
c. the shared power source is switched on when the counter is incremented from zero and is switched off when the counter is decremented to zero.

### Claim 3 (depends on 2)

A method according to claim 2 wherein the first component refuses a request for access to the shared power resource made by a further component if the fulfillment of that request would cause the power resource to exceed its maximum acceptable load.

### Claim 4 (depends on 1)

A method according to claim 1 wherein
a. the shared power resource has an off state and an on state that supports multiple power output levels; and
b. the first component tracks the current output level of the resource and the output levels currently requested by further software components; and
c. a request made by a further software component to increase the output level is fulfilled unless it would cause the power resource to exceed its maximum acceptable load; and
d. a request made by a further software components to decrease the output level is refused unless that software component had previously requested the current output level and no other component had also requested the current output level, in which case the power level is decreased to the next highest level requested by any software component.

### Claim 5 (depends on 1)

A method according to claim 1 wherein a request for a power resource made to the first component by a further component is not immediately satisfied and wherein a thread of execution containing the further component is suspended or caused to sleep for a period of time sufficient to enable the request to be satisfied.

### Claim 6 (depends on 6)

A method according to claim 6 wherein a separate thread of execution is created for the purpose of making a request for a shared power resource.

### Claim 7 (depends on 1)

A computing device arranged to operate in accordance with a method as claimed in claim 1.

### Claim 8 (depends on 1)

An operating system for causing a computing device to operate in accordance with a method as claimed in claim 1.
