JPH0795314B2 - 周辺装置支援システム - Google Patents

周辺装置支援システム

Info

Publication number
JPH0795314B2
JPH0795314B2 JP2248979A JP24897990A JPH0795314B2 JP H0795314 B2 JPH0795314 B2 JP H0795314B2 JP 2248979 A JP2248979 A JP 2248979A JP 24897990 A JP24897990 A JP 24897990A JP H0795314 B2 JPH0795314 B2 JP H0795314B2
Authority
JP
Japan
Prior art keywords
mouse
device driver
independent
dependent
operating system
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 - Lifetime
Application number
JP2248979A
Other languages
English (en)
Other versions
JPH03121555A (ja
Inventor
フレデリツク・リインド・レエイスラプ
ケニス・アレン・ローランド
Original Assignee
インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
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 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン filed Critical インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
Publication of JPH03121555A publication Critical patent/JPH03121555A/ja
Publication of JPH0795314B2 publication Critical patent/JPH0795314B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the program performs an interfacing function, e.g. device driver

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Digital Computer Display Output (AREA)
  • Position Input By Displaying (AREA)

Description

【発明の詳細な説明】 A.産業上の利用分野 本発明は、計算機システムに接続可能な周辺装置(デバ
イス)の動作環境内でソフトウエアを支援するためのシ
ステム及び方法に係り、特にポインテイング・デバイス
(例えばマウス)のような周辺装置に対する支援に係
る。
B.従来の技術とその課題 従来は、PC DOSやOS/2T(IBM社の商標)などのオペレー
テイング・システムのもとで動作する計算機にポインテ
イング・デバイスのような周辺装置を接続するために
は、当該デバイスをオペレーテイング・システムのもと
で動かすためのデバイス・ドライバ・プログラム・モジ
ユールを独立したデバイス毎に準備して計算機にロード
する必要があつた。一般に、そのようなデバイスのメー
カに複雑なデバイス・ドライバ・モジユールを準備させ
るためには、オペレーテイング・システムのインタフエ
ースその他の内部情報を文書化してデバイス・メーカに
知らせる必要があつた。
例えばOS/2の場合、リリース毎に特別のマウス支援イン
タフエースが規定され、オペレーテイング・システムに
組込まれていた。これに伴う問題は、インタフエースが
リリース毎に変わるため、デバイス・メーカはそのデバ
イスに対する全く新しいデバイス・ドライバを準備し
て、当該デバイスが新しいバージヨンのオペレーテイン
グ・システムで動作できるようにしなければならない、
ということである。
更に、最近では、OS/2のようなオペレーテイング・シス
テムが文書化されていない内部デバイス・インタフエー
スを持つようになつてきたため、デバイス・メーカが完
全なデバイス・ドライバを準備するのが難しくなつてき
た。
本発明は、オペレーテイング・システムを修正すること
によつて上述の問題を解決するものである。
C.課題を解決するための手段 本発明は、アプリケーション・プログラムの実行並びに
計算機システム及びそれに接続された周辺装置の動作を
可能にするオペレーテイング・システムを改良する。周
辺装置の動作を支援するためには所定のデバイス・ドラ
イバが必要であるが、本発明によれば、オペレーテイン
グ・システムに関連して接続可能な周辺装置の動作を支
援するための手段がオペレーテイング・システムに設け
られる。この支援手段は、接続される周辺装置のタイプ
から論理的に独立しており、従つてメーカは、この支援
手段と会話する比較的小規模のプログラム・モジユー
ル、すなわちデバイス・ドライバを提供するだけでよ
い。論理的に独立している、ということは、どのような
マウスあるいはポインテイング・デバイスが接続されて
も、当該デバイス・ドライバがすべて同じ様にして動作
し、オペレーテイング・システムと会話することを意味
する。
後述の実施例では、支援手段は、オペレーテイング・シ
ステムのアプリケーション・プログラム・インターフェ
イス(API)を支援するための手段と、データ様式化手
段(データ・フオーマツタ)と、デバイス間通信手段
(IDC)と、データ域を維持するための手段とを含んで
いる。実施例で使用する接続可能な周辺装置はポインテ
イング・デバイス、特にマウスである。
本発明によれば、従来の周辺装置プログラム・モジユー
ルが2つの独立したモジユールに分けられる。その第1
モジユールは、接続されるデバイス(マウス)の特有の
ハードウエア要求を支援するすべてのコードを含むデバ
イス依存プログラム・モジユールである。このモジユー
ルはシステム・インタフエース・コードしか含んでいな
いので、置換可能になつている。従つて、デバイス・メ
ーカはこのモジユールを自身のモジユールと置換して、
デバイスがオペレーテイング・システムにより支援され
るようにすることができる。具体的には、このモジユー
ルは単一のシステム・インタフエース及びデバイス固有
支援コードを含む。
第2のモジユールはオペレーテイング・システムにその
一部として組込まれるデバイス独立プログラム・モジユ
ールである。これは従来1つであつたプログラム・モジ
ユールの残りの部分を含み、デバイス依存プログラム・
モジユールによつて支援されるデバイスのタイプから独
立させるため広範囲の修正がなされている。デバイス独
立モジユールは、オペレーテイング・システムの残りへ
のプログラミング・インタフエース、及び他のシステム
・モジユールへの文書化されない内部インタフエースを
支援する。
本発明の実施においては、オペレーテイング・システム
に含まれる新しいプログラム・モジユールとの間で新し
いインタフエースが定義され、これを用いることによ
り、デバイス依存モジユール及びデバイス独立モジユー
ルは相互に通信することができる。これは前述のIDC機
構を用いて行われる。IDC機構は、2つのデバイス・ド
ライバ・プログラム・モジユールが直接通信するのを可
能にする被定義方法である。このIDCインタフエースは
マウス・デバイスの通常動作のために両モジユールによ
つて使用されるものであり、IBM OS/2オペレーテイング
・システム文書化で定義される。この機構自体は、当業
者であれば、本明細書の記述に基いて容易に実施できる
ものである。
D.実施例 本発明は、ポインテイング・デバイス等の周辺装置を接
続でき、且つロード可能デバイス・ドライバを実行でき
る任意の計算機システムで実施することができるが、以
下では、オペレーテイング・システムとしてOS/2を採用
したパーソナル・コンピユータ(例えばIBM OS/2)を例
にとつて説明する。
説明の便宜上、まず従来のシステムについて簡単に触れ
ておく。
第2図に示すように、従来のシステムでは、接続可能デ
バイスを支援する手段はオペレーテイング・システムと
は別になつている。従つて動作に際しては、アプリケー
シヨン1は、システム・サービスについてはオペレーテ
イング・システム3と直接インタフエースし、デバイス
支援サービスについては別のデバイス・ドライバ5と直
接インタフエースする。デバイス支援サービスはアプリ
ケーシヨン・プログラム・インターフエイス(API)と
も呼ばれる。デバイス・ドライバ5はハードウエア7と
直接インタフエースする。このようなシステムは、ポイ
ンテイング・デバイスを含む多くの異なつたタイプのデ
バイスを支援するのに用いられるが、その一例としてPC
DOSがある。
ポインテイング・デバイスとしてマウスが広く用いられ
るようになつてきたので、オペレーテイング・システム
はその一部にマウス支援を含むようになつた。第3図
は、代表的なオペレーテイング・システム(例えばOS/
2)による従来のマウス支援を示したものである。ここ
では、アプリケーシヨン1は最早デバイス・ドライバと
は直接インタフエースせず、その代りにAPI層9を持つ
たシステム3とインタフエースする。そしてAPI層9が
デバイス・ドライバ(DD)とインタフエースする。
第3図は従来のマウス・デバイス・ドライバの内部構造
も示している。デバイス・ドライバは幾つかの論理領域
に分けられ、その各領域はオペレーシヨンに対してそれ
ぞれ固有の機能を持つている。また各領域は、システム
の他のモジユールに対する私用の或いは公開されていな
いインタフエースを含むこともある。ここでは、理解し
易くするために、マウス・デバイス・ドライバが3つの
部分に分かれているものとする。最初の部分はAPI支援1
1である。この部分は、システム3に含まれるAPI層9と
のインタフエースとして働く。次は割込みハンドル及び
データ・フオーマツタ13である。この部分はマウス17か
らのすべての割込みデータを読み取つて、それを総称マ
ウス事象に変換する。この事象は適当な事象待ち行列に
加えられる。最後の部分はデータ域15である。データ域
15は、すべての移動制御変数、事象待ち行列及び他の変
数を含む。デバイス依存性はデバイス・ドライバ全体に
組込まれる。このデバイス依存性は例えば次のような情
報を含む。
1)データの様式及び大きさ 2)マウスのタイプ(シリアル・マウス、バス・マウス
など) 3)割込みレート 4)マイン・ベース 5)マウスのボタンの数 6)移動分解能 7)デイスエーブルの方法 上述のようなデバイス依存の各特性に従つてモジユール
の各部分を構成することは当業者であれば容易であろ
う。
本発明に従うシステムを第1図に示す。第1図のデバイ
ス・ドライバ・モジユールは2つの部分に分けられてい
る。これは、デバイス・ドライバ・モジユール全体にわ
たつてすべてのハードウエア依存性を識別し、それらを
別のデバイス・ドライバ・モジユールに置くことによ
り、達成された。その結果が第1図に示した2つのモジ
ユール、すなわちマウス独立デバイス・ドライバ(11、
19、21、15)及びマウス依存性デバイス・ドライバ(2
3、25)である。マウス依存デバイス・ドライバ(23、2
5)は、従来のマウス・デバイス・ドライバからのすべ
てのハードウエア依存コードを含む。デバイス・ドライ
バを2つに分離した結果、それらの間の通信手段、すな
わちデバイス間通信手段(IDC)が必要になつた。第1
図に示した2つのデバイス・ドライバはそれぞれのIDC2
1及び23を持つている。IDC21及び23は2つのデバイス・
ドライバの間の通信に使用される。マウス独立デバイス
・ドライバは、IDC21を用いて、マウス・ハードウエア
の状態を制御すると共にその動作特性を照会する。マウ
ス依存デバイス・ドライバは、IDC23を用いて、マウス
事象データを共通フオーマツトの形で、すなわち共通事
象パケツトでマウス独立デバイス・ドライバへ送る。マ
ウス独立デバイス・ドライバは受け取つた共通事象パケ
ツトを処理する。このように、すべてのデバイス動作依
存性をデバイス依存デバイス・ドライバに置くことによ
り、デバイス独立デバイス・ドライバは接続されるハー
ドウエアのタイプとは無関係になる。
第4a図は、マウス依存デバイス・ドライバがマウス・ハ
ードウエアから割込みを受け取つた時の制御の流れを示
している。まず割込み27が発生する。次のステツプ29で
デバイス、すなわちマウス・ハードウエアから割込みデ
ータが読み取られる。これはデバイスに依存するステツ
プであるから、マウス毎に、及びマウスが支援されるマ
シン・ベース毎に異なつている。ステツプ31で割込みデ
ータが蓄積される。殆んどのマウスは、完全なハードウ
エア依存マウス事象を報告するために複数の割込みを発
生する。次の判断ステツプ33は、完全なハードウエア依
存マウス事象が累積されたかどうかを調べる。もし累積
されていると、ステツプ35に進んで、デバイス依存マウ
ス事象データを共通マウス事象パケツトに変換する。次
いでこの共通事象パケツトを処理するために、ステツプ
37でマウス独立デバイス・ドライバを呼出す。この呼出
しは、マウス独立デバイス・ドライバの一部であるIDC2
1を用いて通常の方法で行われる。ステツプ39は第4b図
に続いている。マウス独立デバイス・ドライバからマウ
ス依存デバイス・ドライバに戻るステツプ41が実行され
る。この時、共通事象パケツトの処理は完了している。
次いでマウス依存デバイス・ドライバはステツプ43で割
込み処理を完了し、割込みシーケンスから戻るステツプ
45を実行する。ステツプ33で、完全なハードウエア依存
マウス事象がまだ受け取られていないことがわかると、
ステツプ43に進んで割込み処理を完了し、割込みシーケ
ンスから戻るステツプ45を実行する。その後は、ステツ
プ27で割込まれていたオペレーシヨンが再開される。
第4b図は、マウス依存デバイス・ドライバからの共通事
象パケツトを処理するためにマウス独立デバイス・ドラ
イバで行われるオペレーシヨンの流れを示している。ま
ず判断ステツプ47でマウス支援が活動化されているかど
うかを調べる。次の条件が満足されると、マウス支援が
活動化されているものと考えられる。
1)IBM OS/2プレゼンテーシヨン・マネージヤ・シエル
のようなアプリケーションがマウスをオープンしてい
る。
2)ポインタ・イメージを表示画面上で正しく追跡でき
るようにビデオ表示モードが支援されている。
もし活動化されていると、事象は処理され、さもなけれ
ば、事象が無視されて、マウス依存デバイス・ドライバ
に制御が戻される。マウス支援が活動化されていると、
判断ステツプ49でマウスが動いたかどうかを調べる。も
し動いていると、ステツプ51に進んで、マウスの動きを
画面上のポインタ・イメージの移動に変換し、更にステ
ツプ53で新しいポインタ位置を計算する。ステツプ51及
び53で使用するアルゴリズムは周知のものであるから、
詳細については省略する。判断ステツプ55に進んで、マ
ウスを用いるアプリケーシヨンにマウス事象を報告すべ
きかどうかを調べる。もし報告するのであれば、ステツ
プ57に進んで、共通事象パケツト及び新たに計算したポ
インタ位置から総称マウス事象を組立てる。次のステツ
プ58は、ハードウエア依存オペレーシヨンが必要かどう
かを調べる。もし必要であれば、そのオペレーシヨンを
実行するため、ステツプ60でマウス依存デバイス・ドラ
イバを呼出す。次のステツプ59は、マウス事象を適当な
マウス事象待ち行列(例えば先入れ先出し待ち行列)に
入れる。次のステツプ61では、前のポインタ・イメージ
位置が新しいポインタ・イメージ位置と比較される。も
しそれらの位置が異なつていると、ステツプ63に進ん
で、新しい位置が現表示モードの限界内にあるかどうか
を調べる。もし限界内になければ、ステツプ65でポイン
タ・イメージ位置を調節して、それが限界内にくるよう
にする。次のステツプ67で、前のポインタ位置からポイ
ンタ・イメージを除去し、そしてステツプ69で新しいポ
インタ・イメージ位置のところにポインタ・イメージを
描く。それが終ると、マウス依存デバイス・ドライバに
戻るステツプ41が実行される。IBM OS/2では、ステツプ
67及び69は、IBM Technical References for OS/2に文
書化されているポインタIDCインタフエースを介して実
行される。
マウス事象を待ち行列に入れるステツプ59は、当該セツ
シヨンのためにどのような待合せモードがとられている
かを調べる。使用可能な待ち合せモードは2つある。そ
の1つは通常待合せモードである。このモードでは、事
象は、マウス独立デバイス・ドライバがそのデータ域に
維待している事象待ち行列に送られる。第2のモードは
単一待ち行列モードである。このモードでは、マウス事
象は待合せのための別のOS/2コンポーネントに送られ
る。単一待ち行列モード及びそれに関連するすべてのオ
ペレーシヨンは文書化されていないが、本発明の実施に
は問題はない。
本発明の開示を完全なものにするため、上述の未文書化
インタフエースの技術内容を次に説明する。これから述
べる情報及びOS/2関係の技術マニユアルに記載されてい
る情報を利用すれば、IBM OS/2のもとで本発明を実施す
ることは容易である。
単一待ち行列モードを活動化するためには、新デバイス
状況ワードの上位バイトにおけるビツト2がセツトされ
た状態でMouSetDev−Status呼出しを行う必要がある。
次に述べるインタフエースは、ここでの文書化を除き、
現在のところIBM OS/2関係のマニユアルでは文書化され
ていない。マウス独立デバイス・ドライバは、単一待ち
行列モードが活動化されていることを検出すると、次の
ステツプを実行する。
1)デバイス名“SINGLEQ$”を待つ単一待ち行列デバ
イス・ドライバへのIDC入口点を得るためAttachDD Dev
−Helpを呼出す。
2)次のステツプを実行することによつて単一待ち行列
IDCインタフエースを初期設定する。
A)CXを単一事象待ち行列予約のためのバイト数に設定
する。この予約のためのバイト数は、マウス事象のバイ
ト数に8を加算し、それに待ち行列が保持すべき事象の
数を乗算することにより得られる。
B)BXを初期設定機能を指定する001hに設定する。
C)AXをマウスからの呼出しであることを示す0200hに
設定する。
D)IDC呼出しについての規則に従つて単一待ち行列デ
バイス・ドライバへのIDC呼出しを実行する。
初期設定機能が終ると、AXは0になるが、もし0でなけ
ればエラーが生じており、従つて単一待ち行列モードを
活動化すべきでない。一旦セツシヨンが単一待ち行列モ
ードになると、そのセツシヨンの事象待ち行列を読み取
る如何なるコールも失敗する。
マウス事象処理の間、セツシヨンについて単一待ち行列
モードが活動化されると、マウス事象は、次のステツプ
を実行することによつて、単一待ち行列デバイス・ドラ
イバに送られる。
1)SIをマウス事象のオフセツトに設定する。
2)AHをマウスからの呼出しであることを示す02hに設
定する。
3)ALをマウス事象の大きさ(バイト数)に設定する。
4)BHをマウス事象の始めからタイムスタンプまでのオ
フセツト(バイト数)に設定する。
5)BLを待ち行列書込み機能を示す02hに設定する。
6)IDC規則を用いて単一待ち行列デバイス・ドライバ
へのIDCインタフエース呼出しを実行する。
マウス依存デバイス・ドライバ及びマウス独立デバイス
・ドライバは一緒になつて1つのマウス・デバイス独立
システムを構成する。その本質は、従来のマウス・デバ
イス・ドライバからのデバイス依存コードの除去と、接
続されるマウス・デバイスから独立しているIDCインタ
フエースの付加にある。
最後に第4a図及び第4b図の流れ図を擬似コードで実施し
た例を示しておく。まず表1は、マウス依存デバイス・
ドライバ・モジユールの擬似コードを示しているが、こ
れは第4a図の実施例に対応しており、特定のマウス・デ
バイスのためのものではない。
次の表2は、マウス独立デバイス・ドライバがマウス事
象を処理する時のオペレーシヨンの擬似コード表現であ
る。この擬似コードは、本発明実施の際に実行される基
本ステツプを示している。IBM OS/2への実際の組込みは
この基本構造に従つて行われる(第4b図参照)。
このルーチンへの入力は共通フオーマツトのマウス事象
データである。マスウ事象データはInterruptPacketと
呼ばれるバツフアに渡される。
E.発明の効果 本発明には2つの顕著な効果がある。まず第1に、デバ
イス・メーカはデバイス依存ソフトウエア・モジユール
を一度書くだけでよい。デバイスは、現文書化デバイス
・ドライバ・アーキテクチヤを支援するオペレーテイン
グ・システムの将来に置けるすべての改訂で支援され
る。それが可能なのは、デバイス依存プログラム・モジ
ユールが被接続デバイスの通常のオペレーシヨンで要求
される、オペレーテイング・システムへの如何なるイン
タフエースも持たないからである。定義されるインタフ
エースは、置換可能デバイス・ドライバ・プログラム・
モジユールに要求されるものだけである。例えば、オペ
レーテイング・システムの改訂版を導入する場合、デバ
イス・メーカはそれに合わせて新たなデバイス依存ドラ
イバ・モジユールを提供する必要はなく、前に提供した
もので十分である。
第2の効果は拡張性である。すなわち、前述の実施例で
は、デバイスとしてマウスを用いていたが、本発明は任
意のデバイスに適用可能である。マウスはポインテイン
グ・デバイスの1種であるが、ポインテイング・デバイ
スとは、ユーザが計算機画面上の特定のオブジエクトを
又は領域を指し示したり選択したりすることができる可
視インタフエース・デバイスを意味する。オペレーテイ
ング・システムが提供するデバイス独立モジユールは、
どのようなタイプのデバイスが接続されているかを気に
しない。従つて、デバイス・メーカは、如何なるタイプ
のポインテイング・デバイスであつても、それを支援す
るためのデバイス依存モジユールを書くことができる。
マウス以外のポインテイング・デバイスとしては、ライ
トペン、タツチパツド、タツチスクリーン、ローラボー
ル、ジヨイステイツクなどがあるが、勿論本発明はそれ
らに限定されるものではない。
【図面の簡単な説明】
第1図は本発明の実施例を示すブロック図。 第2図及び第3図は従来技術を示すブロック図。 第4a図はマウス依存デバイス・ドライバのオペレーシヨ
ンを示す流れ図。 第4b図はマウス独立デバイス・ドライバのオペレーシヨ
ンを示す流れ図。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】オペレーティング・システム(3)上で動
    作し、周辺装置(17)の動作を支援するために所定のデ
    バイス・ドライバを必要とする計算機システムにおい
    て、該周辺装置の動作を該オペレーティング・システム
    と共に支援するための、周辺装置支援システムであっ
    て、 (a)前記周辺装置の種類とは論理的に独立した装置独
    立支援手段(11,15,19,21)と、 (b)前記装置独立支援手段と共に前記周辺装置の動作
    を支援するための前記周辺装置に固有の特性を支援する
    装置依存支援手段(23,25)を含み、 前記装置独立支援手段は、 (i)前記オペレーティング・システムのアプリケーシ
    ョン・プログラム・インターフェイス(9)を支援する
    ための手段(11)と、 (ii)データ変換のための手段(19)と、 (iii)デバイス間通信手段(21)と、 (iv)データ域を保持するための手段(15)を含み、 前記装置依存支援手段は、デバイス間通信手段(23)を
    含み、 前記装置独立支援手段と前記装置依存支援手段が、前記
    デバイス間通信手段(21、23)を通じて互いに通信する
    ことを特徴とする周辺装置支援システム。
JP2248979A 1989-09-22 1990-09-20 周辺装置支援システム Expired - Lifetime JPH0795314B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US41107489A 1989-09-22 1989-09-22
US411074 1989-09-22

Publications (2)

Publication Number Publication Date
JPH03121555A JPH03121555A (ja) 1991-05-23
JPH0795314B2 true JPH0795314B2 (ja) 1995-10-11

Family

ID=23627448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2248979A Expired - Lifetime JPH0795314B2 (ja) 1989-09-22 1990-09-20 周辺装置支援システム

Country Status (3)

Country Link
US (1) US5465364A (ja)
EP (1) EP0419064A3 (ja)
JP (1) JPH0795314B2 (ja)

Families Citing this family (85)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5291585A (en) * 1991-07-29 1994-03-01 Dell Usa, L.P. Computer system having system feature extension software containing a self-describing feature table for accessing I/O devices according to machine-independent format
US5781797A (en) * 1992-09-30 1998-07-14 Microsoft Corporation Method and system for configuring device driver by selecting a plurality of component drivers to be included in the device driver
EP0610677A3 (en) * 1993-02-12 1995-08-02 Ibm Communication device management module operating in two modes.
US5664195A (en) * 1993-04-07 1997-09-02 Sequoia Systems, Inc. Method and apparatus for dynamic installation of a driver on a computer system
US5781798A (en) * 1993-12-30 1998-07-14 International Business Machines Corporation Method and apparatus for providing hot swapping capability in a computer system with static peripheral driver software
JPH08161250A (ja) * 1994-12-06 1996-06-21 Canon Inc 情報処理装置
US5802365A (en) * 1995-05-05 1998-09-01 Apple Computer, Inc. Dynamic device matching using driver candidate lists
USRE39369E1 (en) 1995-06-29 2006-10-31 Igt Electronic casino gaming system with improved play capacity, authentication and security
US5643086A (en) 1995-06-29 1997-07-01 Silicon Gaming, Inc. Electronic casino gaming apparatus with improved play capacity, authentication and security
US7063615B2 (en) * 1995-06-29 2006-06-20 Igt Electronic gaming apparatus with authentication
US6620047B1 (en) 1995-06-29 2003-09-16 Igt Electronic gaming apparatus having authentication data sets
EP0752646B1 (en) * 1995-07-07 2002-03-27 Sun Microsystems, Inc. Data access implementation of device driver interface
US5923876A (en) * 1995-08-24 1999-07-13 Compaq Computer Corp. Disk fault prediction system
US6289396B1 (en) * 1995-11-21 2001-09-11 Diamond Multimedia Systems, Inc. Dynamic programmable mode switching device driver architecture
US5752032A (en) * 1995-11-21 1998-05-12 Diamond Multimedia Systems, Inc. Adaptive device driver using controller hardware sub-element identifier
US6393495B1 (en) * 1995-11-21 2002-05-21 Diamond Multimedia Systems, Inc. Modular virtualizing device driver architecture
US6009476A (en) * 1995-11-21 1999-12-28 Diamond Multimedia Systems, Inc. Device driver architecture supporting emulation environment
US5896534A (en) * 1996-01-26 1999-04-20 Dell Usa, L.P. Operating system independent apparatus and method for supporting input/output devices unsupported by executing programs
US5796984A (en) * 1996-01-26 1998-08-18 Dell Usa, L.P. Operating system independent apparatus and method for eliminating peripheral device functions
US6094600A (en) * 1996-02-06 2000-07-25 Fisher-Rosemount Systems, Inc. System and method for managing a transaction database of records of changes to field device configurations
JP2787911B2 (ja) * 1996-03-29 1998-08-20 三菱電機株式会社 データストレージ管理方式及びデータストレージ管理方法
US5787019A (en) * 1996-05-10 1998-07-28 Apple Computer, Inc. System and method for handling dynamic changes in device states
DE19622531C2 (de) * 1996-06-05 2003-12-04 Deutsche Telekom Ag Verfahren, Anlage und Unterstation zur Übertragung von Informations- und Steuerdaten
US6185590B1 (en) 1996-10-18 2001-02-06 Imagination Software Process and architecture for use on stand-alone machine and in distributed computer architecture for client server and/or intranet and/or internet operating environments
AU4822397A (en) * 1996-10-18 1998-05-15 Imagination Software Distributed computer architecture and process for generating reusable software components
US6651104B1 (en) * 1996-11-12 2003-11-18 Ericsson Inc. Multi-layered interface for interconnecting application programs to system bus lines for electronic devices
US6064660A (en) * 1996-12-12 2000-05-16 Optimay Corporation GSM transceiver with portable protocol stack
US6070236A (en) * 1996-12-19 2000-05-30 Deutsche Thomson-Brandt Gmbh Apparatus for processing a sequence of control commands as well as a method for generating a sequence of control commands, and storage medium for storing control commands
US6041364A (en) * 1996-12-19 2000-03-21 Intel Corporation Method and system for adding a device entry to a device tree upon detecting the connection of a device
US6212576B1 (en) 1997-01-27 2001-04-03 Optimay Corporation Operating system interface for use with multitasking GSM protocol stacks
US20020025852A1 (en) * 2000-09-29 2002-02-28 Alcorn Allan E. Gaming apparatus with portrait-mode display
US6021446A (en) * 1997-07-11 2000-02-01 Sun Microsystems, Inc. Network device driver performing initial packet processing within high priority hardware interrupt service routine and then finishing processing within low priority software interrupt service routine
EP0893765A1 (en) * 1997-07-24 1999-01-27 CANAL+ Société Anonyme IEEE 1394 Set Top Box device driver
US6311228B1 (en) * 1997-08-06 2001-10-30 Microsoft Corporation Method and architecture for simplified communications with HID devices
US6275266B1 (en) * 1997-11-12 2001-08-14 Philips Electronics North America Corporation Apparatus and method for automatically detecting and configuring a television display for a personal computer
US6845508B2 (en) 1997-12-19 2005-01-18 Microsoft Corporation Stream class driver for computer operating system
US6182242B1 (en) 1998-04-22 2001-01-30 International Business Machines Corporation Generic device driver simulator and method
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
GB2345986A (en) * 1999-01-19 2000-07-26 Inventec Corp Computer mouse/mice driver
US6490493B1 (en) 1999-01-21 2002-12-03 Rosemount Inc. Industrial process device management software
US5968138A (en) * 1999-04-23 1999-10-19 Hewlett-Packard Company Method and apparatus for peripheral system management, using multiple object interfaces
US6618630B1 (en) 1999-07-08 2003-09-09 Fisher-Rosemount Systems, Inc. User interface that integrates a process control configuration system and a field device management 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
EP1238333A1 (en) * 1999-12-15 2002-09-11 Sun Microsystems, Inc. Computer system with an improved device and driver framework
US20050255924A1 (en) * 2000-03-03 2005-11-17 Cole Joseph W Gaming apparatus having door mounted display
US7043641B1 (en) 2000-03-08 2006-05-09 Igt Encryption in a secure computerized gaming system
CA2402389A1 (en) 2000-03-08 2002-09-19 Shuffle Master, Inc. Computerized gaming system, method and apparatus
US7988559B2 (en) 2001-03-08 2011-08-02 Igt Computerized gaming system, method and apparatus
US6813729B1 (en) 2000-06-15 2004-11-02 Advanced Micro Devices, Inc. Programmable bi-directional MII testing methodology and device including same
US6937571B1 (en) 2000-06-19 2005-08-30 Advanced Micro Devices, Inc. Method of testing a network device through a medium independent interface (MII)
US6978318B1 (en) 2000-06-19 2005-12-20 Advanced Micro Devices, Inc. Network interface apparatus and method of internal communication within the same
GB2384593B (en) * 2000-08-21 2004-12-01 Int Game Tech A method of operating a gaming system and gaming device
CA2356015A1 (en) 2000-08-31 2002-02-28 International Game Technology Method and apparatus for encoding vouchers in a cashless casino gaming system
US6677347B2 (en) * 2000-12-08 2004-01-13 3M Innovative Properties Company Sulfonamido ether substituted imidazoquinolines
US6848110B2 (en) 2000-12-22 2005-01-25 International Business Machines Corporation Automatic feature augmentation for component based application programming interfaces
US7203841B2 (en) 2001-03-08 2007-04-10 Igt Encryption in a secure computerized gaming system
US8214849B2 (en) * 2001-07-13 2012-07-03 Advanced Micro Devices, Inc. System for loading device-specific code and method thereof
US7162036B2 (en) 2001-08-06 2007-01-09 Igt Digital identification of unique game characteristics
US6685567B2 (en) 2001-08-08 2004-02-03 Igt Process verification
WO2003023647A1 (en) 2001-09-10 2003-03-20 Igt Method for developing gaming programs compatible with a computerized gaming operating system and apparatus
US8708828B2 (en) 2001-09-28 2014-04-29 Igt Pluggable modular gaming modifiers and configuration templates for gaming environments
US6902481B2 (en) 2001-09-28 2005-06-07 Igt Decoupling of the graphical presentation of a game from the presentation logic
US7931533B2 (en) 2001-09-28 2011-04-26 Igt Game development architecture that decouples the game logic from the graphics logics
US20030064784A1 (en) 2001-09-28 2003-04-03 William Wells Wide screen gaming apparatus
US7259881B2 (en) * 2001-10-03 2007-08-21 Kabushiki Kaisha Toshiba Method of monitoring multiple controller families
US8060587B2 (en) * 2001-10-05 2011-11-15 International Business Machines Corporation Methods and apparatus for launching device specific applications on storage area network components
US20030079050A1 (en) * 2001-10-19 2003-04-24 Chang Cheng Tsung Computer system with parallel sever architecture
US7179170B2 (en) 2001-11-26 2007-02-20 Igt Pass-through live validation device and method
US7171022B2 (en) * 2001-12-05 2007-01-30 Lockheed Martin Corporation Common method for communicating area information
GB0204035D0 (en) * 2002-02-21 2002-04-03 Adder Tech Ltd Interfacing devices
US6986108B2 (en) * 2002-03-21 2006-01-10 Toshiba Tec Kabushiki Kaisha System for accessing digital imaging devices
US7107331B2 (en) * 2002-03-25 2006-09-12 Kabushiki Kaisha Toshiba System and method for configuring digital image devices
US6977994B2 (en) * 2002-03-27 2005-12-20 Toshiba Tec Kabushiki Kaisha Portable, high performance messaging system
US20030184783A1 (en) * 2002-03-28 2003-10-02 Toshiba Tec Kabushiki Kaisha Modular layer for abstracting peripheral hardware characteristics
US20070186216A1 (en) * 2002-05-28 2007-08-09 Mustafa Seifi Message driven job processing system and method
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
US7689985B2 (en) * 2005-03-04 2010-03-30 Microsoft Corporation Versioning support for drivers frameworks
US7716379B2 (en) 2007-04-26 2010-05-11 Microsoft Corporation Hardware control interface for IEEE standard 802.11 including transmission control interface component and a transmission status interface component
US8346974B2 (en) 2007-07-27 2013-01-01 Microsoft Corporation Hardware control interface for IEEE standard 802.11
US9927788B2 (en) 2011-05-19 2018-03-27 Fisher-Rosemount Systems, Inc. Software lockout coordination between a process control system and an asset management system
US8627097B2 (en) 2012-03-27 2014-01-07 Igt System and method enabling parallel processing of hash functions using authentication checkpoint hashes
US9542172B2 (en) 2013-02-05 2017-01-10 Apple Inc. Automatic updating of applications
US9594654B2 (en) * 2013-12-24 2017-03-14 International Business Machines Corporation Generating and detecting hang scenarios in a partially populated simulation environment

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4555775B1 (en) * 1982-10-07 1995-12-05 Bell Telephone Labor Inc Dynamic generation and overlaying of graphic windows for multiple active program storage areas
US4692858A (en) * 1984-02-02 1987-09-08 Trillian Computer Corporation Visual interface between user and computer system
US4587630A (en) * 1984-02-15 1986-05-06 Hewlett-Packard Company Intelligent programmable touchscreen system
US4813013A (en) * 1984-03-01 1989-03-14 The Cadware Group, Ltd. Schematic diagram generating system using library of general purpose interactively selectable graphic primitives to create special applications icons
US4775931A (en) * 1984-05-11 1988-10-04 Hewlett-Packard Company Dynamically configured computing device
US4773005A (en) * 1984-09-07 1988-09-20 Tektronix, Inc. Dynamic address assignment system
US4701848A (en) * 1984-11-19 1987-10-20 Clyde, Inc. System for effectively paralleling computer terminal devices
US4727512A (en) * 1984-12-06 1988-02-23 Computer Design & Applications, Inc. Interface adaptor emulating magnetic tape drive
US4649479A (en) * 1985-02-28 1987-03-10 International Business Machines Corp. Device driver and adapter binding technique
JPH0664536B2 (ja) * 1986-01-17 1994-08-22 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 仮想端末サブシステムの制御方法
JPS62192820A (ja) * 1986-02-20 1987-08-24 Mitsubishi Electric Corp マン・マシン・インタフェイス管理方式
US4937036A (en) * 1986-04-28 1990-06-26 Xerox Corporation Concurrent display of data from two different display processors and user interface therefore
JPS6324448A (ja) * 1986-07-17 1988-02-01 Toshiba Corp 複合文書処理装置
GB8621061D0 (en) * 1986-09-01 1986-10-08 Hewlett Packard Ltd User interface simulation
US4975829A (en) * 1986-09-22 1990-12-04 At&T Bell Laboratories Communication interface protocol
JPS63113721A (ja) * 1986-10-31 1988-05-18 Fujitsu Ltd マウス・タブレツト共通制御装置
US4855905A (en) * 1987-04-29 1989-08-08 International Business Machines Corporation Multiprotocol I/O communications controller unit including emulated I/O controllers and tables translation of common commands and device addresses
US4859995A (en) * 1987-06-30 1989-08-22 Xerox Corporation Mouse pointer with switchable emulation mode
JPS6410300A (en) * 1987-07-03 1989-01-13 Hitachi Ltd User's interface system for searching
US4896290A (en) * 1987-08-24 1990-01-23 Wang Laboratories, Inc. Method for routing events from key strokes in a multi-processing computer systems
US5191655A (en) * 1987-10-13 1993-03-02 Standard Microsystems Corporation Interface arrangement for facilitating data communication between a computer and peripherals
JP2569092B2 (ja) * 1987-12-11 1997-01-08 株式会社日立製作所 入出力機器制御プログラムのアドレス解決方法
US4972368A (en) * 1988-03-04 1990-11-20 Stallion Technologies, Pty. Ltd. Intelligent serial I/O subsystem
US4914624A (en) * 1988-05-06 1990-04-03 Dunthorn David I Virtual button for touch screen
US4951245A (en) * 1988-05-20 1990-08-21 Bull Hn Information Systems Inc. Network terminal driver communications subsystem
US4896291A (en) * 1988-05-20 1990-01-23 International Business Machines Corporation Valuator menu for use as a graphical user interface tool
US4924378A (en) * 1988-06-13 1990-05-08 Prime Computer, Inc. License mangagement system and license storage key
US5097533A (en) * 1988-11-29 1992-03-17 International Business Machines Corporation System and method for interfacing computer application programs written in different languages to a software system

Also Published As

Publication number Publication date
US5465364A (en) 1995-11-07
EP0419064A2 (en) 1991-03-27
JPH03121555A (ja) 1991-05-23
EP0419064A3 (en) 1992-08-05

Similar Documents

Publication Publication Date Title
JPH0795314B2 (ja) 周辺装置支援システム
JP3659062B2 (ja) 計算機システム
EP0475600B1 (en) System and method for communication between windowing environments
EP0229336B1 (en) A virtual terminal subsystem
US6285363B1 (en) Method and system for sharing applications between computer systems
US5029077A (en) System and method for controlling physical resources allocated to a virtual terminal
US5640495A (en) Computer-printer interface control for bidirectional/undirectional data communications
US20050240944A1 (en) Method and apparatus for adapting and hosting legacy user interface controls
EP0751460A2 (en) System and method of controlling mapping of data buffers for heterogenous programs in digital computer system
US7865883B1 (en) Parallel and asynchronous debugger and debugging method for multi-threaded programs
EP1025489B1 (en) System to associate control with applications using drag and drop interface
US6308226B1 (en) Communication method and system for objects movable in network
US7191263B2 (en) Enhanced input using packet switching over a PS/2 or other interface
CN1082209C (zh) 在虚拟终端环境下允许使用单个操作的机构
EP0487290A2 (en) Method and means for operating a computer workstation
JP2945753B2 (ja) 情報処理装置
JP2848172B2 (ja) 入出力制御装置
JP2004013689A (ja) データ処理装置
CN115617219A (zh) 零终端外设的控制方法及装置
JP2004013687A (ja) データ処理装置
CN119718151A (zh) 一种基于多主机的输入设备共享方法及系统
JPH0317769A (ja) アプリケーシヨンソフトの機能拡張方法
JPH06309079A (ja) 仮想計算機におけるキーボード制御方式
Bryant PACS-What About Software
JPH01260554A (ja) ファイル転送完了通知方式