JPH0443454A - Multi-processor type electronic computer - Google Patents

Multi-processor type electronic computer

Info

Publication number
JPH0443454A
JPH0443454A JP2149758A JP14975890A JPH0443454A JP H0443454 A JPH0443454 A JP H0443454A JP 2149758 A JP2149758 A JP 2149758A JP 14975890 A JP14975890 A JP 14975890A JP H0443454 A JPH0443454 A JP H0443454A
Authority
JP
Japan
Prior art keywords
task
arithmetic
execution
control unit
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2149758A
Other languages
Japanese (ja)
Inventor
Toshio Kobayashi
敏夫 小林
Eiji Ishibashi
石橋 英次
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2149758A priority Critical patent/JPH0443454A/en
Publication of JPH0443454A publication Critical patent/JPH0443454A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

PURPOSE:To execute the task of a test program without giving an adverse influence to the regular execution of the task by designating operation controllers permitting the execution of the task concerned for respective tasks. CONSTITUTION:The operation controllers which can execute respective tasks are stored in an operation controller designation memory 10. When a task execution request is generated, the task concerned is executed only in the operation controller designated by the task concerned. For executing the tasks of plural test programs, only one operation controller 2a is designated in the operation controller designation memory 10. Thus, the tasks of the test programs are prevented from being simultaneously executed in two operation controllers even if the other operation controllers 2b - 2d are in an idle state. Thus, the task of the test program can be executed without giving adverse influence to the regular execution of the task while a function for efficiently executing respective tasks is held.

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、複数の演算制御装置をバスラインを介して並
列接続したマルチプロセッサ型電子計算機に係わり、特
に、各プログラムの実行制御法を改良したマルチプロセ
ッサ型電子計算機に関する。
[Detailed Description of the Invention] [Object of the Invention] (Industrial Application Field) The present invention relates to a multiprocessor type electronic computer in which a plurality of arithmetic and control units are connected in parallel via a bus line, and in particular, This paper relates to a multiprocessor type electronic computer with improved execution control method.

(従来の技術) 一般に、複数の演算制御装置を有する電子計算機は大き
く2種類に分けることができる。一つは直列型の電子計
算機であり、主演算制御装置(主プロセツサ)と従演算
制御装置(従プロセツサ)とで構成されている。そして
、主演算制御装置には例えばメインプログラムが割当ら
れ、従演算制御装置にはサブプログラムが割当られる。
(Prior Art) Generally, electronic computers having a plurality of arithmetic and control units can be roughly divided into two types. One is a serial type electronic computer, which is composed of a main arithmetic and control unit (main processor) and a slave arithmetic and control unit (slave processor). For example, a main program is assigned to the main arithmetic and control unit, and a subprogram is assigned to the slave arithmetic and control unit.

通常、主演算制御装置においてメインプログラムが起動
され、メインプログラムの実行過程で、サブプログラム
が起動される。サブプログラムは従演算制御装置で実行
され、演算結果および終了情報が主演算制御装置へ通知
される。すなわち、従演算制御装置の動作は主演算制御
装置にて完全に制御されている。
Usually, a main program is started in the main processing and control unit, and subprograms are started during the execution process of the main program. The subprogram is executed by the slave arithmetic and control unit, and the calculation result and completion information are notified to the main arithmetic and control unit. That is, the operation of the slave arithmetic and control device is completely controlled by the main arithmetic and control device.

もう一つの電子計算機はいわゆるマルチプロセッサ型電
子計算機であり、各演算制御装置は同一機能を有する。
The other electronic computer is a so-called multiprocessor type electronic computer, and each arithmetic and control unit has the same function.

そして、各プログラムは複数の演算制御装置で並列に実
行可能である。そして、各演算制御装置が同一の主記憶
部をアクセスするシステムにおいては、同時に一つの主
記憶部をアクセスできないので、各演算制御装置相互間
でアクセス権を調整する調整回路が用いられる。また、
主記憶部の記憶内容を書替える場合には、各演算制御装
置内のキャッシュメモリの内容も同時に書替えて、複数
のプログラムをどの演算制御装置で実行したとしても同
一演算結果が得られるように構成されている。
Each program can be executed in parallel by a plurality of arithmetic and control units. In a system in which each arithmetic and control unit accesses the same main memory, one main memory cannot be accessed at the same time, so an adjustment circuit is used to adjust access rights between the arithmetic and control units. Also,
When rewriting the contents of the main memory, the contents of the cache memory in each arithmetic and control unit are also rewritten at the same time, so that the same calculation result can be obtained no matter which arithmetic and control unit executes multiple programs. has been done.

また、プログラムが各演算制御装置で実行される単位を
タスクと称するが、このタスクの実行は、計算機に必ず
具備されるオペレーションシステム(O8)プログラム
の中核であるタスク実行制御プログラムにより行われる
Further, a unit in which a program is executed by each arithmetic control unit is called a task, and the execution of this task is performed by a task execution control program that is the core of an operation system (O8) program that is always included in a computer.

このタスク実行制御プログラムによれば、実行要求の生
じた複数のタスクに対し、予め登録された優先度に基づ
き、その時実行すべきタスクを決定し、そのタスクのプ
ログラムを実行する。例えば、あるタイミングで、ある
タスクの実行要求があると、実行要求のあったタスクの
優先度と現在実行中のタスクの優先度とを比較して、要
求のあったタスクの優先度の方が高ければ、現在実行中
のタスクを一時中断し、今回実行要求のあったタスクを
実行する。そして、このタスク実行制御プログラムは、
通常、タスクの実行要求、遅延要求。
According to this task execution control program, a task to be executed at that time is determined based on pre-registered priorities among a plurality of tasks for which execution requests have been made, and a program for that task is executed. For example, when a request is made to execute a certain task at a certain time, the priority of the requested task is compared with the priority of the task currently being executed, and the priority of the requested task is determined to be higher. If the value is higher, the currently executing task is temporarily suspended and the currently requested task is executed. And this task execution control program is
Usually a request to execute a task, a request to delay.

実行の終了、入出力完了等の事象が発生すると、自動的
に起動される。
It is automatically activated when an event such as completion of execution or completion of input/output occurs.

複数の演算制御装置が並列に設けられたマルチプロセッ
サ型電子計算機においては、上記タスク実行制御プログ
ラムが各演算制御装置内に設けられている。また、主記
憶部内には、実行要求があるがまだ実行されていないタ
スクを記憶するCPU待ち行列が形成されている。そし
て、各演算制御装置は、タスクの実行要求があると、各
演算制御装置自身で上述したタスクの実行制御を行う。
In a multiprocessor electronic computer in which a plurality of arithmetic and control units are provided in parallel, the task execution control program is provided in each arithmetic and control unit. Furthermore, a CPU queue is formed in the main memory section for storing tasks that have been requested to be executed but have not yet been executed. When each arithmetic and control unit receives a task execution request, each arithmetic and control unit controls the execution of the above-described task by itself.

すなわち、実行要求のあったタスクが何であるかの情報
を前記CPU待ち行列をチエツクして、該当タスクを即
座に実行するか否かを決定する。
That is, the CPU checks the CPU queue for information about the task that has been requested to be executed, and determines whether or not to immediately execute the task.

なお、CPU待ち行列のチエツク、削除等は各演算制御
装置によって実行されるか、各演算制御装置が同時に行
うことがないように排他機構を用いて実行される。
Note that checking, deletion, etc. of the CPU queue is executed by each arithmetic and control unit, or by using an exclusive mechanism so that each arithmetic and control unit does not perform the same at the same time.

このようなタスク実行制御を行うマルチプロセッサ型電
子計算機においては、各タスクはどの演算制御装置内で
実行されてもよい。すなわち、タスク実行要求が発生し
た時点で、タスクを実行していない演算制御装置に割当
られる。その結果、各演算制御装置はそれぞれ異なる種
類のタスクを並列して実行するので、各演算制御装置を
効率的に使用でき、電子計算機全体としての処理能率を
向上できる。
In a multiprocessor electronic computer that performs such task execution control, each task may be executed in any arithmetic control device. That is, at the time a task execution request is issued, it is assigned to an arithmetic and control unit that is not executing a task. As a result, each arithmetic and control device executes different types of tasks in parallel, so each arithmetic and control device can be used efficiently, and the processing efficiency of the computer as a whole can be improved.

しかしながら、上述したような手法で各タスクの実行制
御を行うようにしたマルチプロセッサ型電子計算機にお
いても、まだ改良すべき次のような課題が有った。
However, even in multiprocessor electronic computers in which the execution of each task is controlled using the method described above, there are still problems to be improved as described below.

例えばオンライン業務を実行しているマルチプロセッサ
型電子計算機においては、業務用の複数のタスクが必要
に応じて何時でも、又は短い待ち時間経過後に、実行可
能な処理能力を有している。
For example, a multiprocessor type computer that executes online business has the processing ability to execute a plurality of business tasks whenever necessary or after a short waiting time has elapsed.

このような電子計算機において、新たなプログラムを開
発して、そのプログラムを実際に運用すべきシステムで
稼働実験する必要が生じた場合には、このテスト用プロ
グラムのタスクを例えばフロッピーディスクドライブ装
置(FDD)等の補助記憶部から主記憶部へ書込んで実
行要求を発生させれば、前述した通常の業務用タスクと
同じ条件で空いた演算制御装置で実行される。
In such electronic computers, when it becomes necessary to develop a new program and run an experiment on the system in which the program is to be actually operated, the task of this test program can be performed on a floppy disk drive (FDD) ) etc. from the auxiliary storage section to the main storage section to generate an execution request, the task will be executed in a vacant arithmetic and control unit under the same conditions as the above-mentioned normal business task.

しかし、このテスト用プログラムはあくまでテスト用プ
ログラムであるので、プロゲラの設計誤りや、文法上の
ミス等が含まれる可能性がある。
However, since this test program is just a test program, it may contain errors in the design of the progera, grammatical errors, etc.

したがって、このテスト用プログラムに例えば無限ルー
プが存在した場合においては、プログラム処理が終了し
ないことになり、このテスト用プログラムを実行してい
る演算制御装置はこのタスクに占有され続ける。よって
、このような無限ル−ブを有する複数のプログラムを実
行させた場合、多数の演算制御装置が占有されるので、
通常のオンライン業務に支障が生じる。
Therefore, if this test program contains, for example, an infinite loop, the program processing will not end, and the arithmetic and control unit executing this test program will continue to be occupied by this task. Therefore, when multiple programs with such infinite loops are executed, a large number of arithmetic and control units are occupied.
Normal online operations will be disrupted.

特にこれらのテスト用プログラムが他の業務用プログラ
ムより高い優先度が与えられていた場合には、被害甚大
である。
Especially if these test programs are given a higher priority than other business programs, the damage can be severe.

(発明が解決しようとする課題) このように従来のマルチプロセッサ型電子計算機におい
ては、各タスクが各演算制御装置に対して全く同一条件
で実行されるので、テスト用プログラムを実行すすると
本来のオンライン業務に支障が生じる懸念が有る。
(Problem to be Solved by the Invention) As described above, in conventional multiprocessor type electronic computers, each task is executed under exactly the same conditions for each arithmetic control unit, so when a test program is executed, the original There is a concern that online operations may be disrupted.

本発明はこのような事情に鑑みてなされたものであり、
各タスク毎に該当タスクの実行を許可する演算制御装置
を指定することによって、テスト用プログラム等の特定
のタスクを実行する演算制御装置を限定でき、通常の業
務プログラムは演算制御装置を限定しない事により、従
来の各タスクを能率的に実行できる機能を保持したまま
で、通常のタスク実行に悪影響を与えることなくテスト
用プログラムのタスクを実行でき、信頼性向上と処理能
率向上とを同時に図ることができるマルチプロセッサ型
電子計算機を提供することを目的とする。
The present invention was made in view of these circumstances, and
By specifying the arithmetic control unit that is permitted to execute the task for each task, it is possible to limit the arithmetic control unit that executes a specific task such as a test program, and for normal business programs, the arithmetic control unit is not limited. This enables the test program to execute tasks without adversely affecting normal task execution while retaining the conventional functions that allow each task to be executed efficiently, thereby improving reliability and processing efficiency at the same time. The purpose is to provide a multiprocessor electronic computer that can perform

[発明の構成] (課題を解決するための手段) 上記課題を解消するために本発明は、バスラインに記憶
部および複数の演算制御装置を接続し、各プログラムを
その実行形態であるタスクとして記憶部に記憶し、各演
算制御はタスク実行要求に応じて、記憶部に記憶されて
いるタスクを読出して実行するマルチプロセッサ型電子
計算機おいて、各タスク毎に該当タスクの実行を許可さ
れた演算制御装置を記憶する複数の演算制御装置指定メ
モリを設け、さらに、各演算制御部に対して、タスク実
行要求に応動して演算制御装置指定メモリ内における該
当タスクの演算制御装置に自己が含まれていたときのみ
該当タスクを実行するタスク実行制御手段を備えたもの
である。
[Structure of the Invention] (Means for Solving the Problems) In order to solve the above problems, the present invention connects a storage unit and a plurality of arithmetic control devices to a bus line, and executes each program as a task which is its execution form. In a multiprocessor electronic computer, each task is stored in a storage unit and each arithmetic control reads and executes the task stored in the storage unit in response to a task execution request. A plurality of arithmetic and control unit designated memories are provided for storing arithmetic and control units, and each arithmetic and control unit is configured to include itself in the arithmetic and control unit of the corresponding task in the arithmetic and control unit designated memory in response to a task execution request. The system is equipped with a task execution control means that executes the corresponding task only when the task is executed.

(作用) このように構成されたマルチプロセッサ型電子計算機お
いては、各タスクが実行可能な演算制御装置が演算制御
装置指定メモリに記憶されている。したがって、タスク
実行要求が発生した場合には、該当タスクに指定された
演算制御装置のみで該当タスクが実行される。
(Function) In the multiprocessor type electronic computer configured in this manner, arithmetic control units capable of executing each task are stored in an arithmetic control unit designation memory. Therefore, when a task execution request occurs, the corresponding task is executed only by the arithmetic and control unit designated for the corresponding task.

したがって、複数のテスト用プログラムのタスクを実行
させる場合は、演算制御装置指定メモリに例えば1つの
演算制御装置のみを指定しておけけば、たとえ他の演算
制御装置が空き状態であったとしても、同時に2つの演
算制御装置でテスト用プログラムのタスクが実行される
ことはない。
Therefore, when executing tasks for multiple test programs, you can specify only one arithmetic and control unit in the arithmetic and control unit specification memory, even if the other arithmetic and control units are free. , the tasks of the test program are never executed by two arithmetic and control units at the same time.

よって、たとえテスト用プログラムに大きな誤りが存在
していたとしても他の業務に悪影響を与えることはない
Therefore, even if there is a large error in the test program, other operations will not be adversely affected.

(実施例) 以下本発明の一実施例を図面を用いて説明する。(Example) An embodiment of the present invention will be described below with reference to the drawings.

第1図はマイクロプロセッサ型電子計算機の概略を示す
模式図である。バスライン1.に対して4台の演算制御
装置2a、2b、2c、2dが接続されている。また、
バスライン1にはシステム制御部3を介して主記憶部4
と複数の補助記憶部5とが接続されている。
FIG. 1 is a schematic diagram showing an outline of a microprocessor type electronic computer. Bus line 1. Four arithmetic and control units 2a, 2b, 2c, and 2d are connected to the controller. Also,
The main memory unit 4 is connected to the bus line 1 via the system control unit 3.
and a plurality of auxiliary storage units 5 are connected.

前記各演算制御装置2a〜2dはすべて同一仕様であり
、各タスクを同一条件で実行する機能を有している。そ
して、各演算制御装置2a〜2dは主記憶部4に対して
共通にアクセス可能である。
Each of the arithmetic and control units 2a to 2d has the same specifications and has a function of executing each task under the same conditions. Each of the arithmetic and control units 2a to 2d can access the main storage unit 4 in common.

また、各演算制御装置2a〜2dは自己のO8(オペレ
ーション・システム)内に、各タスクの実行を制御する
タスク実行制御プログラムが設けられている。さらに、
主記憶部4内の頬繁にアクセスされるデータを記憶する
ためのキャッシュメモリが設けられている。
Further, each of the arithmetic and control units 2a to 2d is provided with a task execution control program in its own O8 (operation system) to control the execution of each task. moreover,
A cache memory is provided for storing frequently accessed data in the main memory section 4.

前記主記憶部4は例えばRAM等で構成されており、こ
の主記憶部4内には、未実行のタスクを該当タスクの優
先度と共に記憶する第2図に示すCPU待ち行列6およ
び第3図に示す各タスク毎のタスク制御情報7が記憶さ
れている。
The main storage unit 4 is composed of, for example, a RAM, and the main storage unit 4 includes a CPU queue 6 shown in FIG. 2 and a CPU queue 6 shown in FIG. Task control information 7 for each task shown in is stored.

また、各補助記憶部らは例えばフロッピーディスクドラ
イブ装置(FDD)や磁気ディスク記録装置等で構成さ
れており、このマルチプロセッサ型電子計算機で実行す
る各タスクのプログラムが記録されている。この補助記
憶部5内には通常の業務プログラムの他に新たに開発し
たテスト用プログラムが記憶されている。なお、この補
助記憶部5内に記憶されている各プログラムは別途図示
しないプログラム作成装置で作成されて、この補助記憶
部5内に書込まれる。
Further, each auxiliary storage section is constituted by, for example, a floppy disk drive device (FDD), a magnetic disk recording device, etc., and programs for each task to be executed by this multiprocessor type electronic computer are recorded. This auxiliary storage unit 5 stores a newly developed test program in addition to normal business programs. Note that each program stored in this auxiliary storage section 5 is created by a program creation device (not shown separately) and written into this auxiliary storage section 5.

前記CPU待ち行列6内には、実行要求が生じた各タス
クに対して、そのタスクの属するプログラムを前記補助
記憶部5から主記憶部4内へ転送する等の各種処理の実
行手段を確保したのちに、実行要求の発生したタスク毎
にタスク名とタスク制御情報7内に登録された優先度が
その優先度の順に従って格納される。第2図の実施例に
おいては、実行要求の発生したA、B、Cの3つのタス
クが存在し、登録されている優先度はA、B、Cの順で
ある。各演算制御装置28〜2dのO8内のタスク実行
制御プログラムはこのCPU待ち行列6を参照して実行
すべきタスクを読出す。
In the CPU queue 6, means for executing various processes such as transferring a program to which the task belongs from the auxiliary storage unit 5 to the main storage unit 4 is secured for each task for which an execution request has been made. Later, for each task for which an execution request has been issued, the task name and the priority registered in the task control information 7 are stored in the order of the priority. In the embodiment shown in FIG. 2, there are three tasks, A, B, and C, for which execution requests have been issued, and the registered priorities are in the order of A, B, and C. The task execution control program in O8 of each arithmetic and control unit 28 to 2d refers to this CPU queue 6 and reads out a task to be executed.

前記各タスクのタスク制御情報7は、第3図に示すよう
に、タスク名8.優先度9.演算制御装置指定メモリ1
0.プログラム情報11.実行途中結果保存領域12.
待ち行列作成領域13等からなる。
As shown in FIG. 3, the task control information 7 for each task includes the task name 8. Priority 9. Arithmetic control unit specified memory 1
0. Program information 11. Intermediate execution result storage area 12.
It consists of a queue creation area 13 and the like.

優先度9は自己のタスクが他のタスクを含めた全部のタ
スクの中でどの程度優先して実行されるかを数字で示し
たものであり、例えば[1]の優先度はすべてのタスク
に対して最優先で実行される。この場合、実行中のタス
クの優先度より後に実行要求があったタスクの優先度が
高い場合は、実行中のタスクが中断されて、後から実行
要求の生じたタスクを先に実行する。
Priority 9 is a numerical value that indicates how much priority the own task is given among all tasks including other tasks.For example, priority [1] is a number that indicates how much priority the task is given to be executed among all tasks including other tasks. will be executed with top priority. In this case, if the priority of the task whose execution was requested later is higher than the priority of the task that is being executed, the task that is being executed is interrupted and the task that is requested to be executed later is executed first.

演算制御装置指定メモリ10内には該当タスクの実行を
許可された演算制御装置2a〜2dが[1]又は[0]
のビット情報で記憶されている。
In the arithmetic and control device specification memory 10, the arithmetic and control devices 2a to 2d that are permitted to execute the corresponding task are set to [1] or [0].
is stored as bit information.

第3図に示す[10101のビットデータは1番目の演
算制御装置2aと3番目の演算制御装置2dに該当タス
クを実行する許可が与えられたことを示す。したがって
、通常の業務プログラムのタスクのようにどの演算制御
装置2a〜2dで実行してもよい場合は、[1111]
のビットデータが設定される。また、テスト用プログラ
ムのタスクのように実行する演算制御装置を例えば4番
目の演算制御装置2d等の特定の1台に制限する場合は
、[0001]のビットデータが設定される。
The bit data [10101 shown in FIG. 3 indicates that permission has been given to the first arithmetic and control unit 2a and the third arithmetic and control unit 2d to execute the corresponding task. Therefore, if the task of a normal business program can be executed by any of the arithmetic and control units 2a to 2d, [1111]
bit data is set. Further, when the arithmetic and control unit to be executed, such as a task of a test program, is limited to one specific arithmetic and control unit, such as the fourth arithmetic and control unit 2d, bit data of [0001] is set.

また、実行途中結果保存領12は、該当タスクがいずれ
かの演算制御装置28〜2dで実行途中にこのタスクよ
り優先度の高いタスクの実行要求が生じた場合に、該当
タスクの実行が中断されるが、このタスクの実行途中結
果を保存して、再度このタスクが実行可能状態になった
時点でこの実行途中結果を用いて中断位置からタスクの
実行を再開させるための領域である。
In addition, the execution result storage area 12 is used to store the execution result of a corresponding task being interrupted when a request for execution of a task with a higher priority than this task occurs during the execution of the corresponding task in any of the arithmetic and control units 28 to 2d. However, this area is used to save the mid-execution results of this task and, when the task becomes executable again, to use these mid-execution results to restart execution of the task from the interrupted position.

さらに、待ち行列作成領域13は第2図に示すCPU待
ち行列6にタスク名および優先度を優先度の順番に従っ
て書込むための領域である。
Further, the queue creation area 13 is an area for writing task names and priorities in the CPU queue 6 shown in FIG. 2 in order of priority.

また、システム制御部3は、各演算制御装置28〜2d
によって、主記憶部3内に記憶されているデータが書き
換えられた時に、このデータの写しを各演算制御装置2
a〜2dのキャッシュメモリ内に書込む等の制御を行う
。また、主記憶部3に同時に複数の演算制御装置2a〜
2dからアクセスが発生した場合にアクセス権の調整を
行う。
The system control unit 3 also controls each arithmetic and control device 28 to 2d.
When the data stored in the main storage unit 3 is rewritten, a copy of this data is sent to each arithmetic and control unit 2.
It performs control such as writing into the cache memory of a to 2d. In addition, a plurality of arithmetic and control devices 2a to 2a are stored simultaneously in the main storage unit 3.
When access occurs from 2d, access rights are adjusted.

そして、各演算制御装置2a〜2dにおけるO8のタス
ク実行制御プログラムは、タスク実行要求が発生すると
、第4図の流れ図に従って該当タスクのプログラムを起
動する。
When a task execution request is generated, the task execution control program O8 in each arithmetic and control unit 2a to 2d starts the program for the corresponding task according to the flowchart of FIG. 4.

タスク実行要求が発生すると、そのタスクのタスク名お
よび優先度をCPU待ち行列6の先頭行から読取る。そ
して、P(プログラムステップ)1にて現在中断中のタ
スクが存在するか否かを調べる。なお、タスクの実行中
に新たなタスクの実行要求が発生すると、現在時点で実
行中のタスクの実行が中断される。Plにて中断中のタ
スクが存在すれば、主記憶部4内の現在実行中のタスク
のタスク制御情報7の優先度9と今回実行要求が生じた
タスクのタスク制御情報7の優先度9との比較を行う。
When a task execution request occurs, the task name and priority of the task are read from the first row of the CPU queue 6. Then, at P (program step) 1, it is checked whether there is a currently suspended task. Note that if a new task execution request occurs while a task is being executed, the execution of the currently executing task is interrupted. If there is a suspended task in Pl, the priority 9 of the task control information 7 of the task currently being executed in the main memory 4 and the priority 9 of the task control information 7 of the task for which the current execution request has been made are Make a comparison.

そして、P2にて、今回の実行要求の優先度9が高い場
合は、P3へ進み、今回の実行要求のタスクのタスク制
御情報7の演算制御装置指定メモリ10の4桁のビット
データを読取り、そのビットデータが自己の演算制御装
置を示すビットが[1]に設定されていれば、このタス
クを実行する必要があるのでP4へ進む。P4にて、現
在中断中のタスクの実行途中結果を該当タスクのタスク
制御情報7の実行途中結果保存領域12へ格納する。次
に、中断したタスクのタスク名および優先度をCPU待
ち行列6に登録する。具体的には、このCPU待ち行列
6内に他のタスクが登録されていれれば、その優先度と
今回の優先度とを比較して、CPU待ち行列6内に各タ
スクが優先度順に並ぶようにこのタスクのタスク名と優
先度とを格納する。
Then, in P2, if the priority level 9 of the current execution request is high, proceed to P3, read the 4-digit bit data in the arithmetic control unit specification memory 10 of the task control information 7 of the task of the current execution request, If the bit in the bit data indicating the own arithmetic control unit is set to [1], it is necessary to execute this task and the process advances to P4. At P4, the mid-execution result of the currently suspended task is stored in the mid-execution result storage area 12 of the task control information 7 of the task. Next, the task name and priority of the interrupted task are registered in the CPU queue 6. Specifically, if other tasks are registered in this CPU queue 6, their priority is compared with the current priority, and each task is arranged in the CPU queue 6 in order of priority. stores the task name and priority of this task.

次に、P6にて、今回実行要求の生じたタスクのタスク
制御情報7の実行途中結果保存領域12に実行途中結果
が存在すれば、この実行途中結果を自己の演算制御部2
8〜2dのレジスタに復元する。Plにて、プログラム
制御をこの実行要求タスクのプログラムに移行する。し
かして、実行要求の生じたタスクのプログラムが実行開
始される。なお、実行途中結果が存在した場合は、その
実行途中結果のプログラム位置からプログラム処理を再
開する。
Next, at P6, if there is an execution intermediate result in the execution intermediate result storage area 12 of the task control information 7 of the task for which the execution request has occurred this time, this execution intermediate result is stored in the own arithmetic control unit 2.
Restore to registers 8-2d. At Pl, program control is transferred to the program of this execution request task. Thus, the program of the task for which the execution request has been made starts to be executed. Note that if there is an intermediate execution result, program processing is restarted from the program position of the intermediate execution result.

また、P3にて、実行要求のタスクに対応する演算制御
装置指定メモリ1oのビットデータにおいて自己の演算
制御装置を示すビットが[0]に解除されていれば、こ
のタスクは自己の演算制御装置以外の他の演算制御装置
で実行する必要があるのでP8へ進む。
In addition, at P3, if the bit indicating the own arithmetic control unit in the bit data of the arithmetic control unit specification memory 1o corresponding to the task of the execution request is cleared to [0], this task is executed by the own arithmetic control unit. Since it is necessary to execute it with another arithmetic and control unit other than the above, proceed to P8.

P8においては、主記憶部4内のCPU待ち行列6に実
行要求が生じたタスクが登録されているか否かを調べる
。登録されていれば、先頭、すなわち優先度の最も高い
タスクを読出してPlへ戻る。
At P8, it is checked whether the task for which the execution request has been requested is registered in the CPU queue 6 in the main memory section 4. If it is registered, the first task, that is, the task with the highest priority is read out and the process returns to Pl.

このように構成されたマルチプロセッサ型電子計算機に
おいて、この電子計算機が通常の完成された業務プログ
ラムの各タスクを用いたオンライン業務を実行する場合
は、主記憶部4の各タスクのタスク制御情報7の演算制
御装置指定メモリ10のビットデータを全部の演算制御
装置で実行可能を示す[1111]に設定すれば、各タ
スクは実行要求が発生した時点で、優先度に従って空い
ている演算制御装置でもって実行される。
In a multiprocessor type computer configured in this manner, when this computer executes an online business using each task of a normal completed business program, the task control information 7 of each task in the main memory 4 is If the bit data in the arithmetic and control device specification memory 10 is set to [1111], which indicates that it can be executed on all arithmetic and control units, each task will be executed on an available arithmetic and control unit according to its priority when an execution request is generated. It will be executed.

また、このようなオンライン業務を実行している過程で
、新たに作成されたテスト用プログラムのタスクを実行
させる場合は、このテスト用タスクのタスク制御情報7
の演算制御装置指定メモリ10のビットデータにおいて
、このテスト用タスクを実行させたい演算制御装置のビ
ットのみを[1]に設定して、残りの各ビットを[0]
に設定すればよい。例えば、4番目の演算制御装置4d
のみで実行させる場合は、ビットデータを[00011
に設定する。このようにビットデータを設定すれば、テ
スト用タスクの実行要求が発生した場合、たとえ他の演
算制御装置28〜2Cが空き状態であったとしてもこれ
らの演算制御装置2a〜2Cで実行されることはなく、
このテスト用タスクに指定された演算制御装置2dにお
いて優先度等を考慮した実行条件が整った時点で実行さ
れる。
In addition, if you want to execute a task of a newly created test program during the process of executing such online work, the task control information 7 of this test task
In the bit data of the arithmetic and control unit specification memory 10, set only the bit of the arithmetic and control unit that you want to execute this test task to [1], and set each remaining bit to [0].
You can set it to . For example, the fourth arithmetic and control unit 4d
If you want to run it only with [00011
Set to . By setting the bit data in this way, when a test task execution request occurs, it will be executed in these arithmetic and control units 2a to 2C even if the other arithmetic and control units 28 to 2C are idle. Without a doubt,
This test task is executed when the execution conditions are met in consideration of priority and the like in the arithmetic and control unit 2d designated for the test task.

こようにテスト用タスクを実行する演算制御装置をある
特定の演算制御装置に限定することによって、複数のテ
スト用タスクの実行要求を発生させたとしても同時に複
数の演算制御装置でそのタスクが同時に実行されること
はない。よって、たとえそのテスト用タスクのプログラ
ムが無限ループ等を含む欠陥プログラムであったとして
も、オンライン業務を実行している他の正常な業務プロ
グラムの実行に支障を及ぼすことはない。よって、オン
ライン業務実行中のマルチプロセッサ型電子計算機を用
いてテスト用プログラムを他の正常な業務に支障を及ぼ
すことなく実行できる。
In this way, by limiting the arithmetic and control units that execute test tasks to a specific arithmetic and control unit, even if multiple test task execution requests are generated, multiple arithmetic and control units will not be able to execute the tasks at the same time. It will never be executed. Therefore, even if the test task program is a defective program that includes an infinite loop or the like, it will not interfere with the execution of other normal business programs that are executing online business. Therefore, a test program can be executed using a multiprocessor electronic computer that is currently executing online operations without interfering with other normal operations.

また、テスト用タスクの実行を許可する演算制御装置を
指定するのみならず、特定業務のタスクを実行する演算
制御装置を指定することも可能である。各業務タスクの
中には一般の業務とは全く関係のない、例えば非常に短
い時間間隔で実行される機能や、外部に対する入出力を
専門に実行する業務が存在する。このような特殊な業務
を実行する演算制御装置を固定することによって、これ
らの業務の実行は他の一般業務の実行と競合することを
考慮する必要がないので、電子計算機のシステム構築上
、非常に有効である。
Furthermore, it is possible not only to specify an arithmetic and control unit that is permitted to execute a test task, but also to specify an arithmetic and control unit that executes a task of a specific business. Among each business task, there are functions that are completely unrelated to general business, such as functions that are executed at very short time intervals, and tasks that are specialized for external input/output. By fixing the arithmetic and control unit that executes these special tasks, there is no need to consider that the execution of these tasks will conflict with the execution of other general tasks, which is extremely convenient for computer system construction. It is effective for

[発明の効果] 以上説明したように、本発明のマルチプロセッサ型電子
計算機によれれば、各タスク毎に該当タスクの実行を許
可する演算制御装置を指定して、例えばテスト用プログ
ラム等の特定のタスクを実行する演算制御装置を限定し
ている。したがって、通常のプログラムは演算制御装置
を限定しない事により、従来の各タスクを能率的に実行
できる機能を保持したままで、通常のタスク実行に悪影
響を与えることなくテスト用プログラムのタスクを実行
でき、信頼性向上と処理能率向上とを同時に図ることが
できる。
[Effects of the Invention] As explained above, according to the multiprocessor electronic computer of the present invention, an arithmetic control unit that is permitted to execute the task is specified for each task, and a test program, for example, is specified. The arithmetic and control units that perform these tasks are limited. Therefore, by not limiting the arithmetic and control unit in a normal program, the tasks of the test program can be executed without adversely affecting normal task execution while retaining the conventional functions that allow efficient execution of each task. , it is possible to simultaneously improve reliability and processing efficiency.

【図面の簡単な説明】[Brief explanation of the drawing]

図は本発明の一実施例に係わるマルチプロセッサ型電子
計算機を示すものであり、第1図は全体構成を示すブロ
ック図、第2図はCPU待ち行列を示す図、第3図はタ
スク制御情報の構成を示す図、第4図は動作を示す流れ
図である。 1・・・バスライン、2a、  2b、2c、2d・・
・・・・演算制御装置、3・・・システム制御部、4・
・・種記憶部、5・・・補助記憶部、6・・・CPU待
ち行列、7・・・タスク制御情報、10・・・演算制御
装置指定メモリ。 出願人代理人 弁理士 鈴江武彦 第3図 グl 2 図
The figures show a multiprocessor electronic computer according to an embodiment of the present invention, in which Fig. 1 is a block diagram showing the overall configuration, Fig. 2 is a diagram showing a CPU queue, and Fig. 3 is a diagram showing task control information. FIG. 4 is a flowchart showing the operation. 1... Bus line, 2a, 2b, 2c, 2d...
... Arithmetic control unit, 3... System control section, 4.
... Seed storage unit, 5... Auxiliary storage unit, 6... CPU queue, 7... Task control information, 10... Arithmetic control unit specification memory. Applicant's agent Patent attorney Takehiko Suzue Figure 3 Figure 2

Claims (1)

【特許請求の範囲】 バスラインに記憶部および複数の演算制御装置を接続し
、各プログラムをその実行形態であるタスクとして前記
記憶部に記憶し、前記各演算制御はタスク実行要求に応
じて、前記記憶部に記憶されているタスクを読出して実
行するマルチプロセッサ型電子計算機おいて、 前記各タスク毎に該当タスクの実行を許可された演算制
御装置を記憶する複数の演算制御装置指定メモリと、前
記各演算制御部内に設けられ、前記タスク実行要求に応
動して前記演算制御装置指定メモリ内における該当タス
クの演算制御装置に自己が含まれていたときのみ該当タ
スクを実行するタスク実行制御手段とを備えたマルチプ
ロセッサ型電子計算機。
[Scope of Claims] A storage unit and a plurality of arithmetic and control devices are connected to a bus line, each program is stored in the storage unit as a task which is an execution form of the program, and each of the arithmetic and control units is configured to: A multiprocessor type electronic computer that reads and executes tasks stored in the storage unit, comprising: a plurality of arithmetic and control device designation memories that store arithmetic and control devices that are permitted to execute the task for each of the tasks; a task execution control means provided in each of the arithmetic control units and configured to execute the task in response to the task execution request only when the arithmetic and control unit is included in the arithmetic and control unit of the task in the arithmetic and control unit designated memory; A multiprocessor electronic computer equipped with
JP2149758A 1990-06-11 1990-06-11 Multi-processor type electronic computer Pending JPH0443454A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2149758A JPH0443454A (en) 1990-06-11 1990-06-11 Multi-processor type electronic computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2149758A JPH0443454A (en) 1990-06-11 1990-06-11 Multi-processor type electronic computer

Publications (1)

Publication Number Publication Date
JPH0443454A true JPH0443454A (en) 1992-02-13

Family

ID=15482109

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2149758A Pending JPH0443454A (en) 1990-06-11 1990-06-11 Multi-processor type electronic computer

Country Status (1)

Country Link
JP (1) JPH0443454A (en)

Similar Documents

Publication Publication Date Title
US6665699B1 (en) Method and data processing system providing processor affinity dispatching
JPH04137046A (en) Operating system for electronic computer
JPH0713813B2 (en) Data access method and data processing system
JPH04246740A (en) Microcomputer
JPS5841538B2 (en) Multiprocessor system instructions
US5825649A (en) Kernel substitution method in multi-processor system and multi-processor system having kernel substitution function
JPH077379B2 (en) Interrupt selection method for multi-processing system
JP7425685B2 (en) electronic control unit
JP2821345B2 (en) Asynchronous I / O control method
JP2009217721A (en) Data synchronization method in multiprocessor system and multiprocessor system
WO2015075803A1 (en) Information processing device, method, program, and storage medium
JP3814521B2 (en) Data processing method and apparatus
JPS6319058A (en) Memory device
JPH0443454A (en) Multi-processor type electronic computer
JPH0789328B2 (en) Data processing device
JPS6113261B2 (en)
JP2671160B2 (en) Exception handling method
JP3425355B2 (en) Multiple write storage
JPH0581120A (en) Data processor
JPS62177653A (en) Control system for shared memory
JPS5965306A (en) Sequence controller
JPH04140860A (en) Method for controlling bus of multi-processor
JP3127737B2 (en) Digital signal processor
JP2517859B2 (en) Parallel process management method
JPH0312749A (en) Hardware initial diagnostic control system for multiprocessor system