Control for a multiprocessing system program process
First Claim
Patent Images
1. In a multiprocessing system, a method of deactivating a program process comprising the steps of:
- starting an overall timer, set to time out after a first predetermined period of time, for said program process;
executing said program process as a plurality of tasks interposed between a plurality of real time breaks;
determining whether there is a need to maintain said program process active;
starting a keep-alive message timer set to time out after a second predetermined period of time during one of said plurality of real time breaks if it is determined that there is a need to maintain said program process active, said second predetermined of time being less than said first predetermined period of time;
repetitively generating and sending a keep-alive message to said program process and repetitively restarting said keep-alive message timer when said keep-alive message timer was most recently started more than said second predetermined period of time in the past;
receiving said keep-alive message in said program process;
restarting said overall timer when said program process receives said keep-alive message;
terminating said step of repetitively generating and sending and repetitively restarting when it is determined that there is no longer a need to maintain said program process active; and
deactivating said program process when said overall timer was most recently started more than said first predetermined period of time in the past.
1 Assignment
0 Petitions
Accused Products
Abstract
In a multiprocessing system, a method of efficiently maintaining a program process active while also ensuring that the process is deactivated when no longer needed. One or more subordinate processes are linked to a controlling process. Each subordinate process has an associated overall timer. As long as the controlling process keeps sending periodic keep-alive messages to a subordinate process, the associated overall timer is prevented from timing out. When the controlling process stops sending keep-alive messages, the associated overall timer times out and the subordinate process is deactivated.
-
Citations
18 Claims
-
1. In a multiprocessing system, a method of deactivating a program process comprising the steps of:
-
starting an overall timer, set to time out after a first predetermined period of time, for said program process; executing said program process as a plurality of tasks interposed between a plurality of real time breaks; determining whether there is a need to maintain said program process active; starting a keep-alive message timer set to time out after a second predetermined period of time during one of said plurality of real time breaks if it is determined that there is a need to maintain said program process active, said second predetermined of time being less than said first predetermined period of time; repetitively generating and sending a keep-alive message to said program process and repetitively restarting said keep-alive message timer when said keep-alive message timer was most recently started more than said second predetermined period of time in the past; receiving said keep-alive message in said program process; restarting said overall timer when said program process receives said keep-alive message; terminating said step of repetitively generating and sending and repetitively restarting when it is determined that there is no longer a need to maintain said program process active; and deactivating said program process when said overall timer was most recently started more than said first predetermined period of time in the past. - View Dependent Claims (2, 3)
-
-
4. In a multiprocessing system comprising a controlling program process and a subordinate program process, a method of deactivating program processes comprising the steps of:
-
starting an overall timer, set to time out after a first predetermined period of time, for said subordinate process; executing said subordinate program process as a plurality of tasks interposed between a plurality of real time breaks; determining whether there is a need to maintain said subordinate program process active; starting a keep-alive message timer set to time out after a second predetermined period of time for said controlling program process during one of said plurality of real time breaks if it is determined that there is a need to maintain said subordinate program process active, said second predetermined period of time being less than said first predetermined period of time; repetitively generating and sending a keep-alive message from said controlling program process to said subordinate program process and repetitively restarting said keep-alive message timer when said keep-alive message timer was most recently started more than said second predetermined period of time in the past; receiving said keep-alive message in said subordinate program process; restarting said overall timer when said subordinate program process receives said keep-alive message; terminating said step of repetitively generating and sending and repetitively restarting when it is determined that there is no longer a need to maintain said subordinate process active; and deactivating said subordinate program process when said overall timer was most recently started more than said first predetermined period of time in the past. - View Dependent Claims (5, 6, 7, 8)
-
-
9. In a multiprocessing system comprising a first program process, at least one intermediate program process, and a last program process, a method of deactivating program processes, comprising the steps of:
-
linking said program processes in a sequence from said first program process to said last program process such that each of said program processes except said last program process has an associated next program process and each of said program processes except said first program process has an associated previous program process; starting an overall timer, set to time out after a first predetermined period of time for said last program process; generating and sending a keep-alive message from said first program process to the next program process associated with said first program process before said overall timer times out; receiving a keep-alive message in each of said intermediate processes and sending a keep-alive message from each of said intermediate program processes to the next program process associated with that intermediate program process when that intermediate program process receives a keep-alive message; receiving a keep-alive message in said last program process; restarting said overall timer for said last program process when said last program process receives a keep-alive message; and deactivating said last program process when said overall timer was most recently started more than said first predetermined period of time in the past. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. In a multiprocessing system comprising a first program process, at least one intermediate program process, and a last program process, a method of deactivating a program process, comprising the steps of:
-
linking said program processes in a sequence from said first program process to said last program process such that each of said program processes except said last program process has an associated next program process and each of said program processes except said first process has an associated previous program process; starting an overall timer, set to time out after a first predetermined period of time, for one of said intermediate program processes; starting an acknowledgement timer, set to time out after a second predetermined period of time, in said first program process; generating and sending a keep-alive message from said first program process to the next program process associated with said first program process before said overall timer times out; receiving a keep-alive message in each of said intermediate processes and sending a keep-alive message from each of said intermediate program processes to the next program process associated with that intermediate program process when that intermediate program process receives a keep-alive message; receiving a keep-alive message in said last program process; sending an acknowledgement message to the previous program process associated with said last program process when said last program process receives a keep-alive message; receiving an acknowledgement message in each of said intermediate processes and sending an acknowledgement message from each of said intermediate program processes to the previous program process associated with that intermediate program process when that intermediate program process receives an acknowledgement message; receiving an acknowledgement message in said first program process and stopping said acknowledgement timer of said first program process; deactivating said first program process when said acknowledgement timer is not stopped and was most recently started more than said second predetermined period of time in the past; restarting said overall timer for said one of said intermediate program processes when said one of said intermediate program processes receives said acknowledgement message; and deactivating said one of said intermediate program processes when said overall timer was most recently started more than said first predetermined period of time in the past. - View Dependent Claims (16)
-
-
17. In a multiprocessing system comprising a first program process, at least one intermediate program process, and a last program process, a method of deactivating program processes, comprising the steps of:
-
linking said program processes in a sequence from said first program process to said last program process such that each of said program processes except said last program process has an associated next program process; starting an overall timer, set to time out after a first predetermind period of time, for said last program process; generating and sending a keep-alive message from said first program process to the next program process associated with said first program process before said overall timer times out; receiving a keep-alive message in each of said intermediate processes and sending a keep-alive message from each of said intermediate program processes to the next program process associated with that intermediate program process when that intermediate program process receives a keep-alive message; receiving a keep-alive message in said last program process; restarting said overall timer for said last program process when said last program process receives a keep-alive message; and deactivating said last program process when said overall timer was most recently started more than said first predetermined period of time in the past. - View Dependent Claims (18)
-
Specification