JPH0816541A - 周辺装置の処理能力を利用する方法及び装置 - Google Patents
周辺装置の処理能力を利用する方法及び装置Info
- Publication number
- JPH0816541A JPH0816541A JP7071299A JP7129995A JPH0816541A JP H0816541 A JPH0816541 A JP H0816541A JP 7071299 A JP7071299 A JP 7071299A JP 7129995 A JP7129995 A JP 7129995A JP H0816541 A JPH0816541 A JP H0816541A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- command
- interpretable
- subsystem
- image
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3893—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator
- G06F9/3895—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros
- G06F9/3897—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros with adaptable data path
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】 (修正有)
【目的】拡張命令群、アプリケーション、データ及びパ
ラメータを一方のプロセッサから他方のプロセッサにダ
ウンロードできるシステムを提供する。 【構成】4種類の拡張コマンドが、システム・プロセッ
サによって周辺のプロセッサにダウンロードされた解釈
可能なイメージ22を指摘するためにコマンド・テーブ
ル20が構築される周辺のプロセッサに与えられる。解
釈可能なイメージ22は、第1のコマンドによってダウ
ンロードされ、並びにダウンロードされたタスクを実行
するのに必要な実行可能コードとパラメータとを有す
る。第2のコマンドが与えられ、イメージ22を実行
し、並びに付加のデータを有することができる。第3の
コマンドは、以前にダウンロードされた解釈可能なイメ
ージ22を削除するために与えられる。第4のコマンド
は、システム・プロセッサが解釈可能なイメージ22を
他のプロセッサに置くことが可能かどうか、他のプロセ
ッサに照会できる。
ラメータを一方のプロセッサから他方のプロセッサにダ
ウンロードできるシステムを提供する。 【構成】4種類の拡張コマンドが、システム・プロセッ
サによって周辺のプロセッサにダウンロードされた解釈
可能なイメージ22を指摘するためにコマンド・テーブ
ル20が構築される周辺のプロセッサに与えられる。解
釈可能なイメージ22は、第1のコマンドによってダウ
ンロードされ、並びにダウンロードされたタスクを実行
するのに必要な実行可能コードとパラメータとを有す
る。第2のコマンドが与えられ、イメージ22を実行
し、並びに付加のデータを有することができる。第3の
コマンドは、以前にダウンロードされた解釈可能なイメ
ージ22を削除するために与えられる。第4のコマンド
は、システム・プロセッサが解釈可能なイメージ22を
他のプロセッサに置くことが可能かどうか、他のプロセ
ッサに照会できる。
Description
【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、システム制御オペレー
ションを行うのに周辺装置の処理能力を利用するシステ
ム編成に関する。
ションを行うのに周辺装置の処理能力を利用するシステ
ム編成に関する。
【0002】
【従来の技術】複数のマイクロプロセッサがシステム内
で一緒に接続され、そのうちの1つがシステム制御プロ
セッサの役をしてシステム機能を実行することは益々、
一般化している。残りの他のマイクロプロセッサは、特
定の装置に対して関連付けられ、システム制御プロセッ
サの指示でこれらの装置を制御して特定の装置機能を実
行する。このようなシステムの例として、複数の記憶サ
ブシステムが相互接続された記憶方式がある。各サブシ
ステムは、特定の記憶装置からデータの記憶及び検索が
できるようにされたコマンド命令群を各々が持つプロセ
ッサである、自身のマイクロプロセッサの制御下にあ
る。通常、システム自身はコマンド命令群を持つ制御プ
ロセッサを有する。コマンド命令群はシステム内の記憶
装置のプロセッサとの接続、及びホスト・システムと接
続してホスト・システムから要求された記憶オペレーシ
ョンを実行するなどの様々なシステム・タスクを行う。
で一緒に接続され、そのうちの1つがシステム制御プロ
セッサの役をしてシステム機能を実行することは益々、
一般化している。残りの他のマイクロプロセッサは、特
定の装置に対して関連付けられ、システム制御プロセッ
サの指示でこれらの装置を制御して特定の装置機能を実
行する。このようなシステムの例として、複数の記憶サ
ブシステムが相互接続された記憶方式がある。各サブシ
ステムは、特定の記憶装置からデータの記憶及び検索が
できるようにされたコマンド命令群を各々が持つプロセ
ッサである、自身のマイクロプロセッサの制御下にあ
る。通常、システム自身はコマンド命令群を持つ制御プ
ロセッサを有する。コマンド命令群はシステム内の記憶
装置のプロセッサとの接続、及びホスト・システムと接
続してホスト・システムから要求された記憶オペレーシ
ョンを実行するなどの様々なシステム・タスクを行う。
【0003】システム制御プロセッサと、ある周辺装置
のプロセッサとが仕事を行っている間、他の周辺装置の
プロセッサは低い作業負荷であることがわかっている。
従って、システム制御プロセッサによるシステムでの仕
事を、低い作業負荷の1つのサブシステム・プロセッサ
に与えることが望ましい。しかしながら、このようにす
るにはサブシステム・プロセッサは制御プロセッサが有
するコマンド命令群を持つ必要があり、更に制御プロセ
ッサによって実行されるアプリケーションを持たなけれ
ばならない。全てのサブシステム・プロセッサが同じ処
理能力、同じコマンド命令群、及び通常、制御プロセッ
サに常駐する同じアプリケーションを持つシステムにす
るには、高価且つ非能率の解決策である。
のプロセッサとが仕事を行っている間、他の周辺装置の
プロセッサは低い作業負荷であることがわかっている。
従って、システム制御プロセッサによるシステムでの仕
事を、低い作業負荷の1つのサブシステム・プロセッサ
に与えることが望ましい。しかしながら、このようにす
るにはサブシステム・プロセッサは制御プロセッサが有
するコマンド命令群を持つ必要があり、更に制御プロセ
ッサによって実行されるアプリケーションを持たなけれ
ばならない。全てのサブシステム・プロセッサが同じ処
理能力、同じコマンド命令群、及び通常、制御プロセッ
サに常駐する同じアプリケーションを持つシステムにす
るには、高価且つ非能率の解決策である。
【0004】
【発明が解決しようとする課題】本発明の目的は、サブ
システム・プロセッサがアプリケーションを実行するの
に永久に変更の必要がないように、全てのアプリケーシ
ョン・コード、データ、パラメータ及びアプリケーショ
ンの実行に必要なシステム・コマンド命令群の1部と共
に、アプリケーションをシステム制御プロセッサから選
択されたサブシステム・プロセッサにダウンロードでき
るシステムを提供することである。
システム・プロセッサがアプリケーションを実行するの
に永久に変更の必要がないように、全てのアプリケーシ
ョン・コード、データ、パラメータ及びアプリケーショ
ンの実行に必要なシステム・コマンド命令群の1部と共
に、アプリケーションをシステム制御プロセッサから選
択されたサブシステム・プロセッサにダウンロードでき
るシステムを提供することである。
【0005】
【課題を解決するための手段】本発明は、各サブシステ
ムに関連する各プロセッサに対して新しいコマンドを用
意しているので、これらのサブシステム・プロセッサは
システム制御プロセッサのオペレーションを実行でき
る。システム・プロセッサによる新しいコマンドの使用
は、システム・アプリケーションの実行に必要なシステ
ム・コマンド命令群の1部と共に、システム・アプリケ
ーション・コードまたはその1部のダウンロードを可能
にする。適当なデータ及びパラメータと共にこれらのダ
ウンロードする項目が特定のサブシステムに導かれる。
システム・アプリケーションの実行後、システム・コマ
ンド命令群、アプリケーション・コード、データ及びパ
ラメータはサブシステムから取り除かれる。このような
形態なので、アプリケーション特定コード及び拡張命令
群をサブシステム・プロセッサに常駐させる必要はな
い。本発明は、サブシステム・プロセッサ・コードへの
エントリ・ポイントを与えるスモール・コンピュータ・
システム・インターフェイス(SCSI)などの標準の
インターフェイス・アーキテクチャの下で働くので、シ
ステム・コマンド及びアプリケーションは必要なだけサ
ブシステムで限定される。創意に富むシステムは、シス
テム・アプリケーションの1部だけをダウンロードでき
るので、所望する場合、アプリケーションは同時に実行
できる。
ムに関連する各プロセッサに対して新しいコマンドを用
意しているので、これらのサブシステム・プロセッサは
システム制御プロセッサのオペレーションを実行でき
る。システム・プロセッサによる新しいコマンドの使用
は、システム・アプリケーションの実行に必要なシステ
ム・コマンド命令群の1部と共に、システム・アプリケ
ーション・コードまたはその1部のダウンロードを可能
にする。適当なデータ及びパラメータと共にこれらのダ
ウンロードする項目が特定のサブシステムに導かれる。
システム・アプリケーションの実行後、システム・コマ
ンド命令群、アプリケーション・コード、データ及びパ
ラメータはサブシステムから取り除かれる。このような
形態なので、アプリケーション特定コード及び拡張命令
群をサブシステム・プロセッサに常駐させる必要はな
い。本発明は、サブシステム・プロセッサ・コードへの
エントリ・ポイントを与えるスモール・コンピュータ・
システム・インターフェイス(SCSI)などの標準の
インターフェイス・アーキテクチャの下で働くので、シ
ステム・コマンド及びアプリケーションは必要なだけサ
ブシステムで限定される。創意に富むシステムは、シス
テム・アプリケーションの1部だけをダウンロードでき
るので、所望する場合、アプリケーションは同時に実行
できる。
【0006】典型的な実施例において、"レジスタ・メ
タ"・コマンドがサブシステム・プロセッサのコマンド
群に加えられるので、サブシステム・プロセッサは該コ
マンドを認識し実行できる。様々な特定メタ・コマンド
機能(システム・アプリケーションまたはその1部)が
プログラマによってシステム・プロセッサで定義され
る。各特定メタ・コマンド機能は、システム・コマンド
命令群の1部、及び特定システム・アプリケーションの
実行可能コード、及びリターン値或いはデータのための
パラメータ領域及びバッファを有する解釈可能なイメー
ジを有する。システム・コマンド、実行可能コード、パ
ラメータ及びバッファを有する特定の解釈可能なイメー
ジが、レジスタ・メタ・コマンドを使用することによっ
てシステム・プロセッサからサブシステム・プロセッサ
にダウンロードされる。このような方法で解釈可能なイ
メージは、システム・コマンドを有するサブシステム・
コマンド命令群を実際に変更せずにシステム・コマンド
と共にサブシステムに入れられる。解釈可能なイメージ
をダウンロードするためにレジスタ・メタ・コマンドが
与えられると、サブシステム・プロセッサは整数ハンド
ルをシステム・プロセッサに戻し、サブシステム・プロ
セッサに加えられる特定の能力を確認する。解釈可能な
イメージの実行を所望の場合、"実行メタ"・コマンドが
ハンドルを利用してシステム・プロセッサによってサブ
システム・プロセッサに対して与えられる。その場合、
付加のデータが機能の実行に使用されるためにダウンロ
ードされる。
タ"・コマンドがサブシステム・プロセッサのコマンド
群に加えられるので、サブシステム・プロセッサは該コ
マンドを認識し実行できる。様々な特定メタ・コマンド
機能(システム・アプリケーションまたはその1部)が
プログラマによってシステム・プロセッサで定義され
る。各特定メタ・コマンド機能は、システム・コマンド
命令群の1部、及び特定システム・アプリケーションの
実行可能コード、及びリターン値或いはデータのための
パラメータ領域及びバッファを有する解釈可能なイメー
ジを有する。システム・コマンド、実行可能コード、パ
ラメータ及びバッファを有する特定の解釈可能なイメー
ジが、レジスタ・メタ・コマンドを使用することによっ
てシステム・プロセッサからサブシステム・プロセッサ
にダウンロードされる。このような方法で解釈可能なイ
メージは、システム・コマンドを有するサブシステム・
コマンド命令群を実際に変更せずにシステム・コマンド
と共にサブシステムに入れられる。解釈可能なイメージ
をダウンロードするためにレジスタ・メタ・コマンドが
与えられると、サブシステム・プロセッサは整数ハンド
ルをシステム・プロセッサに戻し、サブシステム・プロ
セッサに加えられる特定の能力を確認する。解釈可能な
イメージの実行を所望の場合、"実行メタ"・コマンドが
ハンドルを利用してシステム・プロセッサによってサブ
システム・プロセッサに対して与えられる。その場合、
付加のデータが機能の実行に使用されるためにダウンロ
ードされる。
【0007】レジスタ・メタ・コマンド及び実行メタ・
コマンドに加えて、更に2つのメタ・コマンド機能がサ
ブシステム・プロセッサ命令群に加えられることが望ま
しい。これらは"デレジスタ・メタ"・コマンドと"照会
メタ"・コマンドである。デレジスタ・メタ機能により
システム・プロセッサは、サブシステムから特定メタ・
コマンドを取り消すことができる。照会メタ・コマンド
によりシステム・プロセッサは、どの特定メタ・コマン
ドが特定サブシステムに現在ダウンロードされたかの情
報を得ることができる。
コマンドに加えて、更に2つのメタ・コマンド機能がサ
ブシステム・プロセッサ命令群に加えられることが望ま
しい。これらは"デレジスタ・メタ"・コマンドと"照会
メタ"・コマンドである。デレジスタ・メタ機能により
システム・プロセッサは、サブシステムから特定メタ・
コマンドを取り消すことができる。照会メタ・コマンド
によりシステム・プロセッサは、どの特定メタ・コマン
ドが特定サブシステムに現在ダウンロードされたかの情
報を得ることができる。
【0008】
【実施例】図面を参照する場合、同じ参照番号は各図面
において、同一の部品及び構造を表す。
において、同一の部品及び構造を表す。
【0009】本発明は、ライブラリ制御プロセッサが様
々なシステム・オペレーションを行う光学式ライブラリ
に関して説明されているが、しかしながら、複数の光学
駆動装置のそれぞれはサブシステム・マイクロプロセッ
サを有し、各駆動装置の実行を制御する。本発明の目的
は、ライブラリ・プロセッサによって通常、実行される
システム機能をサブシステム・プロセッサに移行するこ
とであり、これによってライブラリ・プロセッサが効率
的に実行でき、且つライブラリ全体が効率的に実行でき
る。本発明は、ドライブ・プロセッサで4つの新しいコ
マンドが用意された好ましい実施例で説明されるが、特
定システム・アプリケーションを実行するためのドライ
ブ・プロセッサの変更は必要ない。代わりにシステム・
アプリケーションは、システム・アプリケーションの実
行に必要なシステム・コマンド、コード、データ及びパ
ラメータと共に所望の時間にシステム制御プロセッサか
らドライブ・プロセッサへダウンロードされる。システ
ム・アプリケーションの実行時、付加のデータがダウン
ロードされる。
々なシステム・オペレーションを行う光学式ライブラリ
に関して説明されているが、しかしながら、複数の光学
駆動装置のそれぞれはサブシステム・マイクロプロセッ
サを有し、各駆動装置の実行を制御する。本発明の目的
は、ライブラリ・プロセッサによって通常、実行される
システム機能をサブシステム・プロセッサに移行するこ
とであり、これによってライブラリ・プロセッサが効率
的に実行でき、且つライブラリ全体が効率的に実行でき
る。本発明は、ドライブ・プロセッサで4つの新しいコ
マンドが用意された好ましい実施例で説明されるが、特
定システム・アプリケーションを実行するためのドライ
ブ・プロセッサの変更は必要ない。代わりにシステム・
アプリケーションは、システム・アプリケーションの実
行に必要なシステム・コマンド、コード、データ及びパ
ラメータと共に所望の時間にシステム制御プロセッサか
らドライブ・プロセッサへダウンロードされる。システ
ム・アプリケーションの実行時、付加のデータがダウン
ロードされる。
【0010】図1は、ライブラリ制御プロセッサ10が
バス11を介して複数の記憶サブシステム・プロセッサ
12、13、14に接続されている記憶ライブラリの説
明図である。記憶サブシステム・プロセッサ12、1
3、14のコマンド命令群は、サブシステム内のテー
プ、ディスク或いは他の媒体へのデータの書込み、媒体
からのデータの読取り、並びに消去などの他の命令の通
常のコマンドを有する。ライブラリ・コントローラ10
のコマンド命令群は、ライブラリ制御プロセッサ10が
加算、減算、転送などの何れの機能を実行できるよう
に、多数の他のコマンドを有する。従って、ライブラリ
・コントローラのシステム・メモリ10'にあるアプリ
ケーションは、記憶サブシステムのマイクロプロセッサ
に存在しない多数のコマンドを使用するコードが含まれ
る。ライブラリ・プロセッサに存在する全てのコマンド
を含む記憶サブシステム・プロセッサのコマンド群を変
えずに、ライブラリ制御プロセッサ10のコマンド群を
使用して記憶サブシステム・プロセッサ12、13、1
4がアプリケーションを実行できるように、本発明の典
型的実施例では、僅か4つの新しいコマンドをサブシス
テム・プロセッサのコマンド群に加える。これらの4つ
のコマンドは、各記憶サブシステム・プロセッサのコマ
ンド群に加えられるのが好ましく、個々の記憶サブシス
テム・プロセッサの作業負荷が低い場合、何れの記憶サ
ブシステム・プロセッサがシステム・オペレーションを
実行するために選択される。このような方法で、システ
ム・アプリケーションまたはその1部を、システム・プ
ロセッサ10の要求により実行のためにサブシステム・
メモリ12'、13'或いは14'に移すことができる。
システム・アプリケーションの実行は、実行の全てを選
ばれたサブシステムで、或いはシステム・プロセッサと
同時に実行できる。
バス11を介して複数の記憶サブシステム・プロセッサ
12、13、14に接続されている記憶ライブラリの説
明図である。記憶サブシステム・プロセッサ12、1
3、14のコマンド命令群は、サブシステム内のテー
プ、ディスク或いは他の媒体へのデータの書込み、媒体
からのデータの読取り、並びに消去などの他の命令の通
常のコマンドを有する。ライブラリ・コントローラ10
のコマンド命令群は、ライブラリ制御プロセッサ10が
加算、減算、転送などの何れの機能を実行できるよう
に、多数の他のコマンドを有する。従って、ライブラリ
・コントローラのシステム・メモリ10'にあるアプリ
ケーションは、記憶サブシステムのマイクロプロセッサ
に存在しない多数のコマンドを使用するコードが含まれ
る。ライブラリ・プロセッサに存在する全てのコマンド
を含む記憶サブシステム・プロセッサのコマンド群を変
えずに、ライブラリ制御プロセッサ10のコマンド群を
使用して記憶サブシステム・プロセッサ12、13、1
4がアプリケーションを実行できるように、本発明の典
型的実施例では、僅か4つの新しいコマンドをサブシス
テム・プロセッサのコマンド群に加える。これらの4つ
のコマンドは、各記憶サブシステム・プロセッサのコマ
ンド群に加えられるのが好ましく、個々の記憶サブシス
テム・プロセッサの作業負荷が低い場合、何れの記憶サ
ブシステム・プロセッサがシステム・オペレーションを
実行するために選択される。このような方法で、システ
ム・アプリケーションまたはその1部を、システム・プ
ロセッサ10の要求により実行のためにサブシステム・
メモリ12'、13'或いは14'に移すことができる。
システム・アプリケーションの実行は、実行の全てを選
ばれたサブシステムで、或いはシステム・プロセッサと
同時に実行できる。
【0011】第1の新しいコマンドはレジスタ・メタ・
コマンドである。レジスタ・メタ・コマンドはライブラ
リ・コントローラに対して、プログラマによって作成さ
れたアプリケーションの特定メタ・コマンドをライブラ
リ・コントローラから記憶サブシステムにダウン・ロー
ドさせる。第2の新しいコマンドは、実行メタ・コマン
ドである。実行メタ・コマンドは特定システム・アプリ
ケーションを実行させるように記憶サブシステム・プロ
セッサに指示するレジスタ・メタ・コマンドによってダ
ウンロードされる実行可能コードは、特定のマイクロプ
ロセッサのアセンブリ或いは機械コードである。このよ
うな場合、レジスタ・コマンドは、標準のリンカ/ロー
ダのように機能し、実行コマンドはダウンロードされる
コードを直接呼出す。ここで述べる好ましい実施例で
は、総称アセンブリ言語が定義され、サブシステムはイ
メージを解読する。
コマンドである。レジスタ・メタ・コマンドはライブラ
リ・コントローラに対して、プログラマによって作成さ
れたアプリケーションの特定メタ・コマンドをライブラ
リ・コントローラから記憶サブシステムにダウン・ロー
ドさせる。第2の新しいコマンドは、実行メタ・コマン
ドである。実行メタ・コマンドは特定システム・アプリ
ケーションを実行させるように記憶サブシステム・プロ
セッサに指示するレジスタ・メタ・コマンドによってダ
ウンロードされる実行可能コードは、特定のマイクロプ
ロセッサのアセンブリ或いは機械コードである。このよ
うな場合、レジスタ・コマンドは、標準のリンカ/ロー
ダのように機能し、実行コマンドはダウンロードされる
コードを直接呼出す。ここで述べる好ましい実施例で
は、総称アセンブリ言語が定義され、サブシステムはイ
メージを解読する。
【0012】メタ・コマンドを記憶サブシステムに加え
るために実施例で使用された技術は、SCSIなどの標
準ハードウェア・インターフェイスによって与えられる
エントリ・ポイントを利用する。説明の便宜上、単一の
総称コマンド"Device control"が定義され使用される。
この総称コマンドは、何れのハードウェア・インターフ
ェイスに存在する典型的なコマンドを表し、装置が特別
なコマンドを標準インターフェイスに加えることができ
る。本発明は、何れの特定のハードウェア・インターフ
ェイスにとって特別なものではない。既存の標準のエン
トリ・ポイント同様な総称単一エントリ・ポイントを使
用することによって、本発明はどの標準タイプにも説明
できる。装置制御機能は次のように定義される。 Device_Ctl(func、parm_list_addr、sz_parm_list、tr
ans_buffer_addr、sz_trans_buffer) これらについて説明する。 func どのドライブがコマンドを実行するかをさす整数値。
るために実施例で使用された技術は、SCSIなどの標
準ハードウェア・インターフェイスによって与えられる
エントリ・ポイントを利用する。説明の便宜上、単一の
総称コマンド"Device control"が定義され使用される。
この総称コマンドは、何れのハードウェア・インターフ
ェイスに存在する典型的なコマンドを表し、装置が特別
なコマンドを標準インターフェイスに加えることができ
る。本発明は、何れの特定のハードウェア・インターフ
ェイスにとって特別なものではない。既存の標準のエン
トリ・ポイント同様な総称単一エントリ・ポイントを使
用することによって、本発明はどの標準タイプにも説明
できる。装置制御機能は次のように定義される。 Device_Ctl(func、parm_list_addr、sz_parm_list、tr
ans_buffer_addr、sz_trans_buffer) これらについて説明する。 func どのドライブがコマンドを実行するかをさす整数値。
【0013】parm_list_addr 実行されるコマンドに対するパラメータを有するバッフ
ァのアドレス。これらのパラメータは、funcによって指
示された機能によって変わる。 sz_parm_list parm_list_addrによって指摘されたバッファの大きさ。 trans_buffer_addr 呼出しに応じてデータを伝送するバッファのアドレス。 sz_trans_buffer trans_bufrer_addrによって指摘されたバッファの大き
さ。
ァのアドレス。これらのパラメータは、funcによって指
示された機能によって変わる。 sz_parm_list parm_list_addrによって指摘されたバッファの大きさ。 trans_buffer_addr 呼出しに応じてデータを伝送するバッファのアドレス。 sz_trans_buffer trans_bufrer_addrによって指摘されたバッファの大き
さ。
【0014】典型的実施例ではエントリ・ポイントを通
して呼出される4個の拡張コマンドがある。これらは、
レジスタ・メタ機能、実行メタ機能、デレジスタ・メタ
機能、照会メタ機能である。
して呼出される4個の拡張コマンドがある。これらは、
レジスタ・メタ機能、実行メタ機能、デレジスタ・メタ
機能、照会メタ機能である。
【0015】レジスタ・メタ機能の解説 このコマンドによりシステム制御プロセッサはメタ・コ
マンドをダウンロードできる。Device_Ctlを呼出すこと
によって、入出力が指定される。 入力 func=Register_Mである。Register_Mは、メタ・コマン
ドとして転送バッファをロードするための要求の識別が
一致した整数値である。trans_buffer_addrバッファ
は、ダウンロードされるメタ・コマンドの解釈可能なイ
メージ(後述説明)を有する。parm_list_addrバッファ
は、以下を有する。 a)ID メタ・コマンド識別子。 b)num_p 全てのパラメータが同じ大きさであるとの
仮定でのメタ・コマンドへのパラメータ数。 c)ii_size 解釈可能なイメージの大きさ。 d)ip_start メタ・コマンドの解釈が始まる、解釈可
能なイメージの開始に対する命令開始点。 出力 構築されたメタ・コマンドに対するハンドルは、trans_
buffer_addrバッファへ戻される。
マンドをダウンロードできる。Device_Ctlを呼出すこと
によって、入出力が指定される。 入力 func=Register_Mである。Register_Mは、メタ・コマン
ドとして転送バッファをロードするための要求の識別が
一致した整数値である。trans_buffer_addrバッファ
は、ダウンロードされるメタ・コマンドの解釈可能なイ
メージ(後述説明)を有する。parm_list_addrバッファ
は、以下を有する。 a)ID メタ・コマンド識別子。 b)num_p 全てのパラメータが同じ大きさであるとの
仮定でのメタ・コマンドへのパラメータ数。 c)ii_size 解釈可能なイメージの大きさ。 d)ip_start メタ・コマンドの解釈が始まる、解釈可
能なイメージの開始に対する命令開始点。 出力 構築されたメタ・コマンドに対するハンドルは、trans_
buffer_addrバッファへ戻される。
【0016】実行メタ機能の解説 入力 func=Execute_Mである。Execute_Mは、メタ機能が実行
されることを識別する、識別要求の一致した整数値であ
る。Parm_list_addrは、メタ・コマンドが登録されたと
きに戻されるハンドルを有するバッファのアドレスであ
る。このハンドルは、どのメタ・コマンドが実行される
かを指定する。parm_list_addrバッファの内容の残り
は、メタ・コマンドに対するパラメータとして解釈可能
なイメージに"渡される"。同様にtrans_buffer_addrバ
ッファは、実行中にメタ・コマンドによってアクセスさ
れる入力データを有するが、しかし、これはメタ・コマ
ンドの内容に依存する。 出力 メタ・コマンド自身によって指定されない限り、メタ・
コマンド出力はtrans_buffer_addrバッファに置かれ
る。
されることを識別する、識別要求の一致した整数値であ
る。Parm_list_addrは、メタ・コマンドが登録されたと
きに戻されるハンドルを有するバッファのアドレスであ
る。このハンドルは、どのメタ・コマンドが実行される
かを指定する。parm_list_addrバッファの内容の残り
は、メタ・コマンドに対するパラメータとして解釈可能
なイメージに"渡される"。同様にtrans_buffer_addrバ
ッファは、実行中にメタ・コマンドによってアクセスさ
れる入力データを有するが、しかし、これはメタ・コマ
ンドの内容に依存する。 出力 メタ・コマンド自身によって指定されない限り、メタ・
コマンド出力はtrans_buffer_addrバッファに置かれ
る。
【0017】デレジスタ・メタ機能の解説 デレジスタ・メタ機能によりシステム制御プロセッサは
メタ・コマンドを解除できる。Device_Ctlを呼出すこと
によって、入出力が指定される。 入力 Func=Deregister_M。Parm_listバッファは解除される
メタ・コマンドのハンドルを有する。 出力 無し。
メタ・コマンドを解除できる。Device_Ctlを呼出すこと
によって、入出力が指定される。 入力 Func=Deregister_M。Parm_listバッファは解除される
メタ・コマンドのハンドルを有する。 出力 無し。
【0018】照会メタ機能の解説 照会メタ機能によりシステム制御プロセッサは、現在ダ
ウンロードされているメタ・コマンドに関する情報を得
ることができる。Device_Ctlを呼出すことによって、入
出力が指定される。 入力 func=Query_M。他のパラメータは無視される。 出力 現在登録されているコマンドの情報はtrans_buffer_add
rバッファに戻される。
ウンロードされているメタ・コマンドに関する情報を得
ることができる。Device_Ctlを呼出すことによって、入
出力が指定される。 入力 func=Query_M。他のパラメータは無視される。 出力 現在登録されているコマンドの情報はtrans_buffer_add
rバッファに戻される。
【0019】アプリケーションの特定メタ・コマンド
は、総称的アセンブリ言語、或いは他の予め定義された
言語にコード化される。これらの言語は周辺装置のプロ
セッサに導入されたマイクロコードによって解釈可能で
ある。特定メタ・コマンド機能を実行するには、この機
能の解釈可能なイメージがプログラマによって構築さ
れ、システム制御プロセッサに常駐される。特定メタ・
コマンド機能を呼出す前に、解釈可能なイメージがレジ
スタ・メタ機能を使用して周辺装置のマイクロプロセッ
サにダウンロードされる。周辺装置のマイクロプロセッ
サのマイクロコードは解釈可能なイメージを解読でき、
システム・プロセッサが実行メタ・コマンドを与える
と、システム・プロセッサの要求によって実行される。
このような方法でサブシステム命令コードは、解釈によ
って実行される機能を認識できなくとも解釈可能なイメ
ージに従って実行される。解釈可能なイメージは、関係
するパラメータ領域及びバッファ・スペースと共にアプ
リケーションの特定メタ機能のコードを有する。
は、総称的アセンブリ言語、或いは他の予め定義された
言語にコード化される。これらの言語は周辺装置のプロ
セッサに導入されたマイクロコードによって解釈可能で
ある。特定メタ・コマンド機能を実行するには、この機
能の解釈可能なイメージがプログラマによって構築さ
れ、システム制御プロセッサに常駐される。特定メタ・
コマンド機能を呼出す前に、解釈可能なイメージがレジ
スタ・メタ機能を使用して周辺装置のマイクロプロセッ
サにダウンロードされる。周辺装置のマイクロプロセッ
サのマイクロコードは解釈可能なイメージを解読でき、
システム・プロセッサが実行メタ・コマンドを与える
と、システム・プロセッサの要求によって実行される。
このような方法でサブシステム命令コードは、解釈によ
って実行される機能を認識できなくとも解釈可能なイメ
ージに従って実行される。解釈可能なイメージは、関係
するパラメータ領域及びバッファ・スペースと共にアプ
リケーションの特定メタ機能のコードを有する。
【0020】図2は、装置制御コマンドによって記憶サ
ブシステム内で構築されたメタ・コマンド・テーブル2
0を示す。特定の解釈可能なイメージがレジスタ・メタ
・コマンドの実行に従ってダウンロードされると、解釈
可能なイメージのアドレスは、メタ・コマンド・テーブ
ルのポインタ21として含まれる。実行メタ・コマンド
が特定の機能(ハンドル19)に受入れられると、ポイ
ンタ21は、解釈可能なイメージ22のアドレス指定を
行い、次にマイクロプロセッサによって実行される。各
アプリケーションの特定メタ機能の単一の解釈可能なイ
メージの使用によって、対応するバイトのアドレス指定
は、図2で示されるバッファ・スペースのパラメータ及
びアクセス変数を得るのに使用される。これによりメタ
・コードの解釈が簡単となる。メタ・コード言語の定義
により、読取り論理ブロック或いは書込み論理ブロック
などのサブシステム内にあるコマンドを呼出すことがで
きる。従ってメタ・コードの解釈処理で、サブシステム
内にあるコマンドへの標準呼出しが行われ、終了後、そ
の結果はメタ・コード・バッファに戻される。解釈可能
なイメージ内のダウンロードされたコマンドは、サブシ
ステムの命令群内にあるコマンドを呼出すことができる
ので、これらはメタ・コマンドと呼ばれる。
ブシステム内で構築されたメタ・コマンド・テーブル2
0を示す。特定の解釈可能なイメージがレジスタ・メタ
・コマンドの実行に従ってダウンロードされると、解釈
可能なイメージのアドレスは、メタ・コマンド・テーブ
ルのポインタ21として含まれる。実行メタ・コマンド
が特定の機能(ハンドル19)に受入れられると、ポイ
ンタ21は、解釈可能なイメージ22のアドレス指定を
行い、次にマイクロプロセッサによって実行される。各
アプリケーションの特定メタ機能の単一の解釈可能なイ
メージの使用によって、対応するバイトのアドレス指定
は、図2で示されるバッファ・スペースのパラメータ及
びアクセス変数を得るのに使用される。これによりメタ
・コードの解釈が簡単となる。メタ・コード言語の定義
により、読取り論理ブロック或いは書込み論理ブロック
などのサブシステム内にあるコマンドを呼出すことがで
きる。従ってメタ・コードの解釈処理で、サブシステム
内にあるコマンドへの標準呼出しが行われ、終了後、そ
の結果はメタ・コード・バッファに戻される。解釈可能
なイメージ内のダウンロードされたコマンドは、サブシ
ステムの命令群内にあるコマンドを呼出すことができる
ので、これらはメタ・コマンドと呼ばれる。
【0021】図3は、4つの拡張コマンドの何れかを実
行するための装置制御コマンドの使用を示す。ステップ
100に示すように装置制御コマンドが与えられ、及び
レジスタ・メタ・コマンドが実行されると、分岐が発生
し、手順は図4に続く。実行メタ・コマンドが実行され
る場合、ステップ101で分岐が発生し、残りの処理の
ために手順は図5へと続く。デレジスタ・メタ・コマン
ドが実行される場合、ステップ102で分岐が発生し、
残りの処理のために手順は図6へと続く。最後に、参照
メタ・コマンドが実行される場合、ステップ103で分
岐が発生し、残りの処理のために手順は図7へと続く。
何れの上記分岐が発生しない場合、ステップ104でメ
タ以外に関する機能のチェックが行われる。
行するための装置制御コマンドの使用を示す。ステップ
100に示すように装置制御コマンドが与えられ、及び
レジスタ・メタ・コマンドが実行されると、分岐が発生
し、手順は図4に続く。実行メタ・コマンドが実行され
る場合、ステップ101で分岐が発生し、残りの処理の
ために手順は図5へと続く。デレジスタ・メタ・コマン
ドが実行される場合、ステップ102で分岐が発生し、
残りの処理のために手順は図6へと続く。最後に、参照
メタ・コマンドが実行される場合、ステップ103で分
岐が発生し、残りの処理のために手順は図7へと続く。
何れの上記分岐が発生しない場合、ステップ104でメ
タ以外に関する機能のチェックが行われる。
【0022】図4は、レジスタ・メタ・コマンド機能の
実行で行われるステップを示す。基本的に図4で行われ
るオペレーションは、登録されている特定メタ・コマン
ドのメタ・コマンド・テーブルへのエントリの構築であ
る。ステップ200においてパラメータが装置制御コマ
ンドのパラメータ・リスト・アドレス・フィールドから
抜き出され、図2の23で示されるメタ・コマンド・テ
ーブルのパラメータ情報フィールドに置かれる。前述の
ようにパラメータ・リスト・アドレス・バッファのデー
タ・フィールドの1つは、メタ・コマンドに対するパラ
メータ数である。この情報により、及び全てのパラメー
タが同じ大きさであると仮定して、特定メタ・コマンド
を実行させるのに必要なパラメータにスペースが割当て
られる。ステップ201で、スペースの割当てが行われ
る。ステップ202で、解釈可能なイメージを有するた
めのスペースの割当てが行われる。ステップ203で、
解釈可能なイメージが転送バッファから、割当てられた
ばかりのメモリにコピーされる。メタ・コマンド・テー
ブルはステップ204で初期化され、メタ・コマンド・
テーブル・エントリへの整数ハンドルは、システム制御
プロセッサへ戻されるためにステップ205で転送バッ
ファに置かれる。ステップ206でシステムへの復帰が
行われる。図4で示される形態でメタ・コマンドを構築
することにより、解釈可能なイメージの実行に必要なの
は、メタ・コマンドに必要な全データと共に、解釈可能
なイメージを有するサブシステム装置に対して該当する
特定メタ・コマンド機能のハンドルを送り出すことにあ
る。このように図5においてメタ・コマンド機能が実行
される場合、ハンドルはステップ300で装置制御コマ
ンドのパラメータ・リスト・アドレス・バッファから抜
き出され、ホストからサブシステムに送られる。ステッ
プ301でハンドルは、メタ・コマンド・テーブル・エ
ントリから特定のコマンドの情報をアクセスするのに使
用される。ステップ302で、パラメータ情報と解釈可
能なイメージのポインタは、メタ・コマンドに対するパ
ラメータをパラメータ・リスト・アドレス・バッファか
ら解釈可能なイメージ内のパラメータ領域にコピーする
ために使用される。ステップ303で、メタ・コマンド
・テーブル20にある、図2のメタ命令ポインタ24
は、装置制御コマンド・パラメータ・フィールドによっ
て与えられた開始メタ命令ポインタ25に設定される。
ステップ304で解釈可能なイメージは、キー・ワード
の"復帰"に遭遇するまで解読される。キー・ワードへの
遭遇時点で、ステップ305においてシステム制御プロ
セッサへの復帰が行われる。ステップ304では転送バ
ッファからのデータの読取り、及び転送バッファへの結
果の書込みが行われることに注目されたい。
実行で行われるステップを示す。基本的に図4で行われ
るオペレーションは、登録されている特定メタ・コマン
ドのメタ・コマンド・テーブルへのエントリの構築であ
る。ステップ200においてパラメータが装置制御コマ
ンドのパラメータ・リスト・アドレス・フィールドから
抜き出され、図2の23で示されるメタ・コマンド・テ
ーブルのパラメータ情報フィールドに置かれる。前述の
ようにパラメータ・リスト・アドレス・バッファのデー
タ・フィールドの1つは、メタ・コマンドに対するパラ
メータ数である。この情報により、及び全てのパラメー
タが同じ大きさであると仮定して、特定メタ・コマンド
を実行させるのに必要なパラメータにスペースが割当て
られる。ステップ201で、スペースの割当てが行われ
る。ステップ202で、解釈可能なイメージを有するた
めのスペースの割当てが行われる。ステップ203で、
解釈可能なイメージが転送バッファから、割当てられた
ばかりのメモリにコピーされる。メタ・コマンド・テー
ブルはステップ204で初期化され、メタ・コマンド・
テーブル・エントリへの整数ハンドルは、システム制御
プロセッサへ戻されるためにステップ205で転送バッ
ファに置かれる。ステップ206でシステムへの復帰が
行われる。図4で示される形態でメタ・コマンドを構築
することにより、解釈可能なイメージの実行に必要なの
は、メタ・コマンドに必要な全データと共に、解釈可能
なイメージを有するサブシステム装置に対して該当する
特定メタ・コマンド機能のハンドルを送り出すことにあ
る。このように図5においてメタ・コマンド機能が実行
される場合、ハンドルはステップ300で装置制御コマ
ンドのパラメータ・リスト・アドレス・バッファから抜
き出され、ホストからサブシステムに送られる。ステッ
プ301でハンドルは、メタ・コマンド・テーブル・エ
ントリから特定のコマンドの情報をアクセスするのに使
用される。ステップ302で、パラメータ情報と解釈可
能なイメージのポインタは、メタ・コマンドに対するパ
ラメータをパラメータ・リスト・アドレス・バッファか
ら解釈可能なイメージ内のパラメータ領域にコピーする
ために使用される。ステップ303で、メタ・コマンド
・テーブル20にある、図2のメタ命令ポインタ24
は、装置制御コマンド・パラメータ・フィールドによっ
て与えられた開始メタ命令ポインタ25に設定される。
ステップ304で解釈可能なイメージは、キー・ワード
の"復帰"に遭遇するまで解読される。キー・ワードへの
遭遇時点で、ステップ305においてシステム制御プロ
セッサへの復帰が行われる。ステップ304では転送バ
ッファからのデータの読取り、及び転送バッファへの結
果の書込みが行われることに注目されたい。
【0023】図6はデレジスタ・メタ・コマンドの実行
を示し、ステップ400において該コマンドのハンドル
が、パラメータ・リスト・アドレス・バッファから抜き
出される。指定されたメタ・コマンド・エントリはステ
ップ401でアクセスされ、ステップ402で解釈可能
なイメージを有するメモリが解放される。ステップ40
3で、メタ・コマンド・テーブル・エントリが再割当て
され、ステップ404でシステム制御プロセッサに復帰
する。
を示し、ステップ400において該コマンドのハンドル
が、パラメータ・リスト・アドレス・バッファから抜き
出される。指定されたメタ・コマンド・エントリはステ
ップ401でアクセスされ、ステップ402で解釈可能
なイメージを有するメモリが解放される。ステップ40
3で、メタ・コマンド・テーブル・エントリが再割当て
され、ステップ404でシステム制御プロセッサに復帰
する。
【0024】参照メタ・コマンド機能を図7に示す。ス
テップ500で、ローカル一時バッファが割当てられ
る。ステップ501と502で、アドレス・パラメー
タ"一時MCT"がメタ・コマンド・テーブルの第1のエ
ントリを指摘するポインタとして設定され、更にローカ
ル一時バッファのアドレスがステップ500で割当てら
れたローカル・バッファへのポインタとして設定され
る。ステップ503でステップ504への分岐が行わ
れ、一時MCTのアドレスでの第1のMCTエントリを
ローカル一時バッファにコピーする。ステップ505
で、ローカル一時パラメータは、テーブルの第1のメタ
・コマンドのメタ・コマンド・テーブル・エントリの大
きさだけ増加させられる。ステップ506で、パラメー
タ"一時MCT"は、テーブルの次のエントリのポイント
まで増加させられる。ステップ507でステップ503
への分岐が行われ、一時MCTパラメータがテーブルの
終わりまで示さない場合、手順を繰返す。テーブルの終
わりまで達すると、ステップ507からステップ508
への分岐が行われ、ローカル・バッファの内容を転送バ
ッファにコピーする。ステップ509で、ローカル・バ
ッファ・スペースは再割当てされ、ステップ510でシ
ステム制御プロセッサへ復帰する。
テップ500で、ローカル一時バッファが割当てられ
る。ステップ501と502で、アドレス・パラメー
タ"一時MCT"がメタ・コマンド・テーブルの第1のエ
ントリを指摘するポインタとして設定され、更にローカ
ル一時バッファのアドレスがステップ500で割当てら
れたローカル・バッファへのポインタとして設定され
る。ステップ503でステップ504への分岐が行わ
れ、一時MCTのアドレスでの第1のMCTエントリを
ローカル一時バッファにコピーする。ステップ505
で、ローカル一時パラメータは、テーブルの第1のメタ
・コマンドのメタ・コマンド・テーブル・エントリの大
きさだけ増加させられる。ステップ506で、パラメー
タ"一時MCT"は、テーブルの次のエントリのポイント
まで増加させられる。ステップ507でステップ503
への分岐が行われ、一時MCTパラメータがテーブルの
終わりまで示さない場合、手順を繰返す。テーブルの終
わりまで達すると、ステップ507からステップ508
への分岐が行われ、ローカル・バッファの内容を転送バ
ッファにコピーする。ステップ509で、ローカル・バ
ッファ・スペースは再割当てされ、ステップ510でシ
ステム制御プロセッサへ復帰する。
【0025】本発明を説明するために、メタ・コマンド
のファインド最終ノードが使用される。このコマンド
は、システム・プロセッサに位置するファイル・システ
ムの実際の機能であり、追記型の読取り専用(WOR
M)光学式駆動装置で実行されるように設計されてい
る。本発明の方法を使用しない場合、ファイル・システ
ムはライブラリ・システム・プロセッサで実行される
が、最終ノードが見つかるまで周辺装置に対して連続読
取りコマンドが出される。ファイル・システムの機能
は、光ディスクに割付けられた連鎖の最終ノードに位置
付けられる。この連鎖は単純にリンクされたリストであ
って、各ノードは連続する32個のデータのセクタであ
り、次のノードのポインタは前のノードの最後のセクタ
に位置する。これはWORM構造であるので、ファイル
・システムは第1のノードの位置を有し、且つ最後のノ
ードを見つけるために絶えずノードを読取らなければな
らない。最後のノードのブランク・セクタは、現在の最
終である連鎖マーカとして働く。
のファインド最終ノードが使用される。このコマンド
は、システム・プロセッサに位置するファイル・システ
ムの実際の機能であり、追記型の読取り専用(WOR
M)光学式駆動装置で実行されるように設計されてい
る。本発明の方法を使用しない場合、ファイル・システ
ムはライブラリ・システム・プロセッサで実行される
が、最終ノードが見つかるまで周辺装置に対して連続読
取りコマンドが出される。ファイル・システムの機能
は、光ディスクに割付けられた連鎖の最終ノードに位置
付けられる。この連鎖は単純にリンクされたリストであ
って、各ノードは連続する32個のデータのセクタであ
り、次のノードのポインタは前のノードの最後のセクタ
に位置する。これはWORM構造であるので、ファイル
・システムは第1のノードの位置を有し、且つ最後のノ
ードを見つけるために絶えずノードを読取らなければな
らない。最後のノードのブランク・セクタは、現在の最
終である連鎖マーカとして働く。
【0026】ファインド最終ノード機能は、入力として
開始アドレスを得て、最終ノードの内容を有するバッフ
ァを返す。論理は、次に述べる通りである。 a)disk_addressを開始アドレスに設定する。 b)バッファを初期化する。 c)読取りからのエラー信号がない場合、 1)disk_addressでのドライブからbufferに読取る。 2)読取りからのブランク・チェックがある場合、buff
erを呼出し側へ返す。 3)disk_addressを次のノードのアドレスに設定する。
このアドレスは、bufferの最後で見つけられる。 d)呼出し側にエラーを返す。
開始アドレスを得て、最終ノードの内容を有するバッフ
ァを返す。論理は、次に述べる通りである。 a)disk_addressを開始アドレスに設定する。 b)バッファを初期化する。 c)読取りからのエラー信号がない場合、 1)disk_addressでのドライブからbufferに読取る。 2)読取りからのブランク・チェックがある場合、buff
erを呼出し側へ返す。 3)disk_addressを次のノードのアドレスに設定する。
このアドレスは、bufferの最後で見つけられる。 d)呼出し側にエラーを返す。
【0027】この機能が現在の実行のままでライブラリ
・システム・プロセッサで実行される場合、システム・
プロセッサはドライブ・プロセッサに対して開始アドレ
スで始まる第1のノードを読取り後、該ノードを返すよ
うに要求する。上記プロセスが完了すると、システム・
プロセッサは次のノードのアドレスを得るために最終セ
クタを調べる。次のノードのアドレスが見つかると、シ
ステム・プロセッサによって第2の読取りが指示され、
ドライブに対して次のノードの読取り後、該ノードを返
すように要求する。システム・プロセッサは、次のノー
ドのアドレスを得るために最終セクタを調べる。このプ
ロセスはシステム・プロセッサによる最終セクタの検査
が次のポインタがないことを確認するまで続き、ディス
クに書込まれた"最終ノード"を見つける。
・システム・プロセッサで実行される場合、システム・
プロセッサはドライブ・プロセッサに対して開始アドレ
スで始まる第1のノードを読取り後、該ノードを返すよ
うに要求する。上記プロセスが完了すると、システム・
プロセッサは次のノードのアドレスを得るために最終セ
クタを調べる。次のノードのアドレスが見つかると、シ
ステム・プロセッサによって第2の読取りが指示され、
ドライブに対して次のノードの読取り後、該ノードを返
すように要求する。システム・プロセッサは、次のノー
ドのアドレスを得るために最終セクタを調べる。このプ
ロセスはシステム・プロセッサによる最終セクタの検査
が次のポインタがないことを確認するまで続き、ディス
クに書込まれた"最終ノード"を見つける。
【0028】上述のプロセスにおいては、最終ノードが
転送されるまで複数の読取りコマンドが出され、その
間、各32のセクタ毎にノードの連続するデータの転送
が行われ、システム・プロセッサと装置プロセッサとの
間でかなりのバス・トラフィックが生じることがわか
る。システム・プロセッサからの各読取りコマンドは、
バスを通して32Kバイトのデータを移動させるために
SCSIバスによるドライブへの呼出しを行う。ライブ
ラリ制御プロセッサのファイル・システムのコードの1
部であるアルゴリズムを実行するために、ライブラリ制
御プロセッサが使用される。
転送されるまで複数の読取りコマンドが出され、その
間、各32のセクタ毎にノードの連続するデータの転送
が行われ、システム・プロセッサと装置プロセッサとの
間でかなりのバス・トラフィックが生じることがわか
る。システム・プロセッサからの各読取りコマンドは、
バスを通して32Kバイトのデータを移動させるために
SCSIバスによるドライブへの呼出しを行う。ライブ
ラリ制御プロセッサのファイル・システムのコードの1
部であるアルゴリズムを実行するために、ライブラリ制
御プロセッサが使用される。
【0029】本発明では、ファイル・システムの1部に
おいて上述のアルゴリズムがメタ・コード言語でプログ
ラムされている。メタ・コードは、解釈可能なイメージ
の始めでパラメータ領域から開始アドレスを得る。メタ
・コードは、バッファの解釈可能なイメージの終わりで
バッファ・スペースを使用する。解釈可能なイメージの
構築後、システムは次に述べる通りに進む。
おいて上述のアルゴリズムがメタ・コード言語でプログ
ラムされている。メタ・コードは、解釈可能なイメージ
の始めでパラメータ領域から開始アドレスを得る。メタ
・コードは、バッファの解釈可能なイメージの終わりで
バッファ・スペースを使用する。解釈可能なイメージの
構築後、システムは次に述べる通りに進む。
【0030】1.ブート・アップ後の初期設定の最終ス
テップにおいて、システム・プロセッサのファイル・シ
ステムはDevice_Ctl及びQuery_Mに等しいfuncでドライ
ブを呼出すことによって、照会メタ機能を与える。この
コマンドはブート・アップ後に戻り、メタ・コマンドが
登録されていないことを指摘する。
テップにおいて、システム・プロセッサのファイル・シ
ステムはDevice_Ctl及びQuery_Mに等しいfuncでドライ
ブを呼出すことによって、照会メタ機能を与える。この
コマンドはブート・アップ後に戻り、メタ・コマンドが
登録されていないことを指摘する。
【0031】2.ここでファイル・システムは、以下の
ステップでfind_last_nodeコマンドを登録する。 a)以前にコード化された解釈可能なイメージは、tran
s_buffer_addrで転送バッファにロードされる。 b)funcは、Register_Mに設定される。 c)Parmlist_addr_bufferは、find_last_nodeに与えら
れるIDでロードされる。find_last_node、num_pが入
力として得る1つのパラメータにおいてnum_pは1に設
定される。ii_sizeは、解釈可能なイメージの大きさに
設定される。ip_startは、解釈可能なイメージの実行開
始に必要な値に設定される。 d)ファイル・システムは、上記のパラメータ設定値で
ドライブのDevice_Ctlを呼出す。 e)ドライブは図4で示される流れ図に従ってコマンド
を登録する。 f)ファイル・システムは、ドライブから復帰後、tran
s_burfer_addrからfind_last_nodeのハンドルを抜き出
す。 g)ファイル・システムは、ハンドルをセーブする。
ステップでfind_last_nodeコマンドを登録する。 a)以前にコード化された解釈可能なイメージは、tran
s_buffer_addrで転送バッファにロードされる。 b)funcは、Register_Mに設定される。 c)Parmlist_addr_bufferは、find_last_nodeに与えら
れるIDでロードされる。find_last_node、num_pが入
力として得る1つのパラメータにおいてnum_pは1に設
定される。ii_sizeは、解釈可能なイメージの大きさに
設定される。ip_startは、解釈可能なイメージの実行開
始に必要な値に設定される。 d)ファイル・システムは、上記のパラメータ設定値で
ドライブのDevice_Ctlを呼出す。 e)ドライブは図4で示される流れ図に従ってコマンド
を登録する。 f)ファイル・システムは、ドライブから復帰後、tran
s_burfer_addrからfind_last_nodeのハンドルを抜き出
す。 g)ファイル・システムは、ハンドルをセーブする。
【0032】3.標準実行時にファイル・システムは、
find_last_nodeを呼出したポイントで以下のステップで
メタ・コマンドを使用する。 a)find_last_nodeのハンドルを検索する。 b)以下のパラメータでDevice_Ctlを呼出す。funcは、
Execute_Mに設定される。parm_list_addrは、開始ディ
スク・アドレスが後に続くハンドルを有する。 c)ハードウェア・インターフェイスはバッファをドラ
イブに転送し、ドライブは以下のステップで実行メタ・
コマンド・オペレーションを実行開始する。−ハンドル
がparm_list_addrバッファから抜き出され、find_last_
nodeのMCTエントリに位置される。MCTの情報を利
用してドライブはparm_list_addrからコピーされるべき
唯一のパラメータを捜し、開始 disk_addrをparm_list_
addrから解釈可能なイメージのパラメータ領域へコピー
する。meta_ip(命令ポインタ)を設定して解釈可能な
イメージの解読を開始し、解釈可能なイメージからのコ
マンドにフェッチし、下記のように解釈する。イメージ
が解読されると複数の読取りコマンドが既存のドライブ
に与えられ、コードとデータが解釈可能なイメージのバ
ッファ領域のバッファに転送される。ブランク・チェッ
クを受信後のメタ・コードが最終ノードを見つける。バ
ッファの内容は trans_buffer_addrバッファに転送さ
れ、システム・プロセッサに復帰する。
find_last_nodeを呼出したポイントで以下のステップで
メタ・コマンドを使用する。 a)find_last_nodeのハンドルを検索する。 b)以下のパラメータでDevice_Ctlを呼出す。funcは、
Execute_Mに設定される。parm_list_addrは、開始ディ
スク・アドレスが後に続くハンドルを有する。 c)ハードウェア・インターフェイスはバッファをドラ
イブに転送し、ドライブは以下のステップで実行メタ・
コマンド・オペレーションを実行開始する。−ハンドル
がparm_list_addrバッファから抜き出され、find_last_
nodeのMCTエントリに位置される。MCTの情報を利
用してドライブはparm_list_addrからコピーされるべき
唯一のパラメータを捜し、開始 disk_addrをparm_list_
addrから解釈可能なイメージのパラメータ領域へコピー
する。meta_ip(命令ポインタ)を設定して解釈可能な
イメージの解読を開始し、解釈可能なイメージからのコ
マンドにフェッチし、下記のように解釈する。イメージ
が解読されると複数の読取りコマンドが既存のドライブ
に与えられ、コードとデータが解釈可能なイメージのバ
ッファ領域のバッファに転送される。ブランク・チェッ
クを受信後のメタ・コードが最終ノードを見つける。バ
ッファの内容は trans_buffer_addrバッファに転送さ
れ、システム・プロセッサに復帰する。
【0033】4.ファイル・システムは、trans_buffer
_addrの最終ノードでDevice_Ctlの呼出しから復帰し、
従来通り処理を続ける。
_addrの最終ノードでDevice_Ctlの呼出しから復帰し、
従来通り処理を続ける。
【0034】この機能がメタ・コマンドを使用せずに実
行される場合、ライブラリ制御プロセッサがリストの検
索に使用され、周辺装置からバスを介して複数の多量の
データが転送されることに注目する。メタ・コマンドを
使用すると、ライブラリ制御装置は解放され、他の作業
を行うことができる。検索はドライブ・プロセッサによ
って行われ、完了後、唯一1つのデータ転送がバスを介
して行われる。複数のドライブが単一のバスで用いられ
る光学式ライブラリなどの、同時並行の環境では、バス
作業量の減、及びライブラリ制御プロセッサ負荷の減
は、かなりの性能強化を与える。
行される場合、ライブラリ制御プロセッサがリストの検
索に使用され、周辺装置からバスを介して複数の多量の
データが転送されることに注目する。メタ・コマンドを
使用すると、ライブラリ制御装置は解放され、他の作業
を行うことができる。検索はドライブ・プロセッサによ
って行われ、完了後、唯一1つのデータ転送がバスを介
して行われる。複数のドライブが単一のバスで用いられ
る光学式ライブラリなどの、同時並行の環境では、バス
作業量の減、及びライブラリ制御プロセッサ負荷の減
は、かなりの性能強化を与える。
【0035】装置プロセッサによって実行されるメタ機
能として、ダウンロードされるのに好適な方法である特
定ファイル・システム機能は、ファイル・システムと周
辺のプロセッサとの間で繰返して交換されることを必要
とする、ディスクの検索によって特徴づけられる機能で
ある。これらのオペレーションを行うことにより、シス
テム・プロセッサのコード・パスを短縮し、バス・トラ
フィックを減らすことができる。
能として、ダウンロードされるのに好適な方法である特
定ファイル・システム機能は、ファイル・システムと周
辺のプロセッサとの間で繰返して交換されることを必要
とする、ディスクの検索によって特徴づけられる機能で
ある。これらのオペレーションを行うことにより、シス
テム・プロセッサのコード・パスを短縮し、バス・トラ
フィックを減らすことができる。
【0036】理想的なファイル・システムとして他の良
い方法には次の方法がある。あるフォーマットから他の
フォーマットへバイトをスワッピングして読み書きす
る、ルーチン化。ディレクトリ・エントリ更新のルーチ
ン化。ビットマップで動作する機能の割当て。複数の記
憶場所へのバッファの書込み。ファイル・システム制御
ブロックのカウンタの増加などがある。
い方法には次の方法がある。あるフォーマットから他の
フォーマットへバイトをスワッピングして読み書きす
る、ルーチン化。ディレクトリ・エントリ更新のルーチ
ン化。ビットマップで動作する機能の割当て。複数の記
憶場所へのバッファの書込み。ファイル・システム制御
ブロックのカウンタの増加などがある。
【0037】上述の例は、全てファイル・システム・ワ
ークを含む。しかしながら本発明は汎用であり、システ
ム制御装置は、分散処理アプローチにおいて遊休処理能
力を他の種類のワークとして利用することができる。
ークを含む。しかしながら本発明は汎用であり、システ
ム制御装置は、分散処理アプローチにおいて遊休処理能
力を他の種類のワークとして利用することができる。
【0038】本発明は特定の実施例に関して説明された
が、当業者は、本発明の趣旨及び範囲内で様々な変更が
できることを理解できよう。例えば典型的実施例では、
4つの新しい拡張コマンドの使用例が示された。1つの
新しいコマンドは、オペレーションの様々なモードに等
しい。
が、当業者は、本発明の趣旨及び範囲内で様々な変更が
できることを理解できよう。例えば典型的実施例では、
4つの新しい拡張コマンドの使用例が示された。1つの
新しいコマンドは、オペレーションの様々なモードに等
しい。
【0039】まとめとして、本発明の構成に関して以下
の事項を開示する。
の事項を開示する。
【0040】(1)システム・プロセッサからシステム
・アプリケーション或いはその1部を、実行不可能な限
定のコマンド命令群を有するサブシステム・プロセッサ
に対して将来の実行のためにダウンロードする方法であ
って、上記システム・アプリケーションの実行に必要な
上記システム・プロセッサのコマンド命令群の1部を有
し、上記システム・プロセッサに位置する解釈可能なイ
メージに対して上記システム・アプリケーションを与え
るステップと、上記解釈可能なイメージを上記システム
・プロセッサから上記サブシステム・プロセッサにダウ
ンロードするステップと、を有する上記システム・アプ
リケーションをダウンロードする方法。 (2)上記システム・アプリケーションを解釈可能なイ
メージに与える上記ステップは、上記システム・アプリ
ケーションを実行するのに必要なパラメータを保持する
パラメータ領域を更に有する上記解釈可能なイメージを
転送バッファに置くステップを有し、ダウンロードする
ステップは、制御データを上記サブシステム・プロセッ
サに送るステップを有し、並びに上記制御データは上記
解釈可能なイメージをロードする要求と、上記解釈可能
なイメージ内の上記パラメータ領域のアドレスと、パラ
メータ領域の大きさと、上記転送バッファの大きさ及び
上記転送バッファのアドレスと、を有する、上記(1)
記載の方法。 (3)上記パラメータ領域は、上記システム・アプリケ
ーションの単一の識別子、全てのパラメータが同じ大き
さのメモリである場合の上記パラメータ領域内のパラメ
ータ数、解釈可能なイメージの大きさ、及び解釈可能な
イメージ内の第1のコマンド命令アドレスへのポインタ
を有する、上記(2)記載の方法。 (4)システム・アプリケーションが上記システム・プ
ロセッサに復帰するために上記解釈可能なイメージのハ
ンドル識別子を上記アプリケーションを位置付けできる
上記サブシステム・プロセッサによって上記転送バッフ
ァに置くステップを更に有する、上記(3)記載の方
法。 (5)ダウンロードするステップが、上記アプリケーシ
ョンの上記単一の識別子、上記解釈可能なイメージのサ
ブシステム・メモリにおけるアドレス、上記解釈可能な
イメージ内で実行される第1のコマンドへのポインタを
有する制御データを含む上記サブシステム・プロセッサ
内でコマンド・テーブルを構築するステップを更に有す
る、上記(4)記載の方法。 (6)上記システム・プロセッサによって要求される場
合、上記解釈可能なイメージを解読するステップを更に
有する、上記(5)記載の方法。 (7)上記システム・プロセッサからの照会に応答し、
上記コマンド・テーブルの内容を上記システム・プロセ
ッサに転送するために、上記コマンド・テーブルの内容
を転送バッファにコピーすることによって上記サブシス
テム・プロセッサにある全ての解釈可能なイメージのリ
ストを作成するステップを更に有する、上記(5)記載
の方法。 (8)上記解釈可能なイメージをサブシステム・メモリ
から削除、及び上記コマンド・テーブルの上記解釈可能
なイメージのエントリを削除することによって、上記解
釈可能なイメージを抹消する要求に応答するステップを
更に有する、上記(5)記載の方法。 (9)周辺のプロセッサにはないコマンド命令群を要求
して、アプリケーションを実行するために周辺のプロセ
ッサの処理能力を利用する方法であって、少なくとも1
つの付加のコマンドを周辺のプロセッサのコマンド群に
与えるステップを有し、上記付加のコマンドにより周辺
のプロセッサは、アプリケーション・コード、パラメー
タ及び周辺のプロセッサのコマンド命令群にはないコマ
ンドを有する解釈可能なイメージをロードする要求を認
識且つ実行でき、上記解釈可能なイメージにあるコード
を実行する要求を認識且つ実行能力を周辺のプロセッサ
に与えるステップと、を有する方法。 (10)上記周辺のプロセッサに存在する全ての解釈可
能なイメージのリスト作成の要求を認識し、実行する能
力を周辺のプロセッサに与えるステップを更に有する、
上記(9)記載の方法。 (11)解釈可能なイメージを削除する要求を認識し且
つ実行する能力を周辺のプロセッサに与えるステップを
更に有する、上記(9)記載の方法。 (12)上記解釈可能なイメージは値とデータを復帰す
るためのパラメータ領域とバッファを更に有する、上記
(9)記載の方法。 (13)上記周辺のプロセッサにある全ての解釈可能な
イメージをリストするために、コマンド・テーブルを上
記周辺のプロセッサに与えるステップを更に有し、上記
テーブルは各常駐する解釈可能なイメージに対するポイ
ンタと開始アドレスの命令ポインタとを有する、上記
(12)記載の方法。 (14)解釈可能なイメージのローディングは、上記コ
マンド・テーブルのテーブル・エントリのためにスペー
スを割当てるステップと、上記解釈可能なイメージのた
めにメモリにスペースを割当てるステップと、上記解釈
可能なイメージを転送バッファから上記メモリのスペー
スにコピーするステップと、上記解釈可能なイメージの
パラメータ・リストに存在する識別子によって、ある識
別子を設定し、上記解釈可能なイメージのために割当て
られたスペースのアドレスにポインタを設定し、及び上
記パラメータ・リストのデータによって開始命令ポイン
タを設定することによって、コマンド・テーブルを初期
化するステップと、テーブル・エントリに割当てられた
スペースに対してアドレス・ハンドルを生成し、ハンド
ルをシステム・プロセッサに転送するためにハンドルを
転送バッファに置くステップと、を有する、上記(1
3)記載の方法。 (15)サブシステム・プロセッサにシステム・アプリ
ケーション或いはその1部を実行させるための装置であ
って、システム・コマンド命令群を有するシステム制御
プロセッサと、サブシステム・コマンド命令群とサブシ
ステム・メモリとを有する少なくとも1つのサブシステ
ム・プロセッサと、上記システム制御プロセッサと上記
サブシステム・プロセッサとを接続するための接続バス
と、実行可能コード及び上記実行可能コードを実行する
のに必要なシステム・コマンド命令群の1部とを含み、
システム・アプリケーション或いはその1部の、解釈可
能なイメージを保持するためのシステム・メモリ手段
と、上記解釈可能なイメージを上記システム・プロセッ
サから上記バスを介して、サブシステム・メモリの上記
解釈可能なイメージを記憶する上記サブシステム・プロ
セッサにダウンロードするための手段と、を有する装
置。 (16)上記サブシステム・メモリの上記解釈可能なイ
メージの位置に対するポインタを保持するために、上記
サブシステム・メモリにコマンド・テーブルを構築する
ための手段と、ハンドル識別子を上記システム・プロセ
ッサに返すための手段と、を更に有する、上記(15)
記載の装置。 (17)上記システム・プロセッサが上記解釈可能なイ
メージの実行要求を出すための手段を更に有する、上記
(16)記載の装置。 (18)上記システム・プロセッサが上記解釈可能なイ
メージ及び上記解釈可能なイメージのテーブル・エント
リを、上記サブシステム・プロセッサ・メモリから削除
する要求を出すための手段を更に有する、上記(16)
記載の装置 (19)上記システム・プロセッサは、上記サブシステ
ムのメモリにある解釈可能なイメージのリストを上記シ
ステム・プロセッサに転送するように上記サブシステム
・プロセッサに命令する要求を上記サブシステム・プロ
セッサに与える手段を更に有する、上記(16)記載の
装置。
・アプリケーション或いはその1部を、実行不可能な限
定のコマンド命令群を有するサブシステム・プロセッサ
に対して将来の実行のためにダウンロードする方法であ
って、上記システム・アプリケーションの実行に必要な
上記システム・プロセッサのコマンド命令群の1部を有
し、上記システム・プロセッサに位置する解釈可能なイ
メージに対して上記システム・アプリケーションを与え
るステップと、上記解釈可能なイメージを上記システム
・プロセッサから上記サブシステム・プロセッサにダウ
ンロードするステップと、を有する上記システム・アプ
リケーションをダウンロードする方法。 (2)上記システム・アプリケーションを解釈可能なイ
メージに与える上記ステップは、上記システム・アプリ
ケーションを実行するのに必要なパラメータを保持する
パラメータ領域を更に有する上記解釈可能なイメージを
転送バッファに置くステップを有し、ダウンロードする
ステップは、制御データを上記サブシステム・プロセッ
サに送るステップを有し、並びに上記制御データは上記
解釈可能なイメージをロードする要求と、上記解釈可能
なイメージ内の上記パラメータ領域のアドレスと、パラ
メータ領域の大きさと、上記転送バッファの大きさ及び
上記転送バッファのアドレスと、を有する、上記(1)
記載の方法。 (3)上記パラメータ領域は、上記システム・アプリケ
ーションの単一の識別子、全てのパラメータが同じ大き
さのメモリである場合の上記パラメータ領域内のパラメ
ータ数、解釈可能なイメージの大きさ、及び解釈可能な
イメージ内の第1のコマンド命令アドレスへのポインタ
を有する、上記(2)記載の方法。 (4)システム・アプリケーションが上記システム・プ
ロセッサに復帰するために上記解釈可能なイメージのハ
ンドル識別子を上記アプリケーションを位置付けできる
上記サブシステム・プロセッサによって上記転送バッフ
ァに置くステップを更に有する、上記(3)記載の方
法。 (5)ダウンロードするステップが、上記アプリケーシ
ョンの上記単一の識別子、上記解釈可能なイメージのサ
ブシステム・メモリにおけるアドレス、上記解釈可能な
イメージ内で実行される第1のコマンドへのポインタを
有する制御データを含む上記サブシステム・プロセッサ
内でコマンド・テーブルを構築するステップを更に有す
る、上記(4)記載の方法。 (6)上記システム・プロセッサによって要求される場
合、上記解釈可能なイメージを解読するステップを更に
有する、上記(5)記載の方法。 (7)上記システム・プロセッサからの照会に応答し、
上記コマンド・テーブルの内容を上記システム・プロセ
ッサに転送するために、上記コマンド・テーブルの内容
を転送バッファにコピーすることによって上記サブシス
テム・プロセッサにある全ての解釈可能なイメージのリ
ストを作成するステップを更に有する、上記(5)記載
の方法。 (8)上記解釈可能なイメージをサブシステム・メモリ
から削除、及び上記コマンド・テーブルの上記解釈可能
なイメージのエントリを削除することによって、上記解
釈可能なイメージを抹消する要求に応答するステップを
更に有する、上記(5)記載の方法。 (9)周辺のプロセッサにはないコマンド命令群を要求
して、アプリケーションを実行するために周辺のプロセ
ッサの処理能力を利用する方法であって、少なくとも1
つの付加のコマンドを周辺のプロセッサのコマンド群に
与えるステップを有し、上記付加のコマンドにより周辺
のプロセッサは、アプリケーション・コード、パラメー
タ及び周辺のプロセッサのコマンド命令群にはないコマ
ンドを有する解釈可能なイメージをロードする要求を認
識且つ実行でき、上記解釈可能なイメージにあるコード
を実行する要求を認識且つ実行能力を周辺のプロセッサ
に与えるステップと、を有する方法。 (10)上記周辺のプロセッサに存在する全ての解釈可
能なイメージのリスト作成の要求を認識し、実行する能
力を周辺のプロセッサに与えるステップを更に有する、
上記(9)記載の方法。 (11)解釈可能なイメージを削除する要求を認識し且
つ実行する能力を周辺のプロセッサに与えるステップを
更に有する、上記(9)記載の方法。 (12)上記解釈可能なイメージは値とデータを復帰す
るためのパラメータ領域とバッファを更に有する、上記
(9)記載の方法。 (13)上記周辺のプロセッサにある全ての解釈可能な
イメージをリストするために、コマンド・テーブルを上
記周辺のプロセッサに与えるステップを更に有し、上記
テーブルは各常駐する解釈可能なイメージに対するポイ
ンタと開始アドレスの命令ポインタとを有する、上記
(12)記載の方法。 (14)解釈可能なイメージのローディングは、上記コ
マンド・テーブルのテーブル・エントリのためにスペー
スを割当てるステップと、上記解釈可能なイメージのた
めにメモリにスペースを割当てるステップと、上記解釈
可能なイメージを転送バッファから上記メモリのスペー
スにコピーするステップと、上記解釈可能なイメージの
パラメータ・リストに存在する識別子によって、ある識
別子を設定し、上記解釈可能なイメージのために割当て
られたスペースのアドレスにポインタを設定し、及び上
記パラメータ・リストのデータによって開始命令ポイン
タを設定することによって、コマンド・テーブルを初期
化するステップと、テーブル・エントリに割当てられた
スペースに対してアドレス・ハンドルを生成し、ハンド
ルをシステム・プロセッサに転送するためにハンドルを
転送バッファに置くステップと、を有する、上記(1
3)記載の方法。 (15)サブシステム・プロセッサにシステム・アプリ
ケーション或いはその1部を実行させるための装置であ
って、システム・コマンド命令群を有するシステム制御
プロセッサと、サブシステム・コマンド命令群とサブシ
ステム・メモリとを有する少なくとも1つのサブシステ
ム・プロセッサと、上記システム制御プロセッサと上記
サブシステム・プロセッサとを接続するための接続バス
と、実行可能コード及び上記実行可能コードを実行する
のに必要なシステム・コマンド命令群の1部とを含み、
システム・アプリケーション或いはその1部の、解釈可
能なイメージを保持するためのシステム・メモリ手段
と、上記解釈可能なイメージを上記システム・プロセッ
サから上記バスを介して、サブシステム・メモリの上記
解釈可能なイメージを記憶する上記サブシステム・プロ
セッサにダウンロードするための手段と、を有する装
置。 (16)上記サブシステム・メモリの上記解釈可能なイ
メージの位置に対するポインタを保持するために、上記
サブシステム・メモリにコマンド・テーブルを構築する
ための手段と、ハンドル識別子を上記システム・プロセ
ッサに返すための手段と、を更に有する、上記(15)
記載の装置。 (17)上記システム・プロセッサが上記解釈可能なイ
メージの実行要求を出すための手段を更に有する、上記
(16)記載の装置。 (18)上記システム・プロセッサが上記解釈可能なイ
メージ及び上記解釈可能なイメージのテーブル・エント
リを、上記サブシステム・プロセッサ・メモリから削除
する要求を出すための手段を更に有する、上記(16)
記載の装置 (19)上記システム・プロセッサは、上記サブシステ
ムのメモリにある解釈可能なイメージのリストを上記シ
ステム・プロセッサに転送するように上記サブシステム
・プロセッサに命令する要求を上記サブシステム・プロ
セッサに与える手段を更に有する、上記(16)記載の
装置。
【0041】
【発明の効果】本発明は、拡張命令群、アプリケーショ
ン、データ及びパラメータを一方のプロセッサから他方
のプロセッサにダウンロードできるシステムを提供でき
る。上記のようにダウンロードできるので、通常は特定
のタスクを行う目的の複数のプロセッサは特に開発を必
要とせず、また常駐も必要としない拡張命令群及びアプ
リケーション・コードを持たずに他のタスクを行うこと
ができる。
ン、データ及びパラメータを一方のプロセッサから他方
のプロセッサにダウンロードできるシステムを提供でき
る。上記のようにダウンロードできるので、通常は特定
のタスクを行う目的の複数のプロセッサは特に開発を必
要とせず、また常駐も必要としない拡張命令群及びアプ
リケーション・コードを持たずに他のタスクを行うこと
ができる。
【図1】本発明が利用される典型的環境を示す図であ
る。
る。
【図2】特定の解釈可能なイメージを指摘して本発明を
実行するために、周辺のプロセッサで構築されたメタ・
コマンド・テーブルを示す図である。
実行するために、周辺のプロセッサで構築されたメタ・
コマンド・テーブルを示す図である。
【図3】サブシステム・プロセッサのメタ・コマンドを
認識するための基本的制御手順を示す図である。
認識するための基本的制御手順を示す図である。
【図4】解釈可能なイメージを指摘するためにサブシス
テム・プロセッサでメタ・コマンド・テーブルを構築す
るための手順を示す図である。
テム・プロセッサでメタ・コマンド・テーブルを構築す
るための手順を示す図である。
【図5】解釈可能なイメージの実行手順を示す図であ
る。
る。
【図6】メタ・コマンド・テーブルにおける解釈可能な
イメージ及びメタ・コマンド・エントリを取り外す手順
を示す図である。
イメージ及びメタ・コマンド・エントリを取り外す手順
を示す図である。
【図7】サブシステム・プロセッサに現在あるメタ機能
についてサブシステム・プロセッサを調べる手順を示す
図である。
についてサブシステム・プロセッサを調べる手順を示す
図である。
10 ライブラリ制御プロセッサ、ライブラリ・コント
ローラ 10' システム・メモリ 11 バス 12、13、14 記憶サブシステム・プロセッサ 12'、13'、14' サブシステム・メモリ 19 ハンドル 20 メタ・コマンド・テーブル 21 ポインタ 22 解釈可能なイメージ 24 メタ命令ポイント 25 開始メタ命令ポインタ
ローラ 10' システム・メモリ 11 バス 12、13、14 記憶サブシステム・プロセッサ 12'、13'、14' サブシステム・メモリ 19 ハンドル 20 メタ・コマンド・テーブル 21 ポインタ 22 解釈可能なイメージ 24 メタ命令ポイント 25 開始メタ命令ポインタ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ウィリアム・マーク・ダウマス アメリカ合衆国85718、アリゾナ州ツーソ ン、ノース・ラ・リンダ・ラマ 4320
Claims (19)
- 【請求項1】システム・プロセッサからシステム・アプ
リケーション或いはその1部を、実行不可能な限定のコ
マンド命令群を有するサブシステム・プロセッサに対し
て将来の実行のためにダウンロードする方法であって、 上記システム・アプリケーションの実行に必要な上記シ
ステム・プロセッサのコマンド命令群の1部を有し、上
記システム・プロセッサに位置する解釈可能なイメージ
に対して上記システム・アプリケーションを与えるステ
ップと、 上記解釈可能なイメージを上記システム・プロセッサか
ら上記サブシステム・プロセッサにダウンロードするス
テップと、 を有する上記システム・アプリケーションをダウンロー
ドする方法。 - 【請求項2】上記システム・アプリケーションを解釈可
能なイメージに与える上記ステップは、 上記システム・アプリケーションを実行するのに必要な
パラメータを保持するパラメータ領域を更に有する上記
解釈可能なイメージを転送バッファに置くステップを有
し、 ダウンロードするステップは、制御データを上記サブシ
ステム・プロセッサに送るステップを有し、並びに上記
制御データは上記解釈可能なイメージをロードする要求
と、上記解釈可能なイメージ内の上記パラメータ領域の
アドレスと、パラメータ領域の大きさと、上記転送バッ
ファの大きさ及び上記転送バッファのアドレスと、 を有する、請求項1記載の方法。 - 【請求項3】上記パラメータ領域は、上記システム・ア
プリケーションの単一の識別子、全てのパラメータが同
じ大きさのメモリである場合の上記パラメータ領域内の
パラメータ数、解釈可能なイメージの大きさ、及び解釈
可能なイメージ内の第1のコマンド命令アドレスへのポ
インタを有する、請求項2記載の方法。 - 【請求項4】システム・アプリケーションが上記システ
ム・プロセッサに復帰するために上記解釈可能なイメー
ジのハンドル識別子を上記アプリケーションを位置付け
できる上記サブシステム・プロセッサによって上記転送
バッファに置くステップを更に有する、請求項3記載の
方法。 - 【請求項5】ダウンロードするステップが、 上記アプリケーションの上記単一の識別子、上記解釈可
能なイメージのサブシステム・メモリにおけるアドレ
ス、上記解釈可能なイメージ内で実行される第1のコマ
ンドへのポインタを有する制御データを含む上記サブシ
ステム・プロセッサ内でコマンド・テーブルを構築する
ステップを更に有する、請求項4記載の方法。 - 【請求項6】上記システム・プロセッサによって要求さ
れる場合、上記解釈可能なイメージを解読するステップ
を更に有する、請求項5記載の方法。 - 【請求項7】上記システム・プロセッサからの照会に応
答し、上記コマンド・テーブルの内容を上記システム・
プロセッサに転送するために、上記コマンド・テーブル
の内容を転送バッファにコピーすることによって上記サ
ブシステム・プロセッサにある全ての解釈可能なイメー
ジのリストを作成するステップを更に有する、請求項5
記載の方法。 - 【請求項8】上記解釈可能なイメージをサブシステム・
メモリから削除、及び上記コマンド・テーブルの上記解
釈可能なイメージのエントリを削除することによって、
上記解釈可能なイメージを抹消する要求に応答するステ
ップを更に有する、請求項5記載の方法。 - 【請求項9】周辺のプロセッサにはないコマンド命令群
を要求して、アプリケーションを実行するために周辺の
プロセッサの処理能力を利用する方法であって、 少なくとも1つの付加のコマンドを周辺のプロセッサの
コマンド群に与えるステップを有し、上記付加のコマン
ドにより周辺のプロセッサは、アプリケーション・コー
ド、パラメータ及び周辺のプロセッサのコマンド命令群
にはないコマンドを有する解釈可能なイメージをロード
する要求を認識且つ実行でき、 上記解釈可能なイメージにあるコードを実行する要求を
認識且つ実行能力を周辺のプロセッサに与えるステップ
と、 を有する方法。 - 【請求項10】上記周辺のプロセッサに存在する全ての
解釈可能なイメージのリスト作成の要求を認識し、実行
する能力を周辺のプロセッサに与えるステップを更に有
する、請求項9記載の方法。 - 【請求項11】解釈可能なイメージを削除する要求を認
識し且つ実行する能力を周辺のプロセッサに与えるステ
ップを更に有する、請求項9記載の方法。 - 【請求項12】上記解釈可能なイメージは値とデータを
復帰するためのパラメータ領域とバッファを更に有す
る、請求項9記載の方法。 - 【請求項13】上記周辺のプロセッサにある全ての解釈
可能なイメージをリストするために、コマンド・テーブ
ルを上記周辺のプロセッサに与えるステップを更に有
し、上記テーブルは各常駐する解釈可能なイメージに対
するポインタと開始アドレスの命令ポインタとを有す
る、請求項12記載の方法。 - 【請求項14】解釈可能なイメージのローディングは、 上記コマンド・テーブルのテーブル・エントリのために
スペースを割当てるステップと、 上記解釈可能なイメージのためにメモリにスペースを割
当てるステップと、 上記解釈可能なイメージを転送バッファから上記メモリ
のスペースにコピーするステップと、 上記解釈可能なイメージのパラメータ・リストに存在す
る識別子によって、ある識別子を設定し、上記解釈可能
なイメージのために割当てられたスペースのアドレスに
ポインタを設定し、及び上記パラメータ・リストのデー
タによって開始命令ポインタを設定することによって、
コマンド・テーブルを初期化するステップと、 テーブル・エントリに割当てられたスペースに対してア
ドレス・ハンドルを生成し、ハンドルをシステム・プロ
セッサに転送するためにハンドルを転送バッファに置く
ステップと、 を有する、請求項13記載の方法。 - 【請求項15】サブシステム・プロセッサにシステム・
アプリケーション或いはその1部を実行させるための装
置であって、 システム・コマンド命令群を有するシステム制御プロセ
ッサと、 サブシステム・コマンド命令群とサブシステム・メモリ
とを有する少なくとも1つのサブシステム・プロセッサ
と、 上記システム制御プロセッサと上記サブシステム・プロ
セッサとを接続するための接続バスと、 実行可能コード及び上記実行可能コードを実行するのに
必要なシステム・コマンド命令群の1部とを含み、シス
テム・アプリケーション或いはその1部の、解釈可能な
イメージを保持するためのシステム・メモリ手段と、 上記解釈可能なイメージを上記システム・プロセッサか
ら上記バスを介して、サブシステム・メモリの上記解釈
可能なイメージを記憶する上記サブシステム・プロセッ
サにダウンロードするための手段と、 を有する装置。 - 【請求項16】上記サブシステム・メモリの上記解釈可
能なイメージの位置に対するポインタを保持するため
に、上記サブシステム・メモリにコマンド・テーブルを
構築するための手段と、 ハンドル識別子を上記システム・プロセッサに返すため
の手段と、 を更に有する、請求項15記載の装置。 - 【請求項17】上記システム・プロセッサが上記解釈可
能なイメージの実行要求を出すための手段を更に有す
る、請求項16記載の装置。 - 【請求項18】上記システム・プロセッサが上記解釈可
能なイメージ及び上記解釈可能なイメージのテーブル・
エントリを、上記サブシステム・プロセッサ・メモリか
ら削除する要求を出すための手段を更に有する、請求項
16記載の装置 - 【請求項19】上記システム・プロセッサは、上記サブ
システムのメモリにある解釈可能なイメージのリストを
上記システム・プロセッサに転送するように上記サブシ
ステム・プロセッサに命令する要求を上記サブシステム
・プロセッサに与える手段を更に有する、請求項16記
載の装置。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US26381294A | 1994-06-22 | 1994-06-22 | |
| US263812 | 1994-06-22 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0816541A true JPH0816541A (ja) | 1996-01-19 |
| JP3138171B2 JP3138171B2 (ja) | 2001-02-26 |
Family
ID=23003326
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP07071299A Expired - Fee Related JP3138171B2 (ja) | 1994-06-22 | 1995-03-29 | システム機能をダウンロードする方法 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5652887A (ja) |
| JP (1) | JP3138171B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2000052591A1 (en) * | 1999-02-26 | 2000-09-08 | Fujitsu Limited | Signal processor |
Families Citing this family (32)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6044205A (en) * | 1996-02-29 | 2000-03-28 | Intermind Corporation | Communications system for transferring information between memories according to processes transferred with the information |
| US5845090A (en) | 1994-02-14 | 1998-12-01 | Platinium Technology, Inc. | System for software distribution in a digital computer network |
| US5694546A (en) | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
| US5854898A (en) | 1995-02-24 | 1998-12-29 | Apple Computer, Inc. | System for automatically adding additional data stream to existing media connection between two end points upon exchange of notifying and confirmation messages therebetween |
| US5987257A (en) | 1995-10-27 | 1999-11-16 | Microsoft Corporation | Metafile optimization |
| US6625617B2 (en) | 1996-01-02 | 2003-09-23 | Timeline, Inc. | Modularized data retrieval method and apparatus with multiple source capability |
| US5862325A (en) * | 1996-02-29 | 1999-01-19 | Intermind Corporation | Computer-based communication system and method using metadata defining a control structure |
| US7167897B2 (en) * | 1996-05-08 | 2007-01-23 | Apple Computer, Inc. | Accessories providing a telephone conference application one or more capabilities independent of the teleconference application |
| WO1998041912A2 (en) * | 1997-03-17 | 1998-09-24 | Scientific-Atlanta, Inc. | Method and apparatus for adding new functionality to a headend |
| US6453334B1 (en) * | 1997-06-16 | 2002-09-17 | Streamtheory, Inc. | Method and apparatus to allow remotely located computer programs and/or data to be accessed on a local computer in a secure, time-limited manner, with persistent caching |
| US7026556B1 (en) | 2000-09-15 | 2006-04-11 | Premark Feg L.L.C. | Method and system for controlling messages printed by an in store label printer and related label structure |
| US8831995B2 (en) | 2000-11-06 | 2014-09-09 | Numecent Holdings, Inc. | Optimized server for streamed applications |
| US7062567B2 (en) | 2000-11-06 | 2006-06-13 | Endeavors Technology, Inc. | Intelligent network streaming and execution system for conventionally coded applications |
| US6983360B2 (en) * | 2001-08-30 | 2006-01-03 | Micron Technology, Inc. | Program loading mechanism through a single input data path |
| WO2003046715A1 (en) * | 2001-11-29 | 2003-06-05 | Fujitsu Limited | Central processing device and operation program |
| US7109985B2 (en) * | 2001-12-14 | 2006-09-19 | Liquidpixels, Inc. | System and method for dynamically generating on-demand digital images |
| US8249928B2 (en) | 2002-04-29 | 2012-08-21 | Valassis In-Store Solutions, Inc. | Food product scale and method for providing in-store incentives to customers |
| US20040267621A1 (en) | 2003-06-27 | 2004-12-30 | Schuller Robert J. | Food product scale-based incentive system |
| US20050024665A1 (en) * | 2003-08-01 | 2005-02-03 | Jennifer Melin | System and method for dynamically controlling access to configuration attributes for a printing device |
| US20050131854A1 (en) * | 2003-12-11 | 2005-06-16 | International Business Machines Corporation | Dynamic command line user interface |
| US8521583B2 (en) | 2003-12-26 | 2013-08-27 | Valassis In-Store Solutions, Inc. | Computerized management system for multi-chain promotions, and related audit system |
| WO2006055445A2 (en) | 2004-11-13 | 2006-05-26 | Stream Theory, Inc. | Hybrid local/remote streaming |
| US8024523B2 (en) | 2007-11-07 | 2011-09-20 | Endeavors Technologies, Inc. | Opportunistic block transmission with time constraints |
| EP1875364A2 (en) | 2005-03-23 | 2008-01-09 | Stream Theory, Inc. | System and method for tracking changes to files in streaming applications |
| US7488003B2 (en) | 2006-03-30 | 2009-02-10 | Premark Feg L.L.C. | Label supply, label handling method and label printing apparatus |
| US8261345B2 (en) | 2006-10-23 | 2012-09-04 | Endeavors Technologies, Inc. | Rule-based application access management |
| US7529909B2 (en) * | 2006-12-28 | 2009-05-05 | Microsoft Corporation | Security verified reconfiguration of execution datapath in extensible microcomputer |
| US8892738B2 (en) | 2007-11-07 | 2014-11-18 | Numecent Holdings, Inc. | Deriving component statistics for a stream enabled application |
| WO2009149472A1 (en) * | 2008-06-06 | 2009-12-10 | Spencer Marc D | Enhanced zoom and pan for viewing digital images |
| US8432567B2 (en) | 2009-06-26 | 2013-04-30 | Premark Feg L.L.C. | Printer and scale for handling RFID labels |
| US8719455B2 (en) * | 2010-06-28 | 2014-05-06 | International Business Machines Corporation | DMA-based acceleration of command push buffer between host and target devices |
| US12062148B2 (en) | 2022-05-11 | 2024-08-13 | Liquidpixels, Inc. | On-demand 3D image viewer |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3631405A (en) * | 1969-11-12 | 1971-12-28 | Honeywell Inc | Sharing of microprograms between processors |
| US4731736A (en) * | 1983-04-18 | 1988-03-15 | Motorola, Inc. | Method and apparatus for coordinating execution of an instruction by a selected coprocessor |
| JPS6184740A (ja) * | 1984-10-03 | 1986-04-30 | Hitachi Ltd | 汎用オブジエクトコ−ド生成方式 |
| US4837764A (en) * | 1987-03-26 | 1989-06-06 | Bunker Ramo Corporation | Programmable apparatus and method for testing computer peripherals |
| US5519875A (en) * | 1991-08-08 | 1996-05-21 | Hitachi, Ltd. | Distributed processing system for modules, each having modularized objects |
| US5268928A (en) * | 1991-10-15 | 1993-12-07 | Racal-Datacom, Inc. | Data modem with remote firmware update |
| FR2691559B1 (fr) * | 1992-05-25 | 1997-01-03 | Cegelec | Systeme logiciel a objets repliques exploitant une messagerie dynamique, notamment pour installation de controle/commande a architecture redondante. |
| US5530864A (en) * | 1992-12-23 | 1996-06-25 | Taligent | Command object system for an object-oriented software platform |
| US5497491A (en) * | 1993-01-26 | 1996-03-05 | International Business Machines Corporation | System and method for importing and exporting data between an object oriented computing environment and an external computing environment |
-
1995
- 1995-03-29 JP JP07071299A patent/JP3138171B2/ja not_active Expired - Fee Related
- 1995-05-31 US US08/455,593 patent/US5652887A/en not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2000052591A1 (en) * | 1999-02-26 | 2000-09-08 | Fujitsu Limited | Signal processor |
Also Published As
| Publication number | Publication date |
|---|---|
| US5652887A (en) | 1997-07-29 |
| JP3138171B2 (ja) | 2001-02-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0816541A (ja) | 周辺装置の処理能力を利用する方法及び装置 | |
| US5991757A (en) | Method and system for searching an array for an array value | |
| US5355498A (en) | Method and apparatus for booting a computer system without loading a device driver into memory | |
| US5628023A (en) | Virtual storage computer system having methods and apparatus for providing token-controlled access to protected pages of memory via a token-accessible view | |
| US5889996A (en) | Accelerator for interpretive environments | |
| JP2893071B2 (ja) | マルチ・スレッド対応ディジタル・データ・プロセッサ用スレッド・プライベート・メモリ | |
| JP3758732B2 (ja) | エンディアンタスクを実行するシステム及び方法 | |
| US4679140A (en) | Data processor with control of the significant bit lengths of general purpose registers | |
| US6230259B1 (en) | Transparent extended state save | |
| JP3209793B2 (ja) | データ処理装置 | |
| JPH0612327A (ja) | キャッシュメモリを有するデータプロセッサ | |
| US5764962A (en) | Emulation of asynchronous signals using a branch mechanism | |
| JP2001216169A (ja) | 第1ビット・アーキテクチャの命令を第2ビット・アーキテクチャの命令に変換する方法、システム、プログラムおよびデータ構造 | |
| US5339417A (en) | Computer system with two levels of guests | |
| US4739471A (en) | Method and means for moving bytes in a reduced instruction set computer | |
| JP2990195B2 (ja) | レガシ指令のエミュレ―ション装置及び方法 | |
| JPH06202944A (ja) | データ処理システムにおけるメモリの拡張方法及びシステム | |
| EP1857926B1 (en) | Move data facility with user selectable storage access keys | |
| KR101036675B1 (ko) | Efi 기반 펌웨어에서의 프리 efi 초기화 모듈의 전역변수 사용법 | |
| JP2000020319A (ja) | プログラム実行装置、その制御方法および記憶媒体 | |
| US5117491A (en) | Ring reduction logic using parallel determination of ring numbers in a plurality of functional units and forced ring numbers by instruction decoding | |
| JP2865291B2 (ja) | モジュール結合制御方式 | |
| CN119311613A (zh) | 用于执行空中更新固件的微控制器及方法 | |
| KR100308251B1 (ko) | 실행시간백업정보의통합관리방법및그시스템 | |
| JP3442972B2 (ja) | 情報処理装置および書き換え可能型不揮発性メモリの書き換え方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |