JPS5841538B2 - マルチプロセツサシステム ノ ユウセンセイギヨホウシキ - Google Patents

マルチプロセツサシステム ノ ユウセンセイギヨホウシキ

Info

Publication number
JPS5841538B2
JPS5841538B2 JP50144630A JP14463075A JPS5841538B2 JP S5841538 B2 JPS5841538 B2 JP S5841538B2 JP 50144630 A JP50144630 A JP 50144630A JP 14463075 A JP14463075 A JP 14463075A JP S5841538 B2 JPS5841538 B2 JP S5841538B2
Authority
JP
Japan
Prior art keywords
processor unit
job
interrupt request
priority
transferred
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.)
Expired
Application number
JP50144630A
Other languages
English (en)
Other versions
JPS5267930A (en
Inventor
精治 江口
清吾 鈴木
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
Tokyo Shibaura Electric Co Ltd
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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP50144630A priority Critical patent/JPS5841538B2/ja
Publication of JPS5267930A publication Critical patent/JPS5267930A/ja
Priority to US06/076,844 priority patent/US4318174A/en
Priority to US06/197,566 priority patent/US4394730A/en
Publication of JPS5841538B2 publication Critical patent/JPS5841538B2/ja
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】 この発明はシステム稼動率を高めうるマルチプロセッサ
システムの優先制御方式に関する。
制御部、演算部、記憶部から□なるプロセッサユニット
は、現在集積回路技術の発達によって1個乃至数個の半
導体チップ上で実現され、いわゆるマイクロコンピュー
タと称されている。
そしてこのマイクロコンビ五−夕は大型計算機システム
と同等に働かせるため多数の入出力装置を接続し並列に
複数のジョブを実行させることが可能であって、そのた
めに複数個のプロセッサユニットを有機的に結合する方
法が種々に開発されている。
マルチプロセッサシステム即ち複数個のプロセッサユニ
ットからなる計算機システムでは、一般に各プロセッサ
ユニット毎に独立したジョブを実行するが、このときの
各ジョブ相互の管理運営方法が最も大きな問題となる。
つまり、従来から計算機システムの効率を低下すること
なくスムーズにジョブを実行するためには、次の2通の
方法が思考されている。
第1の方法は、同程度の規模のプロセッサユニットが複
数あって、このプロセッサ群より一段高い位置に大型あ
るいは中型のコンピュータを設け、ハイアラーキシステ
ムを構成する方法である。
第1図において、CPUoは大型のコンピュータを示し
、CPU1〜CPU3はプロセッサユニットを示してい
る。
また第2の方法ではプロセッサユニットCPUが第2図
に示す様に相互ネットワーク結合をなし、個々のプロセ
ッサユニツ1−CPUがミニコンピユータあるいはマイ
クロコンピュータであっても、CPU相互のジョブ管理
をプログラムなどソフトウェアにまかせることによって
中央に大型コンピュータを設ける必要がなくなる。
ところで、第1の方法はソフトウェアの面で簡素化され
ているが、大型のコンピュータCPU。
を必要としているからハードウェア面でのコストの上昇
は避けられない。
また、大型コンピュータCPUoが他のプロセッサの相
互管理専用とされることが多く、CPUoの使用効率は
著しく低くなり、他のジョブをも並列にこのCPUoで
処理するようにした場合には、相互管理が実時間処理で
行なえずこの計算機システムの処理能力の低下につなが
る。
他方、第2の方法は処理能力のほぼ等シいプロセッサユ
ニットのみで構成されるから、ハードウェアの面でコス
ト上昇を押えることができるが、第2図中破線で示す如
くに全プロセッサユニットCPU1〜CP U4がソフ
トウェアで管理されなくてはならず、高度なプログラミ
ング技術を要し、ソフトウェア面でのコストが大きくな
るという欠点を有していた。
この発明は上記実情に鑑みなされたもので、複数のプロ
セッサユニットそのものに優先順位を設定し、優先順位
の高いプロセッサユニットから低いものへ割込みをかけ
たときには無条件にそこで実行しているジョブを待避あ
るいは更に優先順位の低いプロセッサに肩代りさせるよ
うにして、中央に管理処理用の大型コンピュータを設置
せずかつソフトウェアの負担を軽減しうるマルチプロセ
ッサシステムの優先制御方式を提供することを目的とす
る。
以下この発明方式の一実施例を図面を参照して説明する
第3図はマルチプロセッサシステムの一部分すなわち割
込要求線1によって接続された2台のプロセツザユニツ
)21.2□と記憶装置3を示している。
ここで、一方のプロセッサユニット21は他方のプロセ
ッサユニット2□より高い優先順位に設定され、図示し
ない入出力チャネルやMODEMインタフェースなど外
部からこのプロセッサユニット2、に割込要求が発生し
たときに上記割込要求線1を介してプロセッサユニット
2□に対して割込要求を発生ずる事ができる。
しかして、上記各プロセッサユニツ1〜21,2□が並
列に動作中のとき、割込要求線1によりプロセッサユニ
ット2□に対して割込処理が要求されると、プロセッサ
ユニット22はこの要求を可能な範囲で受付けるため現
在実行中のジョブをすべて中止する。
この場合、プロセッサユニット22では割込処理が完了
した時点で元のジョブの実行を継続するために、必要な
リンケージ情報がスタックに一時的に蓄えられる。
次に、プロセッサユニット2□にはプロセッサユニット
21からジョブの移管に必要な情報がデータバスライン
を介して送られてくる。
ジョブの移管に必要な情報とは、ジェネラルレジスタ、
プログラムカウンタ等で記憶しているデータ、命令、プ
ログラムステートPC。
PSなどであり、プロセッサユニット21では割込をか
ける直前にプロセッサユニット2□に移管する情報はあ
らかじめスタックおよび特定のメモリ領域に転送されて
いる。
たとえばプロセッサユニット21のジェネラルレジスタ
GRの情報は、すべて記憶装置3のO〜7番地(ジェネ
ラルレジスタが16ワードのときはO〜15番地)に一
時セーブされる。
記憶装置3の0〜7番地(あるいはO〜15番地)は、
プロセッサユニットのジエネラルレ六夕と同じアドレス
が付されているために、通常のプログラムでは使用しな
いからである。
割込処理用のルーチンの最初に、上記記憶装置3に記憶
された移管情報はプロセッサユニット2□のジェネラル
レジスタに取込まれる。
このルーチンの実行は、一種のブートストラップ命令と
してプログラムステートpc 、psのロードをともな
っている。
したがって、以上の操作が割込要求によって処理される
と、プロセッサユニット21 はプロセッサユニット2
□にすべての情報すなわちデータとともにプログラムカ
ウンタPC1プログラムステータスワードPSWなどを
移管したから外部からの割込要求にしたがってジョブX
の実行が呵能となる。
第4図は上記各プロセッサユニット21,22における
実行中のジョブI、IIおよびプロセッサユニット21
に対し割込むジョブXの処理プロセスを示すフローチャ
ー1・である。
また、プロセッサユニツ1へ21でのジョブXが終了し
た後ジョブ■をプロセッサユニット22から戻す場合、
前記と同様に割込要求線1から割込要求をプロセッサユ
ニット2□に送り、プロセッサユニット2□はその時点
でのPC,PSWをスタックに、ジェネラルレジスタの
内容を記憶装置3の該当番地に吐出し、さらに割込発生
以前にセーブしたジョブ■についてのPC,PSなどを
ロードすればよい。
なお、プロセッサユニット21゜2□がその内部にスタ
ックポインタを保有している場合にはジェネラルレジス
タとは別個に記憶装置3を介してその内容が移管されな
くてはならないが、ジェネラルレジスタの一部をスタッ
クポインタとして使用している場合はこの種の考慮は必
要ない。
以上説明した実施例では、プロセッサユニット21.2
2はLSI構成のマイクロブ[〕セセラの場合で、しか
も2個のプロセッサユニットを1本の割込要求線により
接続したものをとりあげたが、この発明はたとえばミニ
コンビュークラ複数台使用する場合でち同様に実施でき
るし、あるいはまた割込検出後の情報移管手順などは他
にも種線の方法が容易に推考される。
このようにこの発明によれば、複数のプロセッサユニツ
1へそのものに優先順位を設定しておくことによってマ
ルチプロセッサシステムを高効率で稼動させることがで
き、ソフトウェアの負担の軽減をはかれるマルチプロセ
ッサシステムの優先制御方式を提供できる。
【図面の簡単な説明】
第1図、第2図は従来のマルチプロセッサシステムの構
成例を示す説明図、第3図はこの発明方式の一実施例を
示すブロック図、第4図は同実施例のジョブ実行サイク
ルを示す流れ図である。 1・・・・・・割込要求線、21,2□・・・・・・プ
ロセッサユニット、3・・・・・・記憶装置。

Claims (1)

    【特許請求の範囲】
  1. 1 共通の記憶装置により動作し、かつ予め優先順位が
    定められた複数のプロセッサユニットを割込要求線で相
    互に結合し、優先順位の高いプロセッサユニットに対す
    る外部からの割込要求に対して該プロセッサユニツ1〜
    で現に実行中のジョブを優先順位の低いプロセッサユニ
    ットに対して割込要求を行なって移管するものにおいて
    、優先順位の高いプロセッサユニットに対する外部から
    の割込要求に対して該プロセッサユニットはジョブを移
    管する優先順位の低いプロセッサユニットへ与える移管
    情報を予めスタックおよび特定のメモリ領域へ転送した
    後、外部からの割込要求にしたがって指定されたジョブ
    を実行するとともに優先順位の低いプロセッサユニット
    に対して割込要求線を介して割込要求を行ない、この割
    込要求によって優先順位の低いプロセッサユニットは実
    行中のジョブをすべて中止するとともに割込処理が完了
    した時点で元のジョブの実行を継続するために必要なリ
    ンケージ情報をスタックに一時的に蓄えた後、データバ
    スラインを介して送られる上記移管情報を読み込んで優
    先順位の高いプロセッサユニットから移管されたジョブ
    を実行し、優先順位の高いプロセッサユニットは外部か
    らの割込要求によって指定されたジョブの実行が終了す
    ると優先順位の低いプロセッサユニットに対して割込要
    求線を介して割込要求を行ない、この優先順位の低いプ
    ロセッサユニットは現に実行中のジョブを優先順位の高
    いプロセッサユニットへ移管するために必要な移管情報
    をスタックおよび特定のメモリ領域へ転送した後予めス
    タックに一時的に蓄えた元のジョブの実行を継続するた
    めに必要なリンケージ情報を読み込んで該ジョブを実行
    し、優先順位の高いプロセッサユニットは上記移管情報
    を読み込んで移管されたジョブを実行することを特徴と
    するマルチプロセッサシステムの優先制御方式。
JP50144630A 1975-12-04 1975-12-04 マルチプロセツサシステム ノ ユウセンセイギヨホウシキ Expired JPS5841538B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP50144630A JPS5841538B2 (ja) 1975-12-04 1975-12-04 マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
US06/076,844 US4318174A (en) 1975-12-04 1979-09-19 Multi-processor system employing job-swapping between different priority processors
US06/197,566 US4394730A (en) 1975-12-04 1980-10-16 Multi-processor system employing job-swapping between different priority processors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP50144630A JPS5841538B2 (ja) 1975-12-04 1975-12-04 マルチプロセツサシステム ノ ユウセンセイギヨホウシキ

Publications (2)

Publication Number Publication Date
JPS5267930A JPS5267930A (en) 1977-06-06
JPS5841538B2 true JPS5841538B2 (ja) 1983-09-13

Family

ID=15366502

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50144630A Expired JPS5841538B2 (ja) 1975-12-04 1975-12-04 マルチプロセツサシステム ノ ユウセンセイギヨホウシキ

Country Status (2)

Country Link
US (1) US4394730A (ja)
JP (1) JPS5841538B2 (ja)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5243698A (en) * 1982-11-26 1993-09-07 Inmos Limited Microcomputer
US4704678A (en) * 1982-11-26 1987-11-03 Inmos Limited Function set for a microcomputer
US6414368B1 (en) 1982-11-26 2002-07-02 Stmicroelectronics Limited Microcomputer with high density RAM on single chip
US4543626A (en) * 1982-12-06 1985-09-24 Digital Equipment Corporation Apparatus and method for controlling digital data processing system employing multiple processors
US4633387A (en) * 1983-02-25 1986-12-30 International Business Machines Corporation Load balancing in a multiunit system
US4901230A (en) * 1983-04-25 1990-02-13 Cray Research, Inc. Computer vector multiprocessing control with multiple access memory and priority conflict resolution method
US4661900A (en) * 1983-04-25 1987-04-28 Cray Research, Inc. Flexible chaining in vector processor with selective use of vector registers as operand and result registers
US4636942A (en) * 1983-04-25 1987-01-13 Cray Research, Inc. Computer vector multiprocessing control
JPS6143345A (ja) * 1984-08-07 1986-03-01 Nec Corp メモリ装置
US4713751A (en) * 1984-10-24 1987-12-15 International Business Machines Corporation Masking commands for a second processor when a first processor requires a flushing operation in a multiprocessor system
US4754398A (en) * 1985-06-28 1988-06-28 Cray Research, Inc. System for multiprocessor communication using local and common semaphore and information registers
US4745545A (en) * 1985-06-28 1988-05-17 Cray Research, Inc. Memory reference control in a multiprocessor
US4922408A (en) * 1985-09-27 1990-05-01 Schlumberger Technology Corporation Apparatus for multi-processor communications
US4755937A (en) * 1986-02-14 1988-07-05 Prime Computer, Inc. Method and apparatus for high bandwidth shared memory
JPS62221732A (ja) * 1986-03-24 1987-09-29 Nec Corp 情報処理装置
US4980824A (en) * 1986-10-29 1990-12-25 United Technologies Corporation Event driven executive
US5369778A (en) * 1987-08-21 1994-11-29 Wang Laboratories, Inc. Data processor that customizes program behavior by using a resource retrieval capability
US5050070A (en) * 1988-02-29 1991-09-17 Convex Computer Corporation Multi-processor computer system having self-allocating processors
US5159686A (en) * 1988-02-29 1992-10-27 Convex Computer Corporation Multi-processor computer system having process-independent communication register addressing
US5202991A (en) * 1988-04-14 1993-04-13 Digital Equipment Corporation Reducing the effect processor blocking
US5025369A (en) * 1988-08-25 1991-06-18 David Schwartz Enterprises, Inc. Computer system
US5142638A (en) * 1989-02-07 1992-08-25 Cray Research, Inc. Apparatus for sharing memory in a multiprocessor system
US5109512A (en) * 1990-05-31 1992-04-28 International Business Machines Corporation Process for dispatching tasks among multiple information processors
US5247637A (en) * 1990-06-01 1993-09-21 Cray Research, Inc. Method and apparatus for sharing memory in a multiprocessor system
US5206952A (en) * 1990-09-12 1993-04-27 Cray Research, Inc. Fault tolerant networking architecture
US5613128A (en) * 1990-12-21 1997-03-18 Intel Corporation Programmable multi-processor interrupt controller system with a processor integrated local interrupt controller
JP2855298B2 (ja) * 1990-12-21 1999-02-10 インテル・コーポレーション 割込み要求の仲裁方法およびマルチプロセッサシステム
EP0533361A1 (en) * 1991-09-17 1993-03-24 NCR International, Inc. Interrupt handling in a computer system
US5333319A (en) * 1992-03-02 1994-07-26 International Business Machines Corporation Virtual storage data processor with enhanced dispatching priority allocation of CPU resources
DE4222043C1 (ja) * 1992-07-04 1993-07-22 Kloeckner Moeller Gmbh
SG67906A1 (en) * 1993-12-16 1999-10-19 Intel Corp Multiple programmable interrupt controllers in a multi-processor system
US5544313A (en) * 1994-05-11 1996-08-06 International Business Machines Corporation Baton passing optimization scheme for load balancing/configuration planning in a video-on-demand computer system
US6786420B1 (en) 1997-07-15 2004-09-07 Silverbrook Research Pty. Ltd. Data distribution mechanism in the form of ink dots on cards
US6618117B2 (en) 1997-07-12 2003-09-09 Silverbrook Research Pty Ltd Image sensing apparatus including a microcontroller
US6690419B1 (en) 1997-07-15 2004-02-10 Silverbrook Research Pty Ltd Utilising eye detection methods for image processing in a digital image camera
US6624848B1 (en) 1997-07-15 2003-09-23 Silverbrook Research Pty Ltd Cascading image modification using multiple digital cameras incorporating image processing
US6948794B2 (en) 1997-07-15 2005-09-27 Silverbrook Reserach Pty Ltd Printhead re-capping assembly for a print and demand digital camera system
US6879341B1 (en) 1997-07-15 2005-04-12 Silverbrook Research Pty Ltd Digital camera system containing a VLIW vector processor
US7110024B1 (en) 1997-07-15 2006-09-19 Silverbrook Research Pty Ltd Digital camera system having motion deblurring means
AUPQ056099A0 (en) 1999-05-25 1999-06-17 Silverbrook Research Pty Ltd A method and apparatus (pprint01)
US20050034130A1 (en) * 2003-08-05 2005-02-10 International Business Machines Corporation Balancing workload of a grid computing environment
US7565653B2 (en) * 2004-02-20 2009-07-21 Sony Computer Entertainment Inc. Methods and apparatus for processor task migration in a multi-processor system
US7614053B2 (en) * 2004-02-20 2009-11-03 Sony Computer Entertainment Inc. Methods and apparatus for task management in a multi-processor system
US8028292B2 (en) * 2004-02-20 2011-09-27 Sony Computer Entertainment Inc. Processor task migration over a network in a multi-processor system
RU2296362C1 (ru) * 2005-09-20 2007-03-27 Военная академия связи Способ обслуживания разноприоритетных запросов пользователей вычислительной системы
DE102006051187A1 (de) * 2006-10-30 2008-05-08 Siemens Ag Verteilte Taskflow-Architektur
US10678744B2 (en) * 2010-05-03 2020-06-09 Wind River Systems, Inc. Method and system for lockless interprocessor communication
US10942748B2 (en) * 2015-07-16 2021-03-09 Nxp B.V. Method and system for processing interrupts with shadow units in a microcontroller

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3312951A (en) * 1964-05-29 1967-04-04 North American Aviation Inc Multiple computer system with program interrupt
US3566357A (en) * 1966-07-05 1971-02-23 Rca Corp Multi-processor multi-programed computer system
US3421150A (en) * 1966-08-26 1969-01-07 Sperry Rand Corp Multiprocessor interrupt directory
US3551892A (en) * 1969-01-15 1970-12-29 Ibm Interaction in a multi-processing system utilizing central timers
US3648252A (en) * 1969-11-03 1972-03-07 Honeywell Inc Multiprogrammable, multiprocessor computer system
US3774163A (en) * 1972-04-05 1973-11-20 Co Int Pour L Inf Hierarchized priority task chaining apparatus in information processing systems
US3940743A (en) * 1973-11-05 1976-02-24 Digital Equipment Corporation Interconnecting unit for independently operable data processing systems
US4001783A (en) * 1975-03-26 1977-01-04 Honeywell Information Systems, Inc. Priority interrupt mechanism
US4020471A (en) * 1975-06-30 1977-04-26 Honeywell Information Systems, Inc. Interrupt scan and processing system for a data processing system
US4318174A (en) * 1975-12-04 1982-03-02 Tokyo Shibaura Electric Co., Ltd. Multi-processor system employing job-swapping between different priority processors

Also Published As

Publication number Publication date
US4394730A (en) 1983-07-19
JPS5267930A (en) 1977-06-06

Similar Documents

Publication Publication Date Title
JPS5841538B2 (ja) マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
JPH1097509A (ja) 対称型マルチプロセッサ・システムにおいて割り込みを分散する方法および装置
JP2539352B2 (ja) 階層型多重計算機システム
JP2822782B2 (ja) シングルチップマイクロコンピュータ
JPH0530112A (ja) デイジタル信号処理システムの制御方法
US4409653A (en) Method of performing a clear and wait operation with a single instruction
JPH023876A (ja) シングルチップマイクロコンピュータ
EP0301707B1 (en) Apparatus and method for providing an extended processing environment on nonmicrocoded data processing system
EP0560393B1 (en) Microprocessor and data processing system with register file
JPS5925258B2 (ja) プロセツサ制御システム
JPS6049352B2 (ja) デ−タ処理装置
JPS62180455A (ja) 多重処理装置
GB2027238A (en) Clear and wait instruction means and method
JPS6223895B2 (ja)
JP2003196251A (ja) マルチcpuシステム
JPS61211759A (ja) マルチcpuシステムにおける2ポ−トメモリ制御回路
JP2591211B2 (ja) 高速割込み処理装置
JPS5942331B2 (ja) プロセツサソウチノセイギヨホウシキ
Jensen The influence of microprocessors on computer architecture: Distributed processing
JPS61136159A (ja) シングルチツプマイクロコンピユ−タ
JPH0218622A (ja) 数値演算プロセッサ
JPS6352240A (ja) デ−タ処理装置
JPH071500B2 (ja) シングルチップマイクロコンピュータ
JPS61160147A (ja) 仮想計算機制御方式
JPS59177631A (ja) Dma制御方式