US2002112089A1PendingUtilityA1

Method and system for supporting a system call and interprocess communication in a fault-tolerant,scalable distributed computer environment

Assignee: COMPAQ INFORMATION TECHNOLOGIEPriority: Aug 21, 1996Filed: Apr 10, 2002Published: Aug 15, 2002
Est. expiryAug 21, 2016(expired)· nominal 20-yr term from priority
G06F 9/546G06F 9/542
39
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A distributed computing system environment includes multiple CPUs, multiple non-shared memory spaces and a means for implementing system calls and interprocess communications. The system is both fault-tolerant and scalable in that agents exist independently in each non-shared memory space to handle interprocess connections between memory spaces.

Claims

exact text as granted — not AI-modified
What is claimed is:  
     
         1 . A distributed operating system incorporating a distributed select function, comprising: 
 a first agent running in a first memory space;    a second agent running in a second memory space;    a first data structure for interprocess communication residing in the first memory space; and    a second data structure for interprocess communication residing in the second memory space;    wherein the first and second agents send and receive messages between the first and the second memory spaces and provide a standard select function interface to user processes.    
     
     
         2 . A distributed computing environment, comprising: 
 a plurality of central processing units;    a plurality of memory spaces;    a communication channel for communicating messages between the plurality of central processing units;    a first agent running in a first memory space;    a second agent running in a second memory space;    a first data structure for interprocess communication residing in the first memory space; and    a second data structure for interprocess communication residing in the second memory space,    wherein the first and second agents send and receive messages between the first and the second memory spaces and provide a standard select function interface to user processes.    
     
     
         3 . A method in a computing environment having multiple CPUs and multiple memory spaces for facilitating communication between a process in a first memory space and a process in a second memory space, comprising: 
 creating a first agent process in the first memory space;    directing to the agent a request by a first process for creating an interprocess connection to a process in a second memory space;    creating a data structure in the first memory space for facilitating interprocess communication;    transmitting a message representing the request from the agent to the second memory space;    receiving the request at a second process in the second memory space;    creating a data structure in the second memory space for facilitating interprocess communication;    using the first and the second data structures to communicate data with processes in the respective memory spaces; and    using the agent and the second process to communicate data between the data structures.    
     
     
         4 . The method according to  claim 3  wherein the first process is unaware that it is running in a distributed memory space environment.  
     
     
         5 . The method according to  claim 3  wherein the process in the second memory space is a second agent.  
     
     
         6 . The method according to  claim 3  wherein the second process in the second memory space is a continuously running I/O process.  
     
     
         7 . In a distributed computing environment, a computer readable medium embodying program code with instructions for facilitating communication between a process existing in a first memory space and a process existing in a second memory space, comprising: 
 instructions for creating a first agent process in the first memory space;    instructions for directing to the agent a request by a first process for creation of an interprocess connection to a process in a second memory space;    instructions for creating a data structure in the first memory space for facilitating interprocess communication;    instructions for transmitting a message representing the request from the agent to the second memory space;    instructions for receiving the request at a second process in the second memory space;    instructions for creating a data structure in the second memory space for facilitating interprocess communication;    instructions for using the first and the second data structures to communicate data with processes in the respective memory spaces; and    instructions for using the agent and the second process to communicate data between the data structures.    
     
     
         8 . A distributed computing system for facilitating communication between a process existing in a first memory space and a process existing in a second memory space, comprising: 
 means for creating a first agent process in the first memory space;    means for directing to the agent a request by a first process for creation of an interprocess connection to a process in a second memory space;    means for creating a data structure in the first memory space for facilitating interprocess communication;    means for transmitting a message representing the request from the agent to the second memory space;    means for receiving the request at a second process in the second memory space;    means for creating a data structure in the second memory space for facilitating interprocess communication;    means for using the first and the second data structures to communicate data with processes in the respective memory spaces; and    means for using the agent and the second process to communicate data between the data structures.    
     
     
         9 . A method for facilitating a system function call and interprocess communication in a distributed computer system environment in which two processes are instantiated, each in its own memory space that is associated with its operating system, and in which a first of the two processes calls a system function for establishing interprocess communication with the second of the two process, comprising: 
 instantiating an agent in each of the memory spaces, a first agent in the memory space of the first process and a second agent in the memory space of the second process;    receiving the system function call from the first process at its operating system;    prompting the first agent, in response to the system function call, to create a shadow socket in the memory space of the first process;    prompting the second agent, in response to a message from the first agent about the system function call, to create a real socket in the memory space of the second process, the real socket receiving data associated with the system function call;    transferring the data from the real socket to the shadow socket; and    prompting the first agent to wake-up the first process when the I/O data is available in the shadow socket, wherein the first socket is not aware that the second process is in a remote memory space.    
     
     
         10 . A method as in  claim 9 , wherein the first and second processes are user and input/output (I/O) processes, respectively, such that the real socket receives I/O data as well as connection information including the I/O data destination at the first memory space.  
     
     
         11 . A method as in  claim 9 , wherein the system function call is select( ).  
     
     
         12 . A distributed computer system for facilitating a system function call and interprocess communication in which two processes are instantiated, each in its own memory space that is associated with its operating system and in which a first of the two processes is configured to call a system function for establishing interprocess communication with the second of the two process, comprising: 
 means for instantiating an agent in each of the memory spaces, a first agent in the memory space of the first process and a second agent in the memory space of the second process;    means for receiving the system function call from the first process at its operating system;    means for prompting the first agent, in response to the system function call, to create a shadow socket in the memory space of the first process;    means for prompting the second agent, in response to a message from the first agent about the system function call, to create a real socket in the memory space of the second process, the socket receiving data associated with the system function call;    means for transferring the data from the real socket to the shadow socket; and    means for prompting the first agent to wake-up the first process when the l/O data is available in the shadow socket, wherein the first socket is not aware that the second process is in a remote memory space.

Join the waitlist — get patent alerts

Track US2002112089A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.