Apparatus and methods for sharing idle workstations
First Claim
1. A system for sharing computer resources among a plurality of computers connected together by a network, comprising:
- a local computer that accepts jobs for remote execution, the local computer being one of the plurality of computers;
a remote computer that is capable of receiving jobs for remote execution, the remote computer being one of the plurality of computers and executing a current status process to collect current activity information about primary users of the remote computer; and
a scheduling computer that chooses a location for remote execution of the accepted jobs based upon at least the remote computer'"'"'s primary user current activity information, the scheduling computer being one of the plurality of computers.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention relates to systems for sharing idle workstation computers that are connected together through a network and shared file system. More particularly, a user of a local host workstation may submit jobs for execution on remote workstations. The systems of the present invention select a remote host that is idle in accordance with a decentralized scheduling scheme and then continuously monitor the activity of the remote host on which the job is executing. If the system detects certain activity on the remote host by one of the remote host'"'"'s primary users, the execution of the job is immediately suspended to prevent inconvenience to the primary users. The system also suspends job execution if the remote host'"'"'s load average gets too high. Either way, the suspended job is migrated by selecting another idle remote workstation to resume execution of the suspended job (from the point in time at which the last checkpoint occurred).
-
Citations
35 Claims
-
1. A system for sharing computer resources among a plurality of computers connected together by a network, comprising:
-
a local computer that accepts jobs for remote execution, the local computer being one of the plurality of computers; a remote computer that is capable of receiving jobs for remote execution, the remote computer being one of the plurality of computers and executing a current status process to collect current activity information about primary users of the remote computer; and a scheduling computer that chooses a location for remote execution of the accepted jobs based upon at least the remote computer'"'"'s primary user current activity information, the scheduling computer being one of the plurality of computers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system for sharing computer resources among a plurality of computers connected together by a network, comprising:
-
a local computer that accepts jobs that a user has submitted to the local computer for execution on a remote computer; and a remote computer, selected by a scheduling process, that executes the job submitted by the user, and executes a monitor process that causes the execution of the job to be suspended if the monitor process detects activity on the remote computer by a primary user of the remote computer. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A method of sharing computer resources among a plurality of computers connected together by a network comprising the steps of:
-
accepting jobs for remote execution on a first computer; executing a scheduling process to schedule the remote execution of the accepted jobs based on current activity information about each of the plurality of primary users of each of the computers that may be remotely accessed; and running a current status process on at least one second computer of the plurality of computers, the second computer being one of the remotely accessible computers, the current status process operating to collect current activity information about primary users of the second computer. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34, 35)
-
Specification