JPH04138547A - アプリケーション間シフト方法および装置 - Google Patents

アプリケーション間シフト方法および装置

Info

Publication number
JPH04138547A
JPH04138547A JP2416088A JP41608890A JPH04138547A JP H04138547 A JPH04138547 A JP H04138547A JP 2416088 A JP2416088 A JP 2416088A JP 41608890 A JP41608890 A JP 41608890A JP H04138547 A JPH04138547 A JP H04138547A
Authority
JP
Japan
Prior art keywords
application
virtual
display devices
program
applications
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
JP2416088A
Other languages
English (en)
Inventor
Harish C Agarawal
ハリシュ、チャンダー、アガラワル
Richard L Verburg
リチャード、リー、バーバーグ
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 JPH04138547A publication Critical patent/JPH04138547A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • 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/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Digital Computer Display Output (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】
【000月 【産業上の利用分野】 本発明は一般に、夫々が少くとも1個のそれに関連した
仮想端末を有する複数のプログラムアプリケーションを
同時に走行させうる仮想端末環境に関する。更に、複数
のハードウェア表示装置が設けられ、これらプログラム
アプリケーションの少くとも1つがこれらハードウェア
表示装置内の少くとも2個に直接的に書込みを行うこと
が出来る。 [0002]
【従来の技術とその課題】
一般に、仮想端末環境においては、システムユーザはユ
ーザの焦点または主題を第1のアプリケーションから次
のアプリケーションにシフトする前にいくつかのモード
切替え操作を行わねばならない。この効率の悪い複数回
のモード切替えは、1回のモード切替えではアプリケー
ション間ではなく仮想端末間で焦点がシフトするだけで
あることによる。複数の仮想端末には1つのプログラム
アプリケーションが関連づけられるから、焦点が実際に
次のアプリケーションに移る前にユーザは数回のモード
切替え操作を行うことになる。このようなモード切替え
は時間および資源、並びにこの形式の従来のシステムの
ユーザに生じるフラストレーションに関し、大きな効率
の低下をもたらすものである。 [0003]
【発明の概要及び解決手段】
従来の技術とは異なり、本発明はコンピュータシステム
のユーザが1回のモード切替え操作により、その焦点を
1つのプログラムアプリケーションから次のアプリケー
ションにシフトしうるようにするものである。 [0004] 広義には本発明は少くとも2つのプログラムアプリケー
ションが設けられている仮想端末環境内で動作する。 [0005] 1つのプログラムアプリケーションが1より多い仮想端
末を開くことが出来る場合(すなわちマルチプロセスア
プリケーション)、そのアプリケーションはこれら仮想
端末の内の1つを除くすべてをモード切替え操作に「無
関係」として指定する。それ故、ユーザが焦点を1つの
プログラムアプリケーションから次のアプリケーション
へとシフトしたいとき、このこのタスクが1回のモード
切替え操作で行うことが出来る。例えばユーザが第1の
マルチプロセスプログラムアプリケーションと第1の活
性化された仮想端末と対話をしていると仮定する。更に
この第1アプリケーシヨンが複数の仮想端末を開いてい
ると仮定する。1回のモード切替え操作後に従来の仮想
端末サブシステムは第1の仮想端末を不活性として次の
仮想端末を活性化しようとする。しかしながら、次の仮
想端末は第1アプリケーシヨンにより開かれたものであ
ることがある。このように、ユーザは第1プログラムア
プリケーシヨンと次のプログラムアプリケーション間で
はなく第1アプリケーシヨンの仮想端末間でモード切替
えを行うにすぎない。他方、本発明は各プログラムアプ
リケーションに関連する複数の仮想端末の内の1つを除
くすべてをモード切替えに無関係として指定する。それ
故、システムはすべての無関係な仮想端末を無視し、無
関係とは指示されていない次の仮想端末を活性化する。 アプリケーション当りのモード切替において無関係とさ
れる仮想端末は1個であるから、各モード切替え操作が
焦点を、同一のプログラムアプリケーションに関連する
仮想端末間ではなく、第1のプログラムアプリケーショ
ンから次のアプリケーションへとシフトさせる。 [0006]
【実施例】
図1は仮想端末処理システムの層構造を示す。アプリケ
ーション50はUNIX(UNIXはAT&T社の登録
商標)オペレーティングシステム等のようなオペレーテ
ィングシステム10により実行する。次の層は仮想端末
サブシステム(VTSS)30であり、これは表示ハー
ドウェア人力/出力(Ilo)装置40のすべてを管理
する。これらハードウェアI10装置40は入力装置4
1 (キーボード、マウス、タブレット等)および出力
装置42(音響装置および表示装置等)を含むが、それ
らに限られない。 [0007] 仮想端末処理システムではユーザ駆動のユーザへインタ
ーフェースがユーザからの命令によりアクティビティの
切換えを行う。処理システムは、資源全体がユーザのア
クティビティに対しアプリケーション50に与えられる
ように資源の使用を仮想化する。これは仮想端末サブシ
ステム30で行われる。仮想端末サブシステム30は仮
想端末環境における端末サポートを与える。 [0008] アプリケーション50は使用しようとする物理的ハード
ウェア表示装置42の数に等しい数の仮想端末を開くこ
とが出来る。仮想端末はこのアプリケーション50に対
し、物理的に存在する表示装置42の数より多い表示装
置があり、物理的に存在する入力装置41の数より多い
入力装置があり、そしてこれら装置が物理的に存在する
装置とは異なる特性を有するかのごとき印象を与える。 また、仮想端末では一つのプログラムが物理的な端末装
置、例えば、表示バッファ機構、オプションとしての入
力装置の存在等のようなものの特徴には無関係に書込み
出来る。更に、仮想端末はプログラマが実際の資源の限
界を扱うために個々のメカニズムを開発する必要をなく
すものである。 [0009] 代表的な仮想端末モデルは、他のものでもよいが、例え
ばキーボード送/受(KSR)テレタイプのようなガラ
ステレタイプのエミュレーションを利用出来る。例えば
、一つのモードまたは使用しうる端末モデルは仮想マシ
ン環境においてUNIXオペレーティングシステムの端
末要求をサポートする。UNIXオペレーティングシス
テムはディジタルエクイツブメントコ−ポレーションV
T100または、オリジナルKSRテレタイプの拡張形
であるIBM3101のようなガラステレタイプエミュ
レーションを必要とする。 [0010] KSR端末モードはANSI3.4/3.41コ一ド群
ではなくPCASCIIコード群を利用するANSI3
.64スタンダードに基づ<ASCII端末エミュレー
ションである。ANSI3.64データストリームはこ
のスタンダードで特定されるように拡張された音響発生
能力をサポートし、ロケータ事象の流れを扱いそして物
理的表示、フォントおよび端末特性の切替えに対する種
々の制御を与えるように拡張される。 [0011] 夫々の仮想端末は1つのKSR端末の特性を具体化する
。すなわち、仮想端末は受信した要求アクションを生じ
させるデータストリームを認識し処理する。これらはカ
ーソルを動かすこと、または仮想表示装置に文字を描く
こと、ラインのそう人または削除、スクリーンのクリア
、または文字を作る属性の変更を含む。 これらアクションに加えて、アウトバウンドデータスト
リームは連続トーン音シーケンスを発生させあるいは仮
想表示を使用可能な物理的表示装置42のいずれかに生
じさせる。 [0012] 仮想端末は仮想キーボードおよび/または仮想ロケータ
から入力情報を受けそして仮想表示装置にデータを出力
する。このように、仮想端末は常にその仮想入力装置か
ら入力を受けそして常にその仮想表示装置に出力するこ
とが出来る。これら仮想装置はそれらに割り振られた物
理的装置を有することが出来るし、あるいはそれを有し
ないでもよい。それ故、仮想端末は実際に入力を受けあ
るいは物理的表示装置42に書込むことはない。夫々の
仮想端末がキーボードからのデータストリームインバウ
ンドを認識し処理するとき、必要であれば種々の文字お
よび単純な機能を自動的にその仮想表示装置にもどすこ
とが出来る。このオペレーションはアプリケーション5
0をあたかも物理的な端末ハードウェア装置42を用い
るように実行させうる。かくして、現存するアプリケー
ション50の大部分は仮想端末が物理的端末42ではな
いことを知らないから仮想端末環境における変更の実行
を必要としない。 [0013] 図2は仮想端末サブシステム30の、資源コントローラ
310、スクリーンマネージャ320、キーボード装置
ドライバ410、ロケータ装置ドライバ420、音響装
置ドライバ430、表示装置ドライバ440および多数
の仮想端末330を含む要素を示す。 [0014] 資源コントローラ310は仮想端末サブシステム30を
初期化しそして終了させる。これはまたオペレーティン
グシステム10とアプリケーションプログラム50が対
話装置すなわちユーザにとって使用可能な物理的端末の
形態と特性を照会し変更しうるようにする。更に、資源
コントローラ310は仮想端末が開閉、すなわち作成さ
れ破壊されるときのその動作に必要なシステム資源を割
り振りそして割り振解除を行う。 [0015] スクリーンマネージャ320は物理的装置40の仮想端
末により使用される仮想装置への割り振りを行う、この
スクリーンマネージャ320はキーボードおよびロケー
タ装置のドライバ410,420と関連してこれら入力
装置を仮想化するのに必要な時空分割を与える。同様に
、スクリーンマネージャ320は表示装置の仮想化に必
要な時分割を与える。与えられた時点で物理的表示装置
42は仮想端末により用いられる仮想表示装置の内の1
個にのみ割り振られる。 [0016] スクリーンマネージャ320はまたすべての物理的装置
40を活性仮想端末の仮想装置に割り振る。活性仮想端
末はユーザ対話のための端末である。活性仮想端末は実
際に装置41から入力を受けて物理的表示装置42に出
力を発生することが出来る。更に、スクリーンマネージ
ャ320は物理的資源40の再割振りを行う。物理的装
置40の再割振りの動機はユーザ要求またはアプリケー
ション50からの要求による。ユーザ要求は論理的キー
ボードまたはスクリーンマネージャ320に割振られた
同様の論理的マウスのような物理的入力装置41を介し
て与えられる。物理的資源40の再割振りは現在活性の
仮想端末からその資源を除去しそしてそれを新しく活性
化した仮想端末に割振ることを含む。この資源の再割振
りは不活性とされた端末と活性化された端末の協動を必
要とする。前述のように、装置ドライバの関与が物理的
装置40の割振りに必要であり、かくしてキーストロー
クおよびワークリクエストアクノリッジメントのような
事象の同期化が保証される。 [0017] 仮想端末サブシステム30の他の要素はキーボード装置
ドライバ410でありこれは物理的キーボード41から
の入力事象をスクリーンマネージャ320からのインス
トラクションに基づき仮想端末に方向づける。仮想端末
サブシステム30のオプション要素はロケータ装置ドラ
イバ420と音響装置ドライバ430である。ロケータ
装置ドライバ420は物理的ロケータ41からの入力事
象をスクリーンマネージャ320からのインストラクシ
ョンに基づき仮想端末に方向づける。音響装置ドライバ
430はサブシステム30から物理的装置42に音響出
力を与えることが出来る。また、仮想端末マネージャに
は複数の表示装置ドライバ440が含まれており、これ
らは表示装置アダプタからの中断をサービスする。 仮
想端末サブシステムは任意の多数の仮想端末を与えるこ
とが出来る。仮想端末の実際の最大数はシステム設計に
より異なり、システム資源利用により記述される。各仮
想端末は仮想端末モードプロセッサ340を含む。仮想
端末モードプロセッサ340は仮想端末のKSR型動作
を与える。各仮想端末に仮想表示装置ドライバ350を
含む。仮想表示装置ドライバ350は仮想端末モードプ
ロセッサ340の出力のすべてを受け、それらを仮想表
示装置に書込み、そしてその表示装置を仮想化する。各
仮想端末は更に共通装置ユーティリティを含み、これに
より仮想端末モードプロセッサ340がその資源要求を
資源コントローラ320に伝える。 [0018] 仮想端末サブシステム30の初期化は資源コントローラ
310により行われる。まず、資源コントローラ310
はシステムに含まれる物理的装置40(表示装置、キー
ボード等)を含むリストを受ける。資源コントローラ3
10はまたフォント、および仮想端末省略のような種々
の他のサブシステム要素についての識別子を受ける。初
期化は(1)上記の初期化情報の完全性と正確性のチエ
ツク、(2)物理的な入力装置41の初期化、(3)供
給されたフォントの処理、(4)スクリーンマネージャ
320の作成、 (5)スクリーンマネージャ320と
の通信に必要なパスの作成、(6)スクリーンマネージ
ャ320を入力/出力装置40と通信させるに必要なパ
スの作成、(7)要素に共用のグローバルデータ構造の
初期化、を必要とする。 [0019] 資源コントローラ310は次のようにしてサブシステム
30を初期化する。次のルーチンはプログラム設計言語
によるものであり、これから原始コードおよび機械コー
ドがとり出しうるものである。 [0020] INITIALIZE  GLOBAL  DATA 
 5TRUCTUREIF  THE  INITIA
LIZATION  INFORMATIONNOT 
 COMPLETE  AND  C0RRECTHE
N PRESENT  ERRORINDICATIONL
SE CALL  INIT  DEVICESCALL  
CREATE  SM PRESENT  5UCCESS  INDICAT
I○NPREPARE  TO5ERVICE  RE
SOURCECOMMANDS  FROM THE  0PERATING  SYSTEMルーチ
ンINIT  DEVICESはシステム内の種々の装
置ドライバを初期化しそして種々の要素による使用のた
めにグローバルデータ構造内に要求情報を置く。これは
またシステムが初期化パラメータにおいて識別されるフ
ォントを使用するのに必要な情報をとり出す。このルー
チンはまた装置40から資源コントローラ310(RC
)、キーボードおよびロケータ装置ドライバ410,4
20およびオペレーティングシステム10への通信パス
をつくる。 [0021] 仮想端末オープン 初期化後に資源コントローラ310は資源要求を受けう
る状態となる。仮想端末を開く (つくる)要求をオペ
レーティングシステム10から受けると資源コントロー
ラ310は次のステップを行う: (1)仮想端末に関
連する大域データの初期化、(2)仮想端末プロセス機
能を正しく保証するなめに仮想端末モードプロセッサ3
40においての必要な機能の実行、(3)仮想端末モー
ドプロセッサ340および利用される装置ドライバに対
する通信パスの確立、(4)仮想端末への外部識別子の
割当て、(5)仮想端末の初期化。 [0022] 初期化に続き資源コントローラ310は次のルーチンを
行うことにより上記のように仮想端末を開く。 [0023] IF  MAXIMUM  NUMBEROF  VI
RTUALTERMINALS  0PEN HEN INDICATE  No  5UCCESSLSE CREATE  VT CREATE  PATH3 INITIALIZE  THE  VIRTUALT
ERMINAL 置L  SM (OPEN) INDICATE  5UCCESS ルーチンCREATE  VTは仮想端末モードプロセ
ッサ340 (VTMP)向のコードをコピーし、これ
により各仮想端末がそれ自体のデータとスタックスペー
スを有することが出来る。 [0024] ルーチンCREATE  PATH3は仮想端末と装置
ドライバおよび仮想端末の開放を要求した対応するオペ
レーティングシステム10に対する通信パスを確立する
。このルーチンはまたスクリーンマネージャ320から
仮想端末への通信ハスモ確立スル。CREATE  V
TおよびCREATE  PATH3と共に大域構造内
に情報を保存する。 [0025] ルーチン置L  SMは新しい仮想端末が開かれたこと
をスクリーンマネージャに知らせる。このルーチンはス
クリーンマネージャ320が必要な情報をドライブ出来
るように新しい仮想端末のネーム(識別子)(そして大
域データ構造へのインデクス)を送る。スクリーンマネ
ージャ320はそのとき仮想端末を活性にするように動
作する(後述)。ルーチン置L  SMはスクリーンマ
ネージャ320が資源コントローラ310(RC)を連
続させうるようにする前にその動作を完了するのを待つ
。 [0026] 仮想端末モードプロセッサ340は次のルーチンを行う
ことにより仮想端末の初期化を完了させねばならない。 [0027] QUERY  DEVICES SELECT  DISPLAY SELECT  INPUT ルーチンQUERY  DEVICESは使用可能な装
置について割当てられた識別子をこれら装置にもどす。 ルーチン5ELECT  DISPLAYは仮想端末モ
ードプロセッサ340が使用可能な表示装置のどれを用
いるかを選択しうるようにする。5ELECT  DI
SPLAY機能は仮想端末モードプロセッサ340を選
ばれた表示装置用の仮想表示装置ドライバ350と通信
させるためのパスをつくる。これにより仮想端末は他の
仮想端末とは無関係にその仮想表示装置を使用すること
が出来る。この仮想端末は次に活性となったときユーザ
との対話をはじめることが出来る。 [0028] ルーチン5ELECT  INPUTは仮想端末モード
プロセッサ340が夫々の装置ドライバ410,420
を介してキーボードそして/またはロケータから入力事
象を受けるか受けないかを選ぶことが出来るようにする
。 [0029] この点において、オペレーティングシステム10は仮想
端末と通信することが出来る。オペレーティングシステ
ム10はまた通信パスが与えられていれば仮想端末に関
するスクリーン管理コマンドをスクリーンマネージャ3
20に出すことが出来る。 [0030] 仮想端末閉塞 上記のステップにより開かれている仮想端末を閉じるた
めにオペレーティングシステム10または仮想端末が閉
塞要求を出すことが出来る。資源コントローラ310は
コマンドを受けて次のアクションを行う。 [0031] 置L  SM (CLO3E) RECOVERRESOURCES INDICATE  COMPLETI○Nルーチン置
L  SM装スクリーンマネージャ320に閉じられる
べき仮想端末を識別(内部識別子により)するコマンド
を送る。このルーチンはスクリーンマネージャ320が
予めそのデユーティ (後述)を完了するのを待つ。ル
ーチンRECOVERRESOURCESは閉じられつ
つある仮想端末により使用されるすべての資源(記憶ブ
ロック、制御ブロック等)を回復しそして仮想端末を大
域データ構造から除く。ルーチンINDICATE  
COMPLETIONはりクエスタに閉塞オペレーショ
ンの完了を知らせる。 [0032] 上記のように、スクリーンマネージャ320は資源コン
トローラ310が待機する間に次のアクションを行う。 [0033] COMMAND  MP (CLO3E)NEW  V
T  ACTIVE ACK  RC ルーチンCOMMAND  MPは通信パスを介して仮
想端末に閉じコマンドを送り、そして仮想端末モードプ
ロセッサ340のそれに対するレスポンスを待つ。ルー
チンNEW  VT  ACTIVEは他の仮想端末を
活性にする、すなわち物理的入力および出力装置40を
新しく活性化された仮想端末に割振る(後述)。ルーチ
ンACK  RCは資源コントローラ310と通信し、
そしてこれによりRC310がその閉じ処理機能を続け
うるようにする。 [0034] 仮想端末モードプロセッサ340はこの閉じコマンド(
ルーチンCOMMAND  MPにより予め送られた)
を受けて次のアクションを行う。 [0035] RELEASE  DISPLAY ACK  SM RELEASE  DISPLAYルーf−ンは仮想表
示装置ドライバ350(vDD)にその資源が解放され
うろことを示す。ACK  3Mルーチンはスクリーン
マネージャ320がその閉じ処理を続行しうるようにす
る。 [0036] 仮想端末活性化/不活性化 仮想端末を活性にすることは開放または閉成により、あ
るいはユーザが他の仮想端末を活性化する要求を出した
ために生じる。これにはスクリーンマネージャ320、
現在活性の仮想端末用の仮想端末モードプロセッサ34
0、活性化されるべき仮想端末用の仮想端末モードプロ
、セッサ340、および入力装置ドライバの協力が必要
である。スクリーンマネージャ320は次のアクション
を行う。 [0037] FIND  VT COMMAND  KDD (NEW  VT)COM
MAND  LDD (NEW  VT)COMMAN
D  VT (DEACTIVATE)COMMAND
  VT (ACTIVATE)UPDATE  DA
TA(NEW  VT)ルーチンFIND  VTはど
の仮想端末を活性にすべきかを決定する。その結果はス
クリーン管理に関連するルーチンと実際に受けたコマン
ドとによる。 [0038] ルーチンCOMMAND  KDDはキーボード装置ド
ライバ410に物理的キーボード41からの入力を受け
る仮想端末を識別するコマンドを送る。ルーチンCOM
MAND  LDDはロケータ装置ドライバ420に物
理的ロケータ42がら入力を受ける仮想端末を識別する
コマンドを送る。これらルーチンは装置ドライバ410
,420がそれらのルーチンを続ける前にそれらのアク
ションを完了するのを待つ。これら装置ドライバは次に
下記のような同じアクションを行う。 [0039] 不活性化のオプションを伴うルーチンCOMMAND 
 VTは現在活性の仮想端末にその仮想端末の不活性化
を行うに必要なすべてのアクションを行わせる(後述)
。活性化のオプションを伴うルーチンCOMMAND 
 VTは新しく活性となった仮想端末にその仮想端末の
活性化を行うに必要なすべてのアクションを行わせる(
後述)。 [0040] ルーチンUPDATE  DATAはスクリーンマネー
ジャ320がどの仮想端末が活性かを知ることが出来る
ようにスクリーンマネージャ320の内部データ構造を
扱う。 [0041] キーボード装置ドライバ410および/またはロケータ
装置ドライバ420は次のアクションを行つ。 [0042] SET  NE・W  PATHMODESSEND 
 5TATUS− ACK  SM ルーf−ンsET  NEW  PATHMODESは
新しく活性とナラた仮想端末への通信パスについて識別
子を内部構造に置く。このルーチンはまた仮想端末につ
いてのその装置の正しいオペレーティングモードを設定
する。ルーチン5END  5TATUSは仮想端末に
、物理的装置4oの現在の状態、すなわち、仮想端末が
活性となるときすでに押されたキー(またはボタン)を
知らせる。ルーチンACK  SMはスクリーンマネー
ジャ320がその処理を同期′して続行しうるようにす
る。 [0043] 不活性化される仮想端末の仮想端末モードプロセッサ3
40は次のアクションを行う。 [0044] DEACTIVATE  VDD No  5OUND ルーチンDEACTIVATE  VDDは不活性化さ
れる仮想端末についての仮想表示ドライバ350に、物
理的表示装置42への書込みが行えずその代りに仮想端
末からのすべての出力を緩衝しなければならないことを
知らせる。ルーチンNo  5OUNDは、音響につい
てのプログラムアプリケーション50による要求が音響
装置ドライバ430 (SDD)に出力されないように
仮想端末モードプロセッサ340についての内部フラグ
をセットする。 [0045] 活性化しつつある仮想端末の仮想端末モードプロセッサ
340は次のアクションを行う。 [0046] ACTIVATE  VDD SOUND  OK ルーチンACTIVATE  VDDは活性化されるつ
つある仮想端末についての仮想表示ドライバ350に物
理的表示装置42への書込可能を知らせる。しかしなが
ら、仮想表示ドライバ350はまずバッファからその不
活性期間に維持されていたデータを表示装置42に送る
。かくしてユーザはアプリケーション50から出る最近
の情報を見ることが出来る。ルーチン5OUND  O
Kは音響についてのプログラムアプリケーション50の
要求が音響装置ドライバ430に送られるように仮想端
末モードプロセッサ340について内部フラグをセット
する。 この時点でユーザは新しく活性化された仮想端末と対話
することが出来る。 [0047] 仮想端末は物理的表示端末42に向けられていることが
ある出力の形でオペレーティングシステム10からの入
力を受けそしてこの出力を、アプリケーション50が実
際の物理的端末の存在を信じるように仮想化する。仮想
端末が現在活性であれば(すなわち、ユーザが現在対話
しているこの端末であれば) この仮想端末はオペレー
ションに必要なすべての物理的資源40を備えている。 この仮想端末はロケータ装置ドライバ420とキーボー
ド装置ドライバ410から入力を得る。それ故、ドライ
バ410,420からの入力は現在活性の仮想端末に向
けられる。発生される音響は音響装置ドライバ430に
入り、そして発生される表示は表示ドライバ440に入
りユーザに対し物理的表示装置42の実際のスクリーン
上でそれを表示する。 [0048] 開かれるが現在活性でない他の仮想端末はプログラムア
プリケーション50から出力を受けることが出来る。こ
れら不活性の仮想端末がこの出力を受けるときそれらが
活性か不活性かはそれらには不明である。それ故、不活
性仮想端末が装置ドライバ440に要求を送るのではな
く表示データに対する出力要求を受けるとき、仮想装置
ドライババッファへの出力を仮想化する。 [0049] この装置ドライババッファは仮想表示6の現状を維持す
る記憶装置(RAM)の一部である。一つの与えられた
時点で一つの仮想端末の仮想装置ドライババッファはそ
の端末に送られたすべての出力要求のスクリーン表示の
累積されたフロントを含む。この仮想端末がユーザによ
り活性化されるとすると、仮想装置ドライババッファの
内容は実際の表示スクリーンに表示される。 [00501 一つの特定の仮想端末に実際の物理的表示資源42が与
えられる時点でこの端末は仮想装置ドライババッファ内
に累積されたデータを物理的な表示装置コマンドに変換
しなければならない。これによりユーザは情報の現在の
スナップショットを見ることが出来る。云い換えると、
一つの仮想端末が強制的にその物理的表示資源42を放
棄させられるときには、それはある時間ユーザが物理的
端末から目をそらすことと同じである。ユーザがその物
理的端末に目をもどすとき、その時点まで累積された合
計の表示情報を見ることが出来る。 [0051] 装置ドライババッファはそれに実際の装置が割振れない
ときでも更新される点は重要である。これら仮想化され
た装置バッファは仮想端末サブシステム3oの表示装置
ドライバ440に装置依存形で維持される。 [0052] スクリーンマネージャ320は次のようにしてユーザと
対話する。一つの端末リングが存在し、仮想端末が開か
れるたびにそれがこのリングに置かれる。ユーザが特定
の仮想端末との対話を行う時点でユーザはキーボード(
入力装置41)においてキーシーケンスを行うことが出
来る。このキーシーケンスはキーボード装置ドライバ4
10によりスクリーンマネージャ320に伝達される。 スクリーンマネージャ320はそのときこのリング構造
をチエツクすることによりどの仮想端末がそのときユー
ザにとって使用しうるかそして活性化されるべきかを決
定する。このように、ユーザは与えられた時点で対話の
ためのアプリケーション50のアクティビティを選ぶこ
とが出来る。 [0053] 仮想端末のアクティビティ状態を変える際のオペレーシ
ョンはスクリーンマネージャ3201装置ドライバ41
0,420,430,440および仮想端末を含めたも
のである。新しい端末を活性化すべきことをスクリーン
マネージャ320に知らせることにより、スクリーンマ
ネージャ320は入力装置ドライバ410.420に新
しいルーチン情報を送る。キーボードまたはロケータ装
置ドライバ410,420はこの情報を受け、そして新
しく活性化された仮想端末がこれら入力を受けるように
入力事象のルーティングを変化させる。 [0054] 出力装置はいく分異なった形で扱われる。現在活性の仮
想端末はスクリーンマネージャ320により、不活性化
されるであろうことを知らされる。この端末自体は、音
響装置ドライバ430の場合には、ユーザに可聴の音響
を発生する音響要求が音響装置ドライバ420に送られ
ないようにする決定を行う。 [0055] 仮想表示ドライバ350については仮想端末の不活性化
に異なるメカニズムを用いる。この場合、仮想表示ドラ
イバ350は物理的表示装置42上に出力を発生するべ
く活性仮想端末により呼び出しうる一連のルーチンとし
て活性仮想端末に供される。仮想端末が不活性とされる
時点で仮想表示ドライバ350がらその仮想端末が不活
性であることを示す一つのルーチンが呼出される。それ
故、アプリケーション50がその仮想端末を介して物理
的表示装置42に出力を与えようとするとき、仮想表示
ドライバ350が仮想装置ドライババッファに物理的装
置42に送られる情報を置く。これにより、その仮想端
末を用いているアプリケーション50はその端末があた
かもまだ活性であるかのようにそれと通信することが出
来る。活性になりつつある仮想端末はその端末が活性で
あることを示す仮想表示ドライバ350から一つのルー
チンを呼出す。この端末はこのときそれが不活性であっ
たときと同様にその仮想表示ドライバ350を使用する
ことが出来るが、その仮想表示ドライバ350はこのと
き表示アダプタハードウェア42に実際に書込むことが
出来る。 [0056] その結果、仮想端末を使用するアプリケーション50は
その端末が活性であるか不活性であるかを知る必要がな
い。それは任意の時点で関連する仮想端末と通信するこ
とが出来、そしてこの仮想表示に対して行われた任意の
更新を仮想端末が不活性となったときユーザは見ること
が出来る。アプリケーション50はその関連する仮想端
末の活性または不活性状態には無関係に動作する。 [0057] プログラムアプリケーション50による表示ハードウェ
ア42の直接アクセスは本発明の他の特徴である。 [0058] 再び図1を参照するに、データ処理システム環境におけ
る種々の層が示されており、これらは前述した要素のす
べてを含んでいる。図1のデータ処理システムには、仮
想端末サブシステム30は2つのモードで動作しうる。 一つのモードはKSRモードであり、他はモニタモード
である。前述のようにKSRモー、ドは主として表示装
置42にテキストを表示するために用いられそして高性
能グラフィックアプリケーションには使用出来ない。更
にKSRは、KSR仮想端末に入るコマンドがアプリケ
ーションプログラム50用に発生しそして、表示装置4
2にデータが出力される前に図1に示すデータ処理シス
テムの各層を通り処理するから非常に低速なインターフ
ェースである。 [0059] モニタモードは、文字であるか全点アドレス可能(AP
A)構成であるかには無関係に表示装置42に含まれる
ハードウェア再生バッファと直接に対話することの出来
るアプリケーション50をサポートする。かくして仮想
端末サブシステム30はバイパスされそしてデータは表
示装置42に直接に出力される。 [0060] モニタモードでは入力装置41は仮想端末サブシステム
30を通りアプリケーション50へ向けられる入力端子
を有する。モニタモードを用いるアプリケーションはア
プリケーションプログラム50のメモリスペースに循環
バッファ15(図1)を限定するオプションを有する。 仮想端末サブシステム30は入力装置41から割込みを
受けそして入力バッファ15に直接にデータを与える。 仮想端末サブシステム30は、循環バッファ15へのは
じめてのデータ送出でないかぎり割込み信号を発生せず
またアプリケーション50にそれを送らない。 [0061] アプリケーション50が循環バッファ15を限定しない
ならば仮想端末サブシステム30は入力装置41から割
込みを受けてデータを送るために割込みパスを使用する
。この割込みパスは、オペレーティングシステム10と
仮想端末サブシステム30のような通信システムの種々
の層間の通信を含む待ち行列インターフェース管理を必
要とする。それ故、アプリケーション50は、オペレー
ティングシステム10と仮想端末サブシステム30があ
るために別の待ち行列層を伴う。 [0062] かくして、アプリケーション50が循環バッファ15を
限定すれば上記の待ち行列オーバーヘッドは省略される
。このようにアプリケーションプログラム50はキーボ
ード、マウスまたはタブレットからの入力をより高速に
追跡出来る。このデータ処理システムにおいて、入力装
置41からの入力を扱うことに関してのキーエレメント
はアプリケーション50と仮想端末サブシステム30に
より管理される循環人力バッファ15を限定するアプリ
ケーション50の能力にある。 [0063] 循環バッファ15の構造はそのバッファのはじめの32
バイト内に状態領域を必要とする。この状態領域は仮想
端末サブシステム30用のオフセットポインタとアプリ
ケーションプログラム50用のオフセットポインタを含
む。これらオフセットポインタはデータをバッファ15
に入れそしてそこから除くために用いられる。バッファ
15は少くとも34バイトであって好適には64000
バイトを越えない可変サイズのバッファリングを含む。 このバッファリングはシステムがモニタモードになった
後に限定されるのであり、詳細は後述する。 [0064] 以上の説明は入力バス、すなわち、いかにして入力装置
41がアプリケーションプログラム50に向けられるか
を限定する。すなわち、キーストロークまたは表示スク
リーン上のロケータ(マウス)の動きのような入力装置
41からのデータは仮想端末サブシステム30に入力さ
れる。仮想端末サブシステム30はこのデータを循環バ
ッファ15のバッファリングに入れる。データがバッフ
ァリングに入ってしまうとアプリケーション50はこの
データを任意の時点で除くことが出来る。 [0065] モニタモードにおいてアプリケーション50が表示装置
42上にピクチャーを描いているとき、データは夫々の
アプリケーション50から表示装置42に直接送られる
。仮想端末サブシステム30はこの直接データ転送につ
いての知識をもたない。仮想端末サブシステム30が通
信パスから外れると、システムパフォーマンスは、仮想
端末サブシステム30内の多くの通信層がバイパスされ
るために向上する。 [0066] KSRモードとモニタモードのこの差は図3.4に示し
である。図3は入力コマンドがKSRモードまたは非モ
ニタモードにおいて表示される前に通らねばならぬバス
を示す。まずデータは入力装置41から入り、仮想端末
サブシステム30を介してオペレーティングシステム1
0に送られる。アプリケーション50はオペレーティン
グシステム10からの入力データをアクセスして対応す
る出力を決定する。次にオペレーティングシステム10
が出力表示装置42に表示されるべきコマンドを発生し
、このコマンドを仮想端末サブシステム30に送る。表
示装置42へのコマンドは仮想端末サブシステム30を
通り出力装置42に送られる。 [0067] 他方、図4は表示装置42へのコマンドがモニタモード
において採るパスを示す。仮想端末サブシステム30は
入力装置41からデータを受けそれを入力バッファ15
に入れる。このデータが入力バッファ15に入ると、ア
プリケーション50は任意の時点で、そしてこのデータ
を知る仮想端末サブシステム30をアクセスすることな
く、このデータをアクセスしうる。次に、アプリケーシ
ョン50はこのデータを入力バッファ15から出力表示
装置42に直接送る。 [0068] モニタモードでは仮想端末サブシステム30はバイパス
され、かくしてアプリケーション50と出力装置42の
間に生じるアクティビティの知識を有かない。 それ故、このモードを使用するアプリケーション50は
それ自体のデータ表示を維持し、仮想端末間の転送を容
易にすることにより積極的に関係しなければならない。 [0069] モニタモードを用いるアプリケーション50はすべての
入力データトラッキング(キーボード、マウス、タブレ
ット、ライトプログラム機能キーおよびダイアル)にも
応答しうる。これらアプリケーション50は処理要求に
最も適したキーボード入力データのフォーマットプロト
コルを特定することが出来る。プロトコルモードはキー
ストロークデータをASCII文字、制御シーケンスに
変換させあるいはキー位置、状態そしてスキャンコード
としてもどすようにセットされる。アプリケーション5
0はまたキーボード入力とロケーション入力をもどすに
ついても応答しうる。 [0070] 一般に、モニタモードはアプリケーション50に、表示
ハードウェア42を制御し、仮想端末サブシステム30
とアプリケーション50の間のデータの動きを最適にし
、そしてアプリケーション50と表示装置42の間のい
くつかのソフトウェア層を除くことによりシステムのパ
フォーマンスを大幅に改善する上でのフレキシビリテイ
を与える。もちろん、このフレキシビリティを得るには
アプリケーション50は仮想端末サブシステム30と表
示装置42との関連レベルを上げることにより表示アク
ティビティの管理においてより積極的な役割を行わねば
ならない。 [0071] 図5〜10はKSRモードとモニタモードのアプリケー
ション50のオペレーションを示す。任意のオペレーテ
ィングシステム10を利用しうるが、このオペレーショ
ンをUNIX形オペレーティングシステムあるいはそれ
に類するもについて説明する。 [0072] 図5はモニタモードで新しい仮想端末を開くためにアプ
リケーション50に必要なステップを示す。アプリケー
ション50、オペレーティングシステム10および仮想
端末サブシステム30間のこれらステップ中の対話も同
じく示している[0073] アプリケーション50が開始する第1のアクティビティ
はステップ51(図5)での特定のファイルの開放であ
る。アプリケーション50がモニタモードでの動作を選
ぶとすると、表示ハードウェアにアクセスを要求しなけ
ればならない(ステップ52)。次にアプリケーション
50はステップ53でモニタモード(MOM)信号を動
作可能としなければならず、これら信号は仮想端末サブ
システム30に入れられる。次にステップ54でアプリ
ケーション50から仮想端末サブシステム30へのPR
OTOCOL  MODE信号が、KSRモードが初期
モードとすればそれからモニタモードに変更する。ステ
ップ55はアプリケーション50から仮想端末サブシス
テム30にモニタモードで使用される大力バッファ15
を限定するために送られそして表示装置42のアプリケ
ーション50によるアクセスを与えるスクリーン要求コ
マンドである。 [0074] このスクリーン要求コマンド55と前のプロトコルコマ
ンド54は仮想端末をモニタモードにし、そしてまたア
プリケーション50に入力バッファ15内にバソファリ
ングを限定するかあるいは限定しない機会を与える。バ
ッファリングが限定されるかどうか、スクリーン要求ス
テップ55は仮想端末サブシステム30に送られる。こ
の時点で仮想端末はモニタモードとなり、アプリケーシ
ョン50は仮想端末サブシステム30から信号許可割込
み(SIGGRANT)12を受ける。これはアプリケ
ーション50にこの端末に関連した表示アダプタハード
ウェア42の完全な制御が与えられたことをそれに知ら
せる。この時点からアプリケーション50はそれが選ん
だ表示を物理的出力表示装置42になすことが出来る。 [0075] 図6はモニタモードの新しい端末を開きそしてその端末
をKSRモードに変えるステップを示す。図6のステッ
プは図5の事象シーケンスのすべて、すなわち、特定の
ファイルの開放51、表示ハードウェアへのアクセスの
要求52、モニタモード信号の動作の可能化53、仮想
端末をモニタモードにするためのプロトコルモードの送
出54、およびスクリーンとしての要求55を含む。信
号5IGGRANT12がアプリケーション50に入っ
た後に、仮想端末はモニタモードとなる。このアプリケ
ーションがこの端末をKSRモードにしたいときには、
このアプリケーションはステップ56でスクリーンレリ
ーズアクノリッジ(SCREEN  RELEASE 
 ACK)を呼び出すコマンドを仮想端末サブシステム
30に送る。ステップ56により、仮想端末はモニタモ
ード動作を停止する準備を完了する。次にアプリケーシ
ョン50はステップ57でプロトコルモード要求を仮想
端末サブシステム30に送る。このサブシステム30は
仮想端末をモニタモードからKSRモードに変える。 [0076] 図7は新しい仮想端末がモニタモードで開かれそして次
に閉じられる場合を示す。ここにおいても事象のシーケ
ンスは図5と同じである。信号許可12がアプリケーシ
ョン50に入った後にこの端末はモニタモードとなる。 この時点でアプリケーションがこの端末を閉じることを
選ぶとすると、ステップ58で閉成仮想端末コマンド(
CLO5E  VT)をサブシステム30に送る。これ
により仮想端末サブシステム30のプロセスからこの端
末が除かれそして閉じられる。 [0077] モニタモードで動作する仮想端末は仮想端末サブシステ
ム30のモード切換操作に関与する。モード切換により
、開いている異なる仮想端末がハードウェア表示に表示
されうる。同一のハードウェア表示を複数の仮想端末が
共用しうる能力については前述した。 [0078] キーボードでのアクションキー操作が行われたとすると
、それにより仮想端末スクリーンがハードウェア表示装
置42に生じる。アクションキーが再び作動されると、
次の仮想端末スクリーンが表示される。このプロセスは
アクションキーの作動(モード切換操作)ごとにくり返
される。各仮想端末スクリーンがハードウェア表示装置
42に生じるようにするに充分な回数だけキーが作動さ
れてしまうと、次のアクションキーの作動によりはじめ
に表示された仮想端末スクリーンが再び表示される。こ
のハードウェア表示装置42上の仮想端末スクリーンの
連続スクロールはキーボード上のモード切換操作のくり
返しで生じる。 [0079] 仮想端末サブシステム30はKSRモードで動作するす
べての仮想端末のスクリーン内容のコピーを保存する。 KSRモードで動作する一つの仮想端末の作動により、
モード切換操作は、自動的に、予め保存されている仮想
端末スクリーンをハードウェア表示装置42に回復させ
る。アプリケーション50はKSRモードの仮想端末の
スクリーン内容を保存する必要がない。更に、アプリケ
ーションがスクリーン内容の保存/回復を行う必要がな
いため、それがKSRモードで開いている仮想端末の状
態を追跡しつづける必要もない。 [0080] しかしながら、仮想端末がモニタモードとなっており、
モード切換え操作に関与するとすると、その端末が表示
装置の制御を放棄する前にデータを保存しなければなら
ない。 [0081] 図8は2個の端末が開かれそして共にモニタモードであ
る場合を示す。キーボード上でアクションキーが作動さ
れれば、仮想端末サブシステム3oの一部である仮想端
末資源コントローラ310が信号701を受ける。仮想
端末資源コントローラ310は信号702を仮想端末の
不活性化のために送る。これが前述のように仮想端末サ
ブシステム30の仮想端末モードプロセッサ340内の
仮想資源コントローラタイマ801をスタートさせる。 このタイマは例えば30秒のような特定の時間にセット
される。 [0082] アプリケーション50はサブシステム30からスクリー
ンレリーズ割込を受ける。リトラクト信号(SIG  
RETRACT)の形である。このSIG  RETR
ACTはアプリケーション50に、すべてのデータを保
存しそして5IGRETRACT信号に応答するために
、30秒のような特定の時間を有することをステップ1
01で知らせる。SIG  RETRACT信号101
に応答するためにアプリケーション50は仮想端末サブ
システム30にスクリーンリリースアクノリッジ501
を送る。スクリーンリリースアクノリッジ501はサブ
システム30にアプリケーション50がハードウェア表
示装置42(現在書込まれてし)る)を解放しなければ
ならないことを知っていること、およびアプリケーショ
ン50が表示42を放棄する用意が出来ていることを知
らせる。仮想資源コントローラタイマはこのときステッ
プ803で動作不能とされる。 [0083] この時点でサブシステム30はスクリーンリリースアク
ノリッジ501を受ける。サブシステム30はこのとき
その内部で不活性化(804)と活性化(704)プロ
セスを行う。アプリケーション50はこのプロセスの存
在を知らない。 次のアプリケーション50はサブシステム30から、ア
プリケーション50により直接にアクセスしうる表示装
置42についてこのとき制御を有する第2仮想端末にお
いての動作をアプリケーション50に知らせるSIG 
 GRANT信号102を受ける。かくして、第1(不
活性化)仮想端末のハードウェア表示装置42との通信
の能力は除去されそして第2(活性化)仮想端末にハー
ドウェア表示装置42に直接に引込む機会が与えられる
。 [0084] 図9は2つの仮想端末がモニタモードにあって、モード
切換操作に関与しつつある場合を示す。しかしながら、
この場合にはアプリケーション50は指定された時間内
にはSIG  RETRACT信号101には応答しな
い。図9に示すようにアプリケーション50は、モード
切換えのためのキーボードアクションキーシーケンスが
はじまっている(ステップ701)から仮想端末サブシ
ステム30からSIG  RETRACT信号101を
受ける。アプリケーション50が指定時間内すなわち3
0秒以内にこのSIG  RETRACT信号に応答し
ないならば、サブシステム30のタイマがステップ80
7で終了する。 [0085] タイマが終了すると、アプリケーション50は、仮想端
末が終了したことおよびそのサブシステム30がその端
末を閉じるべきことを示すSIG  KILL信号10
3をサブシステム30から受ける。この端末はそのとき
サブシステム30から除かれる。それ故、SIG  K
ILL処理103の後に無応答の仮想端末は閉じられる
(ステップ502)。サブシステム30はこのとき閉じ
コマンドを受けて仮想端末サブシステム構造310,3
40からプロセスを除くことによりその端末を閉じる(
ステップ705,809)。 [0086] この例では活性化されつつある第2の仮想端末があるか
ら、仮想端末サブシステム30はこの第2端末について
知っており、そしてそれを活性化する(ステップ707
)。第2端末はモニタモードであるからスクリーン許可
割込信号(SIG  GRANT)はサブシステム30
により新しく活性化された仮想端末のアプリケーション
50に送られる。この時点でこの新しく活性化された仮
想端末は表示ハードウェア42の制御を有する。 [0087] 図10は2つの仮想端末がKSRおよびモニタモードで
開かれる場合を示す。 モニタモードのこの端末は不活性段階でKSRに変えら
れる。この端末は次にKSRモードで再び活性化され、
そしてそのモードがモニタモードに変えられる。 (oosg) この場合、アプリケーション50は、端末がモニタモー
ドにあってKSRモーは対応するアプリケーション50
により保持されていた)を保持してし)なり)ことを記
’ltしでいることが重要である。それ故、アプリケー
ション50は他の循環人力バッファ15を限定しそして
、KSRからモニタへのモード切換が行われる前に関連
するポインタのすべてをリセットしなければならない。 これは、端末がはじめにモニタモードであり、そしてK
SRモードに切換えられる場合に前の循環バッファ15
が限定されていても云える。循環バッファ15はモニタ
モードがKSRに切換えるとき消える。それ故、図10
の状態は、プロトコルモード(ステップ504)とスク
リーン要求(ステップ505)が一つの端末をモニタモ
ードにするべきときごとに順次送られねばならないこと
を示している。 [0089] 仮想端末システムのエレメントを示すブロック図である
図11について本発明を説明する。3つのアプリケーシ
ョン50a、50b、50cが示されており、これらは
前述のようにモニタモードの表示装置42a、42b、
42cに直接に書込むことが出来る。これらアプリケー
ションは共に開いた6個の仮想端末3132.33,3
4,35.36を有するものとして示しである。一つの
アプリケーションについて開かれる仮想端末の数はコン
ピュータシステム内の物理的表示装置42の総数を越え
ることはないカミアプリケーション50は使用可能な表
示装置の数より少い仮想端末を開くことが出来る。物理
的表示装置の総数(図11では3個)より多い仮想端末
(図11では6個)を開くことが出来る。それ故、仮想
端末サブシステム(VTSS)30が表示装置42をそ
れらの使用を要求するアプリケーション50間に割振る
ことが出来るようなメカニズムを利用しなければならな
い。 [0090] 従来の仮想端末システムは、コンピュータシステムのユ
ーザがモード切換え操作を開始したとき活性である仮想
端末が不活性とされ次の端末が活性となるように動作す
る。かくして、ユーザは多数のプログラムアプリケーシ
ョン50間ではなく、仮想端末間でのみモード切換をす
ることが出来るにすぎないという問題がある。この問題
を解決するために、本発明は1つのアプリケーション5
0により不関与」として指定する。 [0091] 図11に示す本発明のシステムに用いるアプリケーショ
ン50の初期化を図13〜15のフローチャートにより
説明する。このプロセスは図11のアプリケーション5
0a、50b、50cの夫々について利用される。この
初期化プロセスを用いることにより、任意のアプリケー
ション50が本発明のシステムで利用出来る。複数の仮
想端末およびハードウェア表示装置42を管理しうるア
プリケーション50だけを使用する必要はない。 [0092] ステップ1(図13)において、この初期化プロセスは
図11のシステムに用いられているアプリケーション5
0についてはじまる。アプリケーション50は本発明の
システム内にある物理的表示装置42の数を決定するた
めの質問をVTSS30に行う(ステップ2)。次に、
このプロセスは、表示装置42の数がアプリケーション
50に必要な表示装置42の数より少いかどうかを決定
する(ステップ3)。表示装置42が必要とする装置の
数より少いときエラーが生じ、そしてステップ4におい
てステップを出る。しかしながら、必要とする装置の数
に等しいかそれより多い場合にはこのプロセスはステッ
プ5に移り、そこでアプリケーション50に必要な仮想
端末が前述のように開かれる。 [0093] ステップ6においてVTS S 30は仮想端末の内の
1つを除くすべてをモード切換え操作において「不関与
」として指定するために入力/出力制御システム呼出し
くl0CTL)を用いる。l0CTLはアプリケーショ
ン50がVTSS30にどの端末がモード切換えに関与
しないかを知らせうるようにする。次にこのプロセスは
ステップ7において夫々の開かれた端末を異なる物理的
表示装置42に関連づける。ここでもアプリケーション
50が夫々の開いた仮想端末と関連づけようとする表示
装置42をアプリケーション50がVTSS30に知ら
せるためにこのアプリケーションによりl0CTLが用
いられる。 [0094] ステップ8はVTSS30からのSIG  GRANT
とSIG  RETRAC信号が受は入れられて処理さ
れるようにアプリケーション50内の信号ハント−yを
セットする。これら信号ハンドラは周知であり、しばし
ば割込みハンドラと呼ばれている。それ故これら信号ハ
ンドラの詳細は当業者には明らかである。図13〜15
のプロセスは次にすべての物理的表示装置42を初期化
の目的には「使用不能」と指定する(図14のステップ
9)。このように、一つのアプリケーション50はVT
SS30がまず許可しなくては表示装置への書込をはじ
めることが出来ない。ここでもl0CTLを用いてアプ
リケーション50はステップ10でVTS S 30か
らモニタモード動作を要求する。次にアプリケーション
50はステップ11においてAIX(AIXはIBM社
の商標)オペレーティングシステムの一部であるVTS
S30に対するAIXGCシステム呼出しを行うことに
より要求された表示装置42への直接のハードウェアレ
ベルのアクセスを要求する。ステップ12はモード切換
操作に関与するものとして指定されている仮想端末につ
いての物理的表示装置42へのVTSS30からのアク
セスを要求する。 ここでもl0CTLがこの要求をなすために用いられる
。この時点でVTSS30はアクセスを許可された表示
装置42を「使用可能」と指定する。ステップ13は特
定のアプリケーションが必要とする他のスタート手順を
行う。ステップ14は、特定のアプリケーション50が
終了しているかどうかを決定する。そうであればこのプ
ロセスはステップ15で終了する。しかしながら、この
アプリケーションが活性のままであれば、すべての通常
のアプリケーション入力がステップ16で処理される。 ステップ17において、このプロセスは、「使用可能」
とされている表示装置42上での表示を待つアプリケー
ション50からのデータ出力があるかどうかを決定する
。表示を保留または待つ出力があればステップ18で表
示装置42が更新される。しかしながら、使用しうる表
示装置用の保留出力がないときにはアプリケーション5
0ステツプ16にもどりそこでそのアプリケーションが
終了したかどうかを再び決定される。ステップ18にお
ける表示の更新に続きこのプロセスはステップ16にも
どる。 [0095] 各モード切換操作によってユーザの焦点が次のアプリケ
ーションにシフトしうるようにする本発明のメカニズム
の一例を図11.12により説明する。ここでvTSS
30が前述ノヨウニシテ仮想端末31,32,33,3
4,35.36をすでに開いており、そして各アプリケ
ーション50a、50b、50c (アプリケーション
50bと50cはマルチプロセスアプリケーション)が
図13〜15について述べた初期化プロセスを行ってい
るものとする。次に、図11のシステムについて初期安
定状態条件を仮定しなければならない。例えば、次の仮
定を行う。(1)仮想端末33,34.36がアプリケ
ーション50bと50cによりモード切換操作に関与し
ないとされている(図13のステップ6)、(2)アプ
リケーション50aは活性でありモニタモードで表示装
置42に直接書込を行っている、(3)アプリケーショ
ン50b力飄モード切換えに関与している仮想端末32
に対応する表示装置42aへの直接書込みについてのV
TSS30からの許可を要求している、(4)アプリケ
ーション50cがモニタモードで表示装置42bと42
cに積極的に書込みを行っている。 [0096] 図12はこの仮定された初期状態を要約するチャートで
あるカミ他の安定状態条件も本発明の範囲内で同様に仮
定しうる。図12はこの例において行われる各モード切
換操作後の各アプリケーション50a、50b、50c
の条件を示す。 各モード切換操作は各アプリケーション50間で焦点を
シフトさせる、すなわちこのシーケンスは50aから5
0bにそしてそこから50cにそしてそこから50aに
もどるものである。 [0097] まず、ユーザが入力装置41においてモード切換操作を
実行する。この例では仮想端末31,32.35がモー
ド切換え操作に関与するものとしている(図13のステ
ップ6)。モード切換操作後にアプリケーション50a
は、仮想端末31が活性でアプリケーション50aが表
示装置42aにモニタモードでデータを直接に表示して
いるからVTS S 30からSIG  RETRAC
Tを受ける。初期化プロセスのステップ8でアプリケー
ション50aにセットされた信号ハンドラがこのSIG
  RETRACT信号を受けて図17に示す処理を行
う(このプロセスは初期化プロセスにより信号ハンドラ
がアプリケーション50にセットされているとしている
)。 [0098] 図17のステップ1において、アプリケーション50に
よりセットされたSIG  RETRACT信号ハンド
ラがVTS S 30からこのSIG  RETRAC
T信号を受ける。この信号ハンドラは次にl0CTLを
用いてVTSS30に、どの表示装置42を引き込める
かを決定するための質問を行う(ステップ2)。 従来のAIXオペレーティングシステムはSIG  R
ETRACT信号を与よるが従来のAIXで走行するア
プリケーション50はどの表示装置が引込められたかを
決定することは出来ない。 [0099] ステップ3は引込められる表示装置42のスクリーンの
内容の保存である。これらスクリーン内容は「必要に応
じて」アプリケーション50により保存される。すなわ
ちアプリケーション50が再び活性になるとき必要とさ
れない情報は保存されない。表示装置42はこのときア
プリケーション50による書込みには「使用不能」と指
定される(ステップ4)。ステップ5において、アプリ
ケーション50内の信号ハンドラがvTSS30にすべ
てのSIG RETRACT処理が完了するときを知ら
せる。このプロセスは次にステップ6において、引込み
フロセスがモード切換えに関与する仮想端末について行
われたかどうかを決定する。行われていれば信号ハンド
ラはアプリケーションについて今引込まれたスクリーン
への直接書込みの許可を再び要求する(ステップ7)。 SIG  RETRACTがモード切換えに関与しない
仮想端末についてのものであった場合には、ステップ8
でこのSIG  RERACT処理は終了する。このプ
ロセスはVTSS30がSIG  RETRACT信号
をアプリケーション50に送るたびに行われ図11に示
し説明する例における他の部分についても多くの場合に
行われる。 [01001 この例について、アプリケーション50aが上述のよう
に今SIG  RETRACTを完了しており、そして
VTSS30にアクノーレッジ信号をもどしており、仮
想端末31がモード切換えに関与するものと指定されて
いるために「要求状態」に置かれているものとする(図
17のステップ6.7)。モード切換操作により、VT
SS30は、モード切換に関与すると指定された次の仮
想端末である端末32を活性化するためのステップを開
始させる。VTSS30が5IGRETRACT信号の
アクノーレッジを受けた後に、SIG  GRANT信
号が仮想端末32の活性化に関しアプリケーション5Q
bに送られる。アプリケーション50b内の信号ハンド
ラはこのSl、G  GRANTを図16のプロセスに
示すように処理する。 【010月 図16はアプリケーション50の信号ハンドラに入るS
IG  GRANT信号の処理ステップを示すフローチ
ャートである(図13、ステップ8)。図17のステッ
プ1において、信号ハンドラはVTSS30からSIG
  GRANT信号を受けてこのプロセスをスタートす
る。ステップ2でこのプロセスは■を使用可能な表示装
置の数としそれを1にセットすることにより初期化され
る。ステップ3は1番目の表示装置42が「使用可能」
と指定されるか「使用不能」と指定されるかを決定する
(図14のステップ)。表示装置42が使用可能であれ
ば、このプロセスはステップ4に入り、そこですべての
表示装置がその使用の可能性についてチエツクされたか
どうかを決定する。チエツクされていればこのプロセス
はステップ5で終了する。ステップ4ですべての表示装
置がチエツクされていなければ、このプロセスはI=I
+1にこの表示装置をセットすることにより表示装置4
2をその使用の可能性を検査すべきものとして再指定す
る(ステップ6)。この再指定後にプロセスはステップ
3にもどる。ステップ3において問題の表示装置が使用
可能とされていない場合にはステップ7でその端末が不
関与として指定されているかどうかを決定する。そのよ
うに指定されていればアプリケーション50はこの表示
を可視とするためにVTSS30のスクリーンマネージ
ャ320にl0CTLを出す(ステップ8)。もしこの
仮想端末が不関与としてマークされていないものであれ
ば、表示装置42が可視としてマークされ、スクリーン
表示が再生される(ステップ9)。ステップ9に続きこ
のプロセスはステップ4にもどり使用の可能性について
すべての表示装置がチエツクされたがどうかを決定する
。 [0102] この例において、SIG  GRANTの処理はアプリ
ケーション50aがらアクツリッジ信号をVTS S 
30が受けた後にアプリケーション50b内の信号ハン
ドラにより完了する。それ故、モード切換操作により、
アプリケーション50bはモニタモードで表示装置42
aに直接書込みのためのアクセスを許可されている。次
にアプリケーション50bは、アプリケーション50b
により開かれた不関与仮想端末33が、モニタモードで
表示装置42bへの直接書込みを行うことが出来るよう
に可視となるよう要求を行う。この要求はアプリケーシ
ョン50bによりVTSS30およびそれに含まれるス
クリーンマネージャ320に対して行われる。VTSS
30とアプリケーション50bは次に図5について述べ
たようにモニタモードでの仮想端末を開くに必要なステ
ップを行う。不関与端末33は次に可視とされ(図16
のステップ7.8)、表示装置42bが許可されてアプ
リケーション50bがモニタモードでこの装置42bに
直接に書込みうるようになる。 [0103] 表示装置42bと42cに直接に書込みを行っていたア
プリケーション50cハコノトキ表示装置42b用のS
IG RETRACTをvTSS30から受ける。この
理由はアプリケーション50bがモード切換え操作のサ
ブジェクトであり、表示装置42bを要求しているから
である。SIG  RETRACTの処理後にアプリケ
ーション50cは装置42bを再び要求する(図17、
ステップ7)。この理由はこの装置42bがモード切換
えに関与するものとされたアプリケーション50cの仮
想端末35に対応するからである。装置42bの状態は
アプリケーション50cのみがそこへの書込を要求する
ものであるから、この(初期)モード切換え操作の影響
を受けない。それ故、アプリケーション50cはモニタ
モードで装置42cへの直接書込みを行う。 [0104] この例の状態を要約すると、初期モード切換え操作後に
アプリケーション50aが表示装置42aへのアクセス
を要求し、アプリケーション50bがモニタモードで表
示装置42aと42bに書込みを行い、アプリケーショ
ン50cが装置42bへのアクセスを要求すると共にモ
ニタモードで装置42cへの直接書込みを行う。 [0105] 次に、ユーザが入力装置41に第2のモード切換操作を
行うものとする。VTSS30は仮想端末32を不活性
化し、そして不関与端末33と34をスキップして次の
関与端末35を活性化する。端末35の活性化は図12
で述べたように生じる。 [0106] 前述のようにVTSS30は、VTSS30が活性化さ
れるべき次の関与端末を選ぶことが出来るようにするメ
カニズムを含んでいなくてはならない。次の端末を不関
与と指定すべきときは、VTSS30は不関与と指定さ
れていないその次の端末までスキップする。 [0107] この例での仮定に基づけば、端末33と34は不関与で
ある。従ってVTSS30は端末33と3゛4をスキッ
プして35に移る。仮想端末35の活性化により、表示
装置42bを要求しているアプリケーション50cはこ
のときモード切換え操作の主体となる。ここでSIG 
 RETRACTがVTSS30がら装置42bについ
てアプリケーション50bに出される。表示装置42b
を放棄した後にアプリケーション50bはVTSS30
にアクノリッジをもどす。次に5IGGRANTがアプ
リケーション50cに出されて装置42bへの直接アク
セスを許可する。この時点で、アプリケーション50c
は、それがアクセスしなかった唯一の表示装置である装
置42aをVTSS30のスクリーンマネージャ320
から要求する。VTSS30は装置42aにツいてのS
IG  GRANTをアプリケーション50bに出す。 SIG  GRANT処理およびアクノリッジの送出後
にアプリケーション50bは表示装置42aを要求する
(図17のステップ7)。アクノリッジの受領によりV
TSS30は表示装置42aについてのSIG  GR
ANTをアプリケーション50cに出す。アプリケーシ
ョン50bと500の信号ハンドラ内で生じるSIG 
 GRANTとSIG  RETRACTの処理は図1
6.17について述べた処理と同じである。アプリケー
ション50cは装置42cに書込を要求する唯一のアプ
リケーションであり、第2のモード切換操作前にモニタ
モードでそれにすでに書込みを行っていたから装置42
cにっいては状態変化はない。 [0108] それ故、図12において第2モード切換操作後にアプリ
ケーション50a、50b、50cは次のような状態と
なる。アプリケーション50aは表示装置42aへのア
クセス要求を行う状態のままであり、モード切換え操作
のためにアプリケーション50bは表示装置42aと4
2bを持出して(引込め)おり、現在は表示装置42a
を要求しており、アプリケーション50cは装置42a
、42b42cのすべてへのアクセスを有し、モニタモ
ードでそれらに直接書込み可能となっている。アプリケ
ーション50cはこのモード切換えとVTSS30によ
り与えられる次の関係したSIG  RETRACT信
号(アプリケーション50bへの)とSIG GRAN
T信号(アプリケーション50cへの)により、装置4
2aと42bをアプリケーション50bからとり上げる
ことが出来た。またアプリケーション50cは前に装置
42cに直接に書込みを行っていたのであり、モード切
換え操作はその状態を変化させなかった。 [0−109] 他のモード切換操作を、ユーザが入力装置41において
このシーケンスを開始し、VTSS30が仮想端末35
の不活性化と不関与端末36をスキップして次の関与仮
想端末である端末31への進みを知る場合について説明
する。これら仮想端末のシーケンスは任意の順序でよい
が、この例では仮想端末31から36へそして31にも
どる順次的なスクロールパターンである。しかしながら
、任意のシーケンスでよく、例えば逆に端末36から3
1へそして36にもどるものでもよい。 [01101 アプリケーション50cの信号ハンドラは表示装置42
aについてVTSS30からSIG  RETRACT
信号を受けそしてこの処理の完了後にVTSS30にア
クノリッジを出す。アプリケーション50cがらのアク
ノリッジの受領に続きVTSS30は表示装置42aに
ついてアプリケーション50aに5IGGRANTを出
す。アプリケーション50aによるSIG  GRAN
Tの処理後に表示装置42aがアプリケーション50a
によりモニタモードで書込みを行われる(すなわちアプ
リケーション50aが表示装置42aで活性となる)。 [0111] かくして、仮想端末35は不活性化されそして仮想端末
31がこの3回目のモード切換操作により活性化される
。しかしながら、アプリケーション50aは表示装置4
2bと42cを要求しておらず装置42aのみがVTS
 S 30からのSIG  GRANT信号の発行によ
りそれに許可されているから、アプリケーション50c
から表示装置42bと42cを引込める必要はない。か
くして、図12から、アプリケーション50aがこのと
きモニタモードで表示装置42aへの書込みを行い、ア
プリケーション50bは表示装置42aへのアクセスを
要求中であり、アプリケーション50cはモニタモード
で表示装置42bと42cに書込みを行っていることが
わかる。また図12において、表示装置42a、42b
。 42cに対するアプリケ−ション50a、50b、50
cの状態は第3モード切換操作後にはじめに仮定された
状態と全く同じとなることがわかる。 [0112] それ故、いかにして本発明が、複数表示装置への直接書
込み能力を有する複数アプリケーションを含むシステム
のユーザにより開始される夫々のモード切換操作により
、従来のシステムにおけるように一つの仮想端末から他
の端末へではなく、アプリケーションからアプリケーシ
ョンへと表示装置のサブジェクトを常に変えうるように
するかは明らかである。また、モード切換え操作のサブ
ジェクトであるアプリケーション50がそれら表示装置
への直接書込を行うためのプロセスのすべてについてそ
れら表示装置へのアクセス権を常に有することも明らか
である。前述の例は図11に示すシステムに本発明を限
定しようとするものではない。少くとも1つが複数のハ
ードウェア表示装置への直接書込可能である複数のアプ
リケーションを利用する任意のシステムを本発明は意図
するものである。 [0113] 特定の実施例について説明したが、本発明の範囲内で多
くの変化、変更が可能である。例えば本発明は、第1ア
プリケーシヨンが第1表示装置への書込みが可能であり
、他のプログラムアプリケーションがこの第1表示装置
と少くとも1個の他の表示装置への直接書込みが可能と
なった形態を有するシステムについて当業者がその利点
を引き出すことを可能にするものである。
【図面の簡単な説明】
【図1】 本発明の処理システム内に含まれる層を示すブロック図
【図2】 本発明の仮想端末サブシステムの要素を示す他のブロッ
ク図。
【図3】 テキスト処理モードにおいてシステムで使用される情報
の流れを示す図。
【図4】 モニタモードでハードウェア表示装置に書込むために本
システムにより使用されるデータの流れを示す図。
【図5】 プログラムアプリケーションが仮想端末環境におけるノ
\−ドウエア表示装置に直接にアクセスしうるようにす
るために本発明により利用されるプロセスの第1の態様
を示すフローチャート。
【図6】 図5と同様のプロセスの第2の態様を示すフローチャー
ト。
【図7】 図5と同様のプロセスの第3の態様を示すフローチャー
ト。
【図8】 図5と同様のプロセスの第4の態様を示すフローチャー
ト。
【図9】 図5と同様のプロセスの第5の態様を示すフローチャー
ト。
【図10】 図5と同様のプロセスの第6の態様を示すフローチャー
ト。
【図11】 本発明の仮想端末環境における種々の要素とそれらの相
互関係の例を示すブロック図。
【図12】 本発明の特定の動作例について図10の夫々のプログラ
ムアプリケーションの状態情報を示すチャート。
【図13】 各プログラムアプリケーションについての初期化プロセ
スの第1部分を示すフローチャート。
【図141 各プログラムアプリケーションについての初期化プロセ
スの第2部分を示すフローチャート。 【図15】 各プログラムアプリケーションについての初期化プロセ
スの第3部分を示すフローチャート。
【図16】 SIG  GRANT処理に必要なステップを示すフロ
ーチャート。
【図17】 SIG  RETRACTがアプリケーションプログラ
ムに入るときに必要な処理ステップを示すフローチャー
ト。
【符号の説明】
10 オペレーティングシステム 30 仮想端末サブシステム(VTSS)31 仮想端
末 32 仮想端末 33 仮想端末 34 仮想端末 35 仮想端末 36 仮想端末 40 ハードウェアI10装置 41 人力装置 42a  表示装置 42b  表示装置 2c 50a 0b 0c 表示装置 アプリケーション アプリケーション アプリケーション ハードウェアインターフェース 資源コントローラ(RC) スクリーンマネージャ キーボード装置ドライバ ロケータ装置ドライバ 音響装置ドライバ 表示装置ドライバ 仮想端末 仮想端末モードプロセッサ(VTMP)
【書類者】
【図1】 図面
【図3】
【図4】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 1回のシフト操作により第1プログラムアプリケーショ
    ンから次のプログラムアプリケーシヨンへ焦点をシフト
    するための方法であって、複数のハードウェア表示装置
    を設けるステップ、複数の上記プログラムアプリケーシ
    ョンを設けるステップ、夫々上記プログラムアプリケー
    ションの特定の1個に関連づけられると共に上記ハード
    ウェア表示装置の1個に直接に対応する複数の仮想端末
    を設けるステップ、 上記アプリケーションの内の特定の1個に関連する上記
    仮想端末の内の1個を除くすべてを上記シフト操作に関
    与しないものとして指定するステップ、および上記関与
    しない仮想端末のすべてを無視するように上記シフト操
    作を開始するステップ を有するアプリケーション間シフト方法。
  2. 【請求項2】 前記シフト操作において関与しないと指定されない前記
    プログラムアプリケーションの内の次のものに関連する
    前記仮想端末の内の次のものを活性化するステップを更
    に含む請求項1に記載の方法。
  3. 【請求項3】 前記複数のプログラムアプリケーションの内の少くとも
    1個が前記複数のハードウェア表示装置の内の少くとも
    2個に直接に書込みしうる請求項1に記載の方法。
  4. 【請求項4】 前記次のプログラムアプリケーションにより要求されて
    いるのは前記ハードウェア表示装置の内のどれであるか
    を決定するステップ、この要求されているハードウェア
    表示装置へのアクセスを上記複数のプログラムアプリケ
    ーションの他による使用に対し引込めるステップ、およ
    び上記要求されたハードウェア表示装置へのアクセスを
    上記次のプログラムアプリケーションに許可するステッ
    プ を更に含む請求項3に記載の方法。
  5. 【請求項5】 前記決定のステップは前記次のプログラムアプリケーシ
    ョンにより要求された前記ハードウェア表示装置の内の
    少くとも1個に現在アクセスしている前記プログラムア
    プリケーションが上記ハードウェア表示装置の内のどれ
    を引込めるべきかの質問を行いうるようにするメカニズ
    ムを設けるステップを含んでいる請求項4に記載の方法
  6. 【請求項6】 1回のシフト操作により第1プログラムアプリケーショ
    ンから次のプログラムアプリケーシヨンへ焦点をシフト
    するための方法であって、複数のハードウェア表示装置
    を設けるステップ、少くとも1つが上記ハードウェア表
    示装置の内の少くとも2個に直接書込み可能である複数
    の上記プログラムアプリケーションを設けるステップ、
    夫々上記プログラムアプリケーションの内の特定の1個
    に関連すると共に上記ハードウェア表示装置の1個に直
    接対応する複数の仮想端末を設けるステップ、上記アプ
    リケーションの内の特定の1個に関連する上記仮想端末
    の内の1個を除くすべてを上記シフト操作に関与しない
    ものとして指定するステップ、上記次のプログラムアプ
    リケーションにより要求されるのは上記ハードウェア表
    示装置の内のどれであるかを決定するステップ、上記次
    のプログラムアプリケーションにより要求された上記ハ
    ードウェア表示装置の内の少くとも1個に現在アクセス
    している上記プログラムアプリケーションが上記ハード
    ウェア表示装置の内のどれを引込めるべきかの質問を行
    いうるようにするメカニズムを設けるステップ、および
    上記関与しない仮想端末のすべてが無視されるように上
    記シフト操作を開始するステップ を有するアプリケーション間シフト方法。
  7. 【請求項7】  1回のシフト操作により第1プログラムアプリケーシ
    ョンから次のプログラムアプリケーションへ焦点をシフ
    トするための装置であって、複数のハードウェア表示装
    置、 複数の上記プログラムアプリケーション、 夫々上記プログラムアプリケーションの特定の1個に関
    連づけられると共に上記ハードウェア表示装置の1個に
    直接に対応する複数の仮想端末、および上記アプリケー
    ションの内の特定の1個に関連する上記仮想端末の内の
    1個を除くすべてを上記シフト操作に関与しないものを
    指定して上記関与しない仮想端末のすべてを無視しうる
    ようにする手段 を備えたアプリケーション間シフト装置。
  8. 【請求項8】 前記シフト操作に関与しないものと指定されない前記次
    のプログラムに関連する次の仮想端末を活性化するため
    の手段を更に含んでいる請求項7に記載の装置。
  9. 【請求項9】 前記プログラムアプリケーションの内の少くとも1個は
    前記ハードウェア表示装置の内の少くとも2個に直接書
    込み可能である請求項7に記載の装置。
  10. 【請求項10】 前記次のプログラムアプリケーションにより要求されて
    いるのは前記ハードウェア表示装置の内のどれであるか
    を決定する手段、上記次のプログラムアプリケーション
    により要求される上記ハードウェア表示装置へのアクセ
    スを前記複数のプログラムアプリケーションの他のもの
    による使用から引込めるための手段、および 上記要求されたハードウェア表示装置へのアクセスを上
    記次のプログラムアプリケーションに許可する手段 を更に含む請求項9に記載の装置。
  11. 【請求項11】 前記決定する手段は前記次のプログラムアプリケーショ
    ンにより要求された上記ハードウェア表示装置の内の少
    くとも1個に現在アクセスしている上記プログラムアプ
    リケーションが上記ハードウェア表示装置の内のどれを
    引込めるべきかの質問を行いうるようにするメカニズム
    を与える手段を含んでいる請求項10に記載の装置。
  12. 【請求項12】 1回のシフト操作により第1プログラムアプリケーショ
    ンから次のプログラムアプリケーションへ焦点をシフト
    するための装置であって、複数のハードウェア表示装置
    、 少くとも一つが上記ハードウェア表示装置の内の少くと
    も2個に直接書込み可能である複数の上記プログラムア
    プリケーション、夫々上記プログラムアプリケーション
    の特定の1個に関連づけられると共に上記ハードウェア
    表示装置の1個に直接対応する複数の仮想端末、上記ア
    プリケーションの内の特定の1個に関連する上記仮想端
    末の内の1個を除くすべてを上記シフト操作に関与しな
    いものとして指定するための手段、上記次のプログラム
    アプリケーションにより要求されているのは上記ハード
    ウェア表示装置の内のどれであるかを決定する手段、上
    記次のプログラムアプリケーションにより要求された上
    記ハードウェア表示装置の内の少くとも1個に現在アク
    セスしている上記プログラムアプリケーションが上記ハ
    ードウェア表示装置の内のどれを引込めるべきかの質問
    を行いうるようにするメカニズム、および 上記次の関与しない仮想端末のすべてを無視するように
    上記シフト操作を開始する手段 を備えたアプリケーション間シフト装置。
  13. 【請求項13】 複数のハードウェア表示装置と複数のプログラムアプリ
    ケーションを含む仮想端末環境において、1回のシフト
    操作により第1のプログラムアプリケーションから次の
    プログラムアプリケーシヨンへシフトするコンピュータ
    プログラムプロダクトであって、 夫々上記プログラムアプリケーションの内の特定の1個
    に関連すると共に上記ハードウェア表示装置の1個に直
    接対応する複数の仮想端末、および上記アプリケーショ
    ンの特定の1つに関連する上記仮想端末の内の1つを除
    くすべてを上記シフト操作に関与しないものとして指定
    し、これら関与しない仮想端末のすべてを無視するよう
    にする手段 を備えたコンピュータプログラムプロダクト。
  14. 【請求項14】 前記シフト操作において関与しないと指定されない前記
    次のプログラムアプリケーションに関連した次の仮想端
    末を活性化するための手段を更に含んでいる請求項13
    に記載のコンピュータプログラムプロダクト。
  15. 【請求項15】 前記複数のプログラムアプリケーションの内の少くとも
    1個が前記複数のハードウェア表示装置の内の少くとも
    2個に直接書込み可能である請求項13に記載のコンピ
    ュータプログラムプロダクト。
  16. 【請求項16】 前記次のプログラムアプリケーションにより要求されて
    いるのは前記ハードウェア表示装置の内のどれであるか
    を決定する手段、上記次のプログラムアプリケーション
    により要求された前記表示装置へのアクセスを上記複数
    のプログラムアプリケーションの内の他のものによる使
    用から引込めるための手段、および 上記要求されたハードウェア表示装置へのアクセスを上
    記次のプログラムアプリケーションに許可する手段 を更に含んでいる請求項15に記載のコンピュータプロ
    グラムプロダクト。
  17. 【請求項17】 前記決定する手段は前記次のプログラムアプリケーショ
    ンにより要求された前記ハードウェア表示装置の内の少
    くとも1個に現在アクセスしている上記プログラムアプ
    リケーションが上記ハードウェア表示装置の内のどれを
    引込めるべきかの質問を行いうるようにするメカニズム
    を与える手段を含んでいる請求項16に記載のコンピュ
    ータプログラムプロダクト。
  18. 【請求項18】 複数のハードウェア表示装置と少くとも1個がこれらハ
    ードウェア表示装置の内の少くとも2個に直接書込み可
    能である複数のプログラムアプリケーションを含む仮想
    端末環境において第1プログラムアプリケーションから
    次のプログラムアプリケーションに焦点をシフトするた
    めのコンピュータプログラムプロダクトであって、 夫々上記プログラムアプリケーションの内の特定の1個
    に関連づけられると共に上記ハードウェア表示装置の1
    個に直接対応する複数の仮想端末、上記アプリケーショ
    ンの特定の1つに関連する上記仮想端末の内の1個を除
    くすべてを上記シフト操作に関与しないものとして指定
    する手段、上記次のプログラムアプリケーションにより
    要求されているのは上記ハードウェア表示装置の内のど
    れであるかを決定する手段、上記次のプログラムアプリ
    ケーションにより要求された上記ハードウェア表示装置
    の内の少くとも1個に現在アクセスしている上記プログ
    ラムアプリケーションが上記ハードウェア表示装置の内
    のどれを引込めるべきかの質問を行いうるようにするメ
    カニズム、および 上記次の関与しない仮想端末のすべてを無視するように
    上記シフト操作を開始する手段 を備えたコンピュータプログラムプロダクト。
  19. 【請求項19】 仮想端末環境において第1マルチプロセスプログラムア
    プリケーションから次のプログラムアプリケーションに
    焦点をシフトするための方法であって、上記プログラム
    アプリケーションの特定の1つに関連する上記仮想端末
    の内の1個を除くすべてをシフト操作に関与しないもの
    として指定するステップ、および 上記次のプログラムアプリケーションに関連する上記不
    関与仮想端末のすべてが無視されるように1回のシフト
    操作を開始するステップを有するアプリケーション間シ
    フト方法。
  20. 【請求項20】 前記シフト操作を前記マルチプロセスプログラムアプリ
    ケーションの夫々について続行するステップを更に含ん
    でいる請求項19に記載の方法。
JP2416088A 1990-02-01 1990-12-28 アプリケーション間シフト方法および装置 Pending JPH04138547A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US47328890A 1990-02-01 1990-02-01
US473288 1990-02-01

Publications (1)

Publication Number Publication Date
JPH04138547A true JPH04138547A (ja) 1992-05-13

Family

ID=23878944

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2416088A Pending JPH04138547A (ja) 1990-02-01 1990-12-28 アプリケーション間シフト方法および装置

Country Status (5)

Country Link
EP (1) EP0441509B1 (ja)
JP (1) JPH04138547A (ja)
KR (1) KR950004216B1 (ja)
CN (1) CN1082209C (ja)
DE (1) DE69131470T2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1326035C (zh) * 2002-06-24 2007-07-11 株式会社Ntt都科摩 在移动应用程序环境中使用的产品
US8989802B2 (en) * 2009-01-27 2015-03-24 Symbol Technologies, Inc. Methods and apparatus for a mobile unit with device virtualization

Also Published As

Publication number Publication date
EP0441509A2 (en) 1991-08-14
DE69131470T2 (de) 2000-03-02
CN1082209C (zh) 2002-04-03
DE69131470D1 (de) 1999-09-02
KR920000027A (ko) 1992-01-10
KR950004216B1 (ko) 1995-04-27
EP0441509A3 (en) 1993-06-02
EP0441509B1 (en) 1999-07-28
CN1060545A (zh) 1992-04-22

Similar Documents

Publication Publication Date Title
US5029077A (en) System and method for controlling physical resources allocated to a virtual terminal
US6859928B2 (en) Shared virtual desktop collaborative application system
US5337412A (en) Method and apparatus for substituting real and virtual devices independent from an data processing system application program
US5313581A (en) System and method for communication between windowing environments
US4787026A (en) Method to manage coprocessor in a virtual memory virtual machine data processing system
JPH04314124A (ja) 表示システム、xウィンドウサーバーシステム及び表示           方法
JPS62298829A (ja) デ−タ表示装置
KR100250464B1 (ko) 고속병렬컴퓨터의 노드 부트 방법
US6337702B1 (en) Method and system for graphically indicating a valid input within a graphical user interface
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
JPH04138547A (ja) アプリケーション間シフト方法および装置
EP0235379B1 (en) Virtual terminal monitored mode
US5925096A (en) Method and apparatus for localized preemption in an otherwise synchronous, non-preemptive computing environment
JPH02139626A (ja) マルチウインドウイベント管理装置
JPH01189751A (ja) データ処理システム
JPH06187279A (ja) 入力装置制御装置
JPH06110717A (ja) 複合計算機システム
JPH03273442A (ja) ページ制御処理方式
JP2848172B2 (ja) 入出力制御装置
JPH05143540A (ja) 端末制御装置
JPH04372036A (ja) 多言語対応メッセージ表示方式
JPH05265846A (ja) メモリ管理方式
JP2004013687A (ja) データ処理装置
JPS6079426A (ja) 多重論理画面機能を備える表示装置の画面管理方式
JPH054686B2 (ja)