| US 7,571,440 B2 | ||
| System and method for emulating network communications between partitions of a computer system | ||
| Bruce Alan Vessey, Downingtown, Pa. (US); Michael G. Dobbins, Audubon, Pa. (US); David Lapin, West Chester, Pa. (US); Sue Lapin, legal representative; Ted W. Hinaman, Boyertown, Pa. (US); Hans C. Mikkelsen, Afton, Minn. (US); and Charles R. Caldarale, Minneapolis, Minn. (US) | ||
| Assigned to Unisys Corporation, Blue Bell, Pa. (US) | ||
| Filed on Aug. 06, 2001, as Appl. No. 9/923,175. | ||
| Application 09/923175 is a division of application No. 09/215424, filed on Dec. 18, 1998, granted, now 6,314,501. | ||
| Application 09/215424 is a continuation in part of application No. 09/215424, filed on Dec. 18, 1998, granted, now 6,314,501. | ||
| Application 09/215424 is a continuation in part of application No. 09/120797, filed on Jul. 23, 1998, abandoned. | ||
| Claims priority of provisional application 60/223654, filed on Aug. 07, 2000. | ||
| Prior Publication US 2003/0037178 A1, Feb. 20, 2003 | ||
| Int. Cl. G06F 9/44 (2006.01); G06F 15/167 (2006.01) | ||
| U.S. Cl. 719—312 [709/213] | 34 Claims |

| 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.
|