×

Method for executing operation call from client application using shared memory region and establishing shared memory region when the shared memory region does not exist

  • US 5,566,302 A
  • Filed: 07/29/1994
  • Issued: 10/15/1996
  • Est. Priority Date: 12/21/1992
  • Status: Expired due to Term
First Claim
Patent Images

1. A computer implemented method for using a shared memory space comprising the steps of:

  • executing an operation call on an original object which has a shared memory subcontract, said operation call being made by a client application, and said operation call requiring arguments which may be complex arguments such as other objects;

    recognizing said operation call by a client-side portion of said shared memory subcontract;

    determining whether a shared memory region exists for use by said client-side portion of said shared memory subcontract for servicing said original object, said determination being made by non-kernel routines;

    if said shared memory region does exist, marshalling arguments of said operation call inside said shared memory region, said marshalling performed by said client-side portion of said shared memory subcontract;

    invoking said operation call on an existing channel object by said client-side portion of said shared memory subcontract;

    establishing a shared memory region if said shared memory region does not exist by performing the steps of;

    obtaining from nucleus a server domain id for a server domain of said original object, said server domain containing an implementation of said original object; and

    determining whether a channel object exists which provides a communication path from said client-side portion of said shared memory subcontract to said server domain containing said implementation of said original object, said determination of whether a channel object exists being done by comparing said server domain id obtained from nucleus to server domain id values located in a field of each of one or more second data structures in said client-side portion of said shared memory subcontract; and

    determining that a channel object does not exist if said server domain id obtained from nucleus does not match any server domain id value located in a field of any of said one or more second data structures in said client-side portion of said shared memory subcontract;

    if said channel object does not exist, establishing a shared memory region and creating a new channel object byobtaining a new memory object from a virtual memory manager and mapping the new memory object in said client'"'"'s address space, said obtaining and mapping being done by said client-side portion of said shared memory subcontract; and

    initiating a call to a server identified by said server domain id to create a channel object by invoking a create channel operation on said original object and passing said new memory object to said server.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×