Claims
- 1. In an Output Channel Interface function of a Cooperative Service Interface (12) linking a first system service (DSS 10) and a second system service (NP 20), a method for enhancing dialog message transfer comprising the steps of:
- (a) building a message, by said first system service (10), in a buffer (10.sub.db) of said first system service (10);
- (b) informing said second system service (20) to build a header, in a header pool buffer (20.sub.hb) of said second system service for concatenation to said message in said first system service buffer (10.sub.db);
- (c) transmitting said message and header to a message queue in a receiving unit (I/O 40) external to said first and second system services.
- 2. The method of claim 1 wherein step (a) includes the step of:
- (a1) locking, via use of a lock pool (10.sub.Lp), said message in said first system services buffer (10.sub.db) until said message is transmitted.
- 3. The method of claim 2 wherein step (a) includes the step of:
- (a2) unlocking said buffer (10.sub.db) of said first system service (10), when said message in said buffer (10.sub.db) has been transmitted.
- 4. The method of claim 2 wherein step (a1) includes the step of:
- (a1a) sharing a lock by said first (10) and said second system service (20).
- 5. A system for passing dialog messages between a Distributed System Services unit (DSS10) and a Network Provider (NP20) comprising:
- (a) a DSS unit (10) having a DSS Connection Library means (10.sub.c), an output buffer pool (10.sub.op) and a dialog lock pool (10.sub.Lp), said output buffer pool and said dialog lock pool connected to said Network Provider's Connection Library means (20.sub.c);
- (b) said Network Provider (20) having a Connection Library means (20.sub.c), an input buffer pool (20.sub.ip) and a header buffer pool (20.sub.b) said input buffer pool connected to said DSS's Connection Library means (10.sub.c);
- (c) buffer sharing means which includes:
- (cl) means for transferring control of specific members of said NP's input buffer (20.sub.ib) to said DSS (10) when said NP (20) receives a dialog message to be processed by said DSS (10);
- (c2) transferring control of said output buffers (20.sub.ob) to said NP (20) when a dialog message is requested from said DSS (10), and when said DSS requests that said NP (20) transmit the dialog message.
- 6. The system of claim 5 wherein said DSS (10) includes:
- (i) a buffer pool image (10.sub.ip) for holding pointers to the memory of data received in said NP's buffer (20.sub.ib).
- 7. The system of claim 5 wherein said NP (20) includes:
- (i) a lock pool image 20.sub.Lp for holding pointers to said DSS's lock pool (10.sub.Lp).
- 8. The system of claim 7 which includes:
- (d) lock sharing means to share dialog locks between said DSS (10) and NP (20).
- 9. A system for enhancing message dialogs using a Cooperative Services Interface (12) between a first system service unit (Distributed System Service, DSS 10) and a second system service unit (Network Provider, NP 20) comprising:
- (a) said first system service unit, designated as a Distributed System Service (DSS 10) used to support communication across multi-host networks, including;
- (a1) a DSS output buffer pool (10.sub.op);
- (a2) a DSS lock pool (10.sub.Lp);
- (a3) an buffer pool image (10.sub.ip) for holding pointers to memory;
- (a4) a DSS Connection Library Element (10.sub.e) connecting said DSS buffer pool (10.sub.op) to an NP-Connection Library Element (20.sub.e);
- (b) said second system service unit (20), designated as a Network Provider (NP 20) for providing software services to facilitate communication, including;
- (b1) an input buffer pool image (20ip);
- (b2) an lock pool image (20.sub.Lp) holding pointers to said DSS lock pool (10.sub.Lp);
- (b3) a header pool (20.sub.hp) to provide headers to messages;
- (b4) an buffer pool image (20.sub.op) holding pointers to memory;
- (b5) an NP-Connection Library Element (20.sub.e) connecting said Network Provider (20) to said DSS Connection Library Element (10.sub.e);
- (c) Cooperative Services Interface means (12) for enabling communication between said DSS 10 and said NP 20 including;
- (c1) said DSS Connection Library Element (10.sub.e) for connecting code files to said NP-Connection Library Element (20.sub.e);
- (c2) said NP-Connection Library Element (20.sub.e) for connecting code files to said DSS-Connection Library Element (10.sub.e);
- (d) means to enable said DSS (10) to share buffer pools in said Network Provider (20);
- (e) means to enable said Network Provider (20) to share buffer pools in said DSS (10).
- 10. The method of claim 9 which includes:
- (f) means to share said DSS lock pool (10.sub.Lp) by said Network Provider 20 and said DSS 10.
- 11. In an Output Channel Interface function of a Cooperative Service Interface (12) linking a first system service (Distributed System Service, DSS 10) and a second system service (Network Provider, NP 20) a method for enhancing dialogs and message transfers comprising the steps of:
- (a) initializing said Cooperative Service Interface (12) by said first system service (10) connecting to said second system service (20) via a Connection Library Element means (10.sub.e, 20.sub.e);
- (b) selecting, by said first system service (10), a dialog ID and lock (10.sub.dL) from a lock pool (10.sub.Lp) and opening a channel to said second system service (NP 20);
- (c) initializing said second system service (NP 20) to begin dialog initiation;
- (d) notifying said first system service (10) that a dialog has been initiated;
- (e) grabbing by said first system service (10) of a dialog lock (10.sub.dL);
- (f) selecting a buffer (10.sub.db), from a buffer pool (10.sub.op), to be filled with data;
- (g) allocating, by said second system service (20), a buffer (20.sub.hb) from a header buffer pool (20.sub.hp);
- (h) building by said second system service (20) of a protocol header in said buffer (20.sub.hb);
- (i) sending said data and protocol header out on an associated network to an external interface;
- (j) releasing, by said first system service (10), of said dialog lock (10.sub.dL).
CROSS REFERENCE TO RELATED APPLICATIONS
This application is related to co-pending application U.S. Ser. No. 09/060,650 entitled "COOPERATIVE SERVICE INTERFACE WITH BUFFER AND LOCK POOL SHARING, FOR ENHANCING MESSAGE DIALOG TRANSFER BETWEEN NETWORK PROVIDER AND DISTRIBUTED SYSTEM SERVICES" which is incorporated by reference.
Also incorporated by reference are the following co-pending cases:
U.S. Ser. No. 09/060,651 entitled "Network Data Path Interface Method and System for Enhanced Data Transmission";
U.S. Ser. No. 09/060,647 entitled "Multiple Interface High Speed Data Com System and Method Utilizing Multiple Connection Library Interfaces With Buffer and Lock Pool Sharing";
U.S. Ser. No. 09/060,648 entitled "Connection Library Interface System and Method for Process Inter-Communication Manager and Process Inter-Communication Element".
US Referenced Citations (7)