JPS62171066A - コプロセツサを有する仮想記憶仮想計算機型のデ−タ処理システム - Google Patents

コプロセツサを有する仮想記憶仮想計算機型のデ−タ処理システム

Info

Publication number
JPS62171066A
JPS62171066A JP62002016A JP201687A JPS62171066A JP S62171066 A JPS62171066 A JP S62171066A JP 62002016 A JP62002016 A JP 62002016A JP 201687 A JP201687 A JP 201687A JP S62171066 A JPS62171066 A JP S62171066A
Authority
JP
Japan
Prior art keywords
coprocessor
virtual
vrm
memory
interrupt
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
JP62002016A
Other languages
English (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.)
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 JPS62171066A publication Critical patent/JPS62171066A/ja
Pending 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 A、産業上の利用分野 この発明は総括的に、コプロセッサを包含するデータ処
理システムに関するものであり、詳細にいえば、仮想記
憶仮想計算機型のデータ処理システムでコプロセッサを
有するシステムに関するものである。
B、従来技術 従来技術は処理装置をシステムに用いて、情報を処理す
る際に主処理装置を支援するさまざまなデータ処理シス
テムを開示している。一般に、コプロセッサは特殊な型
式の処理装置であって、汎用型の処理装置に邦いては比
較的時間のかかる、浮動小数点計算などの特定な処理タ
スクを行う能力がすぐれたものである。
他のシステムにおいては、コプロセッサは同等な処理装
置として扱われ、両方の処理装置が操作する各種の適用
業務が互いに干渉しないことを確実とする態様で、各処
理装置の作動を制御するためのある種のプロトコルおよ
びアルゴリズムが、確立される。
従来技術は多数の仮想記憶仮想計算機データ処理システ
ムも開示しており、このようなシステムにおいては、仮
想資源管理プログラムが特定の適用業務を「並行」に実
行するように作動する仮想計算機を確立し、システム処
理装置またはシステム資源が、さまざまな仮想計算機の
間で時間多重式に共有される。
C1発明が解決しようとする問題点 これらの従来技術の構成の動作は満足できるものではあ
るが、既存の適用業務プログラムが存在していない新し
いオペレーティング・システムを備えた新しいシステム
を導入した場合に、データ処理システムの設計者やユー
ザがしばしば直面する問題を、これらの構成は解決する
ものではない。
問題には、変換または移行経路を与えて、ユーザが既存
のプログラムを新しいシステムで稼動し続け、古い適用
業務に新しい機能または拡張機能のいずれかを与える新
しい適用業務が開発された場合に、これを追加すること
を可能とすることが含まれている。
新しいシステムがユーザの既存のシステムおよびプログ
ラムと上位互換性を持っていない場合・、)ユーザが新
しいシステムの拡張機能を利用しようというのであれば
、実用上、2つのオプションしかない。第1のオプショ
ンは古いシステムがすべて新しい環境に合わせて変換さ
れるまでの間、両方のシステムを作動させることである
。第2のオプションは古いプログラムの新しいシステム
へのエミュレーションを試みることであるが、これは一
般に、新しいシステムのパフォーマンスを@通といえな
いものとしてしまう。
この発明は比較的経済的で、新規なシステムを提供して
、上記の問題を解決するものである。
D8問題点を解決するための手段 この発明のによれば、メモリ管理装置を介してシステム
・メモリに接続された主処理装置と、システムの入出力
パスに接続され、このバスが次いで入出力チャネル制御
装置を介して主処理装置に接続されているコプロセッサ
とからなる、データ処理システムが確立される。コプロ
セッサのアーキテクチャは従来技術のシステム処理装置
と、機能的に同一のものであり、これにより現在の既存
の適用業務プログラムをコプロセッサで作動させること
が可能となる。システムには仮想資源管理プログラム(
VRM)というプログラムの適切なセットを設け、仮想
計算機型の環境を確立し、この環境において、多数の異
なるオペレーティング・システムをVRMが確立した仮
想計算機で作動可能なようにする。一般に、これらの仮
想計算機はシステム処理装置を共有しているが、しがし
他のシステム資源とともにコプロセッサを用い、システ
ムが既存のすべてのプログラムを作動でき、かつ新しい
システムに付随している、表示装置、印刷装置などの他
の高機能構成部品を利用できるようにする、仮想計算機
を1台構成することができる。
E、実施例 システムの概要。この発明の方法を用いる仮想記憶シス
テムの略図である。第1図に示すように、システムはハ
ードウェア部分10、およびソフトウェアまたはプログ
ラミング部分11がらなっている。ハードウェア部分1
oは図示のように、処理装置機能12、メモリ管理機能
13、システム・メモリ機能またはRAM14、システ
ム・パス15、入出力チャネル制御装置(rOcc)1
6、および入出力パス21からなっている。ハードウェ
ア部分はさらに、人出力バス21ないし10CC16に
接続された、磁気ディスク装置機能17、表示機能18
、コプロセッサ機能19、およびキーボードやマウス・
タイプの装置などのその他の入出力装置を表すブロック
2oを含む一群の入出力装置を包含している。
システムのプログラム部分はシステム上で作動させられ
る適用業務プログラム22、新しい適用業務の開発を支
援する適用業務開発プログラムまたはツール28、たと
えばUNIXシステムVのカーネルの拡張機能であるオ
ペレーティング・システムのカーネル24、およびそれ
ぞれが異なるオペレーティング・システム上で作動する
が、システムの資源を共有している多数の仮想計算機を
作成することを可能とする機能を果たす仮想資源管理プ
ログラム25を包含している。したがって、システムは
マルチタスク、マルチユーザ環境で作動できるものであ
って、この環境が大きな仮想記憶型の記憶システムを必
要とする主な理由のひとつである。
第2図は、システムの他の構成要素に対する仮想資源管
理プログラム25の関係を示すものである。第2図に示
すように、仮想計算機は22a−22cなどの、ひとつ
またはそれ以上の適用業務プログラムと、少なくともひ
とつのオペレーティング・システム3(l包含している
。仮想計算機インタフェース31が仮想計算機とVFt
M25の間に設定されている。ハードウェア・インタフ
ェース32もVRM25とハードウェア部分10の間に
設定されている。VRM25は仮想計算機をサポートし
ている。説明のため、第1図に示すハードウェアのメモ
リ機能が、システム・メモリ14に対する16メガバイ
トの容量に等しい、システム・メモリ14用の24ビツ
トのアドレス空間と、1テラバイトのメモリに等しい、
仮想記憶用の40ビツトのアドレス空間とを含んでいる
ものと、想定する。ページ化セグメンテーション手法が
メモリ管理装置13に対して実施されているので、仮想
アドレスの総空間は4,096のメモリ・セグメントに
分割され、各メモリ・セグメントは256メガバイトを
占めている。
仮想資源管理プログラムが用いる各種のデータ構造を含
む、第1図および第2図に示す構成の詳細は、関連出願
(である米国特許出願シリアル番号819458AT9
−85−018)にも記載されている。
第3図は第1図に示したシステムの詳細なブロック線図
である。図示のように、システムは主中央演算処理装置
12、メモリ制御装置13、読取り専用記憶ブロック1
3a、およびリフレッシュ・チャージ・ブロック13b
かもなっている。人出カチャネル制御装置の一部が、ブ
ロック16FLに示されている。機能ブロックはプロセ
ッサ・カードと呼ばれる、プリント回路カード35に取
り付けられたものとして、描かれている。プロセッサ・
カードは母板上の一対のソケットに挿入されるように構
成されており、母板は他のカード用のソケット、リフレ
ッシュ制御装置34などの機能モジュール、割込制御装
置42、直接メモリ・アクセス制御装置43、通信制御
装置41および鍵盤制御装置40を含んでいる。母板に
は入出力チャネル制御機能の他の部分16bが取り付け
られており、さらにシステム全体にわたる信号を搬送す
る多数の多心パスが設けられている。第1図に示す2本
のメイン・パスは、入出力バス44とメモリ14用27
であって、これらはプロセッサ・カード上のメモリ制御
装置から、メモリ・カード上のRAMメモリへ延びてい
る。
第3図に示すシステムはさらに、3枚の付加的なカード
46.47および48t′含んでおり、これらは母板の
プラグに挿入されており、かつ入出力バス44に接続さ
れている。カード46はコプロセッサ・ボードであって
、コプロセッサと呼ばれるシステムの第2の処理装置を
含んでいる。コプロセッサ・カード46はIBM  P
C/ATマイクロプロセッサ・システムと、機能的に同
等なものと考えてよい。カード47および48は表示装
置アダプタ・カードであり、その主たる機能は表示装置
49aおよび49bの周知のビデオ・バッファとして作
動することである。この明細書における表示装置とは、
スクリーンとなる電子管、および表示機能を遂行するた
めにビデオ・バッファ内に含まれている付随電子回路の
両方におよぶものであることを、理解すべきである。ア
ダプタ・カードに設けられている付加電子回路は、さま
ざまな表示パラメータを制御する多数のレジスタからな
る表示制御装置などを含んでおり、これらはすべて表示
装置には標準的な制御装置である。
第3図に示すシステムの詳細は、関連出願(米国特許願
シリアル番号第6−706803号)にも記載されてい
る。
第4図及び第5図はコプロセッサ・サブシステムの構成
要素と、システムの他の構成要素との間の関係を示すも
のである。
コプロセッサVRMサブシステムはコプロセッサ管理プ
ログラム50、コプロセッサ仮想端末装置52、コプロ
セッサ非同期エミュレーション装置ドライバ53および
コプロセッサ専用装置ドライバ54というサブコンポー
ネントで構成されている。適切なコード定義監視プログ
ラム・コールまたは装置定義監視プログラム・コール(
SVC)、あるいはこの両方を送って、さまざまなコプ
ロセッサ・サブコンポーネントeVRMにロードし、か
つ定義することによって、仮想計算機はコプロセッサを
構成し、スタートさせることができる。構成情報は次い
で、コマンド送信SVCの形でコプロセッサ管理プログ
ラムに渡される。コマンド送信SVCの装置オプション
・フィールドを使って、コプロセッサ管理プログラムが
与えるさまざまなサービスを要求する。構成情報は、次
のものからなっている。
−コプロセッサに割り振らなければならないメモリの量
                  、−コプロセッ
サに接続されるミニディスク−システム表示装置の使用
法(アクセス、モード) −コプロセッサに接続しなければならないアダプタ・カ
ード −通信アダプタに対する通信ボートの論理連関−未開振
り装置へのコプロセッサのアクセスの、ユーザへの通知
の有無 コプロセッサ管理プログラムは必要なメモリを割り振り
、BiO2およびROM  BASrCを書込み禁止メ
モリにコピーし、かつ指定された装置に接続する。この
管理プログラムは次いで、コプロセッサを初期化し、ス
タートさせる。仮想計算機はコプロセッサVRM構成要
素からの自発割込を処理し、コプロセッサ環境を終了さ
せるか、あるいはコプロセッサが所有していない装置に
コプロセッサがアクセスしたことを、ユーザに通知する
ことができなければならない。また、仮想計算機はコプ
ロセッサ管理プログラムに終了コマンドを送ってから、
コプロセッサ・サブコンポーネントをVRMから削除し
なければならない。コプロセッサ・カードに設けられて
いるハードウェアのサポートにより、コプロセッサに割
り振られていない装置に、コプロセッサがアクセスする
ことを防ぐのは容易に行える。しかしながら、処理装置
12は入出力ボートをブロックする能力を有していない
ので、装置ドライバはコプロセッサへの割振りを尊重し
なければならない。両方の処理装置が同一の装置へのア
クセスを試みた場合、その結果を予測することはできな
い。
コプロセッサ装置ドライバはコプロセッサ・カードにレ
ジスタを適切にセットし、コプロセッサ・カードが発生
した割込に応答し、かつメモリおよびVRM入出力サブ
システムを処理する標準的なメカニズムによって、コプ
ロセッサを制御する。
111發りJ!− コプロセッサVRM構成要素はコプロセッサ環境を管理
する。この構成要素は構成を確立し、かつコプロセッサ
VRM構成要素とオペレーティング・システムの構成要
素との間の経路指定を処理する。コプロセッサ管理プロ
グラムに一時に接続できる仮想計算機は、1台だけであ
る。この仮想計算機は仮想計算機のオペレーティング・
システムで作動しているコードによって決定されるもの
であるが、特定のオペレーティング・システムに依存す
るものではない。VRMのオペレーティング・システム
で作動している適用業務は、コプロセッサをスタートさ
せ、作動させられるが、ただし以下のインタフェースお
よび条件が満たされることを条件とする。
−適用業務はコプロセッサ環境および装置のスタート、
停止、および構成を行うためのユーザ・インタフェース
を備えていなければならない。
−コプロセッサVRM楕成要素は基本VRMの一部では
なく、したがってオペレーティング・システムから導入
しなければならない。
−コプロセッサ管理プログラムが与える構成サービスを
使用して、コプロセッサを構成しなければならない。 
・ −適用業務はコプロセッサ用の仮想端末装置をオーブン
しなければならない。(コプロセッサが直接表示装置を
駆動していても、これは必要である。) −適用業務はこれらのコールからの戻りコードを受は入
れ、処理できなければならない。
−適用業務はコプロセッサVRM構成要素からの仮想割
込を受は入れなければならない。
コプロセッサVRM構成要素は、次のサブコンポーネン
トからなっている。
−コプロセッサ管理プログラム(CPM)50− コプ
ロセッサ装置ドライバ(CPDD)51− コプロセッ
サ仮想端末装置(CPVT)52− コプロセッサ非同
期エミュレーション装置ドライバ(CPADD)53 − コプロセッサ専用装置装置ドライバ(CPODD)
54 これらをプロセスまたはプログラムと混同してはならな
い。これらの構成要素のおのおのは2つ以上のVRMプ
ロセスを含んでいてもよく、また数種類のルーチンで構
成されている(中には発呼者と同期して作動するものも
ある)。
コプロセッサ  プロゲーム コプロセッサ管理プログラムはVRM装置管理プログラ
ムであって、コプロセッサ・カードの処理を行うもので
ある。コプロセッサ装置ドライバに装置管理機能を与え
るほかに、コプロセッサ管理プログラムはコプロセッサ
の名前で、装置に接続する。コプロセッサが使用するす
べての専用装置を、コプロセッサ管理プログラムによっ
て接続しなければならない。この接続機能は仮想計算機
が装置を使用することを防ぐだけでなく、VRM装置ド
ライバがこの装置にアクセスすることも防止する。共有
装置の管理は、適切なVRMサーとスを介して、コプロ
セッサ管理プログラムが行ねなければならない(たとえ
ば、ディスク要求はミニディスク管理プログラムによっ
て、経路指定される)。コプロセッサ管理プログラムは
、次の機能を与える。
−仮想計算機からのコマンドを受は入れ、環境および装
置のスタート、停止、および構成を行う−エラーおよび
行わなければならない機能に関する、コプロセッサ装置
ドライバからの状態を受は入れる − 仮想計算機に割込を行って、エラーを報告する − 装置を所有し、これらの装置を仮想計算機が利用で
きないようにする。
−コプロセッサを終了させ、すべての資源を解放する コプロセッサ4想・末装置 コプロセッサ仮想端末装置モード処理プログラムは、コ
プロセッサに対し仮想端末装置を作成し、維持する働き
をする。この処理プログラムはVDD(仮想表示装置ド
ライバ)を利用して、鍵盤モード・インジケータをセッ
トし、適切な表示装置台2レベル割込ハンドラを拘束し
、コプロセッサ仮想端末装置用の表示装置を選択し、か
つPCモノクローム・モードおよびPCカラー・グラフ
ィックス・モードを、非PC表示装置にエミュレートす
る。表示装置の管理機能を与え、鍵盤人力の処理を行っ
た場合、このモード処理プログラムはVFLMで処理さ
れる第2型式のモード処理プログラムであって、その主
なものは高機能端末装置(HFT)である。コプロセッ
サ仮想端末装置を、他のモード処理装置と区別する唯一
のインタフェース要因は、VRMから見て、既に存在し
ているコードだけである(モジュール・コピーをVTR
M(仮想端末資源管理プログラム)によりて行う必要は
ない)。この処理プログラムが与える機能は、次のとお
りである。
−再配置されたビデオ・バッファを割り振り、コプロセ
ッサ・カードが表示装置を所有していない場合に、アド
レスをコプロセッサ・カードに渡して、書き込む。
−PCモノクローム・モードおよびPCカラー・グラフ
ィックス・モードを、非PC表示装置にエミュレートし
た場合に、ビデオ待ち行列と表示装置変換バッファ(グ
ラフィックスのみ)を割り振る。
−鍵盤装置ドライバから鍵盤位置コードを受は取り、こ
れをPCまたはPCATの走査コードに変換して、コプ
ロセッサ装置ドライバに渡す。
−通知をコプロセッサ装置ドライバから受は取って、非
PC表示装置を更新する。コプロセッサ仮想端末装置は
次いで、VDD (仮想表示装置ドライバ)に対して適
切な呼出しを行う。
−VTRM待ち行列要素を受は取って、表示装置′I!
:復元/保管することによって、仮想端末装置プロセス
の活動化、不活動化およびクローズを行う。
−コプロセッサ装置ドライバから通知を受は取って、鍵
盤モードを変更し、fi@LEDをトグルする。
コノコL埜叉」」1置上じ1仁氏 コプロセッサ装置ドライバはコプロセッサ・カードの処
理を行うが、コプロセッサが使用する他の装置の処理は
行わない。これが与える機能は、次のとおりである。
−コプロセッサ・カードをリセットし、所定の状態に初
期化する。コプロセッサ管理プログラムまたはコプロセ
ッサ仮想端末装置が、アドレスの解放を要求するまで、
すべてのアドレスをトラップし、エミュレートする。
−コプロセッサ・カードからの次の割込を、フィールド
に入れる。
−コプロセッサが停止した場合の割込 −人出カドラップによる割込 −再配置されたビデオ・バッファの書込みによる割込 − ビデオ待ち行列フル/ビデオ警告に対する割込 −コプロセッサがシステムのスピーカにアクセスしよう
とした場合の割込 コプロセッサ装置ドライバは割込に関する情報を収集し
、割込オフ・レベルを処理する(すなわち、コプロセッ
サ割込をリセットしてから、割込を実際に処理する。こ
れによって、他の装置割込を同時に処理することが可能
となる)。コプロセッサ装置ドライバは割込の大多数に
エミュレーションを行うが、しかし割込をさらに処理す
る必要がある場合には、割込はコプロセッサ管理プログ
ラムまたはコプロセッサ仮想端末装置へ、適宜経路指定
される。
−コプロセッサ管理プログラムおよびコプロセッサ仮想
端末装置からのコマンドを受は入れ、コプロセッサ環境
を処理する。
− コプロセッサのスタート、停止またはリセット −直接アクセス装置に対する入出力の許可−選択された
トラップされた人力に対するコプロセッサへのデータの
引渡し − コプロセッサの活動を終了し、すべての資源を解放
する。
コプロセッサB  エミュレーション凋萱ドラへ コプロセッサ非同期エミュレーション装置ドライバは、
コプロセッサとPC非同期アダプタの間の入出力を、2
つのブレーナ非同期ボートの一方へ再指定するルーチン
を与える。送られる制御情報を含んでいるデータ・バイ
トはPC非同期アダプタ形式から、ブレーナ非同期アダ
プタ形式に変換され、ブレーナ上の非同期ボートに再指
定される。ブレーナ上の非同期ボートから受は取られる
制御情報を含んでいるデータ・バイトはブレーナ非同期
アダプタ形式から、PC非同期アダプタ形式に変換され
、コプロセッサに再指定される。
コプロセッサ専 装置装贋ドラ パ コブロセッサ専用装置装置ドライバはコプロセッサのみ
が使用する装置の定義、初期化、および終了を行う。装
置がVRMに対して定義された場合、およびコプロセッ
サ管理プログラムがコプロセッサ用の装置に接続し、か
つこれとの接続を断った場合に、これらのルーチンが呼
び出される。
この装置ドライバは正規の作動中に装置を制御するイン
タフェースを与えるものではない。コプロセッサ管理プ
ログラムが装置に接続されている際に、コプロセッサは
装置を直接駆動する。
コブロセ・−イU 末オ萱 VRMは2つの型式の仮想端末装置、すなわち高機能端
末装置とコプロセッサ仮想端末装置をサポートする。
コプロセッサ仮想端末装置モード処理プログラムはfi
!1人力を受は取り、オフ・レベル・コプロセッサ装置
ドライバ・ルーチンの助けを借りて、表示装置を管理す
る。キー位置コードはPCATまたはPCの走査コード
に変換される。コプロセッサのユーザに利用できる鍵盤
構成オプションはない。
システム表示装置を、コプロセッサが共有装置または専
用装置のいずれがとして、コプロセッサがアクセスする
ことができる。共有環境において、コプロセッサは次の
モードで、表示装置アダプタにアクセスすることができ
る。
−監視 −表示装置アダプタはホット・キー(ALT−
ACT I ON )によって、主処理装置とコプロセ
ッサの間で切り換えられる。各cPUは制御状態にある
間にアダプタを変更することができる。2つの処理装置
の間で切り換えられた場合、スクリーン・データとアダ
プタ状態は復元される。コプロセッサからのすべての入
出力コマンドを、トラップし、保管して、制御がコプロ
セッサに戻されたときに、アダプタの状態を復元できる
ようにする。表示装置アダプタがPCモノクローム・ア
ダプタまたは拡張カラー・グラフィックス・アダプタで
ある場合、ビデオ・バッファはコプロセッサによって直
接アクセスされる。表示装置アダプタが18M拡張モノ
クローム・グラフィックスである場合には、ビデオ・バ
ッファのアクセスをシステムのメモリに再配置し、18
M拡張モノクローム・グラフィックスを使用して、スク
リーンを更新する。
システムの表示装置を、次の2つの方法の一方によって
、コプロセッサ専用とすることもできる。
−直接 −コプロセッサはシステムの表示装置を直接駆
動する。再配置されるビデオおよびトラップされる入出
力はない。ALT−ACTIONキー操作によって、表
示装置を主処理装置とプロセッサの間で切り換えること
はできない。コプロセッサ・セツションを終了し、表示
装置をシステムに戻すには、CTL−ALT−ACT 
I ONキー操作が必要である。
一コプロセッサへの表示装置の割振り −これを行うこ
とができるのは、複数のシステム表示装置があり、主処
理装置がコプロセッサに割り振られる表示装置を使用し
ない場合だけである。また、コプロセッサが直接モード
で他のシステム表示装置を使用していない場合、ALT
−ACT I ON七 + 十品 k  f、j市 m
 !  イ   −→ −L   1L 爪 し   
 )  −飄を終了せずに、仮想端末装置のリングを回
ることができる。
複数台の表示装置があるシステムにおいて、コプロセッ
サは2台以上の表示装置を使用することができる。しか
しながら、これらの表示装置のうち、監視または直接モ
ードにできるのは、1台だけである。コプロセッサが使
用する他の表示装置は、コプロセッサに割り振られなけ
ればならず、またコプロセッサのセツション中は、主処
理装置が使用できなくなる。
表示装置の構成は、コプロセッサが使用する各表示装置
について下記の情報を指定することがらなっている。
−表示装置アクセス −監視 −直接 −割振り 一 表示装置モード −PCモノクローム −DI”  占 → − −表示装置の型式 −PCモノクローム・アダプタ/モニター  18M拡
張モノクローム・グラフィックス・アダプタ/モニタ ー 拡張カラー・グラフィックス・アダプタ/拡張カラ
ー表示装置モニタ ー 拡張カラー・グラフィックス・アダプタ/PCモノ
クローム・モニタ ー 主コプロセッサ表示装置 −アダプタとモニタの組合せに対する装置識別子 コプロセッサ専用装置。専用装置とは、コプロセッサ・
セツションの期間中コプロセッサに割り振られるものを
いう。上記の共有装置の場合を除き、人出力パスの装置
を共有することはできない。
どの入出力装置をコプロセッサに接続するかを宣言する
ことによって、コプロセッサの構成は完了する。コプロ
セッサに割り振られる各装置に対して、コプロセッサ管
理プログラムはVRMを使って、コプロセッサに装置を
割り振る。装置を直接入出力で使用する場合には、コプ
ロセッサ管理プログラムは装置(アドレス)に対してト
ラッピング論理をセットし、装置に対するコプロセッサ
の直接アクセスを可能にする。装置をエミュレートしな
ければならない場合には、コプロセッサ管理プログラム
はコプロセッサ・カードのトラッピング論理を変更しな
い。
コプロセッサVRMサブシステムの開 と終了仮想計算
機は下記の活動を行なってから、コプロセッサ環境を確
立しなければならない。
1、コプロセッサ仮想端末装置に対して、コード定義5
vcIF!:送る。
2、コプロセッサ装置ドライバに対して、コード定義S
VCおよび装置定義SVCを送る。
8、コプロセッサ非同期エミュレーション装置ドライバ
に対して、コード定5svcおよび装置定義SVCを送
る。
4、コプロセッサ専用装置ドライバに対して、コード定
*SVCを送る。
5、コプロセッサ専用装置に対して、装置定義SVCを
送る。
6、コプロセッサ管理プログラムに対して、コード定義
SVCおよび装置定義SVCを送る。
コプロセッサを初めてスタートさせる、あるいはコプロ
セッサのセツションを終わってから再スタートさせるに
は、仮想計算機は下記のステップを行わなければならな
い。
1、コプロセッサ管理プログラムを接続する。
2、BiO2とBASICをメモリにロードする。
3、コプロセッサをオーブンする。
4、コプロセッサ管理プログラムが与える構成サービス
を使用して、コプロセッサ環境を構成する。
5、仮想端末装置をコプロセッサにオーブンする。
6、コマンドをコプロセッサに送って、コプロセッサを
スタートさせる。
コプロセッサのセツションを終了させるには、仮想計算
機は下記のステップを行わなければならない。
1、コプロセッサをクローズする。
2、コプロセッサ仮想端末装置をクローズする。
3、コプロセッサ管理プログラムとの接続を切る。
コプロセッサVFLMサポート・コードおよびコプロセ
ッサ専用装置を、VRMがら削除するには、仮想計算機
は下記のステップを行わなければならない。
1、装置定義SVcの削除形式を使って、すべてのコプ
ロセッサ専用装置を削除する。
2、装置定義SVCの削除形式とコード定義s■Cを使
って、コプロセッサ専用装置装置ドライバとこれに関連
したコードを削除する。
8゜装置室1svcの削除形式とコード定1svCを使
って、コプロセッサ非同期エミュレーション装置ドライ
バとこれに関連したコードを削除する。
4、装置室asvcの削除形式とコード定義s■Cを使
って、コプロセッサ装置ドライバとこれに関連したコー
ドを削除する。
5、装置定義SVCの削除形式とコード定義SVCを使
って、コプロセッサ管理プログラムとこれに関連したコ
ードを削除する。
6、装置定義SVCの削除形式を使って、コプロセッサ
仮想端末装置を削除する。
仮想舌2デ祷、 ン フェース コプロセッサを管理するコマンドが、コマンド送信SV
Cによってコプロセッサ管理プログラムに送られる。仮
想計算機は「装置接続5VCJによって、コプロセッサ
管理プログラムに接続済みでなければならない。送信コ
マンドによって指定されたI ODNはコプロセッサ管
理プログラムの10DNである。
サポートされている装置のオプションには、次のものが
含まれている。
2=コプロセッサをオープンする 3=コプロセッサをクローズする 5=主メモリを割り振る 6=ROMをロードする 7=コプロセッサ表示装置を構成する 8=装置をコプロセッサに割り振る 9=非割振り装置のアクセスに割り込む10=ミニデイ
スクを割り振る 11=同期通信ポートを再指定する 12=コプロセッサをスタートする 13=デバツグ・オプションをセットするこれらのオプ
ションは同期または非同期のいずれかによって、行われ
る。オペレーティング・システムをコプロセッサ管理プ
ログラムに接続した時点で指定されたレベルおよびサブ
レベルで、通知を受は取る。
コプロセッサがコプロセッサに接続されていない装置へ
のアクセスを試みた場合に、自発割込が仮想計算機に送
られる。コプロセッサが作動を継続することを認めるか
、あるいはコプロセッサを終了させなければならないか
を、仮想計算機が解決するまで、コプロセッサは停止さ
せられる。
仮想計算機にコプロセッサのセツションを終了すること
を通知するのにも、自発割込が送られる。
ユーザがPCATの環境を調製できるようにするための
、オペレーティング・システムのコマンド、P CS 
T A Ft T カ設けられてイル。pcsTART
によって、ユーザがコプロセッサに接続しなければなら
ないシステム資源の組合せを選択できるようになる。ユ
ーザは任意選択的にこの構成を省略時のプロファイルに
保管し、後でコプロセッサを開始する際に使用すること
もできる。PCSTARTは一般的なユーザにプロンプ
ト・モードも与える。このモードにおいては、ユーザに
はまずパラメータの現在の省略時の値が示され、かつこ
の値を変更するだめのオプションが与えられる。
コプロセッサ・カードにはメモリがないので、システム
・メモリと人出力チャネル接続メモリを混ぜ合わせたも
のとして、メモリが与えられる。
メモリはまず、入出力チャネルに差し込まれているカー
ドから割り振られる。十分なチャネル接続メモリがない
(何もないこともある)場合には、残りのメモリがシス
テム・メモリから与えられ、ページ不在を発生しないよ
う固定される。[OCCセットアツプして、入出力チャ
ネル・アドレスを適切な仮想アドレスに変換することに
よって、このことが行われる。仮想アドレスはシステム
・メモリへの入出力装置のアクセスに専用のM M U
セグメント・レジスタを使用する。チャネル接続メモリ
はアドレス0になければならず、かつこれをコプロセッ
サが認識し、使用する場合には、連続したものでなけれ
ばならない。コプロセッサが利用できるシステム・メモ
リの量は、VRMおよびオペレーティング・システムに
必要な量を満たしたあとで、どれ位残っているかによっ
て左右される。
入出力チャネルに接続された装置は、装置固有な居住に
より、異なった方法でサポートされる。
下記の定義は装置サポートの範囲を記述したものである
−生処理装置専用 −この装置を利用できるのは主処理
装置だけである。
−共有 −両方の処理装置が並行してアクセスできるか
(たとえば、ディスク、DMA )、あるいはこれら画
処理装置の間で動的に切り換えることができるか(たと
えば、表示装置)のいずれかの場合に、装置は共有され
る。装置に入出力コマンドを送ることができるのが主処
理装置だけになるようにすると、装置の共有が達成され
る。
−専用 −装置はコプロセッサ・セツション中コプロセ
ッサに割り振られる。装置がPCATコンパチブルのも
のである場合(すなわち、ブレーナ・シリアル・ボート
のもの)、この装置にアクセスするコプロセッサは介入
なしで、直接この装置とつながる。装置がPCATコン
パチブルでない場合、この装置にアクセスするコプロセ
ッサは主処理装置によってトラップされ、エミュレート
される。
−コプロセッサ専用 −コプロセッサだけが利用できる
もの。主処理装置がこれを使うことはできず、また装置
が主処理装置に割り振られることもない。
j1賢 鍵盤は主処理装置とコプロセッサの間で共有される装置
である。装置ドライバと、PCATのi1制御装置イン
タフェースをコプロセッサに与えるモード処理プログラ
ムが、■RMコプロセッサ端末装置サポート・コードに
常駐している。
モード処理プログラムはVRMW盤装置ドライバからキ
ー位置を受は取り、これをPCまたはPCAT走査コー
ドに変換し、この走査コードをシミュレートされた鍵盤
バッファに入れ、その後コプロセッサに対する割込を発
生する。PC用およびPCAT用走査コード・セットは
、エミュレートされた!盤の型式の索引が付いた構造に
記憶される。シミュレートされた鍵盤バッファは16バ
イトのFIFO待ち行列であり、オーバランのための1
7番目のバイトを有している。
xx  xxキーの鍵盤レイアウトはPCATの鍵盤の
スーパーセットである。このスーパーセットはPCAT
の鍵盤固有な文字記号をすべて含んでいるが、その内の
幾つかは他のキー位置へ移動したり、あるいは重複した
りしている。たとえば、新しいカーソル移動キーと編集
キー(INS、DEL、PAGE  UP%PAGE 
 DOWN、HOMEおよびEND ’)のセットは数
字の刻まれていない独立したものとして解釈される。コ
プロセッサ仮想端末装置はNUMLOCKキーおよびS
HI FTキー、ならびにCAPSLOCK。
5CROLL  LOCK%CTRL、およびALTキ
ーの状態フラッグを維持する。NUMLOCKおよび5
HIFTの組合せ状態により、5HIFTオン/オフが
新しい固有カーソル移動キーおよび編集キーの走査コー
ドへ送られ、刻印のあるキーの変換を行う。
システムの観点から見た場合、コプロセッサ・モード処
理プログラムは生モード、すなわちキーのすべてのオン
およびオフ状態を受は取るモードのvFLMjIm装置
ドライバと共に作動する。モード処理プログラムがコン
トロール/シフト・キーを記憶しているのであるから、
モード処理プログラムは走査ブレーク・コードを送るこ
とができる。
CNTL−ALT−ACT I ONキー操作によって
コプロセッサの作動を、ユーザが終了させようとした場
合の状況もモード処理プログラムはトラップする。これ
はユーザがAIXオペレーティング・システムでPCE
NDコマンドを入力することを、シミュレートしたもの
である。
ディスク システムの固定ディスクは論理ミニディスクに分割され
、ミニディスク管理プログラムによって管理される。P
CATの固定ディスクはミニディスクを使用することに
よって、エミュレートされる。所定のセツション中に、
2個までのミニディスクを割り振ることができる。コプ
ロセッサから固定ディスクへのインタフェースは、BI
O8を通るものだけである。物理ディスク・アドレスに
入出力命令を送ろうとすると、これはコプロセッサ・カ
ードによってトラップされ、未開振り装置アクセスと解
釈される。
見且且豆且定 コプロセッサ非同期装置ドライバがあり、これはPCA
Tのシリアル/パラレル・カードのシリアル・ポートを
、固有なブレーナ・シリアル・ポートにエミュレートす
る。コプロセッサとPCATのシリアル/パラレル・カ
ードとの間の入出力は、2つの非同期ボートの一方へ再
指定される。
送られる制御情報はPCATのシリアル/パラレル・カ
ード形式から、ブレーナ・シリアル・ポート形式に変換
され、ブレーナ上の非同期ボートへ再指定される。ブレ
ーナの非同期ボートから受は取る制御情報を含んでいる
データ・バイトは、ブレーナ・シリアル・ポート形式か
ら、PCATクシリアルパラレル・ポート形式に変換さ
れ、コプロセッサへ再指定される。
、尺骨   ン フェース コプロセッサ仮想端末装置モード処理プログラム仮想計
算機インタフェースには、目的がひとつある。ユーザが
仮想計算機の終了を希望していることを、仮想記憶に伝
えることである。操作率からPCENDシェル・コマン
ドを入力するか、あるいはCTL−ALT−ACT I
 ONキー操作を行うことによって、ユーザはコプロセ
ッサを終了させることができる。後者の方法を使うと、
コプロセッサ・モード処理プログラムが完了コードと共
に、仮想計算機へ未請求割込を送る。
VTRMとのインタフェース コプロセッサ仮想端末装置モード処理プログラムの主要
部分は、待ち行列によって駆動される。
VTRM(仮想端末資源管理プログラム)からCPVT
 (コプロセッサ仮想端末装置)への通信は、VTRM
からのコマンドに対してCPVTが与える待ち行列から
なるコマンド・ループで構成されている。以下で説明す
る待ち行列要素はVTRMによって、コプロセッサ仮想
端末装置モード処理プログラム・コマンド待ち行列に入
れられる。
a) Jち′−1ローズ 素。この待ち行列要素を受は
取ると、CPVTはその終了前に必要なすべての活動を
行い、この待ち行列要素のVTRMに対する処理の完了
を確認する。
b)待ちUヒ  。コプロセッサの仮想端末装置を活動
化する場合に、この待ち行列要素を、コプロセッサ仮想
端末装置モード処理プログラムへ送る。
監視モードの場合、コプロセッサ仮想端末装置モード処
理プログラムは次の機能を果たす。
− コプロセッサの停止 −VDDの活動化 −PCまたは拡張カラー・グラフィックス・アトブタ・
アダプタの場合。
−再配置されたビデオ・バッファの内容による表示装置
の復元。
−ビデオ・ポートの復旧 −コプロセッサの開始 システム表示装置に直接アクセスしている場合、コプロ
セッサ仮想端末装置モード処理プログラムは次の機能を
果たす(−回限りの活動)。
−コプロセッサのスタート 非システム表示装置に直接アクセスしている場合、コプ
ロセッサ仮想端末モード処理プログラムは次の機能を果
たす。
−活動化を示す。このモードにおけるコプロセッサ仮想
端末装置の全機能は、!!盤装置ドライバからキースト
ロークを受は取って、これらをコプロセッサに対して経
路指定することである。したがって、表示装置に関連し
た活動は行われない。
c) J寺ち′テη1\ゞ動ヒー素。この待ち行列要素
を受は取ると、CPVTはコプロセッサを停止し、ビデ
オ・バッファの内容を放棄し、人出力ポート値を保管す
る。
コプロセッサの仮想端末装置を不活動化する場合に、こ
の待ち行列要素はコプロセッサ仮想端末装置モード処理
プログラムへ送られる。CPVTが直接モードの場合、
この待ち11列要素がCPVTに送られることはない。
これはVDDが既にコマンドを送って、不活動化要求を
阻止しているからである。
監視モードの場合、コプロセッサ仮想端末装置モード処
理プログラムは次の機能を果たす。
−コプロセッサの停止 −PCまたは拡張カラー・グラフィックス・アトブタ・
アダプタの場合。
−再配置されたビデオ・バッファの割振りと、コプロセ
ッサへのアドレスの送信 −の再配置されたビデオ・バッファへの表示製内容の転
送 −コプロセッサのスタート 非システム表示装置に直接アクセスしている場合、コプ
ロセッサ仮想端末モード処理プログラムは次の機能を果
たす。
−不活動化を示す。表示装置に開運した活動は行われな
い。
CPVTからVTRMへの通信は、CPVTからのコマ
ンドに対してVTRMが与える待ち行列からなるコマン
ド・ループで構成されている。
コプロセッサ仮想端末装置はVTRMに、次の待ち行列
要素を送る。
−−り」L二じW。CPVTが仮想計算機からDETA
CH待ち行列要素を受は取ると、この待ち行列要素がV
TRMへ送られる。コプロセッサ仮想端末装置自体をク
ローズするため、この作動にはタスク消去された構成要
素が必要である。次いで、CPVTはVTRMからのク
ローズ待ち行列要素を待つ。
コプロセッサ8置ドラ バのインタフェースコプロセッ
サから仮想端末装置のエミュレーションを保証する割込
を受は取ると、CPDDはCPVTに通知する。
−ビデオ更新。表示装置アダプタがAPA−8モノクロ
ームでない場合には、CPDオフ・レベル・プロセスが
入出カドラップを処理し、スクリーンを更新できる。し
かし、表示装置アダプタがAPA−8モノクロームの場
合には、CPDオフ・レベル・プロセスが入出カドラッ
プをある程度処理し、次いでスクリーンの更新を行うよ
うCPVTに通知する。これを行うにはCPVTを呼び
出す必要があるが、これはCPVTが仮想表示装置ドラ
イバ(VDD)に直接拘束されており、VDDがAPA
−8モノクローム・スクリーンの更新に使われるからで
ある。CPVTが行わなければならない動作には、次の
VDDコマンドの呼出しが含まれている。
−モードの設、定 −カラー・テーブルの設定 −テキストの作成 −スクロール −カーソル移動 −カーソルの定義 −EPAの更新 −鍵盤コマンド −PCATモード・インジケータの変更。VDDへの呼
出しを行って、LEDS!!盤の状態を更新する。
一鍵盤スイッチ。PC走査コード・テーブルまたはPC
AT走査コード・テーブルのいずれかをポイントする索
引変数を更新する。
コプロセッサ装置ドライバ コプロセッサ装置ドライバはコプロセッサ・アダプタ・
カードと通信を行い、これを制御するために使用される
ルーチンの集合物である。これらのルーチンはコプロセ
ッサに対してすっきりしたインタフェースを与える。各
ルーチンは特定の機能を行い、次いで発呼者に戻る同期
サブルーチンである。コプロセッサ装置ドライバ・ルー
チンの各々は、VRMサービス・ルーチン以外の他のコ
プロセッサ装置ドライバ・ルーチンを使うことができる
。サービス・ルーチンを呼び出せるのは、VRMプロセ
ス管理プログラムだけである。
コプロセッサ装置ドライバVRMサービス・ルーチンは
、一連のサブルーチンであり、システム −内のあらゆ
る基本VRM装置に必要なものである。
システムの観点から見て、適切な実行には、次の2つの
ルーチンが必要である。これらのルーチンを呼び出すこ
とができるのは、VrLM管理プログラム・ルーチンだ
けであって、VMI内あるいはVMI上で、プロセスま
たは仮想計算機によって使用されることはない。
及人上N手皿 CPDMAINはコプロセッサ装置ドライバ・コード・
モジュールへの主入口点である。このルーチンは次の基
本装置ドライバ機能で構成されている。
−装置定義 このサービスが呼び出されるのは、仮想計算機によって
装置室1svcが、コプロセッサ装置ドライバ・モジュ
ールへ送られたときである。この時点で、第2レベル割
込ハンドラ(SLIH)は適正な割込レベルで作成また
は接続されておらず、したがってコプロセッサからの割
込は、この時点で割込禁止とされる。この点に注意を払
わなければならないのは、コプロセッサからの割込が処
理されないことになり、システムを立往生させてしまう
ことがあるからである。このルーチンの人力パラメータ
はDDS (装置定義構造)であり、これは受は入れら
れ、ルーチンの静的エリ゛アに記憶される。DDSの妥
当性が次いでチェックされ、DDSが無効なことが判明
すると、エラー・コードがVRMに戻される。それ以外
の場合には、DDSが記憶されている場所のアドレスが
、戻りコードとして、プロセス管理プログラムに戻され
る。
−装置の初期設定 コプロセッサ管理プログラムが「装置接続」をコプロセ
ッサ装置ドライバへ送った結果として、このサービスが
呼び出される。コプロセッサには初期プログラム・ロー
ドが行われ(すなわち、CPD  PORルーチンが呼
び出され)、すべての割込はブロックされる。コプロセ
ッサが初期設定されて、入出力アドレスにトラップされ
、必要なすべてのビデオ情報がセットされる。共通デー
タ領域もすべて初期設定される。
VRMの「装置接続」サービスの一部として、装置の第
2レベル割込ハンドラ(SLIH)が適切な割込レベル
に接続される。このルーチンに対する入力パラメータと
して渡された構造を調べて、 −5LIHID、装置I
D(DID)およびモジュールID(MID)を決定し
、後で参照する場合に備えて、保管することができる。
VRM$Change機能をこの時点で呼び出し、5L
rHおよびオフ・レベル処理ルーチンの入口点を変更し
、コプロセッサの割込に対する応答時間を早くする。
−装置の終了 コプロセッサ装置ドライバのVRMに指定したストップ
・オプションの付いた「装置接続」を、コプロセッサ管
理プログラムが発生した結果として、終了ルーチンが呼
び出される。このサービスはコプロセッサの使用、およ
びそのサポートe終了する。コプロセッサは停止し、す
べての資源はVRMに戻される。コプロセッサは装置定
義ルーチンを呼び出したときと同じ試態に、戻される。
このようにして、コプロセッサ装置ドライバを再度接続
することができ、仮想計算機が他の装置定義SVCを発
生する必要がなくなる。
−例外ハンドラ 5rGNAL(すなわち、ソフトウェア割込)がコプロ
セッサ装置ドライバに送られると、例外ハンドラが実行
される。このルーチンはVRMTIMERから送られた
タイマ信号を処理し、他のプロセスからの信号を終了さ
せる。このルーチンはプロセスから終了信号を受は取る
たびに、(−1)という戻りコードを返す。コプロセッ
サ管理プログラムに対してコプロセッサを終了させる方
法は、指定されたストップ・オプションの付いた「装置
接続」を送ることだけである。
−入出力開始 待ち行列要素がコプロセッサ装置ドライバの待ち行列に
入れられると、入出力開始機能が呼び出される。コプロ
セッサ装置ドライバが受は取らなければならない待ち行
列要素は、「タスク消去操作」にセットされた操作オプ
ション・フィールドの付いたC0NTR0L要素だけで
ある。コプロセッサ装置ドライバは待ち行列要素を読み
取り、要素を待ち行列から除去する。「タスク消去要素
」以外の待ち行列要素を受は取った場合、コブロセッサ
装置ドライバはエラーを記録し、作動を継続する。
VRMプロセス管理プログラムは次の2つのパラメータ
によって、CPDMAINを呼び出す。
1)要求された機能の型式、および2)呼び出された機
能に必要な入力パラメータ。
2レベル割゛入ハンドラ(SLIH コプロセッサの5LIHは第ルベル割込ハンドラ(FL
IH)によって呼び出されるものであり、FLIHは割
込が発生した場所の割込レベルに接続されている。複数
の割込を主処理装置の割込レベルのひとつに、つなぐこ
とができるのであるから、FLIHが接続されているす
べての5LrHtポーリングし、どの5LIHが所属し
ているのかを決定する必要がある。コプロセッサの5L
IHを初めて呼び出すと、SL[Hはコプロセッサが割
込を起こしたのかどうかをチェックする。コプロセッサ
が割込を行ったものでない場合には、5LIHは(2)
という戻りコードを返す。
他の場合には、5LIHは割込を処理して、復帰する。
コプロセッサ第2レベル割込ハンドラの主な機能は、コ
プロセッサ・カードが宣言した割込を処理することであ
る。コプロセッサの割込制御レリスタのセット方法によ
って、5種類の割込が生じる。これら5種類の割込は、
次のとおりである。
−コプロセッサが停止した場合の割込 −人出カドラップによる割込 −再配置されたビデオ・バッファの書込による割込 −ビデオ待ち行列フル/ビデオ警告に対する割込 −コプロセッサがシステムのスピーカにアクセスしよう
とした場合の割込 割込があった場合、完全な処理を行うのに必要な、アダ
プタからのすべての情報を、5LIHは収集する。他の
場合には、5LIHはDDSのアドレスに等しい戻りコ
ードを返すことによって、割込がOFF  LEVEL
で処理されるようにスケジュールする。主処理装置の割
込レベルに活動割込がない場合に、5LIHのオフ・レ
ベル処理ルーチンが呼び出される。このルーチンは割込
を処理し、コプロセッサを再スタートさせる。割込の処
理がコプロセッサ管理プログラムまたはコプロセッサ仮
想端末装置(すなわち、入出力読取りトラップに返され
たデータ)によって行われる場合には、オフ・レベル・
プロセスがコプロセッサ管理プログラムまたはコプロセ
ッサ仮想端末装置のいずれかに、適宜通知を行う。
下記のルーチンは、コプロセッサ管理プログラムまたは
コプロセッサ仮想端末装置のいずれかが使用するもので
ある。最初の4つはコプロセッサ環境の一般的な制御機
能を与えるものである。CPDDRETルーチンはトラ
ップされた入出力読取りの割込処理プロセスの一部とし
て、データをコプロセッサに返すために使用される。C
PDTRAPおよびCPDINTは初期設定に使用され
る。
コプロセッサの電源す  リセット(POR)電源をオ
フとせずに、あるいは主処理装置の再初期プログラム・
ローディングを行ったりしないで、コプロセッサの再初
期プログラム・ローディングを行うために、この機能を
使用する。プログラムがコプロセッサ内で作動している
場合、操作員が電源をオフにし、再度オンにしたのと同
じ態様で、プログラムは終了する。処理装置の複合した
状態(すなわち、タイマ、割込制御装置などの)および
一般的な状態は、リセットされる。ただし、入出力アド
レスのトラップ論理、およびビデオならびに待ち行列の
情報は、変更されずに維持される。
コプロセッサのスタート このサービスを使って、コプロセッサをスタートさせる
。これを再開操作と考えてもよいので、このルーチンを
呼び出す前にコプロセッサ′#:構成しておかなければ
ならない。サービスを、コプロセッサ管理プログラムお
よびコプロセッサ仮想端末装置の両方によって呼び出し
て、最初のスタートを行い、かつコプロセッサが停止さ
れてからの作動を継続する。コプロセッサを停止させた
ものを処理し、その後コプロセッサ装置ドライバが作動
を継続できるようにするのは、発呼者の責任である。
コプロセッサの停止 このサービスを使つ七、コプロセッサを停止させる。こ
のサービスを、コプロセッサ管理プログラムおよびコプ
ロセッサ仮想端末装置の両方によって呼び出して、コプ
ロセッサを停止させ、外部で発生された(ただし、一時
的な)停止を作動に必要とする装置の変更を行う。コプ
ロセッサを停止させたものを処理し、その後コプロセッ
サが作動なm統できるようにするのは、発呼者の責任で
ある。
コブロセ−1に・ る 入のシ々ニレ−ジョンこのルー
チンによって、コプロセッサに対する特定の割込レベル
における割込を、発呼者が宣言することが可能となる。
たとえば、コプロセッサ仮想端末装置はこのルーチンを
使用して、コプロセッサに対する!!盤割込のシミュレ
ーションを行うことができる。コプロセッサ非同期エミ
ュレーション装置ドライバはこのルーチンを使って、プ
レーナ同期ボートからの割込のシミュレーションを行う
ことができる。
データの−しのトラップ このルーチンは間接的に、割込処理プロセスの一部であ
る。コプロセッサがトラップされている入出力アドレス
に、読取りを行った場合、コプロセッサは割込回線を宣
言する。割込の結果として、CPD  OFF  LE
VELルーチンが実行される。これはコプロセッサが読
取りを行おうとした場所、および何がデータを返さなけ
ればならないのかを決定するものである。コプロセッサ
管理プログラムまたはコプロセッサ仮想端末装置がこの
ボートを担当している場合、それぞれの構成要素に信号
が送られる。コプロセッサ管理プログラムまたはコプロ
セッサ仮想端末装置が要求されたデータを獲得した場合
には、このルーチンを呼び出して、データをコプロセッ
サに渡す。データがコプロセッサに書き込まれると、ト
ラップは解除され、コプロセッサは作動を継続できるよ
うになる。
セ・1 1セ・1 の −111 呼出しプロセスはこのルーチンを使って、利用できる6
4にの入出力アドレスの各入出力アドレスの解釈方法を
、コプロセッサに伝える。ゼロから始まる8つのアドレ
スの各グループを、次の動作のひとつにセットすること
ができる。
−このボートへのコプロセッサの直接アクセスの許可(
トラップなし) −仮想計算機へのコプロセッサの割込のトラップおよび
無視、またはトラップおよび通知−コプロセッサ管理プ
ログラムのトラップおよび通知 −コプロセッサ仮想端末装置のトラップおよび通知 −コプロセッサ装置ドライバによるトラップおよびエミ
ュレーション 初期設定時に、コプロセッサはすべての入出力アドレス
にトラップするように、セットされる。
次いで、コプロセッサ管理プログラムおよびコプロセッ
サ仮想端末装置は、どのボートにアクセスを認のるかを
セットする。コプロセッサ装置ドライバの呼出しは、次
のとおりである。
CALL CPDTRAP(Start addr、 
Length、 Set flaB )コブロセ・・す
のネ 舌 /P この機能をコプロセッサ装置ドライバ主プロシージャが
使用して、コプロセッサ・アダプタ・カードを初期設定
する。コプロセッサ管理プログラムも、このプロシージ
ャをセツションを終了するために使用する。コプロセッ
サの使用は中断され、コプロセッサ・アダプタに電源投
入中のリセットが行われる。トラップ論理がリセットさ
れ、すべてのアドレスにトラップし、かつビデオおよび
待ち行列パラメータが省略時の値にリセットされる。
ポストをコプロセッサVRM構成要素間の非同期通信の
手段として使用する。ポストを介して事象制御ブロック
(ECB)を受は取ると、各コプロセッサ構成要素には
、第5図に示すように、コプロセッサ事象ブロック(C
EB)内の適切なセクションを更新する要求が行われる
。CEBはコプロセッサVRM構成要素の共通データ領
域の一部である。CEBをコプロセッサ構成要素で読み
取って、現在の操作に関係する有用な情報を得ることも
できる。CEBを照会装置SVC用の照会装置構造の一
部として、仮想計算機に渡すこともできる。
F0発明の効果 この発明によれば、新しいデータ処理システムが、新し
いプログラムの外、コプロセッサを他のシステム資源と
ともに用いて、既存のすべてのプログラムを作動でき、
かつ新しいデータ処理システムに付随している、表示装
置や印刷装置などの高機能構成部品を利用できる仮想計
算機を1台構成できるという効果を有する。
【図面の簡単な説明】
第1図は、この発明の方法を用いると有利である仮想記
憶システムの略図である。 第2図は、データ処理システムおよび仮想記憶計算機に
対する、第1図に示す仮想資源管理プログラムの関係を
示す図面である。 第8図は、第1図のデータ処理システムの詳細なブロッ
ク線図である。           ゛第4図は、コ
プロセッサのシステムと、入出力サブシステム(IO8
)との間の関係を示す図面である。 第5図は、コプロセッサ事象ブロック・データ構造を示
す図面である。 10・・・・ハードウェア部分・11 ・・・・ ソフ
トウェアまたはプログラミング部分、12.、、、処理
装置機能、12.、、、主中央演算処理装置、13 、
、、、メモリ管理機能、13.、、、メモリ制御装置、
13a、、、、読取り専用記憶ブロック、13b、、、
、  リフレッシュ・チャージ・ブロック、14、、、
、システム・メモリ機能またはRAM、15、、、、シ
ステム・パス、16.、、、入出力チャネル制御装置(
IOCC)、16a、、、、ブロック16b、、、、入
出力チャネル制御装置機能の他の部分、17.、、、磁
気ディスク装置機能、18 、、、、表示機能、19.
、、、コプロセッサ機能20、、、、ブロック、21.
、、、入出力パス、22 (22a−22c )−−−
−適用業務プログラム、23、、、、適用業務開発援助
ツール、24.、、。 オペレーティング・システムのカーネル、25011.
仮想資源管理プログラム(VRM)、27100.メモ
リ・パス、30.、、、オペレーティング・システム、
31.、、、仮想計算機インタフェース、32 、、、
、ハードウェア・インタフェース、34、、、、 リフ
レッシュ制御装置、35.、、、プリント回路カード、
プロセッサ・カード、40、、、、m盤制御装置、41
.、、、通信制御装置、42、、、、割込制御装置、4
3.、、、直接メモリ・アクセス制御装置、44.、、
、人出力パス、46910.コプロセッサ・カード、4
7および489000表示装置アダプタ・カード、49
aおよび49b、、、、表示装置、50.、、、コプロ
セッサ管理プログラム、(CPM)51 、.0.コプ
ロセッサ装置ドライバ、(CPDD)、52.、、、コ
プロセッサ仮想端末装置(CPVT)、53.、、。 コプロセッサ非同期エミュレーション装置ドライバ(C
PADD)、54.、、、  コプロセッサ専用装置装
置ドライバ(CPODD )。 出願人  インターナショナル・ビジネス・マシーンズ
・コーポレーション 復代理人  弁理士  合  1)   潔第3図 コプロセッサソフトウェア構造 第4図

Claims (1)

  1. 【特許請求の範囲】 多様な適用業務プログラムを並行して実行するため複数
    の仮想計算機を確立するように主プロセッサ上で実行さ
    れる仮想資源管理手段(VRM)を備え、前記VRMが
    前記仮想計算機の各々に複数個のオペーレーティング・
    システムのひとつを含む資源を割り当てている、仮想記
    憶仮想計算機型データ処理システムにおいて、 コプロセッサと、 前記VRMに含まれていて、前記コプロセッサに1つの
    仮想計算機インターフェースを定義する手段と、 前記主プロセッサにより作動させさられるオペーレーテ
    ィング・システムの制御下で、前記コプロセッサが、適
    用業務プログラムを処理するよう作動させる手段と、を
    有することを特徴とするコプロセッサを備えた仮想記憶
    仮想計算型のデータ処理システム。
JP62002016A 1986-01-17 1987-01-09 コプロセツサを有する仮想記憶仮想計算機型のデ−タ処理システム Pending JPS62171066A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US820456 1986-01-17
US06/820,456 US4787026A (en) 1986-01-17 1986-01-17 Method to manage coprocessor in a virtual memory virtual machine data processing system

Publications (1)

Publication Number Publication Date
JPS62171066A true JPS62171066A (ja) 1987-07-28

Family

ID=25230805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62002016A Pending JPS62171066A (ja) 1986-01-17 1987-01-09 コプロセツサを有する仮想記憶仮想計算機型のデ−タ処理システム

Country Status (4)

Country Link
US (1) US4787026A (ja)
EP (1) EP0230353A3 (ja)
JP (1) JPS62171066A (ja)
BR (1) BR8700173A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009258798A (ja) * 2008-04-11 2009-11-05 Nec Corp 仮想マシンシステム、ホスト計算機、i/oカード、仮想マシン構築方法およびプログラム

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5088033A (en) * 1986-04-28 1992-02-11 Xerox Corporation Data processing system emulation in a window with a coprocessor and I/O emulation
US4920481A (en) * 1986-04-28 1990-04-24 Xerox Corporation Emulation with display update trapping
US5113517A (en) * 1986-04-28 1992-05-12 Xerox Corporation Concurrent display of data from two different processors each having different display font and user interface for controlling transfer of converted font data therebetween
US4937036A (en) * 1986-04-28 1990-06-26 Xerox Corporation Concurrent display of data from two different display processors and user interface therefore
US5062042A (en) * 1986-04-28 1991-10-29 Xerox Corporation System for managing data which is accessible by file address or disk address via a disk track map
DE3744200A1 (de) * 1987-12-24 1989-07-13 Heidelberger Druckmasch Ag Vorrichtung, verfahren zur sicherung von daten
US5148516A (en) * 1988-08-30 1992-09-15 Hewlett-Packard Company Efficient computer terminal system utilizing a single slave processor
JPH0293952A (ja) * 1988-09-30 1990-04-04 Hitachi Ltd 仮想計算機システム
US5144692A (en) * 1989-05-17 1992-09-01 International Business Machines Corporation System for controlling access by first system to portion of main memory dedicated exclusively to second system to facilitate input/output processing via first system
US5155809A (en) * 1989-05-17 1992-10-13 International Business Machines Corp. Uncoupling a central processing unit from its associated hardware for interaction with data handling apparatus alien to the operating system controlling said unit and hardware
US5185864A (en) * 1989-06-16 1993-02-09 International Business Machines Corporation Interrupt handling for a computing system with logical devices and interrupt reset
EP0447145B1 (en) * 1990-03-12 2000-07-12 Hewlett-Packard Company User scheduled direct memory access using virtual addresses
US5210870A (en) * 1990-03-27 1993-05-11 International Business Machines Database sort and merge apparatus with multiple memory arrays having alternating access
US5517626A (en) * 1990-05-07 1996-05-14 S3, Incorporated Open high speed bus for microcomputer system
JPH0776950B2 (ja) * 1990-06-22 1995-08-16 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理方法及び装置
US5175679A (en) * 1990-09-28 1992-12-29 Xerox Corporation Control for electronic image processing systems
US5301326A (en) 1991-09-24 1994-04-05 Microsoft Corporation Method and system for controlling the execution of an application program
JPH07504054A (ja) * 1992-02-18 1995-04-27 アプル・コンピュータ・インコーポレーテッド コンピュータシステムにおけるコプロセッサのプログラミングモデル
US5675762A (en) * 1992-04-03 1997-10-07 International Business Machines Corporation System for locking down part of portion of memory and updating page directory with entry corresponding to part of portion of the memory locked down
JPH0695898A (ja) * 1992-09-16 1994-04-08 Hitachi Ltd 仮想計算機の制御方法および仮想計算機システム
US5463739A (en) * 1992-12-22 1995-10-31 International Business Machines Corporation Apparatus for vetoing reallocation requests during a data transfer based on data bus latency and the number of received reallocation requests below a threshold
US5526503A (en) * 1993-10-06 1996-06-11 Ast Research, Inc. Virtual addressing buffer circuit
CA2137488C (en) * 1994-02-18 1998-09-29 Richard I. Baum Coexecuting method and means for performing parallel processing in conventional types of data processing systems
US5678024A (en) * 1995-05-08 1997-10-14 International Business Machines Corporation Method and system for dynamic performance resource management within a computer based system
US5887190A (en) * 1995-05-15 1999-03-23 Nvidia Corporation System for determining from a command storing in a storage circuit an application program which has initiated the command to determine an input/output device address
US5920881A (en) * 1997-05-20 1999-07-06 Micron Electronics, Inc. Method and system for using a virtual register file in system memory
US6192457B1 (en) 1997-07-02 2001-02-20 Micron Technology, Inc. Method for implementing a graphic address remapping table as a virtual register file in system memory
US6195734B1 (en) 1997-07-02 2001-02-27 Micron Technology, Inc. System for implementing a graphic address remapping table as a virtual register file in system memory
US6681238B1 (en) * 1998-03-24 2004-01-20 International Business Machines Corporation Method and system for providing a hardware machine function in a protected virtual machine
US6308255B1 (en) 1998-05-26 2001-10-23 Advanced Micro Devices, Inc. Symmetrical multiprocessing bus and chipset used for coprocessor support allowing non-native code to run in a system
US6480952B2 (en) 1998-05-26 2002-11-12 Advanced Micro Devices, Inc. Emulation coprocessor
US6574588B1 (en) * 1998-09-23 2003-06-03 Microsoft Corporation Solid-state memory device that emulates a known storage device
US7058563B1 (en) 1998-09-23 2006-06-06 Microsoft Corporation Device driver auto-load
US6230190B1 (en) * 1998-10-09 2001-05-08 Openwave Systems Inc. Shared-everything file storage for clustered system
US7089300B1 (en) * 1999-10-18 2006-08-08 Apple Computer, Inc. Method and apparatus for administering the operating system of a net-booted environment
US7703107B2 (en) * 2000-04-06 2010-04-20 Infineon Technologies Ag Virtual machine interface for hardware reconfigurable and software programmable processors
US8020176B2 (en) * 2000-04-06 2011-09-13 Infineon Technologies Ag Virtual machine interface for hardware reconfigurable and software programmable processors
US7296267B2 (en) * 2002-07-12 2007-11-13 Intel Corporation System and method for binding virtual machines to hardware contexts
EP1391821A3 (en) * 2002-07-31 2007-06-06 Texas Instruments Inc. A multi processor computing system having a java stack machine and a risc based processor
US9207958B1 (en) 2002-08-12 2015-12-08 Arm Finance Overseas Limited Virtual machine coprocessor for accelerating software execution
US7730155B1 (en) 2002-10-01 2010-06-01 Apple Inc. Method and apparatus for dynamically locating resources
US7774774B1 (en) * 2003-10-22 2010-08-10 Apple Inc. Software setup system
DE102004040296B3 (de) 2004-08-19 2006-03-02 Giesecke & Devrient Gmbh Schreiben von Daten in einen nichtflüchtigen Speicher eines tragbaren Datenträgers
GB0516454D0 (en) * 2005-08-10 2005-09-14 Symbian Software Ltd Coprocessor support in a computing device
US20070168872A1 (en) * 2006-01-19 2007-07-19 Raytheon Company Multi-monitor, multi-JVM java GUI infrastructure with layout via XML
US7653794B2 (en) * 2006-05-08 2010-01-26 Microsoft Corporation Converting physical machines to virtual machines
US8013804B2 (en) * 2007-05-30 2011-09-06 Lenovo (Singapore) Pte. Ltd, System and method for graphics remapping in hypervisor
US9542172B2 (en) 2013-02-05 2017-01-10 Apple Inc. Automatic updating of applications
CN110750304B (zh) * 2019-09-30 2022-04-12 百富计算机技术(深圳)有限公司 提升任务切换效率的方法及终端设备
US11915015B2 (en) * 2021-08-27 2024-02-27 Dell Products, L.P. Systems and methods for use of pre-boot resources by modern workspaces

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60136856A (ja) * 1983-07-18 1985-07-20 デ−タ−・ゼネラル・コ−ポレ−シヨン デユアル・プロセツサを備えたデ−タ処理システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55112651A (en) * 1979-02-21 1980-08-30 Fujitsu Ltd Virtual computer system
US4527237A (en) * 1979-10-11 1985-07-02 Nanodata Computer Corporation Data processing system
US4516199A (en) * 1979-10-11 1985-05-07 Nanodata Computer Corporation Data processing system
US4396984A (en) * 1981-03-06 1983-08-02 International Business Machines Corporation Peripheral systems employing multipathing, path and access grouping
US4533996A (en) * 1982-02-23 1985-08-06 International Business Machines Corporation Peripheral systems accommodation of guest operating systems
US4403288A (en) * 1981-09-28 1983-09-06 International Business Machines Corporation Methods and apparatus for resetting peripheral devices addressable as a plurality of logical devices
US4481583A (en) * 1981-10-30 1984-11-06 At&T Bell Laboratories Method for distributing resources in a time-shared system
US4475156A (en) * 1982-09-21 1984-10-02 Xerox Corporation Virtual machine control

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60136856A (ja) * 1983-07-18 1985-07-20 デ−タ−・ゼネラル・コ−ポレ−シヨン デユアル・プロセツサを備えたデ−タ処理システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009258798A (ja) * 2008-04-11 2009-11-05 Nec Corp 仮想マシンシステム、ホスト計算機、i/oカード、仮想マシン構築方法およびプログラム

Also Published As

Publication number Publication date
BR8700173A (pt) 1987-12-01
EP0230353A2 (en) 1987-07-29
US4787026A (en) 1988-11-22
EP0230353A3 (en) 1990-11-14

Similar Documents

Publication Publication Date Title
JPS62171066A (ja) コプロセツサを有する仮想記憶仮想計算機型のデ−タ処理システム
JP4291964B2 (ja) 仮想計算機システム
US4747040A (en) Dual operating system computer
US5706514A (en) Distributed execution of mode mismatched commands in multiprocessor computer systems
JP3659062B2 (ja) 計算機システム
EP0229336B1 (en) A virtual terminal subsystem
US5029077A (en) System and method for controlling physical resources allocated to a virtual terminal
JPH0689253A (ja) 汎用のオペレーティング・システム・インターフェースを有するデバイス・ドライバを含むデータ処理システム
JPH0754471B2 (ja) デ−タ処理装置
JPH06100956B2 (ja) ポインタ制御を行うための装置
US6694401B2 (en) Method and apparatus for executing real-mode interrupts from within extended SMRAM handler
EP0543610A2 (en) Data processing system
CN101369258B (zh) 输入输出控制系统
US5265251A (en) Mechanism for allowing a single operation to shift the focus between user applications having direct hardware level access to multiple displays in a virtual terminal environment
JP2001236237A (ja) マルチos構成方法
JP2001507835A (ja) 過去に互換性のあるオペレーティングシステムのリアルタイムサービス
JPH0527954A (ja) コンピユータシステム
JP2864255B2 (ja) 仮想計算機方式の計算機システム
EP0441509B1 (en) Method and system for single-operation focus shift between user applications in a virtual terminal environment
Mizell Understanding device drivers in Operating System/2
JPH1069393A (ja) 仮想計算機エミュレータ、仮想計算機エミュレート方法 および仮想計算機エミュレートプログラムを記録した記録 媒体
JPH04346136A (ja) 仮想命令プロセッサ構成制御方法
Maikibayeva et al. STUDY OF OPERATING SYSTEMS IN THE COURSE OF INFORMATION AND COMMUNICATION TECHNOLOGIES
JPS584365B2 (ja) リセツト制御システム
Buchanan et al. Operating Systems