Claims
- 1. A distributed shell for use in a distributed computer environment, comprising:
a shell server located on a server computer system, the shell server being capable of processing commands for distribution to particular client computer systems; and a plurality of shell clients, each shell client executed on a separate client computer system, each shell client being in communication with the shell server, wherein the shell server selects a particular shell client to perform a task in response to receiving a command, and wherein the selected shell client executes the task.
- 2. A distributed shell as recited in claim 1, wherein the shell server includes a parser unit that processes received commands into specific tasks to be performed using a shell client.
- 3. A distributed shell as recited in claim 2, wherein the shell server includes a command delivery unit that delivers tasks to selected shell clients.
- 4. A distributed shell as recited in claim 3, wherein the command delivery unit creates a command object based on data received from the parser unit, and wherein the command object is transmitted to a shell client.
- 5. A distributed shell as recited in claim 3, wherein the shell server includes a synchronization unit that facilitates task synchronization.
- 6. A distributed shell as recited in claim 5, wherein the synchronization unit facilitates task synchronization based on filtered output received from shell clients.
- 7. A distributed shell as recited in claim 6, wherein each shell client includes a synchronization filter that filters task output and provides the filtered task output to the synchronization unit.
- 8. A distributed shell as recited in claim 1, wherein the distributed shell includes an output collection unit that facilitates centralized output collection to a particular storage system.
- 9. A distributed shell as recited in claim 8, wherein the output collection unit receives output data from each shell client and transmits the output data to the particular storage system.
- 10. A distributed shell as recited in claim 8, wherein the output collection unit instructs each shell client to transmit output data to the particular storage system.
- 11. A method for processing commands in a distributed shell environment, comprising the operations of:
receiving a command at a shell server located on a server computer system, the shell server being capable of processing commands for distribution to particular client computer systems, wherein the command indicates a task to perform; selecting a shell client to perform the task, the selected shell client being one of a plurality of shell clients each executed on a separate client computer system, wherein each shell client is in communication with the shell server; and transmitting the command to the selected shell client, wherein the selected shell client executes the task.
- 12. A method as recited in claim 11, further comprising the operation of processing the received command into at least one specific task to be performed using a shell client.
- 13. A method as recited in claim 12, further comprising the operation of generating a command object based on the received command and transmitting the command object to a shell client.
- 14. A method as recited in claim 13, further comprising the operation of providing task synchronization based on filtered output received from shell clients.
- 15. A method as recited in claim 11, further comprising the operation of receiving output data at the shell server from each shell client and transmitting the output data to a particular storage system.
- 16. A method as recited in claim 11, further comprising the operation of instructing each shell client to transmit output data to a particular storage system.
- 17. A shell server for use in a distributed shell environment having a plurality of shell clients, comprising:
a parser unit that processes received commands into specific tasks to be performed using a shell client; a command delivery unit in communication with the parser unit, the command delivery unit capable of creating a command object based on data received from the parser unit, and transmitting the command object to a selected shell client; a synchronization unit that facilitates task synchronization based on filtered output received from shell clients.
- 18. A shell server as recited in claim 17, wherein the shell server further includes an output collection unit that facilitates centralized output collection to a particular storage system.
- 19. A shell server as recited in claim 18, wherein the output collection unit receives output data from each shell client and transmits the output data to the particular storage system.
- 20. A distributed shell as recited in claim 18, wherein the output collection unit instructs each shell client to transmit output data to the particular storage system.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is related to U.S. patent application Ser. No. 10/147,945, filed on May 16, 2002, and entitled “Distributed Test Harness Model,” which is incorporated herein by reference.