Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing
Reexamination Certificate
1998-02-19
2004-02-03
Follansbee, John (Department: 2126)
Electrical computers and digital processing systems: multicomput
Computer-to-computer data routing
Least weight routing
C709S241000
Reexamination Certificate
active
06687761
ABSTRACT:
RESERVATION OF COPYRIGHT
The disclosure of this patent document contains material that is subject to copyright protection. The owner thereof has no objection to facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the U.S. Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION
The invention concerns digital data processing for process control and, more particularly, novel mechanisms for assigning and managing object references in process control systems with distributed object management systems.
The art of digital data processing has progressed considerably in its first forty years. Well known are the advancements in computer hardware, for which ever more powerful microprocessor is the best known example. No less impressive is the evolution in computer software.
In the earliest computer programs, there were no abstractions. Programming instructions and data alike were coded directly in the forms in which they were to be executed by the primitive processors, to wit, as strings of ones and zeros. With the vent of programming languages such as FORTRAN, it became possible to code instructions as words and symbols. Data could be named and grouped into arrays to facilitate their reference.
Through use of the early languages, and with initial improvements in hardware, computer programs came to solve increasingly difficult tasks. Unfortunately, the programs themselves became too complex for trouble-shooting, maintenance and upgrading. Modularity, which was then coming to influence other technologies, came to the aid of the software arts as well.
Using block programming languages and techniques, programmers began to write long sequences of instructions as smaller independent segments that could be designed, tested and maintained separately. These segments, especially those packaged as subroutines, often did not share a common pool of data but, rather, passed information back and forth on an as-needed basis.
Modularity also impacted the manner in which data was referenced. Data constructs became richer, reflecting increased use of computers outside the once traditional confines of mathematics and engineering. Simple data arrays gave way to records and other structures that permitted the agglomeration of varying types of data, typically, matching the diversity of attributes in the real-world objects that they modeled.
The trend toward modularity brought more far-reaching changes with the advent of object-oriented programming. According to this practice, which is just now beginning to overtake the industry, data are packaged in structures that also include the specific procedures that act on them. These structures, or objects, can be transferred along with their attendant procedures, thereby, improving the instruction/data coherency and facilitating trouble-shooting, maintenance and updates.
The growth of distributed computing over the Internet and corporate intranets has made it desirable to utilize objects among diverse computer systems, often operating at great distances. The Object Management Group, a consortium of computer companies, responded to this need by establishing CORBA, a protocol for distributed object management. Using CORBA protocols, a “client” computer, e.g., in Japan, can access an object resident on a “server” computer in Massachusetts, all via the exchange of CORBA-specific request and response packets.
CORBA can be used in a wide variety of applications, including process control. The central computer at a manufacturing facility or refinery, for example, can employ the protocol to control and monitor the status of substations or individual microprocessor-based controllers disposed about the facility. Moreover, corporate oversight may be attained via a remote computer, e.g., at corporate headquarters, which can use the protocol to obtain information from the plant's central computer.
Though CORBA represents a much welcomed advance to the digital data processing arts, certain applications can unnecessarily overburden it. This may be the case, for example, in process control, or other complex software application, where servers must provide potential access to large numbers of objects.
In process control, for example, the central computer of a manufacturing or refining facility may oversee an average of 25 control processors, each of which can manage roughly 75,000 control blocks, having approximately 50 parameters apiece. To provide “clients” (such as a computer corporate headquarters) full access to plant operations, the central plant computer must potentially provide access to 3,750,000 objects, that is, the objects representing all of the processors, control blocks and parameters. To add the insult of underutilization to the injury of enormous capacity, the clients—in practice—are likely access only a few hundred or thousand of those objects during any session. According to the conventional CORBA approach, administrative structures (such as binding table entries and object references) necessary to service requests to the 3,750,000 objects would be created regardless.
In view of the foregoing, an object of the invention is to provide improved digital data processing systems and, more particularly, improved methods and apparatus for managing object references in distributed object systems.
A more specific object of the invention is to provide such methods and apparatus as are suited for use in managing object references in CORBA-compatible distributed object management systems.
Yet a further object of the invention is to provide such methods and apparatus as reduce the resource and overhead requirements for implementation of distributed object management, e.g., on systems where servers are called upon to provide access to large numbers of objects.
A related object of the invention is to provide such methods is to provide such methods and apparatus for use in providing distributed object management for process control systems, and other complex systems.
SUMMARY OF THE INVENTION
The foregoing and other objects are met by the invention, which provides in one aspect improvements on digital data processing systems with distributed object management. These systems are of the type having servers and, more particularly, object request brokers (ORB's) that route requests generated by one or more clients to implementation objects maintained by a server application. Routing is based on a binding table (or other such store) that identifies dispatching procedures, or “skeletons,” that invoke requested services on implementation objects specified in the request. Such systems may be CORBA-compatible, though the improvements provided by the invention are applicable to distributed object management systems having other architectures, as well.
The improvements are characterized by the utilization of a single entry in the is binding table (or other such store) to route requests to a plurality of different. implementation objects (or, for sake of convenience, “implementations”) maintained by the server. In a related aspect, the improvements can be characterized as providing an CORBA-compatible ORB or, more particularly, (basic) object adapter (OA), that permits requests to be routed to implementations that are not listed in the binding table.
The invention provides systems as described above in which at least selected requests generated by the client include a pair of object identifiers (OID's). The first OID—which can be contained in the object reference supplied the server and copied into the request—is used by the server ORB and, more particularly, the OA, to locate an entry in the binding table. The second OID—which the client can obtain from the component portion of the server-supplied object reference—can identify the specific implementation from which services are requested.
The OA, according to further aspects of the invention, can match the first OID contained in a request (e.g., in the server-supplied object reference) against the bind
Canna Bruce S.
Collins William J.
Barron David
Bullock, Jr. Lewis A.
Follansbee John
Invensys Systems Inc.
Nutter McClennen & Fish
LandOfFree
Process control methods and apparatus with distributed... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Process control methods and apparatus with distributed..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Process control methods and apparatus with distributed... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3337972