Opportunistic Multitasking
First Claim
1. A method to schedule processing in a limited multitasking operating system, comprising:
- scheduling a first foreground process with a scheduling priority from a first band of priority levels; and
scheduling a first background process with a scheduling priority from a second band of priority levels, wherein the priority levels in the first band and the second band overlap by one, but not all, priority levels.
1 Assignment
0 Petitions
Accused Products
Abstract
Services for a personal electronic device are provided through which a form of background processing or multitasking is supported. The disclosed services permit user applications to take advantage of background processing without significant negative consequences to a user'"'"'s experience of the foreground process or the personal electronic device'"'"'s power resources. To effect the disclosed multitasking, one or more of a number of operational restrictions may be enforced. By way of example, thread priority levels may be overlapped between the foreground and background states. In addition, system resource availability may be restricted based on whether a process is receiving user input. In some instances, an application may be suspended rather than being placed into the background state. Implementation of the disclosed services may be substantially transparent to the executing user applications and, in some cases, may be performed without the user application'"'"'s explicit cooperation.
28 Citations
11 Claims
-
1. A method to schedule processing in a limited multitasking operating system, comprising:
-
scheduling a first foreground process with a scheduling priority from a first band of priority levels; and scheduling a first background process with a scheduling priority from a second band of priority levels, wherein the priority levels in the first band and the second band overlap by one, but not all, priority levels. - View Dependent Claims (2, 3)
-
-
4. A multitasking method, comprising:
-
identifying a first user application executing in foreground state and receiving user input; identifying a second user application executing in the foreground state and not receiving user input; limiting the second foreground application'"'"'s access to one or more specified system resources because the second foreground application is not receiving user input. - View Dependent Claims (5, 6, 7)
-
-
8. A multitasking method, comprising:
-
identifying a first user application executing in a foreground state; receiving user input directing that a second user application is to be placed into the foreground state; suspending only the first user application in response to the received user input; and placing the second user application into the foreground state. - View Dependent Claims (9, 10, 11)
-
Specification