JPH05210522A - デイスパツチ・モードの変更方法 - Google Patents

デイスパツチ・モードの変更方法

Info

Publication number
JPH05210522A
JPH05210522A JP4188056A JP18805692A JPH05210522A JP H05210522 A JPH05210522 A JP H05210522A JP 4188056 A JP4188056 A JP 4188056A JP 18805692 A JP18805692 A JP 18805692A JP H05210522 A JPH05210522 A JP H05210522A
Authority
JP
Japan
Prior art keywords
partition
time
processing
patch
day
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.)
Granted
Application number
JP4188056A
Other languages
English (en)
Other versions
JPH0711783B2 (ja
Inventor
Edward I Cohen
エドワード・イラ・コーヘン
Michael R Sheets
マイケル・ロバート・シーツ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH05210522A publication Critical patent/JPH05210522A/ja
Publication of JPH0711783B2 publication Critical patent/JPH0711783B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F9/4825Interrupt from clock, e.g. time of day
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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

Landscapes

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

Abstract

(57)【要約】 【目的】 動的な要求ベースの下で、パテイシヨンに対
して時間に依存する特別な処理を与えるために、コンピ
ユータ・パテイシヨナの機構を与えること。 【構成】 コンピユータ・パテイシヨナ102はコンピ
ユータの中に同時に並列的に存在する幾つかのパテイシ
ヨン104a乃至104dに処理を与える。効率的な動
作にするために、パテイシヨン内で実行される或る種の
アプリケーシヨン・プログラムは、時間的に順序立てら
れた態様で、アプリケーシヨン・プログラムに対して必
要な特別の処理を間欠的に送る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、論理的パテイシヨンが
設けられたデータ処理システムの分野に関する。より具
体的に言えば、本発明は、コンピユータのパテイシヨナ
が、処理時間に依存する特別な処理動作を、動的な要求
ベースで、論理パテイシヨンに与える機構に関する。
【0002】
【従来の技術】論理パテイシヨンを作ることは、複数個
の論理的な(即ち、仮想的な)プロセツサ、または、論
理的パテイシヨンを構成するようにデータ処理システム
のプロセツサ複合体(即ち、複数個のプロセツサ)のリ
ソースを論理的に組織することである。論理パテイシヨ
ンは、同じプロセツサ複合体において、複数個のパテイ
シヨンを同時に動作させることによつて、ユーザが、マ
シンの物理的なリソースを最大限に使用するのを可能に
する。
【0003】論理パテイシヨンは、ユーザが定義付けし
たハードウエア・リソースであつて、それらが組み合わ
された時、システム・コントロール・プログラム(即
ち、オペレーテイング・システム)を充分に実行するこ
とのできるハードウエア・リソースである。論理パテイ
シヨンは、下記の要素を含むものとして定義することが
できる。それらの要素とは、(1) 1つ、または、そ
れ以上の中央プロセツサと、(2) 中央ストレージ
と、(3) 1つ、または、それ以上のチヤンネル通路
と、(4) 付加的な拡張用ストレージと、(5) 1
つ、または、それ以上の付加的なベクトル装置と、
(6) サブ・チヤンネルと、(7) 論理制御装置と
である。
【0004】論理パテイシヨンは独立して動作するけれ
ども、プロセツサ及びI/O(入力/出力)装置を共有
することができる。各論理パテイシヨン用のストレージ
は隔離されているので、論理パテイシヨンによつて共有
されることはない。同様に、チヤンネル通路は、論理パ
テイシヨンに割り当てられるが、同時に2つの論理パテ
イシヨンによつて共有することはできない。各論理パテ
イシヨンは、パテイシヨナのハードウエア及びマイクロ
・コードによつて、他のすべての論理パテイシヨンとは
隔離されている。論理パテイシヨンの間の通信は、I/
O装置を介した接続でしか行なえない。論理パテイシヨ
ンについての付加的な情報は、1989年のIBMシス
テム・ジヤーナル第28巻1号の104頁乃至123頁
に記載されたボーデン(T.L.Borden)等の「Multiple O
perating Systems on One Processor Complex」と題す
る記事を参照されたい。
【0005】プロセツサを共有する論理パテイシヨン
は、共有パテイシヨンとして知られている。一つのプロ
セツサだけに奉仕するパテイシヨンは、専用(dedicate
d)パテイシヨンとして知られている。専用パテイシヨ
ンのリソースは共有されないので、これらの専用パテイ
シヨンはワークロードの管理を必要としない。以下の説
明は、共有パテイシヨンの間のワークロードの管理に関
連しているので、単に「パテイシヨン」と言う用語が使
用された時、共有パテイシヨンを意味する。
【0006】IBM社の3090E及びES/3090
Sプロセツサのフアミリーで利用可能なプロセツサ・リ
ソースのシステム・マネージヤ(PR/SM)の機能
は、論理パテイシヨン処理(logical partitioning-L
PAR)が可能である。PR/SMは、システム・コン
ソールを通して直接にパテイシヨン処理を許容するか、
または、ソフトウエア制御を通して間接的にパテイシヨ
ン処理を許容するハードウエア及びマイクロ・コードを
含んでいる。PR/SMに関する他の情報は、「IBM WS
/3090 Processor Complex: Processor Resource System
s Manager」と題する刊行物(IBMの刊行物番号GA2
2−7123)に記載されている。
【0007】パテイシヨナ(ハイパーバイザ(Hypervis
or)としても知られている)は、共有されたプロセツサ
に対して、パテイシヨン的なアクセスを実行する装置で
ある。パテイシヨンの間のスイツチ動作を行なう部分は
パテイシヨナデイスパツチヤとして知られている。パテ
イシヨナデイスパツチヤは、幾つかのアプリケーシヨン
の間で1つのプロセツサを時間的に共有するオペレーテ
イング・システムのデイスパツチヤと同じである。本明
細書で使用されている用語、「デイスパツチヤ」は、オ
ペレーテイング・システムのデイスパツチヤではなく、
パテイシヨナデイスパツチヤを意味する。
【0008】パテイシヨナは、物理的プロセツサを最大
限に使用する一方、I/O装置の良好な応答性を与える
ような態様で、各パテイシヨンの論理的プロセツサを、
利用可能な物理的プロセツサに割り当てることによつて
動的なワークロードの管理を遂行する。デイスパツチ処
理は、厳密な時間ベース(タイム駆動(time-driven)
のデイスパツチ処理)か、事象駆動ベース(事象駆動の
デイスパツチ処理)か、または、タイム及び事象の組合
せベース(タイム/事象駆動のデイスパツチ処理)かで
行うことができる。
【0009】タイム駆動のデイスパツチ処理において、
デイスパツチヤは、一定の処理時間の後(例えば、15
ミリ秒)、共有プロセツサの制御を切り換える。この時
間を共有する方法は、現在のパテイシヨンの状態とは無
関係に維持される。例えば、現在のパテイシヨンが「待
ち」状態に入つたとしても、現在のパテイシヨンは切り
換えられて、アクセスの対象となる。
【0010】事象駆動のデイスパツチ処理において、デ
イスパツチヤは、現在のパテイシヨンが、共有プロセツ
サを最早や必要としなくなつた時(パテイシヨンが「待
ち」状態に入つた時)、一方のパテイシヨンから次のパ
テイシヨンへのタイムスライス(time slice)に入れら
れる。タイム/事象駆動デイスパツチ処理において、デ
イスパツチヤは、一定の期間の後、即ち、一定タイムの
経過後、共有プロセツサの制御を切り換えるが、併し、
上述の一定の処理時間の経過前に発生した事象(例え
ば、「待ち」状態)は、次のパテイシヨンへの制御を切
り換えるためにデイスパツチヤをトリガする。IBMの
LPARは、タイム/事象駆動デイスパツチ処理によ
る。
【0011】LPARは、時間駆動ベース及び事象駆動
ベースで処理することに加えて、下記の幾つかの付加的
な通常のデイスパツチ処理(スケジユール処理)技術を
使用している。 (1) 「デイスパツチ・タイムの長さ」: デイスパ
ツチヤは、論理的プロセツサが任意の1つのデイスパツ
チに対して動作する最大処理時間を保持している。 (2) 「事象の検出」: パテイシヨンが「待ち」状
態に入つた時、デイスパツチヤは事象を検出して、動作
する他のパテイシヨンをデイスパツチする。 (3) 「優先度」: 各パテイシヨンは、ユーザによ
り規定さた優先度を持つており、この優先度によつて、
デイスパツチ処理が行なわれる。 (4) 「I/Oの先取り」: I/Oの割込みが、活
動しているパテイシヨンよりも高い優先度を持つている
パテイシヨンの論理的プロセツサのために保留されてい
る時には、デイスパツチヤは低い優先度のパテイシヨン
を先取りする。 (5) 「オペレーテイング・システムが表示した終
了」: オペレーテイング・システムが、自己の処理が
LPAR環境において非効率的であると判断した場合
は、その割り当て時間(デイスパツチ・タイム)を自発
的に放棄することができる。
【0012】上述したように、パテイシヨナは、I/O
の良好な応答性を維持しながら、プロセツサ複合体の物
理的プロセツサの使用を最大限に使用することを追求す
る。例えば、ただ1つのパテイシヨンしか持たないプロ
セツサ複合体は、10ミリ秒の「待ち」状態が後続する
10ミリ秒の動作時間を有するアプリケーシヨンを50
%の実行効率で動作する。これとは対照的に、上述のよ
うな2つのアプリケーシヨンがインターリーブされたと
して、2つのパテイシヨンで構成された同じプロセツサ
複合体は、理論的には、100%の実行効率で動作する
ことができる。
【0013】然しながら、この例において、若し、2つ
のパテイシヨンのシステムが20ミリ秒のデイスパツチ
・タイムによつて実行されたとすれば、その2つのパテ
イシヨンのシステムは、たつた50%の実行効率しか持
つていないことには注意を払う必要がある。(事象駆動
スイツチ動作が、希望通りの100%の効率を生じたと
して。)同様に、1/2ミリ秒のタイムを持つデイスパ
ツチ処理は、「待ち」状態により生じる効率の悪さを避
けることはできるけれども、デイスパツチヤ全体の効率
から見ると、デイスパツチヤそれ自身に著しい効率の低
下が生じる。
【0014】従つて、パテイシヨンは、プロセツサの複
合体から最適な性能を引き出すように追求するけれど
も、プロセツサのロードの状況が刻々と変化していく
と、達成されるべき効率に影響を与える。上述の例から
判るように、デイスパツチ・モードは特定のアプリケー
シヨンに対して注意深く最適化されなければならない。
デイスパツチ・モードを注意深く適用したシステムであ
つたとしても、デイスパツチヤは或る種のアプリケーシ
ヨンに対して大きな効率の低下を与える場合がある。
【0015】そのような1つのアプリケーシヨンの一例
を以下に説明する。IEBCOPY(磁気ストレージ・
デイスクを再区画付けするためのIBMのユーテイリテ
イ・プログラム)のようなプログラムは、メイン・プロ
グラムと並行して実行されるI/O動作を持つている。
これらのI/O動作は、メイン・プログラムが物理的プ
ロセツサ中で連続して実行している間にデータ・チヤン
ネルによつて処理される。IEBCOPYは、データ・
チヤンネルにおいて実行するチヤンネル・プログラムを
構成することによつてI/O動作を始動する。このよう
にして、I/O動作はIEBCOPYプログラムと同時
に実行される。
【0016】チヤンネル・プログラムが付加的なインス
トラクシヨンを必要とする時、チヤンネル・プログラム
はPCI(Program-Controlled Interrupt)(プログラ
ム制御の割込み)によつて論理的プロセツサに信号を送
る。若し、PCIが相次いで処理されるならば、IEB
COPYはチヤンネル・プログラムに付加的なインスト
ラクシヨンを付加することができ、チヤンネル・プログ
ラムはI/O装置を連続して処理することができる。然
しながら、若し、PCIが相次いで処理されなければ、
チヤンネル・プログラムはインストラクシヨンから外れ
て実行し、終了する。若し、処理されるべき付加的なI
/O動作があるならば、IEBCOPYは、新しいチヤ
ンネル・プログラムを構成しなければならず、そして、
開始チヤンネル動作によつて新しいプログラムを始動し
なければならない。このチヤンネル開始動作は、相次い
で処理されるPCIに比較してプロセツサの大きな負担
を含んでいる。従つて、特に、大量のPCIを有するア
プリケーシヨンの場合には、相次いだ態様でPCIを処
理することが望ましい。
【0017】LPARのような従来のデイスパツチヤに
おいて、若し、物理的プロセツサの中で実行されるアプ
リケーシヨン・プログラム(例えばIEBCOPY)が
「待ち」状態に入つたならば、デイスパツチヤは次のパ
テイシヨンをデイスパツチする。PCI信号が論理プロ
セツサに送られると、デイスパツチヤは、それを要求し
た論理的プロセツサ(パテイシヨン)へ論理プロセツサ
の制御を戻すことによつて割込みを処理するか否かを決
定する。デイスパツチヤによるこの介入は、PCIを処
理するのに使用されるクリチカル・ウインドウ(処理の
制限時間)を超過する遅延をしばしば生じる。処理され
なかつた各PCIは、開始チヤンネル動作によつて処理
されなければならない。これは、パテイシヨンが設けら
れたシステムにおいて、IEBCOPYプログラムが実
行された時、大きな性能低下を生じる。
【0018】従来のデイスパツチヤによつて与えられる
他の性能低下の問題は、TPI(Test Pending Interru
pt)インストラクシヨンによる問題を含んでいる。TP
Iは、「I/O割込みハンドラー」コードの一回の呼び
出しによる無関係の可能性のあるI/O割込みの可変長
のバツチを処理する機構である。割込みハンドラーが現
在のI/O装置の処理を完了した時、割込みハンドラー
は、TPIインストラクシヨンを発生するが、これはキ
ユーに入れられているものの中で最も高い優先度を持つ
I/O割込みを次に処理すべきものとして特定する。こ
のようにして、I/O割込みのバツチは、非常に効率的
に処理される。然しながら、若し、I/O割込み動作の
うち大部分が、TPIを通して処理されるならば、それ
は、I/O動作が遅延し、結果としてパテイシヨンのワ
ークロードの全体の処理能力の低下をひきおこす。この
ような場合において、物理的プロセツサを使用するパテ
イシヨンのの能力をパテイシヨナによつて改善する必要
がある。
【0019】PR/SMのLPARは、これらの問題に
対して部分的な解決を与える「待ち完了(WAIT COMPLET
ION)」と呼ばれるオプシヨンがある。「待ち完了」オ
プシヨンによつて、ユーザは、そのデイスパツチの方式
を変更することができる。つまり、若し「待ち完了」=
YESが特定されたならば、デイスパツチヤは事象検出
を行なわない。その結果、デイスパツチヤは、厳密なタ
イム駆動のデイスパツチヤになる。
【0020】「待ち完了」=YESオプシヨンは、IE
BCOPYのようなアプリケーシヨンによつて要求され
るタイム・クリチカル処理(処理時間が限定されている
処理)を与えるために使用することができる。このオプ
シヨンが特定された時、デイスパツチヤは厳密なタイム
駆動ベースになり、従つて、IEBCOPYが「待ち」
状態に入つた時でも、デイスパツチ期間は継続し、物理
的プロセツサはPCIを処理するためにデイスパツチ全
体の期間に対して利用可能である。
【0021】然しながら、「待ち完了」=YESオプシ
ヨンは、幾つかの欠点を持つている。第1の欠点とし
て、このオプシヨンは、オプシヨンを選択するために、
コンピユータの操作者の介入を必要とすることである。
このオプシヨンの第2の欠点は、「待ち完了」がプロセ
ツサ複合体において実行するすべてのパテイシヨンに対
して動作するので、タイム・クリチカル処理を必要とし
ない他のパテイシヨンの性能が低下されることである。
【0022】
【発明が解決しようとする課題】上述のような現状にお
いて、動的な要求ベースの下で、特定のパテイシヨンに
対してタイム・クリチカル処理を与える手段が必要であ
る。
【0023】
【実施例】図面を参照して本発明の実施例を以下に説明
する。本発明の良好な実施例はPR/SMを装備したI
BM370/390プロセツサ複合体に実行されたもの
である。要求パテイシヨンのタイム・クリチカル処理
は、IBMのMVS(Multiple Virtual Storage)のオ
ペレーテイング・システムを動作する。
【0024】図1はパテイシヨンが設けられたシステム
100のブロツク図である。パテイシヨナ102は、シ
ステム100を論理的に分割した4つのパテイシヨン1
04a乃至104dを有している。各パテイシヨンは、
それ自身のオペレーテイング・システムと、そのオペレ
ーテイング・システムで動作するアプリケーシヨン・プ
ログラムとを有していることには注意を払う必要があ
る。
【0025】図2を参照して、従来のデイスパツチ処理
を以下に説明する。従来のパテイシヨナのデイスパツチ
ヤ(例えば、LPAR)は、上述したようなタイム/事
象駆動ベースのデイスパツチ処理を使用する。ステツプ
202において、デイスパツチ処理をするパテイシヨン
が選択される。ステツプ204において、「待ち完了」
フラグがチエツクされる。若し、「待ち完了」=NOな
らば、ステツプ206において、パテイシヨンは、通常
通りの動作を許容される。若し、「待ち完了」=YES
ならば、従来の方法においては、ステツプ210に進
み、パテイシヨンは「待ち」状態とは無関係にタイム駆
動ベースで動作される。
【0026】ステツプ206の処理が終つた後、ステツ
プ208において、デイスパツチヤは、事象(例えば
「待ち」状態)が発生したか否かをチエツクする。若
し、事象(例えば「待ち」状態)が発生していなけれ
ば、パテイシヨンは、ステツプ210において動作す
る。然しながら、若し、事象が発生したならば、パテイ
シヨナは、新しいパテイシヨンが選択されるステツプ2
02に戻る。ステツプ210に続いて、動作タイムがス
テツプ212においてチエツクされる。若し、配分され
た処理時間(即ち、タイム・スライス)が経過したなら
ば、ステツプ202において、次のパテイシヨンがデイ
スパツチされる。
【0027】この従来のデイスパツチヤは、すべてのパ
テイシヨンに対してタイム駆動ベースの切り換えか、ま
たは事象/タイム駆動ベースの切り換えのいずれかを与
える。多くのアプリケーシヨンに対しては、応答時間と
ワークロードとの間に良好なバランスが生じる。然しな
がら、セツトするのにコンピユータの操作者の介入を必
要とする「待ち完了(WAIT COMPLETION)」=YES
は、システム・コンソールからしか設定できず、そし
て、その設定を行なつた後には、「待ち完了」はすべて
のパテイシヨンに対してだけ活性化されてしまう。
【0028】ある種のアプリケーシヨンは、デイスパツ
チヤを事象/タイム駆動ベースからタイム駆動ベースへ
動的に切り換え、そして、特定のアプリケーシヨンだけ
に戻ることを必要とする場合がある。従来のデイスパツ
チヤはこの処理を与えることはできない。
【0029】本発明は、単一のパテイシヨンを、事象/
タイム駆動のデイスパツチ処理からタイム駆動のデイス
パツチ処理へ切り換え、そして、要求ベースに戻させる
動的なタイム駆動スイツチ(time-driven switch)を与
える。また、タイム駆動のデイスパツチ処理は、タイム
・クリチカル処理、または、単に、クリチカル処理と呼
ばれる。本発明のタイム駆動スイツチは、実行されてい
るアプリケーシヨンによつて制御されるか、または、パ
テイシヨンのオペレーテイング・システムによつて制御
される。図3乃至図6を参照して、本発明の実施例を以
下に説明する。
【0030】1. アプリケーシヨン・プログラムによ
つて制御されるタイム駆動スイツチ 図3を参照して、パテイシヨン中で実行されているアプ
リケーシヨン・プログラムからの要求に基づいて動的な
スイツチを与える本発明の実施例の方法を説明する。ス
テツプ302において、アプリケーシヨンは通常通りに
実行する。ステツプ304において、アプリケーシヨン
は、タイム・クリチカル処理を開始し、そして、タイム
駆動処理を要求する。アプリケーシヨンは、クリチカル
処理の開始をパテイシヨナに知らせる信号を送る。次
に、パテイシヨナは動的なタイム駆動スイツチをオンに
セツトする(SWITCH=ON)。
【0031】ステツプ306において、アプリケーシヨ
ンのタイム・クリチカルの部分が処理される。ステツプ
308において、アプリケーシヨンは、タイム・クリチ
カル処理の終了に到達し、そして、このことをパテイシ
ヨナに通知する信号を送る。次に、パテイシヨナは、自
動的なタイム駆動スイツチをオフ(SWITCH=OF
F)にセツトし、そして、アプリケーシヨンは、ステツ
プ310において通常の処理を再開する。
【0032】2. オペレーテイング・システムによつ
て制御されるタイム駆動スイツチ 図4を参照して、パテイシヨンのオペレーテイング・シ
ステムによつて動的なスイツチを与える本発明の実施例
を説明する。ステツプ402において、オペレーテイン
グ・システムは、アプリケーシヨンのI/O要求に対し
てパテイシヨンの応答度を監視する。ステツプ404及
び406において、オペレーテイング・システムは、殆
どのPCIが遭遇されたか否か、そして、大部分のI/
O動作がテスト・ペンデイング割込み(TPI)インス
トラクシヨンによつて処理されたか否かを決定する。若
し、大部分のプログラム制御の割込み(PCIの割込
み)が遭遇されていないか、または、多数のI/O動作
がテスト・ペンデイング割込みによつて処理されたなら
ば、ステツプ408において、オペレーテイング・シス
テムはクリチカル処理の開始をパテイシヨナに通知す
る。これに応答して、デイスパツチヤは動的なタイム駆
動スイツチをオンにセツト(SWITCH=ON)す
る。ステツプ410において、アプリケーシヨンは実行
を続ける(例えば、予め決められた時間の間)。
【0033】ステツプ412において、オペレーテイン
グ・システムは、I/Oの応答度を再度チエツクする。
若し、大多数のプログラム制御の割込み(PCIの割込
み)が遭遇されていないか(ステツプ414)、また
は、若し、大部分のI/O動作がテスト・ペンデイング
・インストラクシヨン(TPI)によつて処理されてい
れば(ステツプ416)、オペレーテイング・システム
はクリチカル処理の要求を維持し、そして、ステツプ4
10に戻る。若し、大部分のプログラム制御の割込み
(PCI)が遭遇され、そして、少数のI/O動作がテ
スト・ペンデイング・インストラクシヨン(TPI)に
よつて処理されているならば、ステツプ418におい
て、オペレーテイング・システムは、タイム・クリチカ
ル処理期間の終了を通知し、そして、動的なタイム駆動
スイツチはオフ(SWITCH=OFF)にセツトされ
る。次に、ステツプ420において、アプリケーシヨン
は、通常のタイム/事象駆動ベースのデイスパツチ処理
によつて処理を続ける。
【0034】ステツプ404及び406において、大部
分のプログラム制御の割込み(PCIの割込み)が遭遇
され、そして、比較的少数のI/O動作がテスト・ペン
デイング割込み(TPI)によつて処理されているなら
ば、オペレーテイング・システムは、処理のプロシージ
ヤが繰り返えされるステツプ402に戻る前に、アプリ
ケーシヨン・プログラムは実行を続ける(例えば、予め
決められた時間の間)ステツプ420に直接に進む。
【0035】一般論として言えば、クリチカル処理が行
なわれるべきか否かを、パテイシヨンのオペレーテイン
グ・システムが決定することが望ましい。これは、多く
のアプリケーシヨン・プログラムは、パテイシヨンの全
体の利用度には無関心だからである。パテイシヨンの利
用度は考慮すべき重要な事項である。例えば、上述のI
EBCOPYの場合、沢山の仕事を課せられたパテイシ
ヨンは、僅かの「待ち」状態しかパテイシヨンによつて
入力されないので、幾つかのPCIの割込みを失う。若
し、IEBCOPYプログラムがパテイシヨン全体の利
用度とは関係なくクリチカル処理を活性化することがで
きたとしても何の利点も得られず、そして、デイスパツ
チヤの事象駆動ベースの機能を減らして、性能は事実上
低下する。アプリケーシヨンに信号を送る他の不利点
は、クリチカル処理の要求信号を送るために、アプリケ
ーシヨンを修正しなければならないことである。
【0036】3. 特別な処理要求のパテイシヨナ処理 クリチカル処理(例えばSWITCH=ON)が望まれ
ていることを、アプリケーシヨン・プログラム、または
オペレーテイング・システムが、デイスパツチヤに信号
を送るか否かに関して、ソフトウエアとパテイシヨナと
の間の通信は、「診断」インターフエースを介して処理
することができる。従来の「診断」インターフエース
は、種々の異なつた方法によつて、パテイシヨンとパテ
イシヨナとの間の通信を可能としている。例えば、パテ
イシヨンは、パテイシヨンとパテイシヨナがアクセスで
きる予め決められたメモリ・ロケーシヨンか、または予
め決められたI/Oアドレスのいずれかを使用すること
ができる。これらのいずれの場合でも、すべてのパテイ
シヨンのオペレーテイング・システム及びパテイシヨナ
のすべてのバージヨンによつて合意され、守られねばな
らないプロトコルが必要である。他の方法は、パテイシ
ヨンとパテイシヨナとの間を通信するための新しいイン
ストラクシヨンを定義付けることである。このインスト
ラクシヨンは、インストラクシヨンが実行される時にパ
テイシヨナが制御を獲得するように、ハイパーバイザの
介入を必要とするものとして定義されている。最も直接
的で、かつ望ましい方法は、[診断」インストラクシヨ
ンを通してパテイシヨンとパテイシヨナとの間で通信を
可能とする通常の「診断」インターフエースを使用する
ことである。「診断」インストラクシヨンは、数字コー
ドを通して選択され多くの使用方法を持つ非常に強力な
機能である(例えば「診断22」の機能は「診断44」
の機能とは異なつている)。一方のコードはタイム・ク
リチカル・スイツチをオンにし、他方のコードはタイム
・クリチカル・スイツチをオフにするような2つの新し
いコードを「診断」インストラクシヨンの機能に割り当
ることができる。
【0037】或る種のアプリケーシヨンだけがクリチカ
ル処理を行なうように能力を制限することが要望され
る。同様に、パテイシヨンにおいて実行される1つ以上
のアプリケーシヨンがクリチカル処理を要求することが
できることが望まれる。どのアプリケーシヨンがクリチ
カル処理を行なう権限を与えられるかを制御するための
権限付与方式が実行される。MVSにおいて、この権限
付与は、「診断」インストラクシヨンを使用することに
よつて行なうことができる。この「診断」インストラク
シヨンは、権限を付与されたアプリケーシヨンだけに限
られた特権付きのインストラクシヨンである。従つて、
この権限付与方式は、クリチカル処理を要求できるアプ
リケーシヨンだけに限つて適用することができる。
【0038】パテイシヨナは、各パテイシヨンからのク
リチカル処理要求を追跡し、そして、カウント・テーブ
ル中の特別の処理を要求する権限を与えられたパテイシ
ヨンの記録を維持する。図1に示したパテイシヨンが設
けられたシステム100のためのカウント・テーブル5
00の一例が図5に示されている。1以上のスイツチ・
カウントは、パテイシヨンの中の1以上のアプリケーシ
ヨンがクリチカル処理を要求していることを意味するこ
とには注意を要する。パテイシヨナは、クリチカル処理
(即ち、SWITCH=ON)の各要求毎にパテイシヨ
ンのスイツチ・カウントを増加し、そして、通常の処理
(即ち、SWITCH=OFF)の各要求毎にスイツチ
・カウントを減少する。図示されているように、カウン
ト・テーブル500は各パテイシヨンの権限付与データ
をストアするためにも使用される。既に述べたように、
これは、或る種のパテイシヨンだけがクリチカル処理を
要求できることを意味する。
【0039】図6を参照して、パテイシヨナのデイスパ
ツチヤを以下に説明する。ステツプ602において、デ
イスパツチされるべきパテイシヨンが選択される。ステ
ツプ604において、選択されたパテイシヨンのための
スイツチ・カウントがチエツクされる。若し、スイツチ
・カウントがゼロであれば(パテイシヨン中の論理的プ
ロセツサはクリチカル処理を要求されていない)、デイ
スパツチヤは通常のデイスパツチ処理のためのステツプ
620に進む。若し、スイツチ・カウントがゼロでなけ
れば(クリチカル処理の有効な要求信号がある)、ステ
ツプ606において、パテイシヨンに権限が付与されて
いるか否かがカウント・テーブルによつてチエツクされ
る。若し、パテイシヨンがSWITCH=ONにするた
めのパテイシヨナへの信号を与える権限を持つていなけ
れば、デイスパツチヤは、通常のデイスパツチ処理をす
るためにステツプ620に進む。若し、パテイシヨンが
SWITCHオンにする権限を持つていれば、システム
の利用度がステツプ608でチエツクされる。若し、シ
ステム利用度が高ければ、デイスパツチヤはステツプ6
16に進む。若し、システムの利用度が低ければ、デイ
スパツチヤはステツプ610に進む。
【0040】ステツプ610において、パテイシヨンが
チエツクされる。若し、パテイシヨンがただ1つの論理
的プロセツサしか持つていなければ、クリチカル処理が
ステツプ612で与えられて、「待ち」状態は無視され
る。若し、パテイシヨンが2つ以上の論理的プロセツサ
を持つているならば、デイスパツチヤはステツプ617
に進む。クリチカル処理がステツプ612で与えられた
後、論理的プロセツサは、ステツプ614における処理
時間が経過して終了するまで実行する。この時間が経過
した時、デイスパツチヤは、次のデイスパツチされたパ
テイシヨンのための処理が反復されるステツプ602に
戻る。
【0041】処理ステツプ616に戻つて説明を続ける
と、ステツプ616において、システムの利用度は再度
チエツクされる。若し、システムの利用度が非常に高け
れば(即ち、システムが非常に多忙である)、デイスパ
ツチヤは通常のデイスパツチ処理を遂行するステツプ6
20に進む。若し、システムの利用度が非常に高くなけ
れば、処理はステツプ618に進む。ステツプ617に
おいて、パテイシヨン内の1つの論理的プロセツサがク
リチカル処理を既に与えられているか否かが決定され
る。若し、既に与えられているならば、処理はステツプ
618に進む。ステツプ618において、パテイシヨン
の優先度がチエツクされる。若し、そのパテイシヨンが
高い優先度のパテイシヨンであれば、ステツプ612に
おいて、クリチカル処理が生じる。高い優先度でない場
合、通常のデイスパツチ処理がステツプ620で続けら
れる。
【0042】ステツプ620において、「待ち完了」フ
ラグがチエツクされる。若し「待ち完了」=NOであれ
ば、ステツプ620において、パテイシヨナは論理的プ
ロセツサを通常の動作にする。若し、「待ち完了」=Y
ESならば、デイスパツチヤは、パテイシヨンがタイム
駆動ベースでデイスパツチされるステツプ626を実行
し、論理的プロセツサは、「待ち」状態とは無関係に実
行される。
【0043】ステツプ624において、パテイシヨナ
は、次のパテイシヨンがデイスパツチされる事象(「待
ち」状態のような事象)が発生したか否かをチエツクす
る。若し、事象(例えば「待ち」状態)が発生しなけれ
ば、論理的プロセツサはステツプ626において動作を
続行する。然しながら、若し、事象が発生したならば、
本発明の方法は、次のパテイシヨンがデイスパツチされ
るステツプ602に戻る。ステツプ628において、動
作時間がチエツクされる。若し、割り当てられた処理時
間が経過すると、本発明の方法は、次のパテイシヨンが
デイスパツチされるステツプ602に戻る。
【0044】
【発明の効果】本発明によつて、動的なベースの下で、
パテイシヨンに対して処理時間に依存した特別の処理を
与えることができる。
【図面の簡単な説明】
【図1】パテイシヨンが設けられたデータ処理システム
を示すブロツク図である。
【図2】通常のタイム/事象駆動ベースのデイスパツチ
処理に含まれた動作ステツプを示す流れ図である。
【図3】タイム・クリチカル処理のための要求のパテイ
シヨナに信号を送るために、アプリケーシヨンに含まれ
た動作ステツプを示す流れ図である。
【図4】タイム・クリチカル処理のための要求のパテイ
シヨナに信号を送るために、オペレーテイング・システ
ムに含まれた動作ステツプを示す流れ図である。
【図5】図1に示したパテイシヨンを設けられたシステ
ムのためのカウント・テーブルを示す図である。
【図6】タイム・クリチカル処理を要求したパテイシヨ
ンを与えるか否かを決めるパテイシヨナの決定処理を説
明するための流れ図である。
【符合の説明】
100 パテイシヨンが設けられたシステム 102 パテイシヨナ 104a乃至104d パテイシヨン
───────────────────────────────────────────────────── フロントページの続き (72)発明者 マイケル・ロバート・シーツ アメリカ合衆国ニューヨーク州、ポーキプ シー、ストーンヘッジ・ドライブ 17番地

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 物理的な資源がパテイシヨナによつて複
    数の論理的なパテイシヨンに仕切られたデータ処理シス
    テムにおいて、要求されたパテイシヨンのデイスパツチ
    ・モードを変更する方法であつて、 (a) パテイシヨナによつてデイスパツチ処理の変更を
    要求するために、一定のインストラクシヨンを要求パテ
    イシヨンが実行するステツプと、 (b) システムの利用度、要求パテイシヨンの優先度及
    び要求パテイシヨンの権限を含むシステム・パラメータ
    を、現在のパテイシヨナによつて検査するステツプであ
    つて、上記要求パテイシヨンの権限及び要求パテイシヨ
    ンの優先度は、要求パテイシヨンのデイスパツチ・モー
    ドを変更するか否かをパテイシヨナが決定する時に使用
    するため、上記要求パテイシヨンに割り当てられること
    と、 (c) デイスパツチ処理を変更する上記要求に応答し
    て、上記パテイシヨンのための上記パテイシヨナのデイ
    スパツチ・モードを変更するステツプとからなるデイス
    パツチ・モードの変更方法。
JP4188056A 1991-08-08 1992-07-15 デイスパツチ・モードの変更方法 Expired - Lifetime JPH0711783B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US742775 1985-06-10
US07/742,775 US5291599A (en) 1991-08-08 1991-08-08 Dispatcher switch for a partitioner

Publications (2)

Publication Number Publication Date
JPH05210522A true JPH05210522A (ja) 1993-08-20
JPH0711783B2 JPH0711783B2 (ja) 1995-02-08

Family

ID=24986171

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4188056A Expired - Lifetime JPH0711783B2 (ja) 1991-08-08 1992-07-15 デイスパツチ・モードの変更方法

Country Status (3)

Country Link
US (1) US5291599A (ja)
EP (1) EP0527334A3 (ja)
JP (1) JPH0711783B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0877026A (ja) * 1994-08-31 1996-03-22 Canon Inc 情報処理方法とその装置
JP2006127524A (ja) * 2004-10-29 2006-05-18 Internatl Business Mach Corp <Ibm> 物理リソースに対するアクセスを管理する方法、装置、およびプログラム

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5497500A (en) * 1986-04-14 1996-03-05 National Instruments Corporation Method and apparatus for more efficient function synchronization in a data flow program
US5737622A (en) * 1986-04-14 1998-04-07 National Instruments Corporation Method and apparatus for more efficient function synchronization in a data flow program
US6430592B1 (en) 1994-06-02 2002-08-06 International Business Machines Corporation System for sharing CPU time amongst multiple users
US5604890A (en) * 1994-08-16 1997-02-18 Miller; Paul B. Coupling device for the switching of data lines between a data storage device controller and a plurality of bootable data storage devices
US6353844B1 (en) * 1996-12-23 2002-03-05 Silicon Graphics, Inc. Guaranteeing completion times for batch jobs without static partitioning
US6625638B1 (en) * 1998-04-30 2003-09-23 International Business Machines Corporation Management of a logical partition that supports different types of processors
US6480876B2 (en) * 1998-05-28 2002-11-12 Compaq Information Technologies Group, L.P. System for integrating task and data parallelism in dynamic applications
US6675189B2 (en) * 1998-05-28 2004-01-06 Hewlett-Packard Development Company, L.P. System for learning and applying integrated task and data parallel strategies in dynamic applications
US6438704B1 (en) 1999-03-25 2002-08-20 International Business Machines Corporation System and method for scheduling use of system resources among a plurality of limited users
US7010788B1 (en) 2000-05-19 2006-03-07 Hewlett-Packard Development Company, L.P. System for computing the optimal static schedule using the stored task execution costs with recent schedule execution costs
EP1191453B1 (de) * 2000-09-22 2008-11-12 Infineon Technologies AG Vorrichtung zur Auswahl und Weiterleitung von empfangenen Unterbrechungsanfragen gemäss konfigurierbarer Konditionen
US20020184290A1 (en) * 2001-05-31 2002-12-05 International Business Machines Corporation Run queue optimization with hardware multithreading for affinity
US20040226015A1 (en) * 2003-05-09 2004-11-11 Leonard Ozgur C. Multi-level computing resource scheduling control for operating system partitions
US7743377B2 (en) * 2004-10-25 2010-06-22 Microsoft Corporation Cooperative threading in a managed code execution environment
US8161476B2 (en) 2007-07-04 2012-04-17 International Business Machines Corporation Processor exclusivity in a partitioned system
US8352960B2 (en) * 2007-08-13 2013-01-08 International Business Machines Corporation Limiting receipt of unsolicited events by a logical partition in a data storage system
US8443373B2 (en) * 2010-01-26 2013-05-14 Microsoft Corporation Efficient utilization of idle resources in a resource manager
EP3121716A1 (en) * 2015-07-21 2017-01-25 Robert Bosch Gmbh Method and apparatus for hosting a multitasking guest on a host system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0792761B2 (ja) * 1985-07-31 1995-10-09 株式会社日立製作所 仮想計算機システムの入出力制御方法
JPH0731609B2 (ja) * 1985-09-18 1995-04-10 日本電気株式会社 Vmモード変更装置
US4843541A (en) * 1987-07-29 1989-06-27 International Business Machines Corporation Logical resource partitioning of a data processing system
US5129088A (en) * 1987-11-30 1992-07-07 International Business Machines Corporation Data processing method to create virtual disks from non-contiguous groups of logically contiguous addressable blocks of direct access storage device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0877026A (ja) * 1994-08-31 1996-03-22 Canon Inc 情報処理方法とその装置
JP2006127524A (ja) * 2004-10-29 2006-05-18 Internatl Business Mach Corp <Ibm> 物理リソースに対するアクセスを管理する方法、装置、およびプログラム

Also Published As

Publication number Publication date
JPH0711783B2 (ja) 1995-02-08
US5291599A (en) 1994-03-01
EP0527334A3 (en) 1993-08-11
EP0527334A2 (en) 1993-02-17

Similar Documents

Publication Publication Date Title
JPH05210522A (ja) デイスパツチ・モードの変更方法
US8108196B2 (en) System for yielding to a processor
US5506975A (en) Virtual machine I/O interrupt control method compares number of pending I/O interrupt conditions for non-running virtual machines with predetermined number
KR100745477B1 (ko) 단일 스레드와 동시 멀티스레드 모드간의 멀티스레드프로세서의 동적 스위칭
US20180129526A1 (en) Dynamic virtual machine sizing
US7996593B2 (en) Interrupt handling using simultaneous multi-threading
US7840965B2 (en) Selective generation of an asynchronous notification for a partition management operation in a logically-partitioned computer
US20060130062A1 (en) Scheduling threads in a multi-threaded computer
US6895585B2 (en) Method of mixed workload high performance scheduling
JP2561801B2 (ja) プロセス・スケジューリングの管理方法およびシステム
JP2017538184A (ja) 入出力(i/o)割込みの改良型優先ルーティングを実施する方法、システムおよびプログラム
US10523746B2 (en) Coexistence of a synchronous architecture and an asynchronous architecture in a server
US20060168214A1 (en) System for managing logical partition preemption
EP0049521A2 (en) Information processing system
JPH02210542A (ja) 仮想計算機システムにおける実行制御方式
Aridor et al. Open job management architecture for the Blue Gene/L supercomputer
JPH01124042A (ja) 仮想計算機システムにおける回線制御方式
JP2000215071A (ja) 仮想計算機システム
JPH01195562A (ja) 入出力装置割当て制御方式
CN115269139A (zh) 基于可信区域的双操作系统混合实时任务调度方法和系统
EP0598673A1 (en) Method of and apparatus for providing a client/server architecture
JPH04321122A (ja) 外部記憶装置システム
JPS63197239A (ja) 仮想プロセツサ制御情報退避格納方式
JP2004152060A (ja) 計算機システム、および、そのディスクサブシステム
JPH03245256A (ja) ディスパッチング制御方法および装置