Distributed computing using syscall proxying
First Claim
1. A method for executing a system call originating in a local computer on a first remote computer connected to the local computer via a network, the method comprising:
- establishing communication between the local computer and the first remote computer via the network;
installing a syscall server in the first remote computer;
sending a reference address from the first remote computer to the local computer via the network through execution of code by the syscall server;
building a syscall request in the local computer with arguments determined using the reference address received from the first remote computer;
sending the syscall request from the local computer to the first remote computer via the network;
copying the syscall request into a stack of the first remote computer through execution of code by the syscall server;
popping registers from the syscall request in the stack through execution of code by the syscall server;
initiating execution of a syscall request on the first remote computer through execution of code by the syscall server;
pushing a result of the syscall request onto the stack through execution of code by the syscall server; and
sending at least a portion of the result of the syscall request to the local computer via the network through execution of code by the syscall server.
13 Assignments
0 Petitions
Accused Products
Abstract
A system is provided for executing a system call originating in a local computer on a first remote computer connected to the local computer via a network. Communication is established between the local computer and the first remote computer via the network. A syscall server is installed in the first remote computer. A reference address is sent from the first remote computer to the local computer via the network through execution of code by the syscall server. A syscall request is built in the local computer with arguments determined using the reference address received from the first remote computer. The syscall request is sent from the local computer to the first remote computer via the network. The syscall request is copied into a stack of the first remote computer through execution of code by the syscall server. Registers are popped from the syscall request in the stack. Execution of a syscall request is initiated on the first remote computer. The result of the syscall request is pushed onto the stack. At least a portion of the result of the syscall request is sent to the local computer via the network through execution of code by the syscall server.
28 Citations
13 Claims
-
1. A method for executing a system call originating in a local computer on a first remote computer connected to the local computer via a network, the method comprising:
-
establishing communication between the local computer and the first remote computer via the network; installing a syscall server in the first remote computer; sending a reference address from the first remote computer to the local computer via the network through execution of code by the syscall server; building a syscall request in the local computer with arguments determined using the reference address received from the first remote computer; sending the syscall request from the local computer to the first remote computer via the network; copying the syscall request into a stack of the first remote computer through execution of code by the syscall server; popping registers from the syscall request in the stack through execution of code by the syscall server; initiating execution of a syscall request on the first remote computer through execution of code by the syscall server; pushing a result of the syscall request onto the stack through execution of code by the syscall server; and sending at least a portion of the result of the syscall request to the local computer via the network through execution of code by the syscall server. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for executing a system call originating in a local computer on a first remote computer connected to the local computer via a network, the system comprising:
-
a communications module configured to provide communication between the local computer and the first remote computer via the network; means for building a syscall request in the local computer with arguments determined using a reference address received from the first remote computer; means for sending the syscall request from the local computer to the first remote computer via the network; and a syscall server configured to be installed in the first remote computer, the syscall server comprising; means for sending the reference address from the first remote computer to the local computer via the network; means for copying the syscall request into a stack of the first remote computer; means for popping registers from the syscall request in the stack; means for initiating execution of a syscall request on the first remote computer; means for pushing a result of the syscall request onto the stack; and means for sending at least a portion of the result of the syscall request to the local computer via the network.
-
-
8. Computer code stored on a computer readable medium, for executing a computer program for executing a system call originating in a local computer on a first remote computer connected to the local computer via a network, the computer code comprising:
- code for establishing communication between the local computer and the first remote computer via the network;
code for installing a syscall server in the first remote computer;
code for sending a reference address from the first remote computer to the local computer via the network through execution of code by the syscall server;
code for building a syscall request in the local computer with arguments determined using the reference address received from the first remote computer;
code for sending the syscall request from the local computer to the first remote computer via the network;
code for copying the syscall request into a stack of the first remote computer through execution of code by the syscall server;
code for popping registers from the syscall request in the stack through execution of code by the syscall server;
code for initiating execution of a syscall request on the first remote computer through execution of code by the syscall server;
code for pushing a result of the syscall request onto the stack through execution of code by the syscall server; and
code for sending at least a portion of the result of the syscall request to the local computer via the network through execution of code by the syscall server. - View Dependent Claims (9, 10, 11, 12, 13)
- code for establishing communication between the local computer and the first remote computer via the network;
Specification