Multiple-execution method of multiple-version programs and computer system therefor

Abstract: A distributed processing system includes a plurality of processors (11, 12, 13, 14) connected through a network (1), at least two first processors (12, 13) executes multiple-version programs (52a, 52b) which perform the same function, and messages (520a, 520b) which contain data outputted as execution results of the programs and attribute information indicating the versions of the executed programs are sent from the first processors (12, 13) to the network. The messages containing the results of processing by the multiple-version programs sent from the first processors (12, 13) are received by a second processor (14), which selects one message from the received messages based on the attribute information contained in the received messages and executes a program in the second processor (14) by using the data contained in the selected message.

Description: BACKGROUND OF THE INVENTION The present invention relates to a multiple-execution method of programs in a distributed processing system having a plurality of processors connected through a network, and more particularly to a multiple-execution method of multiple-version programs executed parallelly and a computer system therefor, and still further particularly to a multiple-execution method of multiple-version programs and a computer system for implementing the same which can reduce a burden of a user, maintain the independence between the programs and effectively utilize an execution result which is not finally selected. In the present specification, the term of multiple-version programs is meant by a plurality of programs for performing the same function but having different program structures. The execution results of the programs may be either the same or not the same. For example, a simulation program for an event having a low calculation precision and a short calculation time and a simulation program for the same event having a high calculation precision and a long calculation time are multiple-version programs. In the system having a plurality of processors connected through a transmission line, the following DRB system and N version have been known as a multiple-execution method of the multiple-version programs. In the DRB system, as disclosed in IEEE Transactions on Computers, Vol. 38, No. 5, 1989, pp 626-636, the multiple-version programs are prioritized and an execution result of the first priority version program is tested by a predetermined test logic called an acceptance test, and if the test result is correct, it is selected. If the test result is incorrect, an execution result of the second priority version program is selected. On the other hand, in the N version system, as disclosed in IEEE Computer, Vol. 17, No. 8, 1984, pp 67-80, the multiple-version programs are executed in parallel by a plurality of processors and execution results of the respective programs are compared by a processor for checking an output and one execution result is selected based on a majority logic. In the DRB system, since the user must prepare the acceptance test and the preparation of the acceptance test is not easy, the burden to the user is large. On the other hand, in the N version system, since the output results of the respective programs are simply compared, it is required that the outputs are identical for the multiple-version programs. As a result, the independency among the programs is low and it is difficult to prepare the multiple-version programs. The minority execution result through the majority logic is simply thrown away and it is not effectively utilized. SUMMARY OF THE INVENTION It is an object of the present invention to provide a multiple-execution method of multiple-version programs which can reduce the burden to the user, maintain the independency among the programs. It is another object of the present invention to provide a computer system for suitably implementing the multiple-execution method of the multiple-version programs of the present invention. These objects are solved by the method set forth in claim 1 and the system set forth in claim 8. The subclaims are directed to preferred embodiments of the invention. In one embodiment of the present invention, the second processor selects those messages sent from the first processors which were received in a predetermined permissible time period, as candidates for selection. Of the candidate messages, the message sent by the program having the highest priority version is determined as the selected one message. The multiple-version programs executed by the first processors may include programs having different calculation precisions or programs having different developed time frames. In the present program execution method, more preferably, the second processor recognizes the priority of the programs which sent the messages based on the attribute information and based on the recognized priorities, it determines the validity among the data contained in the messages whose priorities are in a predetermined relation. Of the messages containing the data determined as valid data , the message sent from the program having the highest priority is selected. In accordance with the program execution method and the computer system of the present invention, the attribute information contained in the messages sent from the first processors which execute the multiple-version programs is referred so that the second processor utilizing the message can recognize the version of the program of the source of the message. Thus, the second processor can effectively utilize the message depending on the version of the program which generated the received message, or the version of the program and the content of the message. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 shows an overall configuration of a computer system to which a multiple-execution method of multiple-version programs of the present invention is applied, Fig. 2 shows a format of a message sent over a network, Fig. 3 shows a block diagram of a configuration of a processor, Fig. 4 shows a format of a content code table, Fig. 5 shows a configuration of a message discrimination buffer, Fig. 6 shows a configuration of an AP input/output data area, Fig. 7 shows a flow chart showing a flow of a process in receiving messages to be executed by the processors, Fig. 8 shows a data flow chart showing delivery of messages among the processors, Fig. 9 shows a data flow chart showing another example of delivery of messages among the processors, and Fig. 10 shows a data flow chart showing other example of delivery of messages among the processors. DESCRIPTION OF THE PREFERRED EMBODIMENTS Fig. 1 shows an overall configuration of a multiple-execution system for multiple-version programs being a computer system to which a multiple-execution method of multiple-version programs of a first embodiment of the present invention is applied. The multiple-execution system 100 for the multiple-version programs comprises processors 11, 12, 13 and 14 connected to any types of network. Each of the processors 11, 12, 13 and 14 stores an application program in its internal memory and executes the application program to conduct various processings. Each application program has a name assigned to correspond to a function and attribute including version information and is managed thereby. Where the multiple-version programs performing the same function are not present, the attribute thereof is "Null". Fig. 2 shows a format showing a main part of a format of a message flowing over the network 1. Data transmitted among the processors by the message is stored in a data field 205. A CC field 201 stores a content code indicating the content of the data stored in the data field 205. The processors 11-14 connected to the network determine whether to read in the message flowing over the network 1 or not based on the content code of the CC field 201. The determination process will be described in detail later. A name field 203 stores information for identifying an application program generated by the message. In the present embodiment, a name of the application program is used as the information to be stored in the name field 203. An ATR field 204 stores an attribute of the application program generated by the message. The message flowing over the network further includes various control codes for transmitting the message but they are not explained because they are not directly related to the present invention. Fig. 3 shows a block diagram of an internal configuration of the processor 11. It is identical for other processors 12, 13 and 14. An interface 301 is a unit which controls the transfer of the message to and from the network. A processing unit 302 controls the processor by using various buffers, table and areas to be described later. A receive buffer 303 stores the message received from the network 1. The message received by the interface 301 is temporarily stored in the receive buffer 303 by the processing unit 302. A transmit buffer 304 stores the message to be transmitted to the network 1. The message to be transmitted is temporarily stored in the transmit buffer 304, and then transmitted to the network 1 by the interface 301. A content code table 305 stores the content code corresponding to the data required by the processor 11. The content code to be stored in the content code table 305 is stored in a writable and non-volatile external storage medium such as a disk storage, not shown, and it is read from the external storage medium at the rise of the processor and set in the content code table 305. A message discrimination buffer 306 holds the received message for message discrimination process. An AP input/output data area 307 stores input data necessary for executing the application program and output data of an execution result of the application program. An application program area 308 is used to execute the application program. Fig. 4 shows a configuration of the content code table 305. The content code table 305 comprises lines 3051, 3052, ..... which correspond to the application programs to be executed in its own processor. Each of the lines 3051, 3052, ..... generally comprises a CC information area 30511 for holding information relating to input/output data of the application program for that line, and an AP information area 30512 for holding the information relating to the corresponding application program. The CC information area 3051 comprises an ICC field 30511a for storing the content code of the input data of the application program for that line, and an OCC field 30511b for storing the content code of the output data of that application program. The AP information area 30512 comprises a name field 30512a for storing the name of the application program for that line, and an ATR field 30512b for storing the attribute of that application program. Fig. 5 shows a configuration of the message discrimination buffer 306. The message discrimination buffer 306 comprises a CC field 3060 for storing the content code held in the CC field 201 for the received message, a name field 3061 for storing the name of the application program held in the name field 203 for the received message, an ATR field 3062 for storing the attribute held in the ATR filed 204 for the received message, and a data field 3063 for storing the data held in the data field 205 for the received message. To comply with a plurality of programs of multiple versions, a plurality of ATR fields 3062 and a plurality of data fields 3063 are assigned to each of the CC field 3060 and the name field 3061. Fig. 6 shows a configuration of the AP input/output data area 307. The AP input/output data area 307 comprises lines 3071, 3072, ..... corresponding to the application programs to be executed in its own processor. Each line comprises a name field 30711 for storing the name of the application program for that line, An ATR field 30712 for storing the attribute of the application program, an i data field 30713 for storing the input data to the application program, and an o data field for storing the output data from the application program. A flow of the process in the reception of the message in each of the processors 11-14 is now explained. Fig. 7 shows a flow chart showing a flow of process executed by the processing unit 302 of each of the processors 11-14 in the reception of the message. When the processing unit 302 of each of the processors 11-14 receives the message from the network 1 by the interface 301, it stores the message in the receive buffer 303 and checks whether or not the content code coinciding to the content code stored in the CC field 201 of the message stored in the receive buffer 303 has been registered in the ICC field 30511a of the content code table 305 (step 601). If there is no coinciding content code, the content of the receive buffer 303 is erased (step 611) and the message reception process is terminated. If there is a content code in the content code table 305 which coincides to the content code of the message stored in the receive buffer 303, it checks whether or not the attribute of the application program which sent the message has been set in the ATR field 204 of the message stored in the receive buffer 303 (step 602). If the attribute is not set in the ATR field 204 (the ATR field is "Null"), the process proceeds to a step 608. If the attribute is set in the ATR field, the message is stored in the message discrimination buffer 306 to discriminate it from the outputs of the application programs of other versions (step 603). Specifically, the content code of the message is stored in the CC field 3060 of the message discrimination buffer 306, the program name is stored in the name field 3061, the attribute is stored in the ATR field 3062 and the data is stored in the data field 3063. Then, it checks whether or not another message received from the application program of the same program name but with a different attribute has been stored in the message discrimination buffer 306 (step 604). If the message from other application program of different attribute has not been stored, a timer is set (step 610) to wait for a message from other application program of different attribute for a predetermined time, and then the reception process is terminated. If a message from other application program of different attribute has already been stored in the message discrimination buffer in the step 604, it is checked whether or not the timer previously set has been timed out (step 605). If it has not been timed out, the reception process is terminated to wait for the reception of other message. The time-out period is set to be slightly longer than the difference between a processing time for the shortest process and a processing time for the longest process of the application programs so that the messages from all application programs for the same process can be received. If there is a difference between the transmission delays of the messages over the network 1, it is taken into account. When the timer-set in the step 610 times out, or when the time-out is detected in the step 605, the timer is reset (step 606). Then, for the message stored in the message discrimination buffer 306, which message is to be used to execute the application program is determined (step 607). In the step 607, if there is only one message stored in the message discrimination buffer 306, the stored message is selected as the message to be stored in the AP input/output data area 307. If there are a plurality of messages stored in the message discrimination buffer 306, the contents of the ATR fields 3062 and the data fields 3063 are compared and one of them is selected by an appropriate message selection logic and it is selected as the message to be stored in the AP input/output data area 307. Detail of the message selection logic will be described later. In a step 608, the message selected in the step 607 (or the message in the receive buffer 303 if the process jumped from the step 602 to the step 608) is stored in the AP input/output data area 307. In this case, the content code table 305 is referred and the program name and the attribute of the application program using the message are determined based on the name field 30512a and the ATR field 30512b corresponding to the ICC field 30511a storing the same content code as that of the CC field 201 of the received message. The data stored in the data field 3063 of the message discrimination buffer 306 (or the data stored in the data field of the message in the receive buffer 303 when the process jumped from the step 602 to the step 608) is stored in the i data field 30713 corresponding to the name field 30711 and the ATR field 30712 of the AP input/output data area 307 having those program name and attribute. Further, the message discrimination buffer 306 is cleared. After the message has been stored in the i data field 30713 of the AP input/output data area 307, the application program for that line is executed (step 609). In the execution of the application program, if there is data to be transmitted to other application program, the data is stored in the o data field 30714 of the line corresponding to the AP input/output data area 307. The processing unit 302 adds the CC field 201, the name field 203 and the ATR field 204 to the execution result data stored in the o data field 30714 to generate a message, and stores the message in the transmit buffer 304. The message stored in the transmit buffer 304 is sent out to the network 1 through the appropriate interface 301 and transmitted to other processors. The message selection logic used in selecting one message from the plurality of messages in the step 607 is now explained. In the present embodiment, as an example of the message selection, where the application program generating the message is to perform the same simulation with different precisions from version to version, the validity of the result of the high precision simulation is checked by the result of the low precision simulation and an appropriate message is selected. First, based on the content of the ATR field 3062 of the message discrimination buffer 306, the data "X" being the execution result of the application program (program A) performing the low precision simulation and the data "Y" being the execution result of the application program (program B) performing the high precision simulation are recognized. The validity of the simulation result of the program B (high precision simulation result) is checked based on the simulation result of the program A (low precision simulation result) in accordance with the following formula (1) in which "d" is a predetermined permissible value. X - d < Y < X + d If the formula (1) is met, it is determined that the simulation result by the program B is valid and the message from the program B is selected as the message to be used for the execution of the application program. If the formula (1) is not met, it is determined that the simulation result by the program B is not valid. Then, the message from the program A is selected as the message to be used for the execution of the application program. Other discrimination formula than the formula (1) , for example, X < Y < X + d or X < Y may be used depending on the application program. In the present embodiment, the validity of the execution result of the application program having a complex logic which is of high precision but easily includes bugs is checked by using the execution result of the application program having a simple logic which is of low precision but hard to include bugs. Accordingly, it is not necessary for the user to prepare the acceptance test as it is in the prior art. Further, since the standard for the check is determined by the input data and not fixed unlike the acceptance test, the appropriate execution result can be selected by the input data. In parallel to the application program of a new version, the application program of an old version may also be run and the validity of the execution result of the application program of the new version may be checked by the execution result of the application program of the old version by using the selection logic. In the method of the present embodiment, the selection of the messages transmitted from the two application programs of different versions has been explained. Where three or more programs of different versions are parallelly executed, the attributes of the programs of the respective versions are prioritized in the order of the calculation precision, and the validity of the content of the data field 3063 of the message having the ATR field 3062 having the i-th priority attribute stored therein, of the messages in the message discrimination buffer 306 is checked by the content of the data field 3063 of the message having the ATR field 3062 having the (i+1)th priority attribute stored therein, and the above process is repeated while i is incremented from 1, and the message having the i-th priority ATR field when the check is first OKed is selected. Fig. 8 shows a flow chart of the messages when the application programs 51, 52a, 52b and 54 are executed by the processors 11, 12, 13 and 14. In Fig. 8, the processor 11 executes the application program 51 and transmits the execution result to the CC field 201 as the message having "CCbi". The name of the application program 51 is "A" and there is no other program of other version which performs the same function. Thus, the attribute is "Null". The processors 12 and 13 receive the message having "CCbi" set in the CC field 201 and execute the application programs 52a and 52b, and sends the execution results to the CC field 201 as the messages having "CCbo". The application programs 52a and 52b are programs of different versions which perform the same simulation by using the execution result outputted from the application program 51, and have the same name and different attributes. More specifically, the application program 52a has a complex logic, performs high precision simulation, takes a long calculation time and easily includes a program error. On the other hand, the application program 52b has a simple logic, performs low precision simulation, takes short calculation time and is hard to include the program error. The name of the application program 52a is "B" and the attribute is "1", and the name of the application program 52b is "B" and the attribute is "2". The processor 14 receives the messages including the simulation results of the application programs 52a and 52b sent from the processors 12 and 13 and selects one of them by the selection logic to execute the application program 54. The name of the application program 54 is "C" and the attribute is "Null" because there is no program of other version which performs the same function. In order to conduct the above process, the line of the content code table 305 of the processor 12 corresponding to the application program 52a has "CCbi" set in the ICC field 30511a, "CCbo" set in the OCC field 30511b, "B" set in the name field 30512a, and "1" set in the ATR field 30512b. Similarly, the line of the content code table 305 of the processor 13 corresponding to the application program 52b has "CCbi" set in the ICC field, "CCbo" set in the OCC field 30511b, "B" set in the name field 30512a and "2" set in th ATR field 30512b. The line of the content code table 305 of the processor 14 corresponding to the application program 54 has "CCbo" set in the ICC field 30511a and "C" set in the name field 30512a. First, the processor 11 executes the application program 51 and sends the execution result message 510 to the network 1. When it is recognized that the CC field 201 of the message 510 contains "CCbi", the processors 12 and 13 receive the message 510. Since "Null" is contained in the ATR field 204 of the message 510, the processors 12 and 13, when they receive the message 510, execute the application programs 52a and 52b, respectively, without waiting for other message. They send the execution results 520a and 520b to the network 1, respectively. The messages 520a and 520b comprise as follows: (1) Message 520a CC field: CCbo, Name field: B, ATR field: 1 Data field: simulation result by the program 52a (2) Message 520b CC field: CCbo, Name field: B, ATR field: 2 Data field: simulation result by the program 52b It is assumed that the messages 520a and 520b are received by the processor 14 in this sequence. When the processor 14 first receives the message 520a, it recognizes that the ATR field 204 is not "Null" and there is a program of different version, and stores the message in the message discrimination buffer 306. In the message discrimination buffer 306, the CC field 3060 is "CCbo", the name field 3061 is "B", the ATR field 3062 is "1" and the data field 3063 is "simulation result by the program 52a". Thereafter, the processor 14 sets the timer to wait for the reception of the message 52b and the receive process is terminated. When the processor 14 receives the message 520b, it stores the message 520b to the message discrimination buffer 306, but since the same contents have been stored in the CC field and the name field, "2" is stored in the ATR field of that area and "simulation result by the program B2" is stored in the data field. When the timer times out, one of the messages 520a and 520b is selected by the selection logic and it is stored in the AP input/output data area 307 and the message discrimination buffer 306 is cleared. Then, the line of the content code table which has the same ICC field 30511a as the CC field 3060 of the message stored in the AP input/output data area 307 is checked, and the application program registered in the information area 30512 of that line is executed. Since "C" has been registered as the name of program, the application program 54 is executed. In this manner, the processor 14 selects one of the outputs of the execution results of the programs of different versions and executes the application program C based thereon. In such a system, of the messages 520a and 520b used by other processors, the message used by the application programs 54 may be recorded, as shown in Fig. 9, where a processor 15 has an application program 55. A disk drive 150 and a printer 151 are connected to the processor 15. Other portions of Fig. 9 are identical to those described above and the explanation thereof is omitted. The processor 15 receives the messages 520a and 520b from the network 1 as the processor 14 does and selects one of the messages by using the same message selection logic as that the processor 14 uses. The application program 55 is executed by using the selected message. The application program 55 stores the selected message in the disk drive 150 and prints the message out by the printer 151. By using the information stored in the disk drive 150 or the output of the printer 151, it is possible to determine whether the application program executing the high precision operation runs normally or not while the system makes the on-line operation. In a similar manner, when the run of the program of a new version is to be started, the program of the new version and the program of the old version are multiple-executed to install the program of the new version without stopping the operation and check the operation in the on-line state. In the present embodiment, the validity of the execution result of the application program of the high precision is checked by using the execution result of the application program having a simple algorithm and small program error but low precision, so that the message is selected to be used for the execution of its own program. In the case where the validity of the execution result of the program has been fully proved, the validity check may not be conducted and the message of the received messages indicative of the high precision by the attribute may be selected. In the case where the time from the reception of the first message to the execution of the program is limited, time at the time-out may be set within the permitted time period and the message of the messages received during that period exhibiting the highest precision execution result may be selected. In this manner, the execution result by the high precision application program can be most effectively used without losing the real time property. In the embodiments described above, one of the application programs of different versions is selected. Alternatively, all of the execution results may be used. This method is now explained with reference to Fig. 10. In Fig. 10, application programs 71a, 71b and 71c of different versions are arranged in the processors 11, 12 and 13, respectively. The application programs 71a, 71b and 71c are those of different versions which perform the same function, and the names thereof are "X" and the attributes are "1", "2" and "3", respectively. The application program 71a performs a simulation at a high precision based on a complex logic and takes a long calculation time. On the other hand, the application program 71c performs a simulation at a low precision based on a simple logic and a calculation time thereof is short. The precision and the calculation time of the application program 71b are in between those of the application program 71a and the application program 71c. Application programs 72 and 73 are arranged on the processor 14 and a terminal 1401 is connected to the processor 14 as interface means with a user. The application program 72 requests the simulation based on a request inputted from the terminal 1401. The application program 73 receives the result of the simulation to output it to the terminal 1401. When the processor 14 receives the request from the terminal 1401, it executes the processing by the application program 72 and outputs a message 720 requesting the simulation to the network 1. When the processors 11, 12 and 13 receives the message 720, they start the execution of the application programs 71a, 71b and 71c, respectively. The execution result of the application program 71c is first outputted to the network 1 as a message 710c. Thereafter, the execution result of the application program 71b is outputted to the network 1 as a message 710b, and the execution result of the application program 71a is finally outputted to the network as a message 710a. The processor 14 receives the messages 710c, 710b and 710a in this sequence and executes the processing by the application program 73 each time it receives the application program and displays the content of the received message on the terminal 1401. In this manner, the result of the low precision simulation is first displayed on the terminal 1401, and then the result of the middle precision simulation is displayed. Finally, the result of the high precision simulation is displayed. Thus, the user can previously acquire general result before he/she acquires the result of the high precision simulation. Since the user can grasp the relation between the results of gradually increasing precision, the user interface is improved. For example, assuming that the application programs 71a, 71b and 71c are image analysis programs of different analysis precisions, a coarse image is displayed on the terminal 1401 shortly after the request for process, and the image of higher precision are displayed as the time elapses. While specific embodiments of the present invention have been explained, it should be understood that various forms may be taken without departing from the scope of the present invention. For example, the messages from the programs of different versions may be used by a plurality of programs which process in different manners. In this case, the message to be used by each program may be selected with the same criterion (of different message selection logics)or it may be selected by different criteria for each program. In a client/server type system, a request for process from a client may be processed by a plurality of programs (servers) of different versions and the process results by the programs of different versions may be used by the client as required. In accordance with the program execution method and the processing system of the present invention, the programs which perform the same function but have different execution logics or execution precisions are executed in parallel, and one of the execution results is selected based on the versions of the programs, the contents of the execution results and the output times. Accordingly, the user is not required to prepare the acceptance test as he/she was in the prior art, and the burden to the user is reduced. Further, the independence among the programs is maintained and the message which is not finally used in the execution of the program may be effectively used. The selection of the messages from the programs of different versions is not fixed as it is in the acceptance test and the appropriate execution result for the input data can be selected by the selection at the criterion determined by the input data so that the fine compliance to the user request is attained and the user interface is improved.

Claims: A program execution method in a distributed processing system having a plurality of processors (11, 12, 13, 14) connected through a network (1), comprising the steps of: executing multiple-version programs (52a, 52b) performing the same function with different program structures by at least two first processors (12, 13); transmitting messages (Fig. 2, 520a, 520b), including execution results of said programs and attribute information indicating the versions of the executed programs, from said first processors (12, 13) to said network (1); receiving the messages transmitted from said first processors(12, 13) by a second processor (14); selecting one of the received messages by said second processor, based on the attribute information contained in the received messages; and executing a program (54) in said second processor (14) by using the execution result contained in the selected message. A program execution method according to Claim 1 wherein said selection step selects those messages (Fig. 2) of the messages transmitted from said first processors (12, 13) which are received in a predetermined permitted time period, as candidates for the selection. A program execution method according to Claim 2 wherein said selection step discriminates, from said candidate messages, the message which has been transmitted by the program of the version having the highest priority, and selects said discriminated message. A program execution method according to Claim 1 wherein said multiple-version programs executed by said first processors (12, 13) are programs of different calculation precisions. A program execution method according to Claim 1 wherein said step of executing the programs by said first processors (12, 13) executes programs developed in different time frames. A program execution method according to claim 1, wherein said selecting of one of the received messages is further based on the execution results contained in the received messages. A program execution method according to Claim 6 wherein said selection step recognizes the priority of the programs (52a, 52b) that transmitted the messages based on the attribute information, determines the validity of the execution result based on a relation among the execution results contained in the respective messages having a predetermined relation with respect to the priority, in accordance with the recognition result, and selects the message transmitted from the program having the highest priority version of the messages containing the data determined to be valid in said determination step. A computer system comprising: a network (1) for transmitting a message (Fig. 2); a plurality of first processors (12, 13) connected to said network, for executing programs (52a, 52b) of different versions performing the same function with different program structures by at least two first processors; each of said first processors (12, 13) including program execution means (302) for executing a said program, message preparation means (302) for preparing a message including an execution result of the executed program and attribute information indicating a version of the program that generated said execution result, and an interface (301) for sending the message prepared by said message preparation means to said network (1); and a second processor (14) connected to said network, for executing a program (54) which uses an execution result contained in a message sent from said first processors (12, 13); said second processor including an interface (301) for reading in the messages from said network, and means (302) for extracting the execution results and the attribute information from the messages read by said interface, for selecting the execution result contained in one message from the execution results of the read messages based on their attribute information, and for executing the program (54) by using the execution result selected.

Inventors: FUJISE HIROSHI, HIRASAWA SHIGEKI, KAWANO KATSUMI, MORI KINJI, NAKAMURA TOMOAKI, ORIMO MASAYUKI, SUZUKI HITOSHI, FUJISE, HIROSHI, HIRASAWA, SHIGEKI, KAWANO, KATSUMI, MORI, KINJI, NAKAMURA, TOMOAKI, ORIMO, MASAYUKI, SUZUKI, HITOSHI
Applicants: HITACHI LTD, HITACHI, LTD.
Application year: 1994
Main classification: G06F11
IPC codes: G06F11