Job scheduling amongst multiple computers
First Claim
1. In a multiple computer environment in which a plurality of computers each having an independent local memory, are each able to execute a different portion of an application program written to be executed on only a single computer and are each interconnected by means of a communications network, a method of controlling the creation of a thread by a portion of said application program wherein an improvement to the method comprising the steps of:
- (i) intercepting or detecting an instruction or operation to create an additional thread about to be executed by the portion of said application program executing on one of said computers;
(ii) preventing said one computer from creating said additional thread;
(iii) instructing another one of said plurality of computers to create said additional thread; and
(iv) creating said additional thread on said another computer.
0 Assignments
0 Petitions
Accused Products
Abstract
A multiple computer system is disclosed in which each computer (M1, M2, Mn, Mn+1) operates a different portion of an application program (15) written to be executed on only a single computer, said computers being interconnected via a communications network (53). An instruction such as “new thread ( )” which creates an additional thread (Tm+1) is not created on a computer (Mn) including that instruction and existing operating thread Tm. Instead the instruction is intercepted or detected and passed to another machine (Mn+1) which creates the additional thread (Tm+1). Preferably the computers (Mn) and (Mn+1) are adjacent computers in a closed loop of consecutively numbered computers.
77 Citations
13 Claims
-
1. In a multiple computer environment in which a plurality of computers each having an independent local memory, are each able to execute a different portion of an application program written to be executed on only a single computer and are each interconnected by means of a communications network, a method of controlling the creation of a thread by a portion of said application program wherein an improvement to the method comprising the steps of:
-
(i) intercepting or detecting an instruction or operation to create an additional thread about to be executed by the portion of said application program executing on one of said computers; (ii) preventing said one computer from creating said additional thread; (iii) instructing another one of said plurality of computers to create said additional thread; and (iv) creating said additional thread on said another computer. - View Dependent Claims (2, 3, 4)
-
-
5. A computer program stored in a computer readable media, the computer program adapted for execution in a processor within a computer or information appliance and a memory coupled with the processor to modify the operation of the computer or information appliance, for modifying the operation of the computer or information appliance in a multiple computer environment in which a plurality of computers each having an independent local memory, are each able to execute a different portion of an application program written to be executed on only a single computer and are each interconnected by means of a communications network, the modification including performing a method of controlling the creation of a thread by a portion of said application program, said method comprising:
-
(i) intercepting or detecting an instruction or operation to create an additional thread about to be executed by the portion of said application program executing on one of said computers; (ii) preventing said one computer from creating said additional thread; (iii) instructing another one of said plurality of computers to create said additional thread; and (iv) creating said additional thread on said another computer. - View Dependent Claims (6, 7, 8)
-
-
9. A multiple computer system comprising:
-
a plurality of computers in which each of said plurality of computers has an independent local memory, each of said plurality of local computers being interconnected via a communications network; each of said plurality of local computers comprising; means for executing a different portion of an application program written to be executed on only a single conventional computer; intercepting or detecting means for intercepting or detecting an instruction to create an additional thread that is about to be executed by the portion of said application program executing on that particular local computer and for preventing said additional thread from being created on that particular local computer, routing means for passing said thread creating instruction to another one of said plurality of local computers on which said additional thread is created. - View Dependent Claims (10, 11, 12)
-
-
13. A method of scheduling jobs among a plurality of computers operating in a multiple computer system, the method comprising:
-
(i) detecting an intended operation by at least one of said plurality of computers to create or schedule a job associated with executed by the portion of an application program on one of said plurality of computers; (ii) preventing said at least one computer from creating said additional job; (iii) instructing another one of said plurality of computers to create or schedule said job; and (iv) creating said job on said another computer.
-
Specification