System, apparatus and method of enhancing priority boosting of scheduled threads
First Claim
1. A method of enhancing priority boosting of scheduled threads comprising the steps of:
- determining by a second thread being executed on a second CPU whether to wait for a lock on a shared resource held by a first thread that is scheduled to be executed by a first CPU, the second thread having a higher priority than the first thread;
boosting the priority of the first thread by passing the higher priority of the second thread to the first thread; and
enhancing the priority boosting of the first thread by rescheduling the first thread to run on the second CPU.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, apparatus and method of enhancing priority boosting of scheduled threads are provided. If, while being executed by a second CPU, a second thread determines that it has to wait for a lock on a shared resource held by a first thread that is scheduled to be executed by a first CPU, the second thread may boost the priority of the first thread by passing its priority to the first thread if its priority is higher than the first thread'"'"'s priority. Further, to enhance the priority boost of the first thread, the second thread may reschedule the first thread to be processed by the second CPU. By having been rescheduled on the second CPU, the second thread may be dispatched for execution right thereafter.
-
Citations
20 Claims
-
1. A method of enhancing priority boosting of scheduled threads comprising the steps of:
-
determining by a second thread being executed on a second CPU whether to wait for a lock on a shared resource held by a first thread that is scheduled to be executed by a first CPU, the second thread having a higher priority than the first thread;
boosting the priority of the first thread by passing the higher priority of the second thread to the first thread; and
enhancing the priority boosting of the first thread by rescheduling the first thread to run on the second CPU. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer program product on a computer readable medium for enhancing priority boosting of scheduled threads comprising:
-
code means for determining by a second thread being executed on a second CPU whether to wait for a lock on a shared resource held by a first thread that is scheduled to be executed by a first CPU, the second thread having a higher priority than the first thread;
code means for boosting the priority of the first thread by passing the higher priority of the second thread to the first thread; and
code means for enhancing the priority boosting of the first thread by rescheduling the first thread to run on the second CPU. - View Dependent Claims (7, 8, 9, 10)
-
-
11. An apparatus for enhancing priority boosting of scheduled threads comprising:
-
means for determining by a second thread being executed on a second CPU whether to wait for a lock on a shared resource held by a first thread that is scheduled to be executed by a first CPU, the second thread having a higher priority than the first thread;
means for boosting the priority of the first thread by passing the higher priority of the second thread to the first thread; and
means for enhancing the priority boosting of the first thread by rescheduling the first thread to run on the second CPU. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A system for enhancing priority boosting of scheduled threads comprising:
-
at least one storage device for storing code data; and
at least two CPUs, one of the at least two CPUs for processing the code data to determine by a second thread being executed on the at least one CPU whether to wait for a lock on a shared resource held by a first thread that is scheduled to be executed by the other CPU, the second thread having a higher priority than the first thread, to boost the priority of the first thread by passing the higher priority of the second thread to the first thread, and to enhance the priority boosting of the first thread by rescheduling the first thread to run on the second CPU. - View Dependent Claims (17, 18, 19, 20)
-
Specification