Patent ID: 7571440
Filing Date: 2009-08-04
Classification: G06F

Abstract:
1. A method for communicating between first and second applications executing on respective first and second independent partitions of a partitionable computer system, wherein each of said first and second partitions operates under the control of a separate operating system, and wherein said first and second applications are configured to communicate with each other via a physical network using standard network interfaces without the need for providing an external network connection therebetween; said method comprising: receiving a request made by said first application for establishing a network connection with said second application for sending a message thereto; and in response to said request, establishing an emulated network connection between said first and said second applications through a shared memory region of the computer system shared by said first and said second partitions, wherein said establishing communication between said first and second applications includes: creating a data structure in said shared memory region comprising a plurality of data segments for use in sending a message from said first application to said second application, wherein the data structure comprises: a plurality of data segments, each of the plurality of data segments for storing network message data to be sent from a sending shared memory service provider to a receiving shared memory service provider; a control segment for controlling reading and writing of data in the plurality of data segments, the control, segment comprising: a first portion comprising: a first field for storing an indication of the data segment containing the most recently written network message data; and a second field for storing an indication of the data segment containing the earliest written, but not read, network message data; and a plurality of second portions, each Second portion corresponding to one of the plurality of data segments for control of the data segment, each second portion comprising: a first field for storing an indication of the beginning of network message data within the data segment; and a second field for storing an indication of the end of network message data within the data segment; said establishing being such that said emulated network connection permits said first and second applications to communicate with each other via said emulated network connection using standard network interfaces even though there is no physical network therebetween; said establishing also being such that the receiving of a message by said second application from said first application via said emulated network connection appears to said second application as having been sent via an external physical network even though there is no external physical network, wherein said emulated network connection requested by said first application comprises a network socket connection, and wherein the step of establishing a connection through the shared memory region comprises establishing a connection through the shared memory region that emulates a network socket connection.