JPH0443454A - マルチプロセッサ型電子計算機 - Google Patents

マルチプロセッサ型電子計算機

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
English (en)
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/ja
Publication of JPH0443454A publication Critical patent/JPH0443454A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、複数の演算制御装置をバスラインを介して並
列接続したマルチプロセッサ型電子計算機に係わり、特
に、各プログラムの実行制御法を改良したマルチプロセ
ッサ型電子計算機に関する。
(従来の技術) 一般に、複数の演算制御装置を有する電子計算機は大き
く2種類に分けることができる。一つは直列型の電子計
算機であり、主演算制御装置(主プロセツサ)と従演算
制御装置(従プロセツサ)とで構成されている。そして
、主演算制御装置には例えばメインプログラムが割当ら
れ、従演算制御装置にはサブプログラムが割当られる。
通常、主演算制御装置においてメインプログラムが起動
され、メインプログラムの実行過程で、サブプログラム
が起動される。サブプログラムは従演算制御装置で実行
され、演算結果および終了情報が主演算制御装置へ通知
される。すなわち、従演算制御装置の動作は主演算制御
装置にて完全に制御されている。
もう一つの電子計算機はいわゆるマルチプロセッサ型電
子計算機であり、各演算制御装置は同一機能を有する。
そして、各プログラムは複数の演算制御装置で並列に実
行可能である。そして、各演算制御装置が同一の主記憶
部をアクセスするシステムにおいては、同時に一つの主
記憶部をアクセスできないので、各演算制御装置相互間
でアクセス権を調整する調整回路が用いられる。また、
主記憶部の記憶内容を書替える場合には、各演算制御装
置内のキャッシュメモリの内容も同時に書替えて、複数
のプログラムをどの演算制御装置で実行したとしても同
一演算結果が得られるように構成されている。
また、プログラムが各演算制御装置で実行される単位を
タスクと称するが、このタスクの実行は、計算機に必ず
具備されるオペレーションシステム(O8)プログラム
の中核であるタスク実行制御プログラムにより行われる
このタスク実行制御プログラムによれば、実行要求の生
じた複数のタスクに対し、予め登録された優先度に基づ
き、その時実行すべきタスクを決定し、そのタスクのプ
ログラムを実行する。例えば、あるタイミングで、ある
タスクの実行要求があると、実行要求のあったタスクの
優先度と現在実行中のタスクの優先度とを比較して、要
求のあったタスクの優先度の方が高ければ、現在実行中
のタスクを一時中断し、今回実行要求のあったタスクを
実行する。そして、このタスク実行制御プログラムは、
通常、タスクの実行要求、遅延要求。
実行の終了、入出力完了等の事象が発生すると、自動的
に起動される。
複数の演算制御装置が並列に設けられたマルチプロセッ
サ型電子計算機においては、上記タスク実行制御プログ
ラムが各演算制御装置内に設けられている。また、主記
憶部内には、実行要求があるがまだ実行されていないタ
スクを記憶するCPU待ち行列が形成されている。そし
て、各演算制御装置は、タスクの実行要求があると、各
演算制御装置自身で上述したタスクの実行制御を行う。
すなわち、実行要求のあったタスクが何であるかの情報
を前記CPU待ち行列をチエツクして、該当タスクを即
座に実行するか否かを決定する。
なお、CPU待ち行列のチエツク、削除等は各演算制御
装置によって実行されるか、各演算制御装置が同時に行
うことがないように排他機構を用いて実行される。
このようなタスク実行制御を行うマルチプロセッサ型電
子計算機においては、各タスクはどの演算制御装置内で
実行されてもよい。すなわち、タスク実行要求が発生し
た時点で、タスクを実行していない演算制御装置に割当
られる。その結果、各演算制御装置はそれぞれ異なる種
類のタスクを並列して実行するので、各演算制御装置を
効率的に使用でき、電子計算機全体としての処理能率を
向上できる。
しかしながら、上述したような手法で各タスクの実行制
御を行うようにしたマルチプロセッサ型電子計算機にお
いても、まだ改良すべき次のような課題が有った。
例えばオンライン業務を実行しているマルチプロセッサ
型電子計算機においては、業務用の複数のタスクが必要
に応じて何時でも、又は短い待ち時間経過後に、実行可
能な処理能力を有している。
このような電子計算機において、新たなプログラムを開
発して、そのプログラムを実際に運用すべきシステムで
稼働実験する必要が生じた場合には、このテスト用プロ
グラムのタスクを例えばフロッピーディスクドライブ装
置(FDD)等の補助記憶部から主記憶部へ書込んで実
行要求を発生させれば、前述した通常の業務用タスクと
同じ条件で空いた演算制御装置で実行される。
しかし、このテスト用プログラムはあくまでテスト用プ
ログラムであるので、プロゲラの設計誤りや、文法上の
ミス等が含まれる可能性がある。
したがって、このテスト用プログラムに例えば無限ルー
プが存在した場合においては、プログラム処理が終了し
ないことになり、このテスト用プログラムを実行してい
る演算制御装置はこのタスクに占有され続ける。よって
、このような無限ル−ブを有する複数のプログラムを実
行させた場合、多数の演算制御装置が占有されるので、
通常のオンライン業務に支障が生じる。
特にこれらのテスト用プログラムが他の業務用プログラ
ムより高い優先度が与えられていた場合には、被害甚大
である。
(発明が解決しようとする課題) このように従来のマルチプロセッサ型電子計算機におい
ては、各タスクが各演算制御装置に対して全く同一条件
で実行されるので、テスト用プログラムを実行すすると
本来のオンライン業務に支障が生じる懸念が有る。
本発明はこのような事情に鑑みてなされたものであり、
各タスク毎に該当タスクの実行を許可する演算制御装置
を指定することによって、テスト用プログラム等の特定
のタスクを実行する演算制御装置を限定でき、通常の業
務プログラムは演算制御装置を限定しない事により、従
来の各タスクを能率的に実行できる機能を保持したまま
で、通常のタスク実行に悪影響を与えることなくテスト
用プログラムのタスクを実行でき、信頼性向上と処理能
率向上とを同時に図ることができるマルチプロセッサ型
電子計算機を提供することを目的とする。
[発明の構成] (課題を解決するための手段) 上記課題を解消するために本発明は、バスラインに記憶
部および複数の演算制御装置を接続し、各プログラムを
その実行形態であるタスクとして記憶部に記憶し、各演
算制御はタスク実行要求に応じて、記憶部に記憶されて
いるタスクを読出して実行するマルチプロセッサ型電子
計算機おいて、各タスク毎に該当タスクの実行を許可さ
れた演算制御装置を記憶する複数の演算制御装置指定メ
モリを設け、さらに、各演算制御部に対して、タスク実
行要求に応動して演算制御装置指定メモリ内における該
当タスクの演算制御装置に自己が含まれていたときのみ
該当タスクを実行するタスク実行制御手段を備えたもの
である。
(作用) このように構成されたマルチプロセッサ型電子計算機お
いては、各タスクが実行可能な演算制御装置が演算制御
装置指定メモリに記憶されている。したがって、タスク
実行要求が発生した場合には、該当タスクに指定された
演算制御装置のみで該当タスクが実行される。
したがって、複数のテスト用プログラムのタスクを実行
させる場合は、演算制御装置指定メモリに例えば1つの
演算制御装置のみを指定しておけけば、たとえ他の演算
制御装置が空き状態であったとしても、同時に2つの演
算制御装置でテスト用プログラムのタスクが実行される
ことはない。
よって、たとえテスト用プログラムに大きな誤りが存在
していたとしても他の業務に悪影響を与えることはない
(実施例) 以下本発明の一実施例を図面を用いて説明する。
第1図はマイクロプロセッサ型電子計算機の概略を示す
模式図である。バスライン1.に対して4台の演算制御
装置2a、2b、2c、2dが接続されている。また、
バスライン1にはシステム制御部3を介して主記憶部4
と複数の補助記憶部5とが接続されている。
前記各演算制御装置2a〜2dはすべて同一仕様であり
、各タスクを同一条件で実行する機能を有している。そ
して、各演算制御装置2a〜2dは主記憶部4に対して
共通にアクセス可能である。
また、各演算制御装置2a〜2dは自己のO8(オペレ
ーション・システム)内に、各タスクの実行を制御する
タスク実行制御プログラムが設けられている。さらに、
主記憶部4内の頬繁にアクセスされるデータを記憶する
ためのキャッシュメモリが設けられている。
前記主記憶部4は例えばRAM等で構成されており、こ
の主記憶部4内には、未実行のタスクを該当タスクの優
先度と共に記憶する第2図に示すCPU待ち行列6およ
び第3図に示す各タスク毎のタスク制御情報7が記憶さ
れている。
また、各補助記憶部らは例えばフロッピーディスクドラ
イブ装置(FDD)や磁気ディスク記録装置等で構成さ
れており、このマルチプロセッサ型電子計算機で実行す
る各タスクのプログラムが記録されている。この補助記
憶部5内には通常の業務プログラムの他に新たに開発し
たテスト用プログラムが記憶されている。なお、この補
助記憶部5内に記憶されている各プログラムは別途図示
しないプログラム作成装置で作成されて、この補助記憶
部5内に書込まれる。
前記CPU待ち行列6内には、実行要求が生じた各タス
クに対して、そのタスクの属するプログラムを前記補助
記憶部5から主記憶部4内へ転送する等の各種処理の実
行手段を確保したのちに、実行要求の発生したタスク毎
にタスク名とタスク制御情報7内に登録された優先度が
その優先度の順に従って格納される。第2図の実施例に
おいては、実行要求の発生したA、B、Cの3つのタス
クが存在し、登録されている優先度はA、B、Cの順で
ある。各演算制御装置28〜2dのO8内のタスク実行
制御プログラムはこのCPU待ち行列6を参照して実行
すべきタスクを読出す。
前記各タスクのタスク制御情報7は、第3図に示すよう
に、タスク名8.優先度9.演算制御装置指定メモリ1
0.プログラム情報11.実行途中結果保存領域12.
待ち行列作成領域13等からなる。
優先度9は自己のタスクが他のタスクを含めた全部のタ
スクの中でどの程度優先して実行されるかを数字で示し
たものであり、例えば[1]の優先度はすべてのタスク
に対して最優先で実行される。この場合、実行中のタス
クの優先度より後に実行要求があったタスクの優先度が
高い場合は、実行中のタスクが中断されて、後から実行
要求の生じたタスクを先に実行する。
演算制御装置指定メモリ10内には該当タスクの実行を
許可された演算制御装置2a〜2dが[1]又は[0]
のビット情報で記憶されている。
第3図に示す[10101のビットデータは1番目の演
算制御装置2aと3番目の演算制御装置2dに該当タス
クを実行する許可が与えられたことを示す。したがって
、通常の業務プログラムのタスクのようにどの演算制御
装置2a〜2dで実行してもよい場合は、[1111]
のビットデータが設定される。また、テスト用プログラ
ムのタスクのように実行する演算制御装置を例えば4番
目の演算制御装置2d等の特定の1台に制限する場合は
、[0001]のビットデータが設定される。
また、実行途中結果保存領12は、該当タスクがいずれ
かの演算制御装置28〜2dで実行途中にこのタスクよ
り優先度の高いタスクの実行要求が生じた場合に、該当
タスクの実行が中断されるが、このタスクの実行途中結
果を保存して、再度このタスクが実行可能状態になった
時点でこの実行途中結果を用いて中断位置からタスクの
実行を再開させるための領域である。
さらに、待ち行列作成領域13は第2図に示すCPU待
ち行列6にタスク名および優先度を優先度の順番に従っ
て書込むための領域である。
また、システム制御部3は、各演算制御装置28〜2d
によって、主記憶部3内に記憶されているデータが書き
換えられた時に、このデータの写しを各演算制御装置2
a〜2dのキャッシュメモリ内に書込む等の制御を行う
。また、主記憶部3に同時に複数の演算制御装置2a〜
2dからアクセスが発生した場合にアクセス権の調整を
行う。
そして、各演算制御装置2a〜2dにおけるO8のタス
ク実行制御プログラムは、タスク実行要求が発生すると
、第4図の流れ図に従って該当タスクのプログラムを起
動する。
タスク実行要求が発生すると、そのタスクのタスク名お
よび優先度をCPU待ち行列6の先頭行から読取る。そ
して、P(プログラムステップ)1にて現在中断中のタ
スクが存在するか否かを調べる。なお、タスクの実行中
に新たなタスクの実行要求が発生すると、現在時点で実
行中のタスクの実行が中断される。Plにて中断中のタ
スクが存在すれば、主記憶部4内の現在実行中のタスク
のタスク制御情報7の優先度9と今回実行要求が生じた
タスクのタスク制御情報7の優先度9との比較を行う。
そして、P2にて、今回の実行要求の優先度9が高い場
合は、P3へ進み、今回の実行要求のタスクのタスク制
御情報7の演算制御装置指定メモリ10の4桁のビット
データを読取り、そのビットデータが自己の演算制御装
置を示すビットが[1]に設定されていれば、このタス
クを実行する必要があるのでP4へ進む。P4にて、現
在中断中のタスクの実行途中結果を該当タスクのタスク
制御情報7の実行途中結果保存領域12へ格納する。次
に、中断したタスクのタスク名および優先度をCPU待
ち行列6に登録する。具体的には、このCPU待ち行列
6内に他のタスクが登録されていれれば、その優先度と
今回の優先度とを比較して、CPU待ち行列6内に各タ
スクが優先度順に並ぶようにこのタスクのタスク名と優
先度とを格納する。
次に、P6にて、今回実行要求の生じたタスクのタスク
制御情報7の実行途中結果保存領域12に実行途中結果
が存在すれば、この実行途中結果を自己の演算制御部2
8〜2dのレジスタに復元する。Plにて、プログラム
制御をこの実行要求タスクのプログラムに移行する。し
かして、実行要求の生じたタスクのプログラムが実行開
始される。なお、実行途中結果が存在した場合は、その
実行途中結果のプログラム位置からプログラム処理を再
開する。
また、P3にて、実行要求のタスクに対応する演算制御
装置指定メモリ1oのビットデータにおいて自己の演算
制御装置を示すビットが[0]に解除されていれば、こ
のタスクは自己の演算制御装置以外の他の演算制御装置
で実行する必要があるのでP8へ進む。
P8においては、主記憶部4内のCPU待ち行列6に実
行要求が生じたタスクが登録されているか否かを調べる
。登録されていれば、先頭、すなわち優先度の最も高い
タスクを読出してPlへ戻る。
このように構成されたマルチプロセッサ型電子計算機に
おいて、この電子計算機が通常の完成された業務プログ
ラムの各タスクを用いたオンライン業務を実行する場合
は、主記憶部4の各タスクのタスク制御情報7の演算制
御装置指定メモリ10のビットデータを全部の演算制御
装置で実行可能を示す[1111]に設定すれば、各タ
スクは実行要求が発生した時点で、優先度に従って空い
ている演算制御装置でもって実行される。
また、このようなオンライン業務を実行している過程で
、新たに作成されたテスト用プログラムのタスクを実行
させる場合は、このテスト用タスクのタスク制御情報7
の演算制御装置指定メモリ10のビットデータにおいて
、このテスト用タスクを実行させたい演算制御装置のビ
ットのみを[1]に設定して、残りの各ビットを[0]
に設定すればよい。例えば、4番目の演算制御装置4d
のみで実行させる場合は、ビットデータを[00011
に設定する。このようにビットデータを設定すれば、テ
スト用タスクの実行要求が発生した場合、たとえ他の演
算制御装置28〜2Cが空き状態であったとしてもこれ
らの演算制御装置2a〜2Cで実行されることはなく、
このテスト用タスクに指定された演算制御装置2dにお
いて優先度等を考慮した実行条件が整った時点で実行さ
れる。
こようにテスト用タスクを実行する演算制御装置をある
特定の演算制御装置に限定することによって、複数のテ
スト用タスクの実行要求を発生させたとしても同時に複
数の演算制御装置でそのタスクが同時に実行されること
はない。よって、たとえそのテスト用タスクのプログラ
ムが無限ループ等を含む欠陥プログラムであったとして
も、オンライン業務を実行している他の正常な業務プロ
グラムの実行に支障を及ぼすことはない。よって、オン
ライン業務実行中のマルチプロセッサ型電子計算機を用
いてテスト用プログラムを他の正常な業務に支障を及ぼ
すことなく実行できる。
また、テスト用タスクの実行を許可する演算制御装置を
指定するのみならず、特定業務のタスクを実行する演算
制御装置を指定することも可能である。各業務タスクの
中には一般の業務とは全く関係のない、例えば非常に短
い時間間隔で実行される機能や、外部に対する入出力を
専門に実行する業務が存在する。このような特殊な業務
を実行する演算制御装置を固定することによって、これ
らの業務の実行は他の一般業務の実行と競合することを
考慮する必要がないので、電子計算機のシステム構築上
、非常に有効である。
[発明の効果] 以上説明したように、本発明のマルチプロセッサ型電子
計算機によれれば、各タスク毎に該当タスクの実行を許
可する演算制御装置を指定して、例えばテスト用プログ
ラム等の特定のタスクを実行する演算制御装置を限定し
ている。したがって、通常のプログラムは演算制御装置
を限定しない事により、従来の各タスクを能率的に実行
できる機能を保持したままで、通常のタスク実行に悪影
響を与えることなくテスト用プログラムのタスクを実行
でき、信頼性向上と処理能率向上とを同時に図ることが
できる。
【図面の簡単な説明】
図は本発明の一実施例に係わるマルチプロセッサ型電子
計算機を示すものであり、第1図は全体構成を示すブロ
ック図、第2図はCPU待ち行列を示す図、第3図はタ
スク制御情報の構成を示す図、第4図は動作を示す流れ
図である。 1・・・バスライン、2a、  2b、2c、2d・・
・・・・演算制御装置、3・・・システム制御部、4・
・・種記憶部、5・・・補助記憶部、6・・・CPU待
ち行列、7・・・タスク制御情報、10・・・演算制御
装置指定メモリ。 出願人代理人 弁理士 鈴江武彦 第3図 グl 2 図

Claims (1)

  1. 【特許請求の範囲】 バスラインに記憶部および複数の演算制御装置を接続し
    、各プログラムをその実行形態であるタスクとして前記
    記憶部に記憶し、前記各演算制御はタスク実行要求に応
    じて、前記記憶部に記憶されているタスクを読出して実
    行するマルチプロセッサ型電子計算機おいて、 前記各タスク毎に該当タスクの実行を許可された演算制
    御装置を記憶する複数の演算制御装置指定メモリと、前
    記各演算制御部内に設けられ、前記タスク実行要求に応
    動して前記演算制御装置指定メモリ内における該当タス
    クの演算制御装置に自己が含まれていたときのみ該当タ
    スクを実行するタスク実行制御手段とを備えたマルチプ
    ロセッサ型電子計算機。
JP2149758A 1990-06-11 1990-06-11 マルチプロセッサ型電子計算機 Pending JPH0443454A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2149758A JPH0443454A (ja) 1990-06-11 1990-06-11 マルチプロセッサ型電子計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2149758A JPH0443454A (ja) 1990-06-11 1990-06-11 マルチプロセッサ型電子計算機

Publications (1)

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

Family

ID=15482109

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2149758A Pending JPH0443454A (ja) 1990-06-11 1990-06-11 マルチプロセッサ型電子計算機

Country Status (1)

Country Link
JP (1) JPH0443454A (ja)

Similar Documents

Publication Publication Date Title
US6665699B1 (en) Method and data processing system providing processor affinity dispatching
JPH04137046A (ja) 電子計算機のオペレーティングシステム
JPH0713813B2 (ja) データアクセス方法及びデータ処理システム
JPH04246740A (ja) マイクロコンピュータ
JPS5841538B2 (ja) マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
US5825649A (en) Kernel substitution method in multi-processor system and multi-processor system having kernel substitution function
JPH077379B2 (ja) 多重処理システムの割込み選択方式
JP7425685B2 (ja) 電子制御装置
JP2821345B2 (ja) 非同期i/o制御方式
JP2009217721A (ja) マルチプロセッサシステムにおけるデータ同期方法及びマルチプロセッサシステム
WO2015075803A1 (ja) 情報処理装置、方法、プログラム及び記録媒体
JP3814521B2 (ja) データ処理方法および装置
JPS6319058A (ja) メモリ装置
JPH0443454A (ja) マルチプロセッサ型電子計算機
JPH0789328B2 (ja) データ処理装置
JPH0519179B2 (ja)
JPS6113261B2 (ja)
JP2671160B2 (ja) 例外処理方式
JP3425355B2 (ja) 多重書き込み記憶装置
JPH0581120A (ja) データ処理装置
JPS62177653A (ja) 共有メモリ制御方式
JPS5965306A (ja) シ−ケンス制御装置
JPH04140860A (ja) マルチプロセッサにおけるバス制御方法
JP3127737B2 (ja) ディジタル信号処理装置
JPH0312749A (ja) マルチプロセッサシステムのハードウェア初期診断制御方式