← Back to Patent Explorer
US5241676A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for controlling process priority in semaphore operation

Assignee: Toshiba Corp
•
Filing: 1990-05-15
•
Granted: 1993-08-31
•
Expires: 2010-05-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In the P operation of a semaphore operation, the semaphore priority set in the semaphore is compared with the process priority of an execution process. When the semaphore priority is higher than the process priority of the execution process, the process priority is changed to the semaphore priority and the process is executed in accordance with the changed process priority. In the V operation, on the other hand, the semaphore priority is compared with the process priority of the first process which is placed in the wait state. When the semaphore priority is higher than the process priority of the first process in the wait state, the process priority is changed to the semaphore priority and the process is placed in the ready state. Furthermore, the process priority of the process in the ready state is compared with the process priority of an execution process. When the process priority of the process in the ready state is higher than the process priority of the execution process, the execution process is placed in the ready state.

Inventors

  • 👤 Hitoshi Kubo

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 18:27
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/52

Claims Analysis

Total Claims: 6
Claim 1
Independent Claim 255 words
A multitask processing method for executing any one of a plurality of processes each having a different process priority by using a semaphore having a semaphore priority in a semaphore operation including a first operation and second operation, each process being in a running state, wait state or ready state, the method, performed in a single processor, comprising the steps of: comparing, in the first operation, the semaphore priority with a first process priority of a first one of the processes which is in the running state; changing the first process priority into a first changed priority corresponding to the semaphore priority when the semaphore priority is higher than the first process priority, to execute the first process; returning, in the second operation, the first changed priority to the first process priority; comparing the semaphore priority with a second process priority of a second one of the plurality of processes which is in the wait state; changing the second process priority into a second changed priority corresponding to the semaphore priority when the semaphore priority is higher than the second process priority; setting the second process having the second changed priority in the ready state; comparing the returning first process priority with the second changed priority; setting the first process in the ready state when the second changed priority is higher than the returned first process priority; and selecting a process having a highest process priority from among the process priorities of the processes which are in the ready state to execute the selected process.
Claim 2
Dependent Claim 255 words
A multitask processing method for executing any one of a plurality of processes each having a different process priority by using a semaphore having a semaphore priority in a semaphore operation including a first operation and second operation, each process being in a running state, wait state or ready state, the method, performed in a single processor, comprising the steps of: comparing, in the first operation, the semaphore priority with a first process priority of a first one of the processes which is in the running state; changing the first process priority into a first changed priority corresponding to the semaphore priority when the semaphore priority is higher than the first process priority, to execute the first process; returning, in the second operation, the first changed priority to the first process priority; comparing the semaphore priority with a second process priority of a second one of the plurality of processes which is in the wait state; changing the second process priority into a second changed priority corresponding to the semaphore priority when the semaphore priority is higher than the second process priority; setting the second process having the second changed priority in the ready state; comparing the returning first process priority with the second changed priority; setting the first process in the ready state when the second changed priority is higher than the returned first process priority; and selecting a process having a highest process priority from among the process priorities of the processes which are in the ready state to execute the selected process.
Claim 3
Dependent Claim 43 words
The method according to claim 1, wherein the first operation includes a P operation for occupying a resource during execution of the first process and the second operation includes a V operation for releasing the occupied resource during execution of the first process.
Claim 4
Dependent Claim 326 words
A multitask processing method for executing any one of a plurality of processes each having a different process priority by using a semaphore in a semaphore operation having a first operation and second operation, the semaphore including a first region for storing a semaphore priority and a second region for storing the process priority of one of the processes, each of a plurality of process control blocks corresponding to the processes for storing the different process priority, each process being in a running state, wait state or ready state, the method, performed in a single processor, comprising the steps of: saving, in the first operation, a first process priority stored in a first process control block corresponding to a first one of the processes which is in the running state to the second region of the semaphore; comparing the semaphore priority with the saved process priority; storing a first changed priority corresponding to the semaphore priority into the first process control block when the semaphore priority is higher than the saved process priority; returning, in the second operation, the saved process priority to the first process control block; comparing the semaphore priority stored in the first region of the semaphore with a second process priority stored in a second process control block corresponding to a second one of the processes which is in the wait state; storing a second changed priority corresponding to the semaphore priority in the second process control block when the semaphore priority is higher than the second process priority stored in the second process control block; setting the second process in the ready state; comparing the returned process priority with the second changed priority; setting the first process in the ready state when the second changed priority is higher than the returned process priority; and selecting a process having a highest process priority from among the process priorities of the processes which are in the ready state to execute the selected process.
Claim 5
Dependent Claim 326 words
A multitask processing method for executing any one of a plurality of processes each having a different process priority by using a semaphore in a semaphore operation having a first operation and second operation, the semaphore including a first region for storing a semaphore priority and a second region for storing the process priority of one of the processes, each of a plurality of process control blocks corresponding to the processes for storing the different process priority, each process being in a running state, wait state or ready state, the method, performed in a single processor, comprising the steps of: saving, in the first operation, a first process priority stored in a first process control block corresponding to a first one of the processes which is in the running state to the second region of the semaphore; comparing the semaphore priority with the saved process priority; storing a first changed priority corresponding to the semaphore priority into the first process control block when the semaphore priority is higher than the saved process priority; returning, in the second operation, the saved process priority to the first process control block; comparing the semaphore priority stored in the first region of the semaphore with a second process priority stored in a second process control block corresponding to a second one of the processes which is in the wait state; storing a second changed priority corresponding to the semaphore priority in the second process control block when the semaphore priority is higher than the second process priority stored in the second process control block; setting the second process in the ready state; comparing the returned process priority with the second changed priority; setting the first process in the ready state when the second changed priority is higher than the returned process priority; and selecting a process having a highest process priority from among the process priorities of the processes which are in the ready state to execute the selected process.
Claim 6
Dependent Claim 43 words
The method according to claim 3, wherein the first operation includes a P operation for occupying a resource during execution of the first process and the second operation includes a V operation for releasing the occupied resource during execution of the first process.

References Cited (Backward Citations)

US4084224A Cited
US4316245A Cited
US4374409A Cited
US4395757A Cited
US4320451A Cited
US4590555A Cited
US4964040A Cited
US4908750A Cited
US4725946A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1996-08-30 1997-03-01 1997-08-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2000-08-30 2001-03-01 2001-08-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2004-08-30 2005-03-01 2005-08-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag