JPS63826B2 - - Google Patents

Info

Publication number
JPS63826B2
JPS63826B2 JP53051758A JP5175878A JPS63826B2 JP S63826 B2 JPS63826 B2 JP S63826B2 JP 53051758 A JP53051758 A JP 53051758A JP 5175878 A JP5175878 A JP 5175878A JP S63826 B2 JPS63826 B2 JP S63826B2
Authority
JP
Japan
Prior art keywords
queue
queue element
subsystem
storage area
output
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
JP53051758A
Other languages
English (en)
Other versions
JPS54143035A (en
Inventor
Yutaka Katsumata
Yukio Izeki
Mitsuru Sanagi
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP5175878A priority Critical patent/JPS54143035A/ja
Publication of JPS54143035A publication Critical patent/JPS54143035A/ja
Publication of JPS63826B2 publication Critical patent/JPS63826B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Description

【発明の詳細な説明】 本発明はサブシステム間の通信にキユーを用い
るサブシステム間通信方式において、キユーのオ
ーバフロー状態の検出やキユーの利用可能状態の
検出を効率的に行うようにしたキユー・オーバフ
ロー処理方式に関するものである。
サブシステム間の通信を論理的に高いレベルの
コマンド/応答で行うこと、サブシステム間の通
信に伴う割込みを最小限に低減すること等の目的
で、キユーを用いてサブシステム間の通信を行う
ことは、例えば特開昭53−23534号公報によつて
既に提案されている。この既に提案されたサブシ
ステム間通信方式においては、例えばホスト・サ
ブシステムとI/Oサブシステム間で通信を行う
場合、ホスト・サブシステムはコマンド内容とコ
マンドのプライオリテイを指示できるキユー・エ
レメントをキユーにエンキユーし、I/Oサブシ
ステムは、自己の現在実行中のタスクのプライオ
リテイが通知プライオリテイより低い場合に限つ
て、キユー内におけるキユー・エレメントを一括
デキユーする。上記のようなサブシステム間通信
方式の問題点は、キユーのオーバフロー状態の検
出やキユー再利用可能状態の検出を如何にして効
率的に行うかということである。
本発明は、上記の考察に基づくものであつて、
キユーを利用するサブシステム間通信方式におい
て、キユー・オーバフロー状態やキユー利用可能
状態を簡単な論理で検出し、効率的なキユー・オ
ーバフロー処理を行い得るようになつたキユー・
オーバフロー処理方式を提供することを目的とし
ている。そしてそのため、本発明のオーバフロー
処理方式は、 通知元サブシステムが可変長のキユー・エレメ
ントを出力キユー・エレメント格納領域にエンキ
ユーし、通知先サブシステムが上記出力キユー・
エレメント格納領域から可変長のキユー・エレメ
ントをデキユーすることによつて、サブシステム
間の通信を行うサブシステム間通信方式におい
て、 上記通知元サブシステムの指示に基づいて可変
長のキユー・エレメントを出力キユー・エレメン
ト格納領域にエンキユーしようとする時、当該キ
ユー・エレメントの大きさと出力キユー・エレメ
ント格納領域の余白域の大きさを比較し、出力キ
ユー・エレメント格納領域の余白域の大きさが当
該キユー・エレメントの大きさ以上である場合に
は、当該キユー・エレメントを出力キユー・エレ
メント格納領域に格納し、当該キユー・エレメン
トの大きさの方が出力キユー・エレメント格納領
域の余白域の大きさより大なる場合には、上記通
知元サブシステム側のプロセツサに対してオーバ
フロー割込みを起し、 オーバフロー割込み発生後、出力キユー・エレ
メント格納領域の余白域の大きさが増大した場合
には、通知元サブシステム側のプロセツサに対し
てキユー利用可能割込みを起こす ことを特徴とするものである。以下、本発明を図
面を参照しつつ説明する。
第1図は本発明が適用されるキユーを用いるサ
ブシテステム間通信方式の概要を示すものであつ
て、AとBはサブシステム、Q1とQ2は出力キユ
ー、SSCBはキユー・エレメント、QSRはキユ
ー・ステータス・レジスタ、はオーバフロー割
込み、はキユー利用可能割込みをそれぞれ示し
ている。出力キユーQ1は出力キユー・エレメン
ト格納領域の中にある。出力キユーQ2も同様で
ある。例えばサブシステムAからサブシステムB
へ処理要求を通知する場合、サブシステムAはエ
ンキユー命令を発行して要求を示すキユー・エレ
メントSSCBを出力キユーQ1にエンキユーし、サ
ブシステムBは適当な機会に出力キユーQ1内の
キユー・エレメントSSCBをデキユーする。サブ
システムBは、サブシステムAからのキユー・エ
レメントSSCBで指示された処理を完了した後、
エンキユー命令を発行して出力キユーQ2に応答
のキユー・エレメントSSCBをエンキユーし、サ
ブシステムAは適当な機会に出力キユーQ2の応
答のキユー・エレメントSSCBをデキユーする。
エンキユー命令を実行した結果、キユー・オー
バフロー例外が発生すると、出力キユーQ1又は
Q2はオーバフロー状態となる。このオーバフロ
ー状態に対して通常の状態をノーマル状態とよ
ぶ。
第2図は出力キユーの状態遷移図であつて、
QOVFIはキユー・オーバフロー割込み、QAIは
キユー利用可能割込みを示している。オーバフロ
ー状態からノーマル状態への復帰動作は次のよう
にして行われる。キユー・オーバフロー状態とな
つた出力キユーは、その後、出力キユー中の余白
域が増加した時にキユー利用可能割込みをエンキ
ユー発行側サブシステムのプロセツサ(図示せ
ず)に要求し、この要求が受付けられたならば、
キユー・オーバフロー状態を解除する。出力キユ
ーがオーバフロー状態にあるときに、他のタスク
によつて再度エンキユー命令が発行された場合に
は、そのエンキユー命令がキユー・オーバフロー
例外を発生しないものであつても、出力キユーは
オーバフロー状態を保持する。キユー・エレメン
トSSCBは可変長であるので、或るタスクによつ
てエンキユー命令が発行されたときにオーバフロ
ー例外を発生しても、他のタスクによつてエンキ
ユー命令が発行された時には、当該エンキユー命
令で作成されたキユー・エレメントを出力キユー
が収容できる場合もあり得る。出力キユーの状態
は、キユー・ステータス・レジスタQSRに収容
される。
キユー利用可能割込みは、エンキユー側サブシ
ステム内における割込みマスクのかかつていない
プロセツサの内でプライオリテイの最も小さいタ
スクを実行しているプロセツサに対して行われ
る。上記のプロセツサが複数個存在する場合に
は、その内のいずれか1つのプロセツサに対して
割込みを要求する。
第3図はキユー・オーバフロー割込み及びキユ
ー利用可能割込みの処理方法を説明するものであ
る。第3図において、T1,T2,T3……はタスク
を示している。なお、この例は、サブシステムA
と交信するサブシステムBが複数個存在する場合
の例である。第3図ハに示すように、出力キユー
Q1,Q2,……,Qnのそれぞれに対応してソフト
ウエア・キユーである利用可能割込み待ちキユー
が設置される。利用可能割込み待ちキユーはOS
に割り当てられたメモリ領域の中に存在する。
キユー・オーバフロー例外が発生すると、エン
キユー命令を発行したプロセツサは、利用可能割
込み待ちキユーを操作するためのプログラム・ル
ーチンにロツクをかけ、他のプロセツサの介入を
排除する。そして、RDQS命令(Read Queue
Status命令)で出力キユーの状態を調べ、キユ
ー・オーバフロー状態にあることを確認し、タス
クの待ち処理を行う。タスクは、キユー・オーバ
フロー例外を発生した出力キユーに対応した利用
可能割込待ちキユーにつながれることは当然であ
る。タスクの待ち処理が終了すると、ロツクを解
き、デイスパツチヤに制御を渡す。デイスパツチ
ヤは、実行待ちキユーに繋がれているタスクの中
から優先順位に従つて1個のタスクを選択し、そ
のタスクに計算機使用権を渡す。
キユー利用可能割込みが発生したならば、第3
図ロに示すように、割込みがかけられたプロセツ
サは、利用可能割込み待ちキユーを操作するため
のプログラム・ルーチンにロツクをかけ、その出
力キユーに対応する利用可能割込み待ちキユーの
中の全てのタスクを解放してリスタートさせる。
リスタート処理とは、利用可能割込待ちキユーに
繋がれているタスクを実行待ちキユーにつなぐこ
とを意味している。実行待ちキユーはOSに割り
当てられたメモリ領域の中に存在する。タスクの
リスタート処理が終了すると、ロツクを解き、デ
イスパツチヤに制御を渡す。第3図イにおいて、
キユー・オーバフロー例外を出力キユーの状態に
よりチエツクしているが、これは微妙なタイミン
グ差によつて永久にリスタートされないタスクが
発生することを防止するために行われるものであ
る。例えば、プロセツサP1で実行されるタスク
T5のキユー・エレメントを出力キユーQ1に繋ご
うとした時にキユー・オーバフロー割込みが発生
したとすると、キユー・オーバフロー割込みがプ
ロセツサP1にかけられる。プロセツサP1はロツ
ク命令を発行し、他のプロセツサが利用可能割込
待ちキユーを操作しないようにする。キユー・オ
ーバフロー例外が発生してからロツクをかける迄
の間において、出力キユーQ1のキユー・エレメ
ントがデキユーされて出力キユーQ1余白域が増
大すると、例えばプロセツサP2に対してキユー
利用可能割込みがかけられる。キユー利用可能割
込みがかけられると、利用可能割込待ちキユーに
つながれているタスク(例えばT1,T2,T3)は
実行待ちキユーに繋がれる。デイスパツチヤは、
実行待ちキユーに繋がれているタスクの中から優
先順位に従つて1個のタスクを選択し、そのタス
クに計算機使用権を渡す。出力キユーQ1の状態
を調べることなく、タスクT5を利用可能割込待
ちキユーに繋ぐと、タスタT5が永久に実行され
ないと言う事態も発生する。
第4図は本発明のハードウエア構成の1実施例
を示すものであつて、10はメモリ、11と12
は出力キユー・エレメント格納領域、20はプロ
セツサ、21は優先順位指示レジスタ、22は割
込みマスク、30はサブシステム間通信制御装
置、31はプライオリテイ制御回路、32と33
はキユー・アクセス制御回路、34と36は余白
域指示レジスタ、35と37はキユー・ステータ
ス・レジスタ、40はメモリ、50はプロセツ
サ、60はサブシステム間通信制御装置、61は
プライオリテイ制御回路、70はインタフエイス
をそれぞれ示している。なお、出力キユー・エレ
メント格納領域11,12はそれぞれ第1図のキ
ユーQ1,Q2を格納するものであり、キユーステ
ータス・レジスタ35はキユー・ステータス・レ
ジスタQSRに対応するものである。サブシステ
ム間通信制御装置30は、マイクロプロセツサ制
御方式のチヤネル装置、プライオリテイ制御回路
31、キユー・アクセス制御装置32と33を具
備すると共に、優先順位指示レジスタ21の内容
を読取る機能、割込みをかける機能等も有してい
る。サブシステム間通信制御装置60はサブシス
テム間通信制御装置30と同じ機能を有してい
る。
以下、第4図のシステムの動作について説明す
るが、出力キユー・エレメント格納領域11に関
して行われる動作と出力キユー・エレメント格納
領域12に関して行われる動作は同じであるの
で、出力キユー・エレメント格納領域11に関す
る動作のみを説明する。
サブシステムAのプロセツサ20がエンキユー
命令を発行すると、プロセツサ20はキユー・エ
レメントSSCBをエンキユー命令のパラメータに
従つて作成し、これをサブシステム間通信制御装
置30に転送する。サブシステム間通信制御装置
30は、このキユー・エレメントSSCBを出力キ
ユー・エレメント格納領域11にエンキユーする
ように、キユー・アクセス制御回路32に依頼す
る。キユー・アクセス制御回路32は、余白域指
示レジスタ34の内容とそのキユー・エレメント
の長さとを比較し、前者が後者より大きいか又は
等しい場合には、キユー・エレメントSSCBを出
力キユー・エレメント格納領域11にエンキユー
し、余白域指示レジスタ34の内容をキユー・エ
レメント長だけ減ずる。そして、サブシステム間
通信制御装置30は、エンキユー命令を終了させ
る。前者が後者より小さい場合には、1ビツトか
ら成るキユー・ステータス・レジスタ35を論理
「1」とし、オーバフローを表示する。そして、
サブシステム間通信制御装置30は、このエンキ
ユー命令を発行したプロセツサ20に対して、演
算例外の一種としてオーバフロー割込みを発生さ
せるように要求し、動作を終了する。
プロセツサ50がデキユー命令を発行すると、
プロセツサ50はデキユー命令のパラメータをサ
ブシステム間通信制御装置60に渡す。サブシス
テム間通信制御装置60は、このパラメータをイ
ンタフエイス70を介してサブシステム間通信制
御装置30に送る。サブシステム間通信制御装置
30は、このパラメータをキユー・アクセス制御
回路32に渡してこれを駆動する。キユー・アク
セス制御回路32は、出力キユー・エレメント格
納領域11からパラメータで指定された量のキユ
ー・エレメントSSCBをデキユーし、デキユーし
た内容をインタフエイス70を経由してサブシス
テム間通信制御装置60に送る。サブシステム間
通信制御装置60は、送られて来たキユー・エレ
メントSSCBをパラメータで指定されるメモリ4
0内の領域に転送し、命令を終了させる。キユ
ー・アクセス制御回路32は、指定された量のキ
ユー・エレメントSSCBをデキユーする途中でキ
ユー11が空になつたならば、パラメータで指定
された量に達しなくても、デキユー動作を終了す
る。また、キユー・アクセス制御回路32は、キ
ユー・ステータス・レジスタ35の内容が論理
「0」であるか否かを調べ、これが論理「0」で
あつたならば、動作を終了する。もし、論理
「1」であつたならば、プライオリテイ制御回路
31を駆動する。キユー11からキユー・エレメ
ントSSCBがデキユーされる度に、余白域指示レ
ジスタ34の内容は増大する。プライオリテイ制
御回路31は、優先順位指示レジスタ21と割込
みマスク22を調べ、割込みマスクがかかつてお
らず且つ最も低いプライオリテイを表示している
プロセツサ20を探し、このプロセツサ20に対
して利用可能割込みを要求する。優先順位指示レ
ジスタ21は、プロセツサ20が実行しているタ
スクのプライオリテイを表示するものである。キ
ユー利用可能割込み要求を発した後、サブシステ
ム間通信制御装置30はキユー・テスータス・レ
ジスタ35の内容を論理「0」にセツトし、動作
を終了する。
以上の説明から明らかなように、本発明によれ
ば、キユー・オーバフロー状態およびキユー再利
用可能状態を簡単な論理で以つて検出しているの
で、効率的で且つ実用性に富みキユー・オーバフ
ロー処理方式を提供することが出来る。とくに、
本発明はキユー・エレメントが可変長である場合
に有効である。
【図面の簡単な説明】
第1図は本発明が適用されるキユーを用いるサ
ブシステム間通信方式の概要を示す図、第2図は
出力キユーの状態遷移図、第3図はキユー・オー
バフロー割込み及びキユー利用可能割込みの処理
方法を説明する図、第4図は本発明のハードウエ
ア構成の1実施例を示す図である。 AとB……サブシステム、Q1とQ2……出力キ
ユー、SSCB……キユー・エレメント、QSR……
キユー・ステータス・レジスタ、10……メモ
リ、11と12……出力キユー・エレメント格納
領域、20……プロセツサ、21……優先順位指
示レジスタ、22……割込みマスク、30……サ
ブシステム間通信制御装置、31……プライオリ
テイ制御回路、32と33……キユー・アクセス
制御回路、34と36……余白域指示レジスタ、
35と37……キユー・ステータス、レジスタ、
40……メモリ、50……プロセツサ、60……
サブシステム間通信制御装置、61……プライオ
リテイ制御回路、70……インタフエイス。

Claims (1)

  1. 【特許請求の範囲】 1 通知元サブシステムが可変長のキユー・エレ
    メントを出力キユー・エレメント格納領域にエン
    キユーし、通知先サブシステムが上記出力キユ
    ー・エレメント格納領域から可変長のキユー・エ
    レメントをデキユーすることによつて、サブシス
    テム間の通信を行うサブシステム間通信方式にお
    いて、 上記通知元サブシステムの指示に基づいて可変
    長のキユー・エレメントを出力キユー・エレメン
    ト格納領域にエンキユーしようとする時、当該キ
    ユー・エレメントの大きさと出力キユー・エレメ
    ント格納領域の余白域の大きさを比較し、出力キ
    ユー・エレメント格納領域の余白域の大きさが当
    該キユー・エレメントの大きさ以上である場合に
    は、当該キユー・エレメントを出力キユー・エレ
    メント格納領域に格納し、当該キユー・エレメン
    トの大きさの方が出力キユー・エレメント格納領
    域の余白域の大きさより大なる場合には、上記通
    知元サブシステム側のプロセツサに対してオーバ
    フロー割込みを起し、 オーバフロー割込み発生後、出力キユー・エレ
    メント格納領域の余白域の大きさが増大した場合
    には、通知元サブシステム側のプロセツサに対し
    てキユー利用可能割込みを起こす ことを特徴とするキユー・オーバフロー処理方
    式。
JP5175878A 1978-04-28 1978-04-28 Queue overflow processing system Granted JPS54143035A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5175878A JPS54143035A (en) 1978-04-28 1978-04-28 Queue overflow processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5175878A JPS54143035A (en) 1978-04-28 1978-04-28 Queue overflow processing system

Publications (2)

Publication Number Publication Date
JPS54143035A JPS54143035A (en) 1979-11-07
JPS63826B2 true JPS63826B2 (ja) 1988-01-08

Family

ID=12895834

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5175878A Granted JPS54143035A (en) 1978-04-28 1978-04-28 Queue overflow processing system

Country Status (1)

Country Link
JP (1) JPS54143035A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5960631A (ja) * 1982-09-30 1984-04-06 Fujitsu Ltd デ−タ転送制御方式
JPH023818A (ja) * 1988-06-16 1990-01-09 Nec Corp 磁気テープファイルの情報検索装置

Also Published As

Publication number Publication date
JPS54143035A (en) 1979-11-07

Similar Documents

Publication Publication Date Title
US5469571A (en) Operating system architecture using multiple priority light weight kernel task based interrupt handling
KR950002713B1 (ko) 인터페이스 시스템 및 데이타 전송 제어방법
US5274823A (en) Interrupt handling serialization for process level programming
US5940866A (en) Information handling system having a local address queue for local storage of command blocks transferred from a host processing side
US5701495A (en) Scalable system interrupt structure for a multi-processing system
US5968143A (en) Information handling system for transfer of command blocks to a local processing side without local processor intervention
US5875343A (en) Employing request queues and completion queues between main processors and I/O processors wherein a main processor is interrupted when a certain number of completion messages are present in its completion queue
US5010482A (en) Multi-event mechanism for queuing happened events for a large data processing system
EP1503292B1 (en) DMA controller with bus occupation time limitation and sets of DMA parameters for a plurality of logical processors
US6553487B1 (en) Device and method for performing high-speed low overhead context switch
US5892968A (en) Multimedia data transferring method
JPS5841538B2 (ja) マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
US5911065A (en) System and method for providing cooperative interrupts in a preemptive task scheduling environment
KR970016979A (ko) 다중 처리 시스템에서 타스크의 큐잉 시스템 및 방법
US5507032A (en) Multiprocessor I/O request control system forming device drive queue and processor interrupt queue from rows and cells of I/O request table and interrupt request table
JPS63826B2 (ja)
JPS6115260A (ja) デ−タ処理装置
JPS59188749A (ja) デ−タ転送制御方式
JPH03257634A (ja) プログラム並列実行方法とその装置
JP3265582B2 (ja) マイクロコンピュータ
JPS6223895B2 (ja)
JPS6149270A (ja) マルチプロセツサシステムの入/出力制御方式
JPH07111711B2 (ja) 処理終了割込制御システム
JPH04279957A (ja) プロセッサ間通信方法
JPH02302849A (ja) 非同期メモリ設定制御方式