JP3468369B2 - フレーム・バッファに直接的に書込む方法及び装置 - Google Patents

フレーム・バッファに直接的に書込む方法及び装置

Info

Publication number
JP3468369B2
JP3468369B2 JP30833591A JP30833591A JP3468369B2 JP 3468369 B2 JP3468369 B2 JP 3468369B2 JP 30833591 A JP30833591 A JP 30833591A JP 30833591 A JP30833591 A JP 30833591A JP 3468369 B2 JP3468369 B2 JP 3468369B2
Authority
JP
Japan
Prior art keywords
data
window
address
frame buffer
graphic data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP30833591A
Other languages
English (en)
Other versions
JPH04361322A (ja
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH04361322A publication Critical patent/JPH04361322A/ja
Application granted granted Critical
Publication of JP3468369B2 publication Critical patent/JP3468369B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、フレーム・バッファへ
のアクセスを制御するウインドイング・プログラムを有
するマルチタスキング・コンピュータ・システムに関
し、さらに詳しくは、このようなシステムにおいてフレ
ーム・バッファに直接的に書込む方法および装置に関す
る。
【0002】
【従来の技術】最も簡単な形態では、コンピュータは、
情報が出力ディスプレイに書込まれるように、単一プロ
グラムからの情報を、情報を記憶するフレーム・バッフ
ァに書込む。一般に、この単一プログラムのディスプレ
イは、全出力ディスプレイをカバーしている。出力ディ
スプレイに一度に1つ以上のプログラムをディスプレイ
したい場合、各プログラムは、ウインドウ(通常、方
形)と呼ばれるディスプレイの小さい部分に提供され
る。コンピュータ・システムにおいて、多くの異なるプ
ログラムが走行している場合、出力ディスプレイのスク
リーンには沢山のウインドウが現れる。これらウインド
ウは移動したり、大きさが(場合によっては形状も)変
化したり、互いに重なり合うこともある。1つのウイン
ドウが、あるプログラムが走行している別のウインドウ
と重なり合った場合、データは重なり合ったウインドウ
の部分や背景には書込まれてはならない。そのデータ
は、前景のデータが重ね書きされないようにクリップさ
れなければならない。
【0003】とりわけ、各プログラムがフィットする異
なるウインドウをどうにかしてセット・アップするよう
複数のウインドウにおいてアプリケーション・プログラ
ムを走行する場合、各アプリケーション・プログラムか
らの情報を正しいウインドウに送り、かつ各プログラム
の正しい部分がディスプレイされるよう異なるウインド
ウの重なり合いに注意しなければならない。これら全て
のタスクが各アプリケーション・プログラムにより行な
われる場合には、異なるプログラムが互いに干渉しない
ようにするため、プログラム間で相当チェックしなけれ
ばならない。このため、システムのオペレーション速度
は遅くなり、お粗末な設計のソフトウェアではシステム
のオペレーションを損なってしまうことになる。したが
って、より進歩したコンピュータ・システムでは、何を
ディスプレイするかを制御するためフレーム・バッファ
への書込み動作の全てを引き受けるウインドウ管理プロ
グラムを設計している。
【0004】ウインドウ管理プログラムは、全ディスプ
レイを制御し、異なるプログラムが書込まれるウインド
ウをセット・アップし、これらウインドウの位置決めを
制御し、ウインドウが重なり合っている場合にはどの情
報をディスプレイすべきかを決定し、かつ単一出力ディ
スプレイ装置に沢山のアプリケーション・プログラムを
同時にディスプレイさせるのに必要な全てのオペレーシ
ョンを行なう。ウインドウ管理プログラムを通して動作
するプログラムが、出力ディスプレイに情報を提供する
ことを望んでいる場合には、ウインドウ管理プログラム
に知らせる。ウインドウ管理プログラムは、ディスプレ
イの特定の部分をそれに割当て、かつプログラムがディ
スプレイされるべきウインドウをセット・アップする。
したがって、代表的には、情報の各ピクセルが、提供用
アプリケーション・プログラムにより供給されると、ウ
インドウ管理プログラムは、そのピクセルが現れるべき
スクリーン上の位置を決定し、ピクセルが別のウインド
ウにより隠されていないかどうかを見分けるようチェッ
クし、かつ出力ディスプレイにディスプレイするためフ
レーム・バッファに計算結果を供給する。ウインドウ管
理プログラムは、ウインドウの位置決めや再位置決め、
および重なり合いにより生じた問題を制御する。これに
より、それらがディスプレイされる際、プログラムを正
しく動作することができ、またプログラマはディスプレ
イに要する手続きの大半を書込む必要はない。
【0005】このようなシステムでは、ウインドウ管理
プログラムを通過することによってしか、プログラム
は、その結果をディスプレイすることができなかった。
一般には、これは望ましいことである。なぜならば、ウ
インドウ管理プログラムは、ウインドウ・ディスプレイ
に必要なハウスキーピングの全てを行ない、かつ異なる
プログラムが互いに重ね書きしないようにしてディスプ
レイにおいて干渉し合うことがないようにするからであ
る。しかし、このような情報提供の方法は、フレーム・
バッファ(ここからデータがディスプレイに実際に書込
まれる)を1秒に約10回しか更新することができない
よう、有効オーバヘッドを有している。このようなウイ
ンドウ管理プログラムを走行しているコンピュータ・シ
ステムがフレーム・バッファを更新する速さは、ウイン
ドウ管理プログラムなしのシステムにおいて各プログラ
ムが更新する速度ほどは速くない。
【0006】多くの各コンピュータ・プログラムは、ウ
インドウ管理プログラムを用いた場合よりも速くフレー
ム・バッファが更新される場合にはより優れた性能を示
す。たとえば、テレビのようなライブ・ビデオやアニメ
ーション・プログラムは、1秒当り10回よりもはるか
に速い速度で更新しなければならない。一般に、毎秒3
0フレームのビデオ情報が提供される。この情報が、フ
レーム・バッファを1秒当り10回しか更新することが
できないウインドウ管理プログラムにより制御される出
力ディスプレイのウインドウに提供される場合には、提
供されるビデオ・ピクチュアは歪んでしまう。それは、
1つのフレームから次のフレームに飛び越したように見
え、また異なるビデオ・フレームの部分が1度にディス
プレイに現れたようなフレームの分裂が起きる。
【0007】ディスプレイを制御するためウインドウ管
理プログラムを用いているシステムにおいて、歪められ
ることのない高速で変化する図形情報を提供する1つの
方法として、ウインドウ管理プログラムをバイパスして
フレーム・バッファに直接的に書込む方法がある。しか
し、このように行なった場合、ウインドウ管理プログラ
ムにより解決されるはずの全ての問題が発生する。アプ
リケーション・プログラムがディスプレイに直接的に書
込んだ場合、それは、他のプログラムに重ね書きするか
または他のやり方でプログラムと干渉し合うか、または
ウインドウ管理プログラムによりそれ自身重ね書きされ
てしまう。さらに、このようなプログラムは、ウインド
ウ管理プログラムにより制御されるプログラムとともに
存在できるために必要な全てのクロス−チェッキングに
より生じた遅延をどうにかして克服しなければならな
い。
【0008】
【発明が解決しようとする課題】本発明の目的は、フレ
ーム・バッファに直接的に書込むためウインドウ管理プ
ログラムを有しているシステムにおいてプログラムを走
行させる方法および装置を提供することである。本発明
の他の目的は、ウインドウ管理プログラムにより制御さ
れた他のプログラムと干渉することなくフレーム・バッ
ファに直接的に書込むようウインドウ管理プログラムを
有するシステムまたは他のプログラムと干渉が存在する
システムにおいてプログラムを走行させる方法および装
置を提供することである。
【0009】
【課題を解決するための手段】本発明は、フレーム・バ
ッファへのデータ供給を制御するウインドウ管理プログ
ラムを走行するプロセッサと、ディスプレイされるべき
図形情報の第2情報源を有するコンピュータ・システム
における、出力ディスプレイに信号を供給するフレーム
・バッファに直接的に書込む方法において、第2情報源
がディスプレイされるべき図形情報を有していることを
示している信号を第2情報源からウインドウ管理プログ
ラムに供給する過程と、ウインドウ管理プログラムの制
御のもとで、上記第2情報源により供給されるべき図形
情報をディスプレイするためウインドウをセット・アッ
プする過程と、ウインドウが存在していることを第2情
報源に知らせかつその位置とクリッピングに関連した情
報を供給する過程と、構成されたウインドウに第2情報
源により供給された図形情報をディスプレイするため発
生されるべき各アドレスに関するクリッピング情報とフ
レーム・バッファ・アドレスを含んでいるウインドウに
関するデータ構造をセット・アップする過程と、第2情
報源からの図形情報を、データ構造におけるアドレスに
より示されたフレーム・バッファにおけるアドレスに転
送する過程とから成るフレーム・バッファに直接的に書
込む方法を提供する。
【0010】
【実施例】以下の詳細な説明において、コンピュータ・
メモリにおけるデータ・ビットに関するオペレーション
が記号で表示されている部分がある。これらの説明や表
示は、データ処理技術の当業者が他の当業者にその技術
の本質を最も有効的に伝えるために用いられている方法
である。オペレーションは、物理量の物理的マニピュレ
ーションを必要とするものである。一般に、必ずしもと
は限らないが、これら量は、記憶し、転送し、結合し、
比較しさもなくばマニピュレートすることができる電気
的または磁気的信号の形態をとっている。それは、ビッ
ト、値、エレメント、記号、文字、語句、数などのよう
なこれら信号を参照するのに、主に共通に使用できるの
で便利であることがわかっている。しかし、これらおよ
び同様の語句は、全て適切な物理量に関連しており、こ
れら量に与えられた単なる便宜的な呼称にすぎないこと
に留意しなければならない。
【0011】さらに、実行されるマニピュレーション
は、人間のオペレータが実行するメンタル・オペレーシ
ョンに通常関連している加算または比較のような語句で
参照される場合がよくある。人間のオペレータのこのよ
うな能力は、本発明の一部を成しかつマシン・オペレー
ションであるここに示されたオペレーションにおいては
大抵の場合必要とされていない、もしくは望ましくな
い。本発明のオペレーションは、通常、汎用ディジタル
・コンピュータまたは他の同様のディバイスにより実行
される。いずれの場合においても、コンピュータを動作
する際の方法オペレーションと計算自体の方法とは違う
ことに留意しなければならない。本発明は、要求されて
いる他の物理信号を発生するため、電気的または他の
(たとえば、機械的、化学的)物理信号を処理する際、
コンピュータを動作する装置および方法に関連してい
る。
【0012】代表的には、ウインドウ管理プログラム
は、アプリケーション・プログラムがコンピュータの出
力ディスプレイに情報を提供するよう要求していること
を示している信号を受信する。無論、提供される情報
は、必ずしもアプリケーション・プログラムからでなく
てもよい。ライブ・ビデオまたはアニメーションは、フ
レーム・グレーバに情報を供給するテレビ信号源のよう
な他の情報源により提供される。いずれの場合において
も、ウインドウ管理プログラムは、ディスプレイの特定
の部分を選択し、かつプログラムまたは他の情報源(以
後、アプリケーション・プログラムと言う)からの情報
がディスプレイされるウインドウをセット・アップす
る。その後、それは、情報源に知らせ、データの受信を
待機する。
【0013】ディスプレイのウインドウに提供されるべ
き各データ・ピースは、アプリケーション・プログラム
によりデータが供給されるアドレスを有している。その
データに関するアプリケーション・プログラムにより提
供されるアドレスは、その特定のプログラムに関する出
力ディスプレイが特定のフォーマットで提供されると推
定するアドレスである。このアドレスは、おそらく、そ
の特定のフォーマットで、その特定のプログラムに関す
る出力ディスプレイが全スクリーンを占めるものと推定
する。このため、アプリケーション・プログラムは、デ
ィスプレイが特定の標準的フォーマットおよび大きさの
ものであると推定し、情報はメモリにどれを保持すべき
かを示している。たとえば、プログラムが、通常IBM
パーソナル・コンピュータ・フォーマットで提供される
ものである場合、アプリケーション・プログラムは、6
40×480ピクセルのVGAフォーマットで、または
他の標準的なIBM PCフォーマットでその出力がデ
ィスプレイされると予想する。したがって、このフォー
マットでコンピュータの出力ディスプレイにその出力が
提供されると予想するアプリケーション・プログラム
は、アプリケーション・プログラムが全ディスプレイを
用いるとしたら、このようなVGAディスプレイの適切
な場所にデータを配置する図形データに関するアドレス
を供給する。マイクロソフト・コーポレーションにより
製造販売されているマイクロソフト・ウインドウのよう
なウインドウ管理プログラムが、VGAディスプレイを
制御するためVGAディスプレイ・システムにおいて用
いられる場合、ウインドウ管理プログラムによって、ア
プリケーション・プログラムに関するアドレスを、ウイ
ンドウ中の正しいスクリーン位置にデータを配置するア
ドレスに変換すればいいだけである。
【0014】しかし、プログラムが、より大きい別のデ
ィスプレイ・フォーマットを有するコンピュータ・シス
テム(たとえば、1152×1024ピクセルをディスプレイす
るもの)において実際に提供されている場合には、ディ
スプレイにおけるデータに関するアドレスは、ウインド
ウ管理プログラムによって、ディスプレイにより用いら
れるフォーマットと同じフォーマットに変換されなけれ
ばならない。アドレスを、ディスプレイのフォーマット
のアドレスに変換する他、ウインドウ中の正しいスクリ
ーン位置にデータを配置するアドレスにも変換しなけれ
ばならない。アドレスが、他のウインドウにディスプレ
イされているプログラムによりカバーされた出力ディス
プレイの位置にある場合には、ウインドウ管理プログラ
ムはこれを決定して、データが他のウインドウにおける
データに重ね書きしないようにしなければならない。
【0015】しかし、アプリケーション・プログラムが
フレーム・バッファに直接的に書込みかつウインドウ管
理プログラムをバイパスするものである場合、アプリケ
ーション・プログラム(または、何らかの関連プログラ
ム)は、フォーマットにおける相違のため必然的にアド
レスを変換しなければならず、かつウインドウの正しい
場所にアプリケーション・プログラムの出力を配置する
ために必然的にアドレスを変換しなければならず、しか
もウインドウと干渉して、ウインドウ管理プログラムの
制御のもと他のアプリケーション・プログラムがディス
プレイされることがないようにウインドウ管理プログラ
ムとどうにかして通信しなければならない。
【0016】以下、添付の図面に基いて、本発明の実施
例に関し説明する。図1は、従来技術のコンピュータ・
システム10の一部を示したブロック図である。システ
ム10は、一次オペレーティング・システムを走行する
一次中央処理装置12を含んでいる。オペレーティング
・システムは、出力ディスプレイ装置15にディスプレ
イするため、フレーム・バッファ14に書込まれるデー
タを制御するウインドウ管理プログラムを含んでいる。
【0017】システム10は、複数のオペレーティング
・システム環境においてアプリケーション・プログラム
を走行するのに適している。たとえば、インテル 80386
マイクロプロセッサは、一次オペレーティング・システ
ムとしてユニックスを走行することができ、かつ同時に
出力ディスプレイのウインドウとしてMS DOSアプ
リケーションを走行することができる。単一プロセッサ
を用いているウインドウ管理プログラムを通してマルチ
プル・フォーマットでアプリケーション・プログラムを
提供する構成については、サン・テクノロジにおいて19
88年にサン・マイクロシステムにより発表された“サン
386iに関するDOS”と題する論文に示されている。こ
のような構成では、プロセッサ12は、各仮想MS D
OSマシンを走行するモニタ・プログラムを、一次オペ
レーティング・システムの一部として走行している。モ
ニタ・プログラムは、基本的には、仮想マシンがプロセ
ッサ12に関連して走行できるように設計されている。
実際、プログラムは、特に仮想マシンからの出力信号を
傍受してトラップするように、かつそれら信号が一次オ
ペレーティング・システムで走行するアプリケーション
・プログラムにより供給される代表的な制御信号である
かのように一次オペレーティング・システムにより解釈
される信号にそれら出力信号を翻訳するように書込まれ
る。
【0018】仮想MS DOSマシンにより供給される
図形出力を使用するため、システム10は、代表的なI
BMフォーマット・コンピュータにおいて使用されてい
る図形コントローラをエミュレートするエミュレーショ
ン回路19を含んでいる。エミュレーション回路19に
より、プロセッサ12とDOSRオペレーティング・シ
ステムは、それが代表的なIBMパーソナル・コンピュ
ータにより処理される場合にはIBM PCフォーマッ
ト用に設計されたDOSアプリケーション・プログラム
からの出力を処理することができ、かつエミュレーショ
ン回路19により供給されたそれらプログラムの結果
を、プロセッサ12で走行している一次オペレーティン
グ・システムのウインドウ管理プログラムに供給するこ
とができ、出力ディスプレイ15のウインドウに結果が
ディスプレイされる。このために、エミュレーション回
路19は、代表的なVGA図形コントローラとそのディ
スプレイ・メモリのエレメントを含んでいる。なお、こ
れらの多くは、従来技術において周知である。
【0019】一次オペレーティング・システムは、ディ
スプレイ15に提供されるべき全てのデータをそのウイ
ンドウ管理プログラムに送り、かつウインドウ管理プロ
グラムはディスプレイ15の全エレメントを制御する。
したがって、プロセッサ12により、仮想DOSマシン
で走行されているアプリケーション・プログラムにより
ディスプレイされるべき出力は、ディスプレイするため
一次オペレーティング・システムのウインドウ管理プロ
グラムに、エミュレーション回路19により提供され
る。ウインドウ管理プログラムは、データをメモリの一
部に送り、そこでデータは記憶され、ディスプレイを待
つ。ウインドウ管理プログラムは、アプリケーション・
プログラムが書込まれるウインドウとして、ディスプレ
イの一領域をセット・アップし、もしあったとしたら、
他のウインドウとのオーバラップが存在しているかどう
かを決定し、メモリからの情報を最終的に書込む。どの
ようなアドレス変換が行なわれる場合にも、ディスプレ
イ15のウインドウの正しい場所にピクセルを提供しな
ければならない。
【0020】しかし、ウインドウ管理プログラムは、デ
ィスプレイされている全てのアプリケーション・プログ
ラムに対して同じことを行なわなければならないので、
1秒当り多くてもたった約10回しか、フレーム・バッ
ファ14を更新することができない。これに対して、I
BMフォーマットのアプリケーション・プログラムや他
の情報源からのアニメーションやライブ・ビデオのよう
な情報は、フレーム・バッファに直接的に書込まれるよ
うに構成され、1秒当り30回もフレーム・バッファを
更新できる。プロセッサ12により仮想マシンで走行す
るIBMフォーマットのプログラムが、システム10の
ウインドウ管理プログラムを通過しなければならない場
合、それらの出力は、オペレーションが緩慢に見える。
フレーム・バッファを高速で更新しなければならないプ
ログラムは、ウインドウ管理プログラムを介しては申し
分なく走行することはできない。したがって、本発明
は、アプリケーション・プログラムを二次フォーマット
で走行させて、フレーム・バッファ14に直接的に書込
まれるようにシステム10を改善している。
【0021】図2は、このように改善した回路30を示
している。図2は、本発明のコンピュータ・システム3
0の一部を示したブロック図である。システム30は、
一次オペレーティング・システムを走行する第1プロセ
ッサ12を含んでいる。オペレーティング・システム
は、出力ディスプレイ装置15にディスプレイするた
め、フレーム・バッファ14に書込まれたデータを制御
するウインドウ管理プログラムを含んでいる。ここで示
したシステム30は、カリフォルニア州マウンテンビュ
ーに所在するサン マイクロシステム社製のサンSPA
RCワークステーションの1つで、出力ディスプレイに
書込まれたデータを制御するウインドウ管理プログラム
を含んでいるオペレーティング・システムを有してい
る。
【0022】システム30は、その一部として、カリフ
ォルニア州サンタクララに所在するインテル・コーポレ
ーション社製のi486プロセッサのような第2プロセ
ッサ17を包含するのに適している。プロセッサ17
は、バス18とエミュレーション回路32によりプロセ
ッサ12に接続し、それらの間で情報を転送することが
できる。プロセッサ17は、そのオペレーションを制御
する第2オペレーティング・システム(たとえばMS
DOS)を走行するように構成されている。プロセッサ
12により用いられるオペレーティング・システムは、
第2プロセッサ17をプロセッサ12に関連して走行さ
せるように特に設計されたプログラムであるSDOSカ
ーネル(ドライバ)を含んでいる。実際、SDOSカー
ネルは、プロセッサ17からの出力信号を傍受してトラ
ップし、バス18で供給されるこれら出力信号を、サン
OSオペレーティング・システムにより解釈される信号
に翻訳するように特に書込まれたプログラムである。た
とえば、ある信号は、それらが、サンOSオペレーティ
ング・システムで走行するアプリケーション・プログラ
ムにより供給された代表的な制御信号であるかのよう
に、サンOSオペレーティング・システムに現れるよう
に構成される。また、代表的なIBMフォーマット・コ
ンピュータにおいて使用される図形コントローラをエミ
ュレートするエミュレーション回路32が含まれてい
る。エミュレーション回路32により、プロセッサ17
とそのDOSオペレーティング・システムは、IBM
PCフォーマット用に設計されたアプリケーション・プ
ログラムを走行しかつプロセッサ12で走行するオペレ
ーティング・システムのウインドウ管理プログラムにそ
れらプログラムの結果を供給することができ、その結果
は出力ディスプレイ15のウインドウにディスプレイさ
れる。エミュレーション回路32は、代表的なVGA図
形コントローラのエレメントを含んでいる。前述したよ
うに第2プロセッサ17は、ディスプレイするためライ
ブ・ビデオまたはアニメーションを提供する回路に、ま
たは何らかの理由で出力ディスプレイに直接的に書込む
ことが望まれている図形情報の別の情報源に置き換えて
もよい。
【0023】前述した従来技術のシステムと同様に、基
本的サンOSオペレーティング・システムは、ディスプ
レイ15に供給される全てのデータを、そのウインドウ
管理プログラムに送り、ウインドウ管理プログラムはデ
ィスプレイ15の全エレメントを制御する。IBMまた
は他のフォーマット・プログラムが、フレーム・バッフ
ァ14に直接的に書込みできるためには、解決されなけ
ればならない少なくとも2つの重要な問題がある。第1
は、ディスプレイされるべきデータを書込む際にプロセ
ッサ17は、そのデータに関するアドレスを供給する。
このアドレスは、標準的なIBMフォーマット、または
オペレーティング・システムにより用いられるフォーマ
ットではない他のフォーマットの出力ディスプレイの正
しい位置にデータを供給するよう選択される。説明のた
め、図形情報が供給されるフォーマットが640×48
0ピクセルのVGAフォーマットであると仮定する。な
お、他のディスプレイ・フォーマットであってもいい
し、また本発明では多くのフォーマットを使用すること
が可能である。一方、出力ディスプレイは、たとえば11
52×1024ピクセルをディスプレイするサン・フォーマッ
トであると仮定する。アプリケーション・プログラムの
出力は、そのサン・フォーマットを提供するディスプレ
イ15のウインドウにディスプレイされるものである。
したがって、これを達成するためのシステム30は、I
BMフォーマットで提供されたピクセル・アドレスを、
サン・フォーマットのウインドウ中のピクセル・アドレ
スに変換する装置を有していなければならない。このこ
とは、本発明においては、エミュレーション・モジュー
ル32における回路と、サンOSオペレーティング・シ
ステムのウインドウ管理アドレス変換システムの機能性
を増すソフトウェアにより行なわれている。
【0024】IBMフォーマットのVGAアドレスから
サンOSオペレーティング・システムのディスプレイ・
アドレスに変換することは周知である。前に指摘したよ
うに、この変換は、サンOSオペレーティング・システ
ムのウインドウ管理プログラムにより普通に処理され
る。基本的には、プロセッサ17により供給されるVG
Aアドレスは、各アドレスが、値(640×X)+Yに
より表されるフォーマットの線形アドレスである。な
お、Xは、ピクセルが特定のIBMフォーマットで現れ
るディスプレイの水平な行で、Yはそのディスプレイの
垂直な列である。このような各アドレスは、ディスプレ
イ・アドレス(1152×X′)+Y′に変換される。
X′はピクセルがサン・フォーマットで現れるディスプ
レイの水平な行で、Y′はそのディスプレイの垂直な列
である。しかし、このアドレスも、付加X′,Y′値だ
けオフセットされている。この値が、システム30の出
力ディスプレイにおけるウインドウの位置を定める。前
述したように、変換プロセスは周知で、それ自体は本発
明の要旨ではない。
【0025】ここに示されているIBMフォーマット・
プログラムの例では、VGAフォーマットの特性も、エ
ミュレーション装置において使用される変換回路により
処理されなければならない。VGAフォーマット(およ
び他のIBMフォーマット・プログラム)の様々なプレ
ゼンテーション・モードでは、ピクセルが配置されるべ
き8つのリニア・アドレスの一番目だけに、単一アドレ
スおよびデータが供給される。IBMフォーマット・プ
ログラムでは、そのアドレスは、8つの連続ピクセルに
関する一番目のアドレスである。IBMフォーマット・
プログラムにおけるデータは、アドレスされる8つの連
続ピクセルにピクセル値を供給するのに使用することが
できる様々な変換技術を用いるのに十分な単一バイトの
情報として現れる。単一アドレスが変換される場合、そ
れは、8つのピクセルのうち最初のピクセルだけの実ア
ドレスを表し、かつそのシーケンスにおける残りの7つ
のピクセルのアドレスを供給するようインクリメントさ
れなければならない。
【0026】一方、アドレスに関連した単一バイトにコ
ード化された8つのピクセルを表しているデータは、エ
ミュレーション回路により8つの4−ビット・ピクセル
値(これはVGAフォーマットを代表している)に変換
される。各ピクセルは、同じ開始アドレスを有する8つ
のピクセルのシーケンスにおける各ピクセルを表してい
る。その後、これら8つの4−ビット値は、カラー検索
表により、8ビット値(サン・システムにおいて用いら
れる標準値である)に変換されるが、シーケンスにおけ
るアドレスとしてフレーム・バッファに書込まれる各8
ビット・ピクセルは除外される。VGAフォーマットの
他のモードでは、8つのデータ・ビットと単一アドレス
は、ディスプレイにおける単一ピクセルを表している。
このフォーマットも、ディスプレイに提供されなければ
ならない。
【0027】以上のように、サンOSオペレーティング
・システムのウインドウ管理プログラムにより制御され
るサン・ディスプレイに情報を供給することができるよ
うにするため、IBMフォーマットの、サン・フォーマ
ットへの代表的な変換に関して述べてきた。変換機構
は、プロセッサ17で走行するソフトウェアとエミュレ
ーション回路32に単に移行されるにすぎない。しか
し、アドレスの変換は、それがどこで行なわれるにしろ
かなりの時間がかかるので、何らかの変換が必要とされ
る前に、あるフォーマットから別のフォーマットにアド
レス変換を行なうのに、本発明のSDOSドライバが使
用されている。基本的には、プロセッサ17は、SDO
Sドライバ・ソフトウェア(2つのシステム間で通信す
るこのドライバも、プロセッサ12により走行される)
を走行する。SDOSドライバ・ソフトウェアは、ウイ
ンドウ管理プログラムからの、ディスプレイされるべき
ウインドウに関係した情報(それがどのようにクリップ
されるかを含んでいる)を受け取る。SDOSドライバ
は、各VGAアドレスの、ディスプレイ・アドレスへの
アドレス変換が既に完了しているメモリにデータ構造を
作る。このデータ構造は、ウインドウ管理プログラムに
より供給されたウインドウに、各ピクセル・アドレスに
関する状態語を含んでいる(8つのピクセルが単一アド
レスとともに含まれている場合には8つのアドレスご
と)。各状態語は、アプリケーション・プログラムによ
り供給される各VGAアドレスに関するウインドウ中の
アドレスを含んでいる。プロセッサ17により供給され
る各VGAアドレスは、データ構造における状態語を示
す。状態語は、標準変換方式を用いてウインドウ中の適
切なディスプレイ・アドレスにピクセルを配置するよう
既に変換されたフレーム・バッファ・アドレスを含んで
いる。その結果、各VGAアドレスがプロセッサ17に
より提供される場合、変換に要する時間は必要はない。
単に、簡単な検索が行なわれるにすぎない。
【0028】本発明の実施例では、状態語は32ビット
から成ってる。図3は、このような状態語を示してい
る。これらビットのうち24ビットは、フレーム・バッ
ファ・アドレスとして使用され、8つのビットは、代表
的なVGAフォーマットのアドレスにより示された8つ
のピクセルに関するマスキング値を示している。したが
って、1つのピクセルを表しているマスク・ビット位置
における1は、特定のピクセルがディスプレイにおける
別のウインドウに提供されたデータによりマスクされ
(隠され)ていることを示し、一方、ゼロは、そのビッ
トにより表された特定のピクセルは、フレーム・バッフ
ァに書込まれるものであることを示している。このよう
に、ディスプレイにおけるウインドウの重なり合いを制
御することができる。
【0029】フレーム・バッファに直接的に書込む場
合、IBMフォーマットのアドレスはプロセッサ17に
より8つの連続ピクセルに供給される。アドレスととも
に、8つの連続ピクセルのそれぞれに関する情報を表し
ているデータ・バイトが供給される。データは、VGA
エミュレーション回路32により8つの4−ビット・ピ
クセル表示に変換され(図4)、アドレスは、データ構
造を用いているエミュレーション回路32により、最初
のピクセルに関する適切な状態語(図3)により示され
たアドレスに変換される。アドレスに関し、状態語は、
8つのピクセルに対して8ビットのマスキング情報を供
給する。フレーム・バッファ15の最初のピクセル位置
がアドレスされ、ピクセルを表している最初の4ビット
が8ビット・ピクセル値に変換される。マスク・ビット
がゼロの場合、データはフレーム・バッファのピクセル
・アドレスに書込まれる。その後、変換されたフレーム
・バッファのアドレスは、1つずつインクリメントさ
れ、データの2番目の4ビットが8ビット・ピクセル値
に変換される。2番目のマスク・ビットがゼロの場合、
フレーム・バッファのインクリメントされたアドレスに
データが書込まれる。いずれかのマスク・ビットが1の
場合、データは他のウインドウにより隠されて、フレー
ム・バッファには書込まれない。このプロセスは、8つ
のピクセルがなくなるまでこのシーケンスの間継続し、
別のアドレスとそれに関連したデータはプロセッサ17
により供給される。
【0030】以上のように、各ピクセルに適用される変
換方式がプロセッサ17により供給される必要がないの
で、データ構造を用いることにより、あるフォーマット
から別のフォーマットに高速にアドレス変換することが
できる。更に、データ構造により、いずれかのIBMフ
ォーマット(またはアドレスを生じているどんなコンピ
ュータ・ディスプレイ・システムのフォーマット)は、
特定の変換に関する適切な方式を単に選択するだけで変
換することができる。特定のアプリケーション・プログ
ラムが、VGAフォーマットではなく、CGAフォーマ
ットでアドレスを生じている場合、ディスプレイの1ラ
インにたった320のピクセルしか生じないし、またデ
ィスプレイにはたった200のラインしか現れない。特
定のアプリケーション・プログラムに関してエミュレー
ション・モジュール32を初期化する際、この変換に関
する1組の方式が選択され、SDODドライバによりデ
ータ構造が作られる場合、状態語を供給するのに、これ
ら方式が用いられる。
【0031】本発明により行なわれる変換の他の利点
は、プロセッサ17で走行されている各アプリケーショ
ン・プログラムに関して、データ構造が作られかつメモ
リに記憶されることである。このようにすれば、全IB
Mフォーマット・プログラムをフレーム・バッファ14
に直接的に書込むことができる。しかし、それだけでは
データ構造は、問題の一部、すなわちアドレス変換をい
かに速く行なうかについて解決しているにすぎないが。
しかし、それらは、問題の第2の部分、すなわちIBM
フォーマットのアプリケーション・プログラムを、いか
に相互におよびディスプレイ15における他のプログラ
ムと干渉しないようにするかという問題を解決する手段
を提供している。
【0032】8つの連続ピクセルのそれぞれに関するマ
スキング・ビットを、それらピクセルの最初のピクセル
に関するアドレスとともに各状態語に配置することによ
り、IBMフォーマット・プログラムが、スクリーン・
ディスプレイの他のエレメントとともに動作することが
できるようにするのに必要な全エレメントが与えられ
る。このことは、IBMフォーマット・プログラムのウ
インドウ位置が変化せずかつ他のウインドウがそれを隠
すようにまたは隠しているピクセルを除去するように移
動しない限り、真実である。これらのことが起きた場合
には、状態語に保持されている変換されたアドレス(あ
るいはウインドウが移動する場合にはマスキング・ビッ
ト)を変えるよう、または別のウインドウが移動しかつ
必要なクリッピングを変える場合にはマスキング・ビッ
トを変えるよう、データ構造を再構成しなければならな
い。データ構造の再構成は、オペレーティング・システ
ムのウインドウ管理プログラムとの共動を必要とする。
【0033】前述したように、SDOSドライバは、サ
ンOSオペレーティング・システムとそのウインドウ管
理プログラムが、ウインドウ管理プログラムを介して出
力ディスプレイをアクセスする単なる別のアプリケーシ
ョン・プログラムとして、プロセッサ17で走行するI
BMフォーマット・プログラムを処理するように構成さ
れている。これを行なうため、SDOSドライバ(SD
OSカーネル)は、サンOSオペレーティング・システ
ムのウインドウ管理プログラムが出力ディスプレイにお
けるウインドウの配置を完全に制御するように、アプリ
ケーション・プログラムの場合と同様にウインドウ管理
プログラムに応答する。プロセッサ17が、ウインドウ
における走行を望んでいるIBMフォーマット・プログ
ラムを有していることを知らせる場合、ウインドウ管理
プログラムはウインドウ構造をセット・アップしかつそ
れをIBMフォーマット・プログラムに割り当てる。
【0034】ウインドウ管理プログラムは、それが他の
プログラムに割り当てられた他の全てのウインドウ構造
のトラックを保持するのと同じ方法で、IBMフォーマ
ット・プログラムに割り当てられたウインドウ構造のト
ラックを保持する。ウインドウ管理プログラムは、ウイ
ンドウがセット・アップされたことをプロセッサ17で
走行しているSDOSドライバに知らせ、かつクリップ
されるべきウインドウの部分を含んでいるそのウインド
ウの詳細をエミュレーション・モジュール32に供給す
る。SDOSドライバは、ウインドウ用に割り当てられ
た領域に関するデータ構造を構築するのにこの情報を使
用し、メモリにデータ構造を記憶する。その後、プロセ
ッサ17は、VGAアドレスと関連データのVGAコン
トローラ・メモリ・アドレスへの転送を開始する。実
際、VGAアドレスは、エミュレーション・モジュール
32によりフレーム・バッファのアドレスに変換され、
かつエミュレーション・モジュール32は、IBMフォ
ーマット・プログラム・データを、データ構造の状態語
により指定されたアドレスに変換し始める。
【0035】前述したような方法で各ピクセルがフレー
ム・バッファ14に転送されるだけでなく、別の集合の
データや各ピクセルを表しているアドレスが、同時に
(または本実施例ではそれより前に)送られ、IBMフ
ォーマット・プログラム用に予約された共用メモリの領
域に記憶される。ピクセル・データは、データ構造にお
けるマスクの内容に関係なくこの共用メモリに常に書込
まれる。本発明の実施例においては、この共用メモリ
は、前に述べているが図4にも示されているピクセル当
り4ビットのVGAフォーマットでピクセルを記憶す
る。メモリのこの別のブロックにより、IBMフォーマ
ット・プログラムは、ディスプレイされるべきデータに
関する読出し/モディファイ/書込み動作を行なうこと
ができる。それは、そのウインドウが出力ディスプレイ
の新しい位置に移動される時、ウインドウにディスプレ
イされた図形データを再構成するのを助けるよう、SD
OSドライバによっても使用される。
【0036】一方、ウインドウ管理プログラムは、互い
に重なり合っているウインドウの部分を含んでいる全ウ
インドウ構造をモニタし、かつ本発明のデータ構造をい
つ更新しなければならないかを示す。ウインドウが移動
するたびに、ウインドウ管理プログラムはそれが作られ
た全ウインドウ制御構造を調べる。IBMフォーマット
・プログラムが走行しているウインドウがウインドウの
移動に含まれている場合、ウインドウ管理プログラム
は、IBMフォーマット・プログラムを走行しているエ
ミュレータ・モジュール32とともに動作しているドラ
イバに信号を送る。この信号は、IBMフォーマット・
プログラムが、フレーム・バッファと共用メモリとに直
接的に書込むことによって動作を中断する。その後、ウ
インドウ管理プログラムは、新しいウインドウ構造を割
当て、かつエミュレータ・モジュール32に通知して、
位置とクリッピングに関係した情報を供給する。新しい
ウインドウ位置が与えられると、SDOSドライバは、
ウインドウ・アドレスが正しく、しかも各アドレスに関
連した各ピクセル・シーケンスのマスキング・ビットも
正しくなるように、IBMフォーマット・プログラムの
データ構造を再構成する。ウインドウの移動が終了する
と、ウインドウ管理プログラムは、プロセッサ17で走
行しているドライバに信号を送り、その後、エミュレー
タ・モジュール32はフレーム・バッファへの書込みを
開始するよう、IBMフォーマット・プログラムに信号
を送る。
【0037】図5は、プロセッサ17からフレーム・バ
ッファ14に直接的にIBMフォーマット・プログラム
を書込む際、システム30のオペレーションについて示
したフローチャートである。図示のように、プロセッサ
17で走行しているSDOSドライバは、IBMフォー
マット・プログラムがディスプレイされるべきであるこ
とをウインドウ管理プログラムに知らせる。ウインドウ
管理プログラムは、ウインドウをセット・アップしかつ
ウインドウにおけるクリッピングおよび位置をドライバ
に知らせる。SDOSドライバは、ディスプレイされて
いるフォーマットへのアドレス変換を行なうため、状態
語を含んでいるデータ構造を構成する。エミュレータ・
モジュール32は、プロセッサに信号を送り、プロセッ
サは、ディスプレイするためIBMフォーマットでアド
レスとデータを送る。データは、特定のIBMフォーマ
ットにしたがってピクセル・データに変換される。アド
レスとデータは、共用メモリに記憶するためウインドウ
管理プログラムと、ディスプレイ・フォーマットのアド
レスに変換するためデータ構造とに送られる。変換する
場合、データはディスプレイするためフレーム・バッフ
ァ14の変換アドレスに直接的に書込まれる。
【0038】IBMフォーマット・アプリケーション・
プログラムが書込まれるウインドウが、(そのウインド
ウかまたは別のウインドウの)ウインドウ移動によりい
くらか影響された場合、ウインドウ管理プログラムは、
プロセッサ17で走行しているドライバに知らせる。ド
ライバは、共用メモリへのデータの転送およびアドレス
変換のためのデータ構造の使用を停止する。その後、ウ
インドウ管理プログラムは、特定のウインドウの位置を
再び定め、そのウインドウ制御構造を更新し、さらにウ
インドウの位置とクリッピングに関係した情報をドライ
バに供給する。SDOSドライバは、データ構造を再構
成し、プロセッサ17に信号を送って、変換アドレスに
よる新しいデータ構造の使用を開始する。以上のよう
に、実施例に基いて本発明に関して説明してきたが、本
発明は、本発明の思想から離れることなく様々に改変す
ることができることは、当業者には明白であろう。
【0039】
【発明の効果】本発明は、フレーム・バッファへのアク
セスを制御するウインドウ管理プログラムを有するコン
ピュータ・システムにおいて、ウインドウ管理プログラ
ムにより制御される他のプログラムと干渉し合うことな
く、フレーム・バッファに直接的に書込むことができ
る。
【図面の簡単な説明】
【図1】 ワード管理プログラムを用いている従来のコ
ンピュータ・システムのブロック図である。
【図2】 本発明に基づいて構成されたコンピュータ・
システムのブロック図である。
【図3】 本発明において用いられている状態語におい
て使用されるフォーマットを示している。
【図4】 8つの4−ビット・ピクセルに関するデータ
を、本発明を用いているシステムにおいて記憶する方法
を示している。
【図5】 本発明の方法を説明するフローチャートであ
る。
【符号の説明】
10 コンピュータ・システム 12、17 プロセッサ 14 フレーム・バッファ 15 ディスプレイ 18 バス 19、32 エミュレーション回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョン・マクドナルド アメリカ合衆国 01453 マサチューセ ッツ州・レオミンスター・グラハム ス トリート・80 (72)発明者 スティーブン・イー・ゴルソン アメリカ合衆国 01741 マサチューセ ッツ州・カーライル・サンセット ロー ド・33 (72)発明者 エドワード・エイチ・フランク アメリカ合衆国 94028 カリフォルニ ア州・ポルゾラ バレー・ブルックサイ ド ドライブ・127 (56)参考文献 特開 平1−206429(JP,A)

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 フレームバッファにデータを書き込むウ
    インドウ管理プログラムと、このフレームバッファから
    のデータを表示する出力ディスプレイとを有するコンピ
    ュータシステムにおいて、図形データ源から前記フレー
    ムバッファに図形データを直接書き込む方法において、
    この方法は、 図形 データ源からの図形データが前記出力ディスプレイ
    表示されるものであることを示す信号を前記図形デー
    タ源から前記ウインドウ管理プログラムに供給する過程
    と、前記 ウインドウ管理プログラムの制御のもとで、前記図
    データ源からの図形データをディスプレイするため
    ウインドウをセットアップする過程と、 ウインドウがセットアップされたこと、およびその位置
    とクリッピングに関連した情報を前記ウインドウ管理プ
    ログラムから前記図形データ源に供給する過程と、 図形データのおのおのの出力アドレスに対応するクリッ
    ピングデータとフレームバッファアドレスとを有した前
    記ウインドウのためのデータ構造をセットアップすると
    ともに該データ構造内の各それぞれのフレームバッファ
    アドレスを使用して、前記ウインドウ内の適正な表示ア
    ドレスに前記図形データ源からの各それぞれの図形デー
    タを配置する過程と、 前記データ構造のアドレスによって指定されたフレー
    ムバッファ位置に前記図形データ源から図形データを転
    送する過程と、からなり、前記 フレームバッファへの図形データの転送
    中、前記ウインドウ管理プログラムがバイパスされるこ
    とを特徴とするフレーム・バッファに直接的に書込む方
    法。
  2. 【請求項2】 第1フォーマットデータについてのフ
    レームバッファへの供給を制御するウインドウ管理プロ
    グラムを走行する第1プロセッサと、出力ディスプレイ
    に表示するため第2フォーマットでアプリケーションプ
    ログラムを走行する第2プロセッサとを有するコンピュ
    ータシステムにおける、出力ディスプレイに信号を供給
    するフレームバッファにデータを直接的に書込む方法に
    おいて、この方法は、 アプリケーションプログラムからのデータが表示される
    ものであることを示す信号を前記アプリケーションプロ
    グラムからウインドウ管理プログラムに供給する過程
    と、前記 ウインドウ管理プログラムの制御のもとで、アプリ
    ケーションプログラムからのデータを表示するためのウ
    インドウをセット・アップする過程と、 前記ウインドウがセットアップされたこと、およびその
    位置とクリッピングに関連した情報を前記ウインドウ管
    理プログラムから前記アプリケーションプログラムに供
    給する過程と、 前記アプリケーションプログラムからのデータのおのお
    のの出力アドレスに対応したクリッピングデータとフレ
    ームバッファアドレスとを有した前記ウインドウのため
    のデータ構造をセットアップするとともにこのデータ構
    造を使用して第2フォーマットで表されたデータアドレ
    スを第1フォーマットのデータアドレスに変換する過程
    と、 前記データ構造のアドレスによって指定されたフレー
    ムバッファアドレスに前記アプリケーションプログラム
    からのデータを転送する過程と、からなり、前記 フレームバッファへのアプリケーション
    プログラムからのデータの転送中、前記ウインドウ管理
    プログラムがバイパスされることを特徴とするフレーム
    ・バッファに直接的に書込む方法。
  3. 【請求項3】 フレームバッファにデータを書き込むウ
    インドウ管理プログラムと、このフレームバッファから
    のデータを表示する出力ディスプレイとを有するコンピ
    ュータシステムにおいて、図形データ源から前記フレー
    ムバッファに図形データを直接書き込む装置において、
    この装置は、 図形 データ源からの図形データが前記出力ディスプレイ
    表示されるものであることを示す信号を前記図形デー
    タ源から前記ウインドウ管理プログラムに供給する手段
    と、前記 ウインドウ管理プログラムの制御のもとで、前記図
    データ源からの図形データをディスプレイするため
    ウインドウをセットアップする手段と、 ウインドウがセットアップされたこと、およびその位置
    とクリッピングに関連した情報を前記ウインドウ管理プ
    ログラムから前記図形データ源に供給する手段と、 図形データのおのおのの出力アドレスに対応するクリッ
    ピングデータとフレームバッファアドレスとを有した前
    記ウインドウのためのデータ構造をセットアップすると
    ともに該データ構造内の各それぞれのフレームバッファ
    アドレスを使用して、前記ウインドウ内の適正な表示ア
    ドレスに前記図形データ源からの各それぞれの図形デー
    タを配置する手段と、 前記データ構造のアドレスによって指定されたフレー
    ムバッファ位置に前記図形データ源から図形データを転
    送する手段と、を有し、前記 フレームバッファへの図形データの転送
    中、前記ウインドウ管理プログラムがバイパスされるこ
    とを特徴とするフレーム・バッファに直接的に書込む装
    置。
  4. 【請求項4】 フレームバッファにデータを書き込むウ
    インドウ管理プログラムと、このフレームバッファから
    のデータを表示する出力ディスプレイとを有するコンピ
    ュータシステムにおいて、図形データ源から前記フレー
    ムバッファに図形データを直接書き込む方法において、
    この方法は、 図形データ源からの図形データが前記出力ディスプレイ
    に表示されるものであることを示す信号を前記図形デー
    タ源から前記ウインドウ管理プログラムに供給する過程
    と、 前記ウインドウ管理プログラムの制御のもとで、前記図
    形データ源からの図形データをディスプレイするための
    ウインドウをセットアップする過程と、 ウインドウがセットアップされたこと、およびその位置
    とクリッピングに関連した情報を前記ウインドウ管理プ
    ログラムから前記図形データ源に供給する過程と、 図形データのおのおのの出力アドレスに対応するクリッ
    ピングデータとフレームバッファアドレスとを有した前
    記ウインドウのためのデータ構造をセットアップすると
    ともに該データ構造内の各それぞれのフレームバッファ
    アドレスを使用して、前記ウインドウ内の適正な表示ア
    ドレスに前記図形データ源からの各それぞれの図形デー
    タを位置づける過程と、 前記データ構造内のアドレスによって指定されたフレー
    ムバッファ位置に前記 図形データ源から図形データを転
    送する過程と、 からなり、 前記フレームバッファへの図形データの転送中、前記ウ
    インドウ管理プログラムがバイパスされるよう構成し、
    さらに 前記ウインドウ管理プログラムは第1のオペレーティン
    グシステムの下で動作し、前記図形データ源は前記第1
    のオペレーティングシステムと異なる第2のオペレーテ
    ィングシステムの下で動作するよう構成され、前記デー
    タ構造が前記第2のオペレーティングシステムフォーマ
    ットで表されたデータアドレスを前記第1のオペレーテ
    ィングシステムフォーマットのデータアドレスに変換す
    ることを特徴とするフレーム・バッファに直接的に書込
    む方法。
JP30833591A 1990-12-21 1991-10-29 フレーム・バッファに直接的に書込む方法及び装置 Expired - Fee Related JP3468369B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/632,015 US5388200A (en) 1990-12-21 1990-12-21 Method and apparatus for writing directly to a frame buffer
US632,015 1990-12-21

Publications (2)

Publication Number Publication Date
JPH04361322A JPH04361322A (ja) 1992-12-14
JP3468369B2 true JP3468369B2 (ja) 2003-11-17

Family

ID=24533732

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30833591A Expired - Fee Related JP3468369B2 (ja) 1990-12-21 1991-10-29 フレーム・バッファに直接的に書込む方法及び装置

Country Status (10)

Country Link
US (1) US5388200A (ja)
EP (1) EP0493920B1 (ja)
JP (1) JP3468369B2 (ja)
KR (1) KR960003416B1 (ja)
AU (1) AU634890B2 (ja)
CA (1) CA2058269C (ja)
DE (1) DE69107602T2 (ja)
GB (1) GB2251164B (ja)
HK (1) HK56995A (ja)
SG (1) SG14595G (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2097558C (en) * 1992-06-16 2001-08-21 William B. Kilgore Directly connected display of process control system in an open systems windows environment
US5485562A (en) * 1993-09-14 1996-01-16 International Business Machines Corporation System and method for clipping pixels drawn in one of plurality of windows in a computer graphics system
US5522025A (en) * 1993-10-25 1996-05-28 Taligent, Inc. Object-oriented window area display system
US5544301A (en) * 1993-12-30 1996-08-06 Taligent, Inc. Object-oriented view layout system
US5524200A (en) * 1993-12-30 1996-06-04 Taligent, Inc. Object-oriented non-rectilinear viewing framework
US5555368A (en) * 1993-12-30 1996-09-10 Taligent Object-oriented multi-tasking view framework
US5524199A (en) * 1993-12-30 1996-06-04 Taligent Object-oriented view system with background processing of update request
WO1995018413A1 (en) * 1993-12-30 1995-07-06 Taligent, Inc. Object-oriented view hierarchy framework
WO1995018437A1 (en) * 1993-12-30 1995-07-06 Taligent, Inc. Object-oriented view coordinate space system
US5602974A (en) * 1994-10-05 1997-02-11 Microsoft Corporation Device independent spooling in a print architecture
JPH10507853A (ja) * 1994-10-25 1998-07-28 オブジェクト テクノロジー ライセンシング コーポレイション ウィンドウをサービスするためのオブジェクト指向システム
TW319866B (ja) * 1996-04-22 1997-11-11 Ibm
US7554510B1 (en) 1998-03-02 2009-06-30 Ati Technologies Ulc Method and apparatus for configuring multiple displays associated with a computing system
US6125437A (en) * 1998-03-05 2000-09-26 Hewlett-Packard Company Virtual linear frame buffer addressing method and apparatus
US6823525B1 (en) * 2000-01-21 2004-11-23 Ati Technologies Inc. Method for displaying single monitor applications on multiple monitors driven by a personal computer
US7012622B2 (en) * 2000-08-14 2006-03-14 Twin Communications Of America, Inc. Portable operating environment for information devices
US7313764B1 (en) * 2003-03-06 2007-12-25 Apple Inc. Method and apparatus to accelerate scrolling for buffered windows
US7529823B2 (en) * 2003-03-27 2009-05-05 Microsoft Corporation Notifications for shared resources
JP4312732B2 (ja) 2005-03-31 2009-08-12 株式会社スクウェア・エニックス 情報表示制御装置及び方法、プログラム、並びに記録媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6064386A (ja) * 1983-09-20 1985-04-12 株式会社東芝 画像表示装置
GB2180729B (en) * 1985-09-13 1989-10-11 Sun Microsystems Inc Method and apparatus for dma window display
EP0384419B1 (en) * 1989-02-24 1995-07-12 International Business Machines Corporation Color-television window for a video-display unit
US5119494A (en) * 1990-07-10 1992-06-02 Athenix Corporation Application address display window mapper for a sharable ms-dos processor

Also Published As

Publication number Publication date
EP0493920B1 (en) 1995-02-22
GB2251164A (en) 1992-06-24
SG14595G (en) 1995-06-16
EP0493920A1 (en) 1992-07-08
JPH04361322A (ja) 1992-12-14
AU634890B2 (en) 1993-03-04
CA2058269C (en) 2001-03-20
GB2251164B (en) 1994-09-14
KR960003416B1 (ko) 1996-03-13
DE69107602T2 (de) 1995-07-06
US5388200A (en) 1995-02-07
KR920013087A (ko) 1992-07-28
CA2058269A1 (en) 1992-06-22
GB9112159D0 (en) 1991-07-24
DE69107602D1 (de) 1995-03-30
HK56995A (en) 1995-04-21
AU7916291A (en) 1992-06-25

Similar Documents

Publication Publication Date Title
JP3468369B2 (ja) フレーム・バッファに直接的に書込む方法及び装置
JP3377806B2 (ja) ディスプレイアダプタ
US7262776B1 (en) Incremental updating of animated displays using copy-on-write semantics
US5241656A (en) Depth buffer clipping for window management
JP2538029B2 (ja) コンピユ−タ・デイスプレイ装置
US5987582A (en) Method of obtaining a buffer contiguous memory and building a page table that is accessible by a peripheral graphics device
CA2011102A1 (en) Method and apparatus for detecting changes in raster data
JPH056197B2 (ja)
US5119494A (en) Application address display window mapper for a sharable ms-dos processor
JP2002536754A (ja) 代替型表示コンテンツコントローラ
EP0722589B1 (en) Virtual graphics processor and method for embedded, real time display systems
US5617529A (en) Memory-mapped video control registers
US6952217B1 (en) Graphics processing unit self-programming
JP2755378B2 (ja) 拡張グラフィックス・アレイ制御装置
US5367628A (en) Multi-window system and display method for controlling execution of an application for a window system and an application for a non-window system
EP0147542B1 (en) A multiple window display system
US4873652A (en) Method of graphical manipulation in a potentially windowed display
JPH06124183A (ja) マルチウィンドウシステム
US5361387A (en) Video accelerator and method using system RAM
Ferrin et al. Interactive computer graphics with the UNIX time-sharing system
EP0223557A2 (en) Display control in a data processing system
JPS62297975A (ja) マルチ・ウインドウ表示制御方式
JP3238188B2 (ja) フレームメモリ制御装置及びフレームメモリ制御方法
JPS6381390A (ja) 文書作成装置におけるスクロ−ル制御装置
JP2829051B2 (ja) 文字表示方式

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees