Patent number 8555297 is assigned to
The following quote was obtained by the news editors from the background information supplied by the inventors: "This application generally relates to code execution, and more particularly to techniques used for communicating between different code modules.
"Computer systems may include different resources used by one or more host processors. Resources and host processors in a computer system may be interconnected by one or more communication connections. These resources may include, for example, data storage devices such as those included in the data storage systems manufactured by
"A host processor may perform a variety of data processing tasks and operations using the data storage system. For example, a host processor may perform basic system I/O operations in connection with data requests, such as data read and write operations.
"Host processor systems may store and retrieve data using a storage device containing a plurality of host interface units, disk drives, and disk interface units. The host systems access the storage device through a plurality of channels provided therewith. Host systems provide data and access control information through the channels to the storage device and the storage device provides data to the host systems also through the channels. The host systems do not address the disk drives of the storage device directly, but rather, access what appears to the host systems as a plurality of logical disk units. The logical disk units may or may not correspond to the actual disk drives. Allowing multiple host systems to access the single storage device unit allows the host systems to share data in the device. In order to facilitate sharing of the data on the device, additional software on the data storage systems may also be used.
"Code modules that execute on a data storage system, as well as other systems, may use a variety of different techniques for inter-module communications. An environment in which the code executes may provide a facility for such inter-module communication. It may be desirable to utilize a flexible and efficient communication model and facility allowing messages to be exchanged between executing code modules."
In addition to the background information obtained for this patent, VerticalNews journalists also obtained the inventors' summary information for this patent: "In accordance with one aspect of the invention is a method for performing a remote procedure call comprising: sending a first request from a client container to a server container to obtain remote procedure call configuration information identifying a registered remote procedure call in said server container; sending said remote procedure call configuration information from said server container to said client container, said remote procedure call configuration information including a state identifier and an identifier of a remote procedure call descriptor, said state identifier being associated with a configuration state of said remote procedure call configuration information at a first point in time when said first request is processed by said server container, said remote procedure call descriptor describing an instance of a remote procedure call object for said registered remote procedure call; storing, by said client container, said remote procedure call configuration information; sending, from said client container to said server container, a second request to perform said registered remote procedure call, said second request including said remote procedure call configuration information; and performing, by said server container, processing for said second request, said processing including successfully validating said identifier of said remote procedure call descriptor using said state identifier prior to performing said registered remote procedure call. The step of validating may include determining whether there has been a change in remote procedure call configuration of said server container since said first point in time. The step of validating may include comparing said state identifier to another state identifier representing the remote procedure call configuration of said server container at a second point in time when said server container is processing said second request. The client container may send a plurality of requests to said server container to perform said registered remote procedure call, each of said plurality of requests including said remote procedure call configuration information returned in response to said first request. The client container may retrieve said remote procedure call configuration information from a memory location in an address space of said client container. The identifier may be an address of an object in an address space of said server container. The object may include a field identifying an address of code to which control is transferred in response to receiving a request to perform said registered remote procedure call. The remote procedure call may be performed by transferring execution control to an address obtained from said remote procedure call descriptor. The client container may include code executing in a first address space and said server container includes code executing in a second address space different than said first address space. The first request may include a string identifying a name of said registered remote procedure call, and performing said first request may include accessing a list of remote procedure call descriptors to determine whether said string identifies a name of a registered remote procedure call of said server container.
Most Popular Stories
- Hispanics Seek to Grow School Board Members
- Slow Week Ahead of December FOMC Meeting
- 'Knockout Game': Myth or Menace?
- U.S. Companies Eager for Iranian Business
- Questions Remain in Jenni Rivera's Death
- GM Bailout Saved 1.2 Million U.S. Jobs, Report Says
- Banks Fret as Volcker Vote Approaches
- Bitcoin Used to Buy Tesla Car
- Paul Walker Fans Pay Respects
- Yellen Set to Become One of World's Most Powerful Women