×

System for automatically generating efficient application - customized client/server operating environment for heterogeneous network computers and operating systems

  • US 5,381,534 A
  • Filed: 02/10/1993
  • Issued: 01/10/1995
  • Est. Priority Date: 07/20/1990
  • Status: Expired due to Term
First Claim
Patent Images

1. A computer system, coupled through a communications channel, for executing an application program using a plurality of software chips, comprising:

  • a plurality of target computers, said plurality of target computers being connected to form at least one network, each of said target computers coupled to the communications channel and including,a memory device coupled to the communications channel, said memory device including a first library of language injections, each language injection corresponding to one of a plurality of interprocessor communications (IPC) data objects, each language injection responsive to an IPC pattern derived from a CSL description of an interconnection of the plurality of software chips, for transferring, using a corresponding one of the plurality of IPC data objects, data and instructions through the communications channel; and

    a processor using an operating system and having a compiler with a prographing language for compiling and executing each language injection in each of said plurality of target computers; and

    a host computer, operatively coupled to said plurality of target computers through the communications channel, said hose computer including,a configurator for processing a computer environment specification and a parallel program configuration specification and for generating a plurality of IPC patterns and a plurality of IPC control commands, the IPC patterns for determining communications destinations on the network, the IPC control commands for transferring instructions among said plurality of target computers during execution of the application program, the computing environment specification for identifying operational attributes of said computer system, including a set of instructions for specifying the capabilities and availability of said plurality of target computers, of said plurality of software chips, of programming languages, of operating systems, and of protocols, and the configuration specification for identifying the configuration of the computer system, including a set of instructions for specifying a plurality of interconnections among said plurality of software chips using the plurality of IPC patterns and for specifying a desired order of execution of said plurality of software chips at particular target computers using the plurality of IPC control commands, said configurator for accepting input from a user and from said plurality of target computers for generating an application precedence matrix, said application precedence matrix for specifying interdependencies between said plurality of software chips for determining functional order of execution of said plurality of software chips;

    a distributed process controller for processing said application precedence matrix and said plurality of IPC patterns, for communicating with said plurality of target computers using the plurality of IPC control commands, for controlling a sequence of execution of plurality of software chips, for ranking, according to at least one of processing speed and operational suitability, said plurality of target computers for minimizing time of execution of the application program, for generating and updating a system graph for monitoring execution of processes, for determining, using the generated system graph, an efficient combination of said plurality of target computers for minimizing time of execution of the application program, and for activating the plurality of IPC data objects in said plurality of target computers; and

    a host memory device having a support daemon library for snoring a plurality of permanent daemons and a plurality of dynamic daemons, said host memory device including a second library of language injections, each language injection of said second library of language injection responsive to a respective one of the plurality of IPC control commands for activating and operating mailboxes, tuple spaces, sequential files, and user-defined IPC data objects operations residing in said host computer for executing the application program.

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