JPS6364133A - 情報処理システム - Google Patents
情報処理システムInfo
- Publication number
- JPS6364133A JPS6364133A JP17504087A JP17504087A JPS6364133A JP S6364133 A JPS6364133 A JP S6364133A JP 17504087 A JP17504087 A JP 17504087A JP 17504087 A JP17504087 A JP 17504087A JP S6364133 A JPS6364133 A JP S6364133A
- Authority
- JP
- Japan
- Prior art keywords
- adapter card
- adapter
- host
- function
- card
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 4
- 230000006870 function Effects 0.000 description 45
- 239000013598 vector Substances 0.000 description 19
- 230000007246 mechanism Effects 0.000 description 15
- 230000015654 memory Effects 0.000 description 13
- 230000006854 communication Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 5
- 238000000034 method Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/177—Initialisation or configuration control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明は情報処理システムのプログラミング・インタフ
ェースに係り、特にプログラミング・インタフェース上
で複数の機能を取扱うためのドライバ機構に係る。
ェースに係り、特にプログラミング・インタフェース上
で複数の機能を取扱うためのドライバ機構に係る。
B、従来技術
パーソナル・コンピュータに代表される小型処理の分野
では、一般にパーソナル・コンピュータに複数のアダプ
タ・カードを接続することによって、非同期通信や音声
・電話通信と云った機能を提供している。ホストのパー
ソナル・コンピュータは普通、一部のソフトウェアをR
A Mに持っており、それによりアプリケーション・プ
ログラム(以下、単にアプリケーションと云う)と所与
のアダプタ・カードとの通信を可能にしている。例えば
、ホスト・システムに音声アダプタ・カードが接続され
ていると、アプリケーションがこの音声アダプタ・カー
ドと通信できるようにするための音声ソフトウェア・サ
ブシステムがRAMに格納されることになろう、ホスト
中の各ソフトウェア・サブシステムに関連してドライバ
機構が設けられ、これによりアプリケーションはソフト
ウェア・サブシステムとインタフェースできる。
では、一般にパーソナル・コンピュータに複数のアダプ
タ・カードを接続することによって、非同期通信や音声
・電話通信と云った機能を提供している。ホストのパー
ソナル・コンピュータは普通、一部のソフトウェアをR
A Mに持っており、それによりアプリケーション・プ
ログラム(以下、単にアプリケーションと云う)と所与
のアダプタ・カードとの通信を可能にしている。例えば
、ホスト・システムに音声アダプタ・カードが接続され
ていると、アプリケーションがこの音声アダプタ・カー
ドと通信できるようにするための音声ソフトウェア・サ
ブシステムがRAMに格納されることになろう、ホスト
中の各ソフトウェア・サブシステムに関連してドライバ
機構が設けられ、これによりアプリケーションはソフト
ウェア・サブシステムとインタフェースできる。
上記のようなパーソナル・コンピュータにおいては、ア
プリケーションはアプリケーション・プログラミング・
インタフェース(以下、APIと略称)を介してホスト
のソフトウェアとインタフェースする。具体的に云うと
、アプリケーションはAPIを介してソフトウェア・ド
ライバ機構とインタフェースし、これが特定のアダプタ
・カードに対するソフトウェア・サブシステムとインタ
フェースする。ソフトウェア・サブシステムは謂ゆるハ
ードウェア・インタフェースを介してアダプタ・カード
と対話する。所与のアダプタ・カードをホストで機能さ
せるためには、APIによる支援が必要である。ホスト
にロードされた各サブシステムは、APIによって支援
される幾つかの機能を提供する。これらは複数の機能セ
ットに分けられる。まず、関連するアダプタ・カードの
ハードウェア資源を管理する基本機能セットがある。
プリケーションはアプリケーション・プログラミング・
インタフェース(以下、APIと略称)を介してホスト
のソフトウェアとインタフェースする。具体的に云うと
、アプリケーションはAPIを介してソフトウェア・ド
ライバ機構とインタフェースし、これが特定のアダプタ
・カードに対するソフトウェア・サブシステムとインタ
フェースする。ソフトウェア・サブシステムは謂ゆるハ
ードウェア・インタフェースを介してアダプタ・カード
と対話する。所与のアダプタ・カードをホストで機能さ
せるためには、APIによる支援が必要である。ホスト
にロードされた各サブシステムは、APIによって支援
される幾つかの機能を提供する。これらは複数の機能セ
ットに分けられる。まず、関連するアダプタ・カードの
ハードウェア資源を管理する基本機能セットがある。
この他に、各アダプタ・カードに対するオプションとし
て多数の任意機能セットがある。しかし、任意機能セッ
トのうちの幾つかのサブセットは、特定のソフトウェア
・サブシステムによって支援されるアダプタ・カード・
ファミリに属するアダプタ・カード上に装備されること
がある。
て多数の任意機能セットがある。しかし、任意機能セッ
トのうちの幾つかのサブセットは、特定のソフトウェア
・サブシステムによって支援されるアダプタ・カード・
ファミリに属するアダプタ・カード上に装備されること
がある。
米国特許第4263650号明細書は、共通の両方向デ
ータ・バスに結合された複数の周辺インタフェース・ア
ダプタを有するディジタル・データ処理システムを開示
している。データ・バスはそれに接続されたマイクロプ
ロセッサにより制御される。マイクロプロセッサはRO
M及びRAMとインタフェースする。インタフェース・
アダプタは、周辺装置がデータ・バスと、従ってマイク
ロプロセッサ及び種々の記憶装置と通信できるようにす
る。各インタフェース・アダプタは、プログラム制御の
もとにロードされる制御レジスタを含み、その内容によ
りインタフェース・アダプタ内の諸レジスタの選択を制
御する。インタフェース・アダプタの他の機能(例えば
、インタフェース・アダプタの周辺バッファにおけるデ
ータ移動方向を決定すること)も制御レジスタにより制
御される。マイクロプロセッサは、各インタフェース・
アダプタの制御レジスタの内容を監視する。
ータ・バスに結合された複数の周辺インタフェース・ア
ダプタを有するディジタル・データ処理システムを開示
している。データ・バスはそれに接続されたマイクロプ
ロセッサにより制御される。マイクロプロセッサはRO
M及びRAMとインタフェースする。インタフェース・
アダプタは、周辺装置がデータ・バスと、従ってマイク
ロプロセッサ及び種々の記憶装置と通信できるようにす
る。各インタフェース・アダプタは、プログラム制御の
もとにロードされる制御レジスタを含み、その内容によ
りインタフェース・アダプタ内の諸レジスタの選択を制
御する。インタフェース・アダプタの他の機能(例えば
、インタフェース・アダプタの周辺バッファにおけるデ
ータ移動方向を決定すること)も制御レジスタにより制
御される。マイクロプロセッサは、各インタフェース・
アダプタの制御レジスタの内容を監視する。
米国特許第4174536号明細書は、マイクロプロセ
ッサを用いて、装置間通信のためのメツセージ経路指定
を可能にするディジタル通信制御装置を開示している。
ッサを用いて、装置間通信のためのメツセージ経路指定
を可能にするディジタル通信制御装置を開示している。
アドレス・バス及びデータ・バスに接続された複数の直
列インタフェースがマイクロプロセッサと複数のポート
との間の通信を可能にする。
列インタフェースがマイクロプロセッサと複数のポート
との間の通信を可能にする。
米国特許第4250563号明細書及び同第42544
73号明細書は、複数のI10インタフェース・ラック
が両方向通信チャネルを介して中央処理手段に接続され
るようなプログラマブル・コントローラを開示している
。I10インタフェース・ラックは、ラック・アダプタ
上の直列I10データ・ボートに接続された両方向直列
通信ケーブルによって相互接続される。中央処理装置が
インタフェース・アダプタを介してI10インタフェー
ス・ラックの分散網を制御する。様々な数及び大きさの
I10インタフェース・ラックを組合わせて通信チャネ
ルを構成することができる。
73号明細書は、複数のI10インタフェース・ラック
が両方向通信チャネルを介して中央処理手段に接続され
るようなプログラマブル・コントローラを開示している
。I10インタフェース・ラックは、ラック・アダプタ
上の直列I10データ・ボートに接続された両方向直列
通信ケーブルによって相互接続される。中央処理装置が
インタフェース・アダプタを介してI10インタフェー
ス・ラックの分散網を制御する。様々な数及び大きさの
I10インタフェース・ラックを組合わせて通信チャネ
ルを構成することができる。
C0発明が解決しようとする問題点
問題は、2以上のアダプタ・カードがホストに設置され
ていると、複数のドライバ機構が必要になると云うこと
である。即ち、常駐アダプタ・カードと通信する各ソフ
トウェア・サブシステムとインタフェースするためには
別々のドライバが必要である。共通のAPIを有する複
数のサブシステムを、所与のアダプタ・カード・ファミ
リに属する複数の異なったアダプタ・カード上で実施で
きるようなドライバ機構はない。
ていると、複数のドライバ機構が必要になると云うこと
である。即ち、常駐アダプタ・カードと通信する各ソフ
トウェア・サブシステムとインタフェースするためには
別々のドライバが必要である。共通のAPIを有する複
数のサブシステムを、所与のアダプタ・カード・ファミ
リに属する複数の異なったアダプタ・カード上で実施で
きるようなドライバ機構はない。
従って、本発明の目的は、情報処理システムにおいてプ
ログラミング・インタフェース上で複数の機構を取扱う
ための制御機構を提供することにある。
ログラミング・インタフェース上で複数の機構を取扱う
ための制御機構を提供することにある。
D0問題点を解決するための手段
本発明に従えば、ソフトウェアで実現され、ホスト計算
機にロードされるドライバ機構が、単一のAPIのもと
で、ホスト計算機の複数のアダプタ・カードを支援する
。このドライバ機構は、共通のAPIのもとで動くホス
トの複数のソフトウエア・サブシステムが、特定のアダ
プタ・カード・ファミリに厘する複数の異なったアダプ
タ・カード上で実施されるようにする。
機にロードされるドライバ機構が、単一のAPIのもと
で、ホスト計算機の複数のアダプタ・カードを支援する
。このドライバ機構は、共通のAPIのもとで動くホス
トの複数のソフトウエア・サブシステムが、特定のアダ
プタ・カード・ファミリに厘する複数の異なったアダプ
タ・カード上で実施されるようにする。
APIによって支援される各アダプタ・カードは、工/
○アドレスと、ホストに接続されたカードのタイプ、ハ
ードウェア割込みレベル、及びホストのRAMにおける
任意の既存カード・アドレスを決めるI10機構とを有
する。ホストもRAMに幾つかのファイルを有する。工
10アドレス・ファイルは、APIを支援するホストに
接続された各カードのI10アドレスを含む、このファ
イルはまた、カード・タイプと、APIにおける対応す
るディレクトリ・ファイルの名前とを含む。
○アドレスと、ホストに接続されたカードのタイプ、ハ
ードウェア割込みレベル、及びホストのRAMにおける
任意の既存カード・アドレスを決めるI10機構とを有
する。ホストもRAMに幾つかのファイルを有する。工
10アドレス・ファイルは、APIを支援するホストに
接続された各カードのI10アドレスを含む、このファ
イルはまた、カード・タイプと、APIにおける対応す
るディレクトリ・ファイルの名前とを含む。
APIディレクトリ・ファイルは、ホストに取付けられ
た各カード・タイプ毎に1つ設けられる。
た各カード・タイプ毎に1つ設けられる。
このファイル中には、アダプタ・カードによって支援さ
れる各機能セット毎に1つのレコードがある。このレコ
ードは、所与の機能セットのためのプログラミング支援
をなすファイルの名前を含む。
れる各機能セット毎に1つのレコードがある。このレコ
ードは、所与の機能セットのためのプログラミング支援
をなすファイルの名前を含む。
各機能セット・ファイルは、特定の機能セットのために
APIのよって定義された機能を実施する目的コード・
プログラムである。これらの機能セット・ファイルは、
関連する機能セットについて定義された割込みを発生す
る。
APIのよって定義された機能を実施する目的コード・
プログラムである。これらの機能セット・ファイルは、
関連する機能セットについて定義された割込みを発生す
る。
ホスト・システムのIPL時には、ドライバ機構は3つ
の機能を遂行する。第1に、ドライバ機構は、I10ア
ドレス・ファイルをRAMにロードして、アダプタ・カ
ードの存在及びタイプに関して各工/○アドレスを検査
する。第2に、ドライバ機構は、IPL時にロードすべ
きことを示しているアダプタ・カードのタイプ毎に基本
機能セットをロードする。第3に、ドライバ機構は、ロ
ードされた各基本機能セットをその初期エントリ点のと
ころから呼出す。
の機能を遂行する。第1に、ドライバ機構は、I10ア
ドレス・ファイルをRAMにロードして、アダプタ・カ
ードの存在及びタイプに関して各工/○アドレスを検査
する。第2に、ドライバ機構は、IPL時にロードすべ
きことを示しているアダプタ・カードのタイプ毎に基本
機能セットをロードする。第3に、ドライバ機構は、ロ
ードされた各基本機能セットをその初期エントリ点のと
ころから呼出す。
ドライバ機構によって遂行されるキーとなる2つの機能
がある。即ち、初期設定機能及びオーブン機能である。
がある。即ち、初期設定機能及びオーブン機能である。
特定のアダプタ・カードの基本機能セットに対するエン
トリ点ベクトルの最初のエントリが初期設定エントリ点
である。このエントリ点はアプリケーションからはアク
セスできず、ドライバ機能によって呼出せるだけである
。特定のハードウェア実施に対するAPIディレクトリ
のアドレスは、引数として初期設定機能に移され、初期
設定機能は成功又は失敗を示すコードを戻す。
トリ点ベクトルの最初のエントリが初期設定エントリ点
である。このエントリ点はアプリケーションからはアク
セスできず、ドライバ機能によって呼出せるだけである
。特定のハードウェア実施に対するAPIディレクトリ
のアドレスは、引数として初期設定機能に移され、初期
設定機能は成功又は失敗を示すコードを戻す。
初期設定機能は2つのタスクを実行する。第1に、要求
されたハードウェア、即ちアダプタ・カードのハードウ
ェアを初期設定して、その受諾可能性をテストする。第
2に、要求に応じてロード可能な幾つかの機能セットを
ロードし且つ同時実行を行わせるために、アダプタ・カ
ードに対するソフトウェア制御ブロック構造を初期設定
する。
されたハードウェア、即ちアダプタ・カードのハードウ
ェアを初期設定して、その受諾可能性をテストする。第
2に、要求に応じてロード可能な幾つかの機能セットを
ロードし且つ同時実行を行わせるために、アダプタ・カ
ードに対するソフトウェア制御ブロック構造を初期設定
する。
オーブン機能は、識別子をオーブン機能に与えることに
よってアプリケーションが要求されたハードウェア資源
にアクセスできるようにする。アダプタ・カードのハー
ドウェア資源は、複数のアプリケーションによって同時
にアクセスすることができる。
よってアプリケーションが要求されたハードウェア資源
にアクセスできるようにする。アダプタ・カードのハー
ドウェア資源は、複数のアプリケーションによって同時
にアクセスすることができる。
E、実施例
本発明で用いる情報処理システムの構成を第1図に示す
、アプリケーション13はAP I l 1を介してホ
スト20の種々のソフトウェア・モジュールと対話する
1本実施例では、ドライバ14及びサブシステム15〜
17がソフトウェア・モジュールとして含まれている。
、アプリケーション13はAP I l 1を介してホ
スト20の種々のソフトウェア・モジュールと対話する
1本実施例では、ドライバ14及びサブシステム15〜
17がソフトウェア・モジュールとして含まれている。
サブシステム15〜17の各々は、インプリメンテーシ
ョン・コード28及び割込み経路指定部29を含む、ホ
スト20とアダプタ・カード18.19及び21との間
の境界がハードウェア・インタフェース12である。こ
のインタフェース12はアダプタのタイプに応じて変え
ることができる。第1図には3つのアダプタ・カードが
示されているが、インタフェース12を介してホスト2
0と対話できるアダプタ・カードの数は、ホスト20に
おけるアダプタ・スロットの数によって決まる。サブシ
ステム15及びアダプタ・カード18を例にとると、ア
プリケーション・コマンドはパス23を通ってアダプタ
・カード18に行き、割込みはアダプタ・カード18中
の命令メモリ・セクション(後述)で発生して、パス2
2を通ってサブシステム15に行く、同様にサブシステ
ム16及びアダプタ・カード19の場合は、コマンド及
び割込みはパス24及び25を通り、サブシステム17
及びアダプタ・カード21の場合は、パス26及び27
を通る。
ョン・コード28及び割込み経路指定部29を含む、ホ
スト20とアダプタ・カード18.19及び21との間
の境界がハードウェア・インタフェース12である。こ
のインタフェース12はアダプタのタイプに応じて変え
ることができる。第1図には3つのアダプタ・カードが
示されているが、インタフェース12を介してホスト2
0と対話できるアダプタ・カードの数は、ホスト20に
おけるアダプタ・スロットの数によって決まる。サブシ
ステム15及びアダプタ・カード18を例にとると、ア
プリケーション・コマンドはパス23を通ってアダプタ
・カード18に行き、割込みはアダプタ・カード18中
の命令メモリ・セクション(後述)で発生して、パス2
2を通ってサブシステム15に行く、同様にサブシステ
ム16及びアダプタ・カード19の場合は、コマンド及
び割込みはパス24及び25を通り、サブシステム17
及びアダプタ・カード21の場合は、パス26及び27
を通る。
APIIIは、特定のアダプタ・カード・セットで実施
される特定の機能クラスを提供する6例えば、音声通信
用のAPIは種々の音声アダプタ・カードを支援し、非
同期通信用のAPIは種々の通信アダプタ・カードを支
援する。一般に、所与のアダプタ・カードによりAPI
上で支援される機能は、第2図及び第3図に示すように
、幾つかの機能セットに分けられる。基本機能セットは
、特定のアダプタ・カードによって提供される論理資源
を管理する。他の多数の機能セットも所与のアダプタ・
カードにより提供される。その場合、それらの機能セッ
トのうちの成るサブセットを、所与のサブシステム(例
えば15)によって支援されるアダプタ・カード・ノア
ミリ中のアダプタ・カード(例えば18)上で実施でき
るようにされる。所与のアダプタ・カード上でのハード
ウェアによるサブセットの実施を可能にすると共に、如
何なる時にも必要な機能だけがメモリに格納されるよう
にするため、APIIIはこのような機能セットに分割
される。かくして、使用されない機能のためにメモリ空
間が浪費されることはない。
される特定の機能クラスを提供する6例えば、音声通信
用のAPIは種々の音声アダプタ・カードを支援し、非
同期通信用のAPIは種々の通信アダプタ・カードを支
援する。一般に、所与のアダプタ・カードによりAPI
上で支援される機能は、第2図及び第3図に示すように
、幾つかの機能セットに分けられる。基本機能セットは
、特定のアダプタ・カードによって提供される論理資源
を管理する。他の多数の機能セットも所与のアダプタ・
カードにより提供される。その場合、それらの機能セッ
トのうちの成るサブセットを、所与のサブシステム(例
えば15)によって支援されるアダプタ・カード・ノア
ミリ中のアダプタ・カード(例えば18)上で実施でき
るようにされる。所与のアダプタ・カード上でのハード
ウェアによるサブセットの実施を可能にすると共に、如
何なる時にも必要な機能だけがメモリに格納されるよう
にするため、APIIIはこのような機能セットに分割
される。かくして、使用されない機能のためにメモリ空
間が浪費されることはない。
ホスト2oにおけるファイル構造を第2図に示す、この
ファイル構造は一般にホスト20のディスクで見られる
ものであり、工/○アドレス・ファイル31、複数のデ
ィレクトリ41.43及び複数の基本機能セット・モジ
ュール42.44を含む、ディレクトリ41.43及び
モジュール42.44は各サブシステム15.16に含
まれる。
ファイル構造は一般にホスト20のディスクで見られる
ものであり、工/○アドレス・ファイル31、複数のデ
ィレクトリ41.43及び複数の基本機能セット・モジ
ュール42.44を含む、ディレクトリ41.43及び
モジュール42.44は各サブシステム15.16に含
まれる。
I10アドレス・ファイル31は4つの情報列を有する
1列34は、特定のアプリケーションによって要求され
るアダプタ・カードを識別する0列35は、アプリケー
ションによって要求されるアダプタ・カードのタイプ(
音声アダプタ・カード、非同期通信カード等)を示す0
列36は、要求されたアダプタのためのディレクトリ、
即ち、当該アダプタのために要求されるソフトウェア・
サポートを指し示す0例えば、ブロック38はサブシス
テム15のディレクトリ41を指し示す、同様に、ブロ
ック39はサブシステム16のディレクトリ43を指し
示す。最後の列37は、初期プログラム・ロード(IP
L)時又は所与のアプリケーションによるサブシステム
の最初の使用時に、当該サブシステムを初期設定すべき
かどうかを示す。ディレクトリ41.43は、当該サブ
システムにおける機能セット毎に1つのエントリを含む
。
1列34は、特定のアプリケーションによって要求され
るアダプタ・カードを識別する0列35は、アプリケー
ションによって要求されるアダプタ・カードのタイプ(
音声アダプタ・カード、非同期通信カード等)を示す0
列36は、要求されたアダプタのためのディレクトリ、
即ち、当該アダプタのために要求されるソフトウェア・
サポートを指し示す0例えば、ブロック38はサブシス
テム15のディレクトリ41を指し示す、同様に、ブロ
ック39はサブシステム16のディレクトリ43を指し
示す。最後の列37は、初期プログラム・ロード(IP
L)時又は所与のアプリケーションによるサブシステム
の最初の使用時に、当該サブシステムを初期設定すべき
かどうかを示す。ディレクトリ41.43は、当該サブ
システムにおける機能セット毎に1つのエントリを含む
。
ディレクトリ41.43におけるすべての機能セットは
、関連するサブシステムのための基本機能セットを支援
しなければならない、基本機能セット・モジュール42
.44は、所与のアダプタ・カード・ファミリのための
基本機能セットが何を含んでいるかを記述する。
、関連するサブシステムのための基本機能セットを支援
しなければならない、基本機能セット・モジュール42
.44は、所与のアダプタ・カード・ファミリのための
基本機能セットが何を含んでいるかを記述する。
APIIIは、一意的な識別子(I10アドレス)によ
って各アダプタ・カードを識別する。アプリケーション
13は、この識別子を基本機能セットのオープン機能に
与えることにより、I10アドレス・ファイル31内で
特定のアダプタ・カードにアクセスする。各アダプタ・
カードは、成る所定数のアプリケーションが当該アダプ
タ・カード上のハードウェアを同時にアクセスすること
を許してもよい、ハードウェアによるオープン機能の実
施においては、複数のベクトルの間接アドレスが第3図
に示したオープン・パラメータ構造ブロック51に格納
される。最初のベクトルは、アダプタの基本機能へのエ
ントリ点のベクトルであり、そのアドレスは[基本ID
Jと呼ばれる。
って各アダプタ・カードを識別する。アプリケーション
13は、この識別子を基本機能セットのオープン機能に
与えることにより、I10アドレス・ファイル31内で
特定のアダプタ・カードにアクセスする。各アダプタ・
カードは、成る所定数のアプリケーションが当該アダプ
タ・カード上のハードウェアを同時にアクセスすること
を許してもよい、ハードウェアによるオープン機能の実
施においては、複数のベクトルの間接アドレスが第3図
に示したオープン・パラメータ構造ブロック51に格納
される。最初のベクトルは、アダプタの基本機能へのエ
ントリ点のベクトルであり、そのアドレスは[基本ID
Jと呼ばれる。
その他のベクトルは、アダプタによって同時に支援され
る他の機能セットに対応し、それらのアドレスは「結合
IDJと呼ばれる。
る他の機能セットに対応し、それらのアドレスは「結合
IDJと呼ばれる。
第3図はアダプタ・カードのための制御構造で、ドライ
バ14とサブシステム(例えば15)の関係を示してい
る。この制御構造はホスト20中に位置している。アプ
リケーションはブロック51に含まれる基本ID及び結
合IDを用いて、オープンされた特定のサブシステムの
ためにどの機能セットをロードして使用すべきかを指示
する。ブロック52は、アプリケーションによって要求
された活動機能セットを指し示す複数のベクトル55.
56を含む。例えば、ベクトル55は機能セットN (
54)を指し示し、ベクトル56は機能セットM(53
)を指し示す。また、機能セット53は自身が提供する
機能を指し示す複数のベクトル(例えば57)を含む、
第3図の例では、ベクトル57はブロック59内に位置
する機能セットMの機能Aを指し示す0機能セット54
も同様である。
バ14とサブシステム(例えば15)の関係を示してい
る。この制御構造はホスト20中に位置している。アプ
リケーションはブロック51に含まれる基本ID及び結
合IDを用いて、オープンされた特定のサブシステムの
ためにどの機能セットをロードして使用すべきかを指示
する。ブロック52は、アプリケーションによって要求
された活動機能セットを指し示す複数のベクトル55.
56を含む。例えば、ベクトル55は機能セットN (
54)を指し示し、ベクトル56は機能セットM(53
)を指し示す。また、機能セット53は自身が提供する
機能を指し示す複数のベクトル(例えば57)を含む、
第3図の例では、ベクトル57はブロック59内に位置
する機能セットMの機能Aを指し示す0機能セット54
も同様である。
機能セットにおける各ソフトウェア手段、即ちサブシス
テム15.16及び17は、ドライバ14とインタフェ
ースすることに関して幾つかの制約を受ける。ドライバ
14とインタフェースする際にサブシステム15〜17
が従わなければならない段切の制約は、機能セット・ロ
ード・モジュールにより定義される。ロード・モジュー
ルはホスト2oにある独立したコード・セットであって
、アプリケーション13からの要求に応じて基本機能セ
ット(例えば42)によりロードされる。各機能セット
は、独立したロード・モジュールとして具体化される。
テム15.16及び17は、ドライバ14とインタフェ
ースすることに関して幾つかの制約を受ける。ドライバ
14とインタフェースする際にサブシステム15〜17
が従わなければならない段切の制約は、機能セット・ロ
ード・モジュールにより定義される。ロード・モジュー
ルはホスト2oにある独立したコード・セットであって
、アプリケーション13からの要求に応じて基本機能セ
ット(例えば42)によりロードされる。各機能セット
は、独立したロード・モジュールとして具体化される。
各ロード・モジュールは、当該機能セットにおける機能
(例えばブロック59のところに示した機能セットMの
機能A)を支援するためのコードを含む。ロード・モジ
ュールは、各機能セットで設定された機能定義に従って
任意のアダプタ・カード18.19.21上のハードウ
ェアを駆動するためのコードも含む、各ロード・モジュ
ールの先頭部には、関連する機能セット中の機能に対応
するエントリ点アドレスのベクトル(例えば57)があ
る、これらのベクトルは、API機能コードの定義に従
って並べられる。ドライバ14は、すべてのハードウェ
ア・アダプタ・カードについてベクトル中の任意のエン
トリを呼出すことができる。
(例えばブロック59のところに示した機能セットMの
機能A)を支援するためのコードを含む。ロード・モジ
ュールは、各機能セットで設定された機能定義に従って
任意のアダプタ・カード18.19.21上のハードウ
ェアを駆動するためのコードも含む、各ロード・モジュ
ールの先頭部には、関連する機能セット中の機能に対応
するエントリ点アドレスのベクトル(例えば57)があ
る、これらのベクトルは、API機能コードの定義に従
って並べられる。ドライバ14は、すべてのハードウェ
ア・アダプタ・カードについてベクトル中の任意のエン
トリを呼出すことができる。
基本機能セット・モジュール42.44のためのエント
リ点ベクトルにおける最初のエントリは、第2図に示す
ように、初期設定エントリである。
リ点ベクトルにおける最初のエントリは、第2図に示す
ように、初期設定エントリである。
このエントリ点はアプリケーション13からはアクセス
できず、ドライバ14によって呼出せるだけである。成
るアダプタ・カードについて要求されたディレクトリの
アドレスが引数として機能の方へ転送され、機能は成功
又は失敗を示すコードをAPIIIへ戻す、初期設定機
能は2つのタスクを実行する。まず、アダプタ・カード
上のハードウェアを初期設定してその受諾可能性をテス
トする。次に、アプリケーション13によって実行を要
求された機能セットをロードして同時実行を行わせるた
め、ソフトウェア制御ブロック構造を初期設定する。こ
れらの機能セットはこの時ロードすることができる。
できず、ドライバ14によって呼出せるだけである。成
るアダプタ・カードについて要求されたディレクトリの
アドレスが引数として機能の方へ転送され、機能は成功
又は失敗を示すコードをAPIIIへ戻す、初期設定機
能は2つのタスクを実行する。まず、アダプタ・カード
上のハードウェアを初期設定してその受諾可能性をテス
トする。次に、アプリケーション13によって実行を要
求された機能セットをロードして同時実行を行わせるた
め、ソフトウェア制御ブロック構造を初期設定する。こ
れらの機能セットはこの時ロードすることができる。
次に第4〜6図を参照しながら、ドライバ14のオペレ
ーションについて説明する。第4図は、ホスト20の電
源が投入されて、IPLが実行される時のドライバ14
のオペレーションを示している。ステップ71での最初
のオペレーションは、I10アドレス・ファイル31に
おける全エントリの読取りである。ステップ72はファ
イル31の終りに達したかどうかを判断し、もし達して
いると、即ち全エントリが読取られてしまうと、終了ス
テップ73に進み、IPLオペレーションが終了する。
ーションについて説明する。第4図は、ホスト20の電
源が投入されて、IPLが実行される時のドライバ14
のオペレーションを示している。ステップ71での最初
のオペレーションは、I10アドレス・ファイル31に
おける全エントリの読取りである。ステップ72はファ
イル31の終りに達したかどうかを判断し、もし達して
いると、即ち全エントリが読取られてしまうと、終了ス
テップ73に進み、IPLオペレーションが終了する。
まだ終りに達していなければステップ74に進んで、I
10アドレス・ファイル31から読取ったエントリをこ
のIPL時に初期設定すべきかどうかを調べる。初期設
定が不要であれば、ステップ71に戻ってエントリの読
取りを続ける。
10アドレス・ファイル31から読取ったエントリをこ
のIPL時に初期設定すべきかどうかを調べる。初期設
定が不要であれば、ステップ71に戻ってエントリの読
取りを続ける。
しかし、初期設定すべきであれば、ステップ75に進ん
で、当該エントリについてサブシステム・ディレクトリ
を読取る。然る後、ステップ76で基本機能をロードし
、ステップ77でそれらを初期設定する。これらの基本
機能は、使用すべきアダプタ・カードに従ってI10ア
ドレス・ファイル31により識別された特定のサブシス
テム中にある。
で、当該エントリについてサブシステム・ディレクトリ
を読取る。然る後、ステップ76で基本機能をロードし
、ステップ77でそれらを初期設定する。これらの基本
機能は、使用すべきアダプタ・カードに従ってI10ア
ドレス・ファイル31により識別された特定のサブシス
テム中にある。
第5図は、オープン機能実行時のドライバ14のオペレ
ーションを示している。最初のステップ81で、I10
アドレス・ファイル31のエントリを読取る1次にステ
ップ82で、このエントリが有効かどうかを調べる。エ
ントリが無効であれば、何らかの誤りが生じたことを示
しており、この時点でエントリの処理を打°切る。エン
トリが有効であれば、ステップ84に進んで、このエン
ドリが初期設定されているかどうかを調べる。既に初期
設定されていると、ホスト20のメモリで基本機能をア
クセスしくステップ86)、それに対してオープン機能
を遂行する(ステップ87)。
ーションを示している。最初のステップ81で、I10
アドレス・ファイル31のエントリを読取る1次にステ
ップ82で、このエントリが有効かどうかを調べる。エ
ントリが無効であれば、何らかの誤りが生じたことを示
しており、この時点でエントリの処理を打°切る。エン
トリが有効であれば、ステップ84に進んで、このエン
ドリが初期設定されているかどうかを調べる。既に初期
設定されていると、ホスト20のメモリで基本機能をア
クセスしくステップ86)、それに対してオープン機能
を遂行する(ステップ87)。
しかし、読取ったエントリがまだ初期設定されていなけ
れば、ステップ84から85に進んで、ディレクトリ4
1又は43を読取る。然る後、ステップ88で基本機能
をロードし、ステップ89でそれを初期設定してオープ
ンする。エントリをオープンしてしまうと、ステップ9
oに進んで、ベクトル・アドレスを個々の機能セット5
3.54に戻す。
れば、ステップ84から85に進んで、ディレクトリ4
1又は43を読取る。然る後、ステップ88で基本機能
をロードし、ステップ89でそれを初期設定してオープ
ンする。エントリをオープンしてしまうと、ステップ9
oに進んで、ベクトル・アドレスを個々の機能セット5
3.54に戻す。
第6図は、所与の機能セット中の機能を呼出す時のドラ
イバ14のオペレーションを示している。
イバ14のオペレーションを示している。
例えば、記録・再生機能を持った音声通信アダプタ・カ
ードの場合、音声データを記録又は再生する時に第6図
のオペレーションが実行される。最初のステップ91は
、機能セット・ベクトルのアドレスを見つける。第3図
の例で説明すると、機能セット5i(53)へのベクト
ルはブロック56に含まれ、機能セットN (54)へ
のベクトルはブロック55に含まれている。これらのブ
ロックは、ブロック51中の対応する結合IDによって
アクセスされる0次のステップ92では、機能よりをベ
クトル(例えば第3図に示した機能セット54のベクト
ル58)へのインデックスとして使用する。続いてステ
ップ94で、エントリ点アドレスをロードする。これに
より、要求された機能を呼出すための実際のコードが指
し示される。最後にステップ94で、ドライバ14はエ
ントリ点アドレスを呼出し、オペレーションに必要なエ
ントリ点パラメータを機能に与える。第3図の例で説明
すると、ドライバ14によって呼出されるのが機能Bで
あった場合には、エントリ点パラメータはブロック6o
中に機能Bに与えられる。これが終るとリターンが行わ
れ、次の機能呼出しを待つ。
ードの場合、音声データを記録又は再生する時に第6図
のオペレーションが実行される。最初のステップ91は
、機能セット・ベクトルのアドレスを見つける。第3図
の例で説明すると、機能セット5i(53)へのベクト
ルはブロック56に含まれ、機能セットN (54)へ
のベクトルはブロック55に含まれている。これらのブ
ロックは、ブロック51中の対応する結合IDによって
アクセスされる0次のステップ92では、機能よりをベ
クトル(例えば第3図に示した機能セット54のベクト
ル58)へのインデックスとして使用する。続いてステ
ップ94で、エントリ点アドレスをロードする。これに
より、要求された機能を呼出すための実際のコードが指
し示される。最後にステップ94で、ドライバ14はエ
ントリ点アドレスを呼出し、オペレーションに必要なエ
ントリ点パラメータを機能に与える。第3図の例で説明
すると、ドライバ14によって呼出されるのが機能Bで
あった場合には、エントリ点パラメータはブロック6o
中に機能Bに与えられる。これが終るとリターンが行わ
れ、次の機能呼出しを待つ。
第7図は、アダプタ・カード18の概略を示したもので
ある。このアダプタ・カード18は、ホスト・プロセッ
サ189に対するコプロセッサとして動く信号プロセッ
サ188を含んでいる。信号プロセッサ188は、テキ
サス・インストルメンツ社のTMS32010の如き市
販の信号プロセッサでよい。信号プロセッサ188はホ
スト・プロセッサ189の完全な制御下にあり、オペレ
ーションに先立って自身のCPUに命令をロードしなけ
ればならない。信号プロセッサ188は命令メモリ12
1及びデータ・メモリ187を使用する。ホスト・プロ
セッサ189もこれらのメモリをアクセスできるが、信
号プロセッサ188と同時にはできない。命令メモリ1
21は、信号プロセッサ188がターンオフ、即ちリセ
ットされている場合にのみ、ホスト・プロセッサ189
からのアクセスが可能である。その時ホスト・プロセッ
サ189は、命令メモリ121からロードした後、デー
タ・メモリ187に切換えることができる。データ・メ
モリ187は、常時、信号プロセッサ188及びホスト
・プロセッサ189により動的に共用される。プロセッ
サ188及び189はいずれもホスト・プロセッサ18
9の制御のもとに互いに割込みをかけることができる。
ある。このアダプタ・カード18は、ホスト・プロセッ
サ189に対するコプロセッサとして動く信号プロセッ
サ188を含んでいる。信号プロセッサ188は、テキ
サス・インストルメンツ社のTMS32010の如き市
販の信号プロセッサでよい。信号プロセッサ188はホ
スト・プロセッサ189の完全な制御下にあり、オペレ
ーションに先立って自身のCPUに命令をロードしなけ
ればならない。信号プロセッサ188は命令メモリ12
1及びデータ・メモリ187を使用する。ホスト・プロ
セッサ189もこれらのメモリをアクセスできるが、信
号プロセッサ188と同時にはできない。命令メモリ1
21は、信号プロセッサ188がターンオフ、即ちリセ
ットされている場合にのみ、ホスト・プロセッサ189
からのアクセスが可能である。その時ホスト・プロセッ
サ189は、命令メモリ121からロードした後、デー
タ・メモリ187に切換えることができる。データ・メ
モリ187は、常時、信号プロセッサ188及びホスト
・プロセッサ189により動的に共用される。プロセッ
サ188及び189はいずれもホスト・プロセッサ18
9の制御のもとに互いに割込みをかけることができる。
この割込みはマスク可能である。
第8図は、アプリケーション13とアダプタ・カード1
8との間でのコマンド及び割込みを流れを機能的に示し
たものである。アプリケーション13は、APIIIを
介してドライバ14、インプリメンテーション・コード
28及び々ハードウェア割込み経路指定部29と対話す
る。14.28及び29はいずれもホスト20にある。
8との間でのコマンド及び割込みを流れを機能的に示し
たものである。アプリケーション13は、APIIIを
介してドライバ14、インプリメンテーション・コード
28及び々ハードウェア割込み経路指定部29と対話す
る。14.28及び29はいずれもホスト20にある。
ホスト20とアダプタ・カード18の境界がハードウェ
ア・インタフェース12である。アプリケーション・コ
マンドの最終目的地は命令メモリ121の区画124で
あり、一方、割込みは区画124から発生する0区画1
24は信号プロセッサ制御プログラムを含んでいる。こ
の制御プログラムは、命令メモリ121の区画112.
113及び114を管理し、それらに含まれる信号処理
コードの同時実行を可能にする。これにより、アダプタ
・カード18の資源が共用される。
ア・インタフェース12である。アプリケーション・コ
マンドの最終目的地は命令メモリ121の区画124で
あり、一方、割込みは区画124から発生する0区画1
24は信号プロセッサ制御プログラムを含んでいる。こ
の制御プログラムは、命令メモリ121の区画112.
113及び114を管理し、それらに含まれる信号処理
コードの同時実行を可能にする。これにより、アダプタ
・カード18の資源が共用される。
第1図は本発明に従う情報処理システムのブロック図。
第2図はホストにおけるファイル構造のブロック図。
第3図は複数のアダプタ・カードでドライバを共用する
ためにホストで用いる制御構造のブロック図。 第4図乃至第6図はドライバのオペレーションを示す流
れ図。 第7図はアダプタ・カードの概略を示すブロック図。 第8図はアプリケーションとアダプタ・カードとの間で
のコマンド及び割込みの流れを示すブロック図。 FIG、 2
ためにホストで用いる制御構造のブロック図。 第4図乃至第6図はドライバのオペレーションを示す流
れ図。 第7図はアダプタ・カードの概略を示すブロック図。 第8図はアプリケーションとアダプタ・カードとの間で
のコマンド及び割込みの流れを示すブロック図。 FIG、 2
Claims (1)
- 【特許請求の範囲】 複数のハードウェア資源及びソフトウェア・サブシステ
ムと、 少なくとも1つのアプリケーション・プログラムと前記
複数のハードウェア資源及びソフトウェア・サブシステ
ムのうちの少なくとも2つとをインタフェースすること
により同時に複数の処理機能を提供する手段と、 を具備することを特徴とする情報処理システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US90191386A | 1986-08-29 | 1986-08-29 | |
US901913 | 1986-08-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6364133A true JPS6364133A (ja) | 1988-03-22 |
Family
ID=25415040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP17504087A Pending JPS6364133A (ja) | 1986-08-29 | 1987-07-15 | 情報処理システム |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP0259659A3 (ja) |
JP (1) | JPS6364133A (ja) |
BR (1) | BR8703892A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08502846A (ja) * | 1993-02-04 | 1996-03-26 | ジェムプリュス カード アンテルナショナル | ポータブルデータキャリヤとの通信方法 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0240753A (ja) * | 1988-07-22 | 1990-02-09 | Internatl Business Mach Corp <Ibm> | 情報処理システムを自動的に構成するためのシステム |
DE69032758T2 (de) * | 1989-12-19 | 1999-06-24 | 3Com Corp., Santa Clara, Calif. | Konfigurationsverfahren für eine Rechnerbus-Adapterkarte ohne Brücken oder Schalter |
US5572675A (en) * | 1991-05-29 | 1996-11-05 | Alcatel N.V. | Application program interface |
DE4117510A1 (de) * | 1991-05-29 | 1992-12-03 | Standard Elektrik Lorenz Ag | Applikationsprogrammschnittstelle |
US6516356B1 (en) | 1997-09-30 | 2003-02-04 | International Business Machines Corporation | Application interface to a media server and a method of implementing the same |
EP1042893A1 (en) * | 1997-12-19 | 2000-10-11 | Vivid Technology Pte. Ltd. | Multiprotocol reconfigurable network adapter |
EP1645966A1 (en) * | 1999-10-29 | 2006-04-12 | Sony Corporation | Storage medium, information processing apparatus, and method |
JP4607489B2 (ja) * | 2004-04-21 | 2011-01-05 | 株式会社エヌ・ティ・ティ・ドコモ | データ処理装置およびデータ処理方法 |
JP4407662B2 (ja) | 2006-04-05 | 2010-02-03 | ソニー株式会社 | 情報処理装置及びアプリケーション調停方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6140643A (ja) * | 1984-07-31 | 1986-02-26 | Hitachi Ltd | システムの資源割当て制御方式 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4293909A (en) * | 1979-06-27 | 1981-10-06 | Burroughs Corporation | Digital system for data transfer using universal input-output microprocessor |
US4562533A (en) * | 1981-12-03 | 1985-12-31 | Ncr Corporation | Data communications system to system adapter |
-
1987
- 1987-07-15 JP JP17504087A patent/JPS6364133A/ja active Pending
- 1987-07-27 BR BR8703892A patent/BR8703892A/pt unknown
- 1987-08-18 EP EP87111967A patent/EP0259659A3/en not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6140643A (ja) * | 1984-07-31 | 1986-02-26 | Hitachi Ltd | システムの資源割当て制御方式 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08502846A (ja) * | 1993-02-04 | 1996-03-26 | ジェムプリュス カード アンテルナショナル | ポータブルデータキャリヤとの通信方法 |
Also Published As
Publication number | Publication date |
---|---|
BR8703892A (pt) | 1988-04-05 |
EP0259659A2 (en) | 1988-03-16 |
EP0259659A3 (en) | 1989-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2557189B2 (ja) | デバイス操作方法 | |
US5701483A (en) | Data acess implementation of device driver interface | |
KR910005997B1 (ko) | 데이타 처리장치에 있어서 오퍼레이팅 시스템 슈퍼바이저 방법 및 장치 | |
US4858108A (en) | Priority control architecture for input/output operation | |
US5347637A (en) | Modular input/output system for supercomputers | |
US5577230A (en) | Apparatus and method for computer processing using an enhanced Harvard architecture utilizing dual memory buses and the arbitration for data/instruction fetch | |
JPH0689253A (ja) | 汎用のオペレーティング・システム・インターフェースを有するデバイス・ドライバを含むデータ処理システム | |
JP4562107B2 (ja) | 複数の仮想ダイレクトメモリアクセスチャネルをサポートするためのダイレクトメモリアクセスエンジン | |
US5146605A (en) | Direct control facility for multiprocessor network | |
US7007126B2 (en) | Accessing a primary bus messaging unit from a secondary bus through a PCI bridge | |
JPH0229849A (ja) | コンピュータ、メモリシステム、情報蓄積装置 | |
JPS61290564A (ja) | 複合デ−タ処理システム | |
JPS6364133A (ja) | 情報処理システム | |
KR100316190B1 (ko) | 로컬 메모리에서 패킷화된 동작 정보의 기억을 통한 입출력 성능을 증가시키기 위한 시스템 | |
US6105101A (en) | 16 bit bios interrupt calls under 32 bit protected mode application | |
JPH11232213A (ja) | 入出力装置におけるデータ転送方式 | |
JP4983133B2 (ja) | 入出力制御装置およびその制御方法、並びにプログラム | |
EP0316251B1 (en) | Direct control facility for multiprocessor network | |
JP3371078B2 (ja) | デバイス間データ転送装置及びその方法 | |
KR100199020B1 (ko) | 고속병렬컴퓨터용 부트 에뮬레이션 방법 | |
JPH04175924A (ja) | 複数os実行方式 | |
JP2000250712A (ja) | ディスクアレイ制御装置 | |
EP0688449A1 (en) | Method and apparatus for memory management | |
JPH03296159A (ja) | Dma装置のメモリアクセス方式 | |
JPH09305536A (ja) | バス転送方法及びそのための情報処理装置 |