System for integrating processing by application programs in homogeneous and heterogeneous network environments
First Claim
1. A system for integrating user software application programs operating on respective nodes of a distributed processing network having at least two of said nodes, each node of said distributed processing network comprising:
- application adapting means for providing user software application programs operating on each of said nodes with communicative access to said distributed processing network;
message management means for managing data transfer requests between each user software application program operating on each of said nodes and other user software application programs operating on other of said nodes connected to said distributed processing network;
communications means responsive to a data transfer request from a source user software application program operating on any of said nodes for establishing node to node communications over said distributed processing network between a source node and a destination node, said destination node having a destination user software application program operating thereon to which data are to be transferred from said source user software application program operating on said node;
data manipulation means for manipulating, prior to transmission by said communications means to said destination user software application program operating on said destination node, message data from said source user software application program into a common data representation, said common data representation being formed in accordance with a universal encoding scheme used by all nodes of said distributed processing network to account for hardware differences between each of said nodes, computer language semantic differences between said user software application programs operating on each of said nodes, and data type formats of said data transfer requests, whereby said message data from said source user software application program are manipulated by said data manipulation means only when at least one of data types, data formats, computer languages, and physical data representations of said source and destination user software application programs do not correspond to each other;
means at each node for manipulating message data in said common data representation received from said distributed processing network into the data types, data formats, physical data representations, and computer language of each of said noes; and
means for forming node-specific data manipulation means at each node of each hardware type in said distributed processing network, said node-specific data manipulation means at each node manipulating data from said source user software application program into said common data representation for transmission to said destination user software application program, and for manipulating data received from said source user software application program in said common data representation into data compatible with said destination user software application program when said destination user software application program operates on any of said nodes, said node-specific data manipulation forming means comprising;
file means for storing a high level description of user software application programs and nodes operating on said distributed processing network, the physical characteristics of data at each source and destination user software application program, and the manipulations necessary to convert data from source to destination physical characteristics;
validation module means for generating, as source code on a node designated as an adminstration node, configuration files, based on said high level description;
configuration table compiling means and data manipulation compiling means for generating, as source code on said administration node, manipulation files, based on said high level description;
data manipulation module builder means for copying said manipulation files and compiling, on each node designated as a compilation node, said manipulation files to form node-specific manipulation modules; and
start up module means for copying said configuration files, for loading said configuration files in memory, and for starting up said manipulation files.
2 Assignments
0 Petitions
Accused Products
Abstract
System Configuration files in source code are created from a high level definition of the distributed system which is to be integrated. The configuration files include data such as the types and formats of data for each process on each node of the system, identification of all applications and machine types, topography and the data manipulations needed for sending messages and files and the like from an application program in a first computer language and of a first data type to an application program in a second computer language and of a second data type. Node-specific data manipulation modules are formed at each node during start-up of the system, and these modules are automatically distributed to nodes on the network having the same architecture. The invention allows applications having different physical data characteristics to communicate by using the data manipulation modules so formed to manipulate the data at the source program into a common data representation (CDR) having data types common to all of the languages represented by the system and then reconverting the data to the local representation at the destination node.
-
Citations
3 Claims
-
1. A system for integrating user software application programs operating on respective nodes of a distributed processing network having at least two of said nodes, each node of said distributed processing network comprising:
-
application adapting means for providing user software application programs operating on each of said nodes with communicative access to said distributed processing network; message management means for managing data transfer requests between each user software application program operating on each of said nodes and other user software application programs operating on other of said nodes connected to said distributed processing network; communications means responsive to a data transfer request from a source user software application program operating on any of said nodes for establishing node to node communications over said distributed processing network between a source node and a destination node, said destination node having a destination user software application program operating thereon to which data are to be transferred from said source user software application program operating on said node; data manipulation means for manipulating, prior to transmission by said communications means to said destination user software application program operating on said destination node, message data from said source user software application program into a common data representation, said common data representation being formed in accordance with a universal encoding scheme used by all nodes of said distributed processing network to account for hardware differences between each of said nodes, computer language semantic differences between said user software application programs operating on each of said nodes, and data type formats of said data transfer requests, whereby said message data from said source user software application program are manipulated by said data manipulation means only when at least one of data types, data formats, computer languages, and physical data representations of said source and destination user software application programs do not correspond to each other; means at each node for manipulating message data in said common data representation received from said distributed processing network into the data types, data formats, physical data representations, and computer language of each of said noes; and means for forming node-specific data manipulation means at each node of each hardware type in said distributed processing network, said node-specific data manipulation means at each node manipulating data from said source user software application program into said common data representation for transmission to said destination user software application program, and for manipulating data received from said source user software application program in said common data representation into data compatible with said destination user software application program when said destination user software application program operates on any of said nodes, said node-specific data manipulation forming means comprising; file means for storing a high level description of user software application programs and nodes operating on said distributed processing network, the physical characteristics of data at each source and destination user software application program, and the manipulations necessary to convert data from source to destination physical characteristics; validation module means for generating, as source code on a node designated as an adminstration node, configuration files, based on said high level description; configuration table compiling means and data manipulation compiling means for generating, as source code on said administration node, manipulation files, based on said high level description; data manipulation module builder means for copying said manipulation files and compiling, on each node designated as a compilation node, said manipulation files to form node-specific manipulation modules; and start up module means for copying said configuration files, for loading said configuration files in memory, and for starting up said manipulation files. - View Dependent Claims (2)
-
-
3. A method for integrating user software application programs operating on respective nodes of a distributed processing network having at least two of said nodes, the method at each node of said distributed processing network comprising the steps of:
-
providing user software application programs operating on each of said nodes with communicative access to said distributed processing network; managing data transfer requests between each user software application program operating on each of said nodes and other user software application programs operating on another node connected to said distributed processing network; establishing node to node communications over said distributed processing network between a source node and a destination node, said destination node having a destination user software application program operating thereon to which data are to be transferred from said source user software application program operating on at least one of said nodes; manipulating, prior to transmission to said destination user software application program operating on said destination node, message data from said source user software application program into a common data representation, said common data representation being formed in accordance with a universal encoding scheme used by all nodes of said distributed processing network to account for hardware differences between each of said nodes, computer language semantic differences between said user software application programs operating on each of said nodes, and data type formats of said data transfer requests, whereby said message data from said source user software application program are manipulated by said data manipulation means only when at least one of data types, data formats, computer languages, and physical data representations of said source and destination user software application programs do not correspond to each other; manipulating message data in said common data representation received from said distributed processing network into said data types, data formats, physical data representations of said destination node, and the computer language of said destination user software application program when said destination user software application program operates on said destination node; and forming node-specific data manipulation means at each node of each hardware type in said distributed processing network, said node-specific data manipulation step manipulating data from said source user software application program into said common data representation for transmission to said destination user software application program, and manipulating data received from said source user software application program in said common data representation into data compatible with said destination user software application program when said destination user software application program operates on said destination node, said node-specific data manipulation forming step further comprising the steps of; storing a high level description of user software application programs and nodes operating on said distributed processing network, the physical characteristics of data at each source and destination user software application program, and manipulations necessary to convert data from source to destination physical characteristics; generating, as source code on a node designated as an administration node, configuration files, based on said high level description; generating, as source code on said administration node, manipulation files, based on said high level description; copying said manipulation files and compiling, on each node designated as a compilation node, said manipulation files to form node-specific data manipulation modules; and copying said configuration files, for loading said configuration files in memory, and for starting up said manipulation files.
-
Specification