JPH11500248A - 一般的なウエブ・ブラウザが複数の異なるプロトコル型のサーバをアクセスすることを可能にするための情報ハンドリング・システム - Google Patents

一般的なウエブ・ブラウザが複数の異なるプロトコル型のサーバをアクセスすることを可能にするための情報ハンドリング・システム

Info

Publication number
JPH11500248A
JPH11500248A JP9518642A JP51864297A JPH11500248A JP H11500248 A JPH11500248 A JP H11500248A JP 9518642 A JP9518642 A JP 9518642A JP 51864297 A JP51864297 A JP 51864297A JP H11500248 A JPH11500248 A JP H11500248A
Authority
JP
Japan
Prior art keywords
html
network
http
data
client
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
Application number
JP9518642A
Other languages
English (en)
Other versions
JP3381926B2 (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 JPH11500248A publication Critical patent/JPH11500248A/ja
Application granted granted Critical
Publication of JP3381926B2 publication Critical patent/JP3381926B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 この情報ハンドリング・システムは、一のクライアント・コンピュータ装置と一のサーバ・コンピュータ装置の間に設けられている一のネットワークを介して、前記クライアント・コンピュータ装置が、前記サーバ・コンピュータ装置に置かれている情報をアクセスすることを可能にする。前記クライアント・コンピュータ装置は、ハイパーテキスト転送プロトコル(HTTP)を使用して前記サーバ・コンピュータ装置をアクセスするとともに、前記サーバ・コンピュータ装置から受信される情報をハイパーテキスト・マークアップ言語(HTML)ソフトウェアを使用して前記クライアント・コンピュータ装置の一のユーザに供給する。前記情報ハンドリング・システムが含んでいる前記ネットワークは、前記クライアント及びサーバ・コンピュータ装置間に設けられ、HTTPとは異なる一のネットワーク伝送プロトコルを使用するとともに、HTMLとは異なる一のネットワーク・データ・フォーマットを使用する。また、前記情報ハンドリング・システムが含んでいる伝送プロトコル変換手段は、前記クライアント及びサーバ・コンピュータ装置のうち少なくとも1つのコンピュータ装置から前記ネットワークを介して送信されるか又は前記ネットワークを介して前記少なくとも1つのコンピュータ装置によって受信されるHTML/HTTP情報を、前記ネットワーク伝送プロトコル及び前記ネットワーク・データ・フォーマットに変換する。

Description

【発明の詳細な説明】 一般的なウェブ・ブラウザが複数の異なるプロトコル型のサーバをアクセスす ることを可能にするための情報ハンドリング・システム発明の分野 本発明は、ネットワーク化された複数の情報処理システムを有する情報ハンド リング・システムに係り、更に詳細に説明すれば、クラス・ライブラリを使用し てWWW(ワールド・ワイド・ウェブ)と呼ばれるサーバ・コンピュータ・シス テム(以下「サーバ」と略記)を開発するためのオブジェクト指向技術に係る。 本発明の背景に関する一層詳細な説明については、以下の記述を参照されたい。発明の背景 過去2年の間、ほぼ全世界にまたがるコンピュータ・ネットワークの集合体と してのインターネットの利用、特にその最上部に構築したシステムの1つである WWWの利用が爆発的に増加した。WWWを構成する多数のページ又は情報ファ イルは、多数の異なるサーバにまたがって分散されている。例えば、かかるペー ジ上に格納される情報は、或る企業の組織や、連絡先データ、製品データ及びそ の企業に関係するニュース等の詳細とすることができる。この情報は、テキスト 、 グラフィック、音声及びビデオ・データを組み合わせた形態で、クライアント・ コンピュータ・システム(以下「クライアント」と略記)としてのユーザのコン ピュータ・システムに提供することができる。各ページは、URL(未入手資源 ロケータ)によって識別される。URLは、サーバと、このサーバ上の特定のフ ァイル又はページの両方を指定する。単一のサーバ上には、多数のページ又はU RLが存在することがある。 WWWを利用するため、各クライアントは、グラフィカル・ウェブ・ブラウザ と呼ばれる小さなソフトウェア、例えば(IBM社のOS/2の一部として提供 される)WebExplorer や、ネットスケープ・コミュニケーション社の Navigator プログラムを実行する。なお、「WebExplorer」、「OS/2」及び「IBM」は、イ ンターナショナル・ビジネス・コーポレイションの商標であり、「Navigator」 及び「Netscape」は、ネットスケープ・コミュニケーション社の商標である。ク ライアントがブラウザと対話して特定のURLを選択する場合、ブラウザは、当 該URL又はページのための要求を当該URLが識別するサーバに送信する。サ ーバは、この要求に応じて、要求対象のページを検索するとともに、その要求デ ータを要求元のクライアントに返送する(クライアントとサーバとの間の対話は 、HTTP(ハイパーテキスト転送プロトコル)に従って行われる)。次に、こ のページは、クライアントの画面を通してユーザに表示される。また、クライア ント は、例えば、特定のトピックに関係するWWWページを探索するためのアプリケ ーションを立ち上げるように、サーバに要求することができる。 殆どのWWWページは、HTML(ハイパーテキスト・マークアップ言語)で 書かれたプログラムに従ってフォーマット化されている。このプログラムは、ク ライアントのグラフィカル・ブラウザを介して表示すべきデータを保持するほか に、ブラウザに対し当該データの表示方法を指示するためのフォーマット化コマ ンドを保持する。かくて、代表的なウェブ・ページには、テキストが含まれてい るだけでなく、タグと呼ばれるフォーマット化コマンドが埋め込まれているから 、これらのコマンドを使用して、フォントの大きさや、フォントのスタイル(例 えば、イタリック又は太字)や、テキストのレイアウト方法等を制御することか できる。ウェブ・ブラウザは、指定されたフォーマットに従ってテキストを表示 するために、HTMLスクリプトの「解析」を行う。また、HTMLタグを使用 すると、クライアントのブラウザを介してユーザに表示すべきグラフィック、音 声及びビデオ・データの表示形態を指示することができる。 殆どのウェブ・ページは、元のページと同一のサーバ上に必ずしも存在しない 処の、他のウェブ・ページに対する1つ以上の参照を含んでいる。かかる参照を 活動化するには、ユーザが画面上の特定の位置を選択したり、マウスの制御ボタ ンを(ダブル)クリックするのが普通である。これらの参照 又は位置は、「ハイパーリンク」と呼ばれていて、ブラウザが特定の様式でフラ グするようになっている(例えば、各ハイパーリンクに関連するテキストを、目 立ちやすいカラーで表示することがある)。もし、ユーザがこのハイパーリンク を選択すれば、参照されたページが検索されて、現に表示されているページに置 き換わることになる。 HTML及びWWWに関する詳細な情報については、Douglas McArthur,"Wor ld Wide Web and HTML",Dr Dobbs Journal,December 1994,pp.18-26 及び Ia n Graham,"The HTML SourceBook"(John Wiley,New York,1995)を参照され たい。 HTMLを受理してこれを表示する一般的なウェブ・ブラウザは、アプリケー ションの開発者に対し、顕著な能力を与える。即ち、ユーザ・インタフェースを 実現するためにブラウザを使用すると、次の2つの利点を享受することができる からである。 第1:通信プロトコル(HTTP)が埋め込まれる。 第2:ユーザ・インタフェース環境(HTML)が埋め込まれる。 通信とユーザ・インタフェースは、プラットフォームに依存する度合いが極め て高いという理由で、アプリケーション開発の非常に高価な2つの分野になって いる。これらの2つの問題が存在するために、多くのアプリケーションは、全て のカストマに行きわたっていない。 現在、HTTP TCP/IPとは異なる通信プロトコルを使用して伝送を行 うようなウェブ・ブラウザ/サーバは、全く存在しない。しかしながら、設置済 みの多数のコンピュータは、NetBIOS、IPX及び直列回線のような、種々 の通信プロトコルを使用している。これらのコンピュータのユーザは、TCP/ IP接続の使用を必要とせずに、ウェブ・ブラウザ/サーバ技術を使用すること を望む場合がある。この技術は、かかる制約により制限される。 この技術が特に重要となる1つの環境は、システム管理である。効率的なシス テム管理は、設置済みコンピュータが大型であるか小型であるかを問わず、その 動作にとって非常に重要である。システム管理のタスクを改良するために、これ まで多数のアプリケーションが開発されてきた。これらのアプリケーションが試 みたことは、これらのコンピュータのユーザ又はシステム管理者に対し一層強力 な管理能力を与えるために、不可解なハードウェア及びオペレーティング・シス テム(以下「OS」と略記)に依存するコンピュータの監視結果及び制御手段を 抽象化し且つこれらを照合する、というものである。 最近のシステム管理ソフトウェアでは、グラフィカル・ユーザ・インタフェー ス(GUI)を通して、監視結果及び制御手段が表示及び制御されるようになっ ている。本発明に即して説明すれば、これらのシステム管理アプリケーションは 、次の2つの問題点を有している。即ち、(1)これらのGU Iは、特定のコンピュータ上で実行するように制約されているだけでなく、制限 されたプロトコルを通してのみベースのシステム管理オブジェクトと通信するよ うに制約されており、また(2)システム管理アプリケーションを他のコンピュ ータ又はプロトコルに移動させるには、この新しいプラットフォーム用のGUI を再びコード化しなければならない、ということである。現在の技術は、これが サポートするコンピュータに対してのみ、システム管理データを供給するに過ぎ ない。従って、かかる現在の技術には、強力で且つ柔軟なシステム管理インタフ ェースに対する諸障壁が存在する。発明の要約 本発明が提供せんとする情報ハンドリング・システムは、一のクライアント・ コンピュータ装置が、一のサーバ・コンピュータ装置に置かれている情報をアク セスすることを可能にする。前記クライアント・コンピュータ装置は、ハイパー テキスト転送プロトコル(HTTP)を使用して前記サーバ・コンピュータ装置 と通信するための手段と、前記サーバ・コンピュータ装置から受信される情報を ハイパーテキスト・マークアップ言語(HTML)を使用して当該クライアント ・コンピュータ装置の一のユーザに供給するための手段とを含んでいる。前記情 報ハンドリング・システムは、その特徴的構成として、前記クライアント及びサ ーバ・コンピュータ装置間に設けられた一のネットワークと、伝送プロトコル変 換手段とを備えている。前記ネットワークは、HTTPとは異なる一のネットワ ーク伝送プロトコルを使用するとともに、HTMLとは異なる一のネットワーク ・データ・フォーマットを使用する。他方、前記伝送プロトコル変換手段は、前 記クライアント及びサーバ・コンピュータ装置から前記ネットワークを介して送 信されるか又は前記ネットワークを介して前記クライアント及びサーバ・コンピ ュータ装置によって受信されるHTML/HTTP情報を、前記ネットワーク伝 送プロトコル及び前記ネットワーク・データ・フォーマットに変換するように機 能する。 前述の要件に加えて、本発明の前記情報ハンドリング・システムは、次の要件 を満足することが好ましい。即ち、前記クライアント・コンピュータ装置の前記 情報を供給するための手段が、特定の型のグラフィカル・ユーザ・インタフェー スを使用し、前記クライアント・コンピュータ装置が、インターネットに接続さ れ、前記ネットワークが、前記インターネットと前記サーバ・コンピュータ装置 の間に設けられ、前記伝送プロトコル変換手段が、一のHTMLオブジェクト及 び一のHTTPオブジェクトを含むオブジェクト指向のコンピュータ・ソフトウ ェアを実行し、前記HTMLオブジェクトが、前記クライアント・コンピュータ 装置からHTML要求データを受理し且つ当該受理済みのHTML要求データを 前記ネットワーク・データ・フォーマットに変換し、前記HTTPオブジェクト が、前記クライアント及びサーバ・コン ピュータ装置間でインターネット接続をオープン及び維持し、前記クライアント ・コンピュータ装置から受信される前記HTML要求データを解析し、前記クラ イアント・コンピュータによって使用される前記特定の型のグラフィカル・ユー ザ・インタフェースの識別子を検出し、前記要求データ及び検出済みのグラフィ カル・ユーザ・インタフェースの識別子を前記HTMLオブジェクトに伝送する とともに、HTMLデータを前記ネットワーク及び前記インターネットを介して 前記HTMLオブジェクトと前記クライアント・コンピュータ装置の間で転送す る、ということである。 第2の側面において、本発明が提供せんとする情報ハンドリング・システム用 の一のプログラム要素は、前記情報ハンドリング・システム上で実行される際に 、データと(a)HTML及びHTTP、並びに(b)少なくとも1つのコマン ド及びHTML又はHTTPの何れとも異なるプロトコルの間のマッピングを行 うための一のマッピング・ブロックを備えている。前記マッピング・ブロックは 、一のHTMLオブジェクト及び一のHTTPオブジェクトを有している。前記 HTMLオブジェクトは、URL(未入手資源ロケータ)及び他の要求データを 受理し、受理済みの要求を内部コマンド及びHTML又はHTTPの何れとも異 なるプロトコルに形成し、内部コマンド及びHTML又はHTTPの何れとも異 なるプロトコルの形式を有する応答を受理し、受理済みの応答をHTMLに変換 するとともに、当該HTMLを前記HT TPオブジェクトに送信するように機能する。他方、前記HTTPオブジェクト は、インターネット通信をオープン及び維持し、前記インターネットを介してH TTP要求を受理し、受理済みの要求を形成するURL及び関連するデータを解 析し、当該URL、関連するデータ及びブラウザ・プログラムの識別子を前記H TMLオブジェクトに伝送し、前記HTMLオブジェクトからHTMLソースを 受理するとともに、HTMLソースをHTTP応答として前記インターネットに 戻すように機能する。 また、本発明は、インターネット上のどこかに接続される任意のブラウザが、 一のシステム管理プロトコルの諸イベントを表示及び制御するために、一のグラ フィカル・ユーザ・インタフェースとして機能することを可能にする。図面の簡単な説明 本発明の幾つかの目的は前述の通りであるが、他の目的は、以下の添付図面を 参照して行われる後段の説明から次第に明らかとなるであろう。 図1Aは、典型的なパーソナル・コンピュータ・システム(以下「パーソナル ・コンピュータ」と略称)の斜視図である。 図1Bは、本発明に従った装置及び方法を実施した情報ハンドリング・ネット ワークを示す図である。 図2は、図1Aのパーソナル・コンピュータ用の統合化プ レーナ・ボードの概略ブロック図である。 図3は、図1Aのパーソナル・コンピュータ用の代替的なプレーナ・ボードの 概略ブロック図である。 図4は、図3の代替的なプレーナ・ボードに関連して使用するプロセッサ・カ ードの概略ブロック図である。 図5は、本発明に従った図1Bの情報ハンドリング・ネットワークを介してシ ステム構成情報を通信するために取られる諸ステップの流れ図である。 図6は、図5の流れ図で取られる幾つかのステップの一層詳細な流れ図である 。 図7は、例示的フレームワーク機構のカテゴリ図である。 図8〜図12は、図7の例示的フレームワーク機構のクラス図である。 図13は、図7〜図12の例示的フレームワーク機構のオブジェクト図である 。 図14A及び図14Bは、図1Bのネットワークを通して行われる、本発明の システム管理の実施例を示す図である。 図15は、図14A及び図14Bに示したマッピング・ブロックの要素を示す 図である。推奨実施例の説明 以下、本発明の背景に係る技術を一層詳細に説明する。当該技術について高度 な知識を有する読者は、以下の背景情報に係る説明を読んでも読まなくても良い が、この情報は本発 明を理解するのに重要であるので、これを十分に検討することを勧める。 本発明の推奨実施例を示した添付図面を参照して本発明を詳述するに先だち、 当業者は、本発明の効果を享受しつつ本明細書中で説明した本発明を適宜に変更 又は修正しうることを理解すべきである。従って、以下の説明は、当業者に向け られた広範な技術的教示を開示しているに過ぎず、本発明の技術範囲を制限する ものではないことを理解すべきである。ハードウェア環境 一般のパーソナル・コンピュータ、特にIBM社のパーソナル・コンピュータ は、現在社会の多くの分野に対しコンピュータ能力を提供するために、広範に使 用されるようになってきた。一般に、パーソナル・コンピュータは、形態的には 、デスク・トップ型、床置き型及び携帯型に類別され、構成的には、システム・ プロセッサを有するシステム・ユニット、表示モニタ、キーボード、1つ以上の ディスケット駆動装置、固定ディスク記憶、オプションのマウス及び印刷装置を 含んでいる。これらのシステムは、主として、個々のユーザ又は小グループのユ ーザに対し、独立の計算能力を与えるように設計されており、個人又は企業が購 入しやすいように安価な価格で提供されている。かかるパーソナル・コンピュー タは、商標として、例えば「IBM PERSONAL COMPUTER」、「PERSONAL COMPUTER X T」、「PERSONAL COMPUTER AT」及び「IBM PERSONAL SYSTEM/2」(以下、IBM PC、XT、AT及びP S/2とそれぞれ略称)を付したモデル25、30、50、55、57、60、 65、70、80、90及び95として提供されている。 一般に、これらのパーソナル・コンピュータは、2つのファミリに分類するこ とができる。第1のファミリは、「ファミリ1モデル」と呼ばれ、ATコンピュ ータ及び他の「IBM互換」マシンによって代表されるバス・アーキテクチャを 使用する。第2のファミリは、「ファミリ2モデル」と呼ばれ、IBM社のPS /2モデル50〜95によって代表される「マイクロチャネル」バス・アーキテ クチャを使用する。ファミリ1及びファミリ2モデルが使用するこれらのバス・ アーキテクチャは、当該技術分野では周知である。 IBM PC及びXTは、IBM社のパーソナル・コンピュータ・ラインの最 初のモデルであり、インテル社の8088プロセッサを使用していた。IBM社 のパーソナル・コンピュータに対する次の重要な変更は、ATであって、これは インテル社の80286プロセッサを使用していた。他方、PS/2のラインは 、インテル社の幾つかのプロセッサを使用していた。即ち、モデル30は808 6を使用し、モデル50及び60は両者とも80286を、モデル70の或るバ ージョン及びモデル80は80386を、モデル70の他のバージョン、モデル 90のXP 486及びモデル95のXP 486は80486を使用していた 。これらの全てのパーソナル・コンピュータの共通点は、インテル社のX86フ ァミリ・プロセッサを使用しているということである。容易に入手可能で且つ周 知の種々のOS、例えばDOS又はOS/2は、インテル社のX86ファミリ・ プロセッサ上で動作することができる。 また、ファミリ1モデルの最も初期のパーソナル・コンピュータ(例えば、I BM PC)の時点から、ソフトウェアとハードウェアの互換性を維持するとい う目標が最も重要であることが認識されていた。この目標を達成するため、「マ イクロコード」と呼ばれる常駐コードの隔離層が、ソフトウェアとハードウェア の間に設定された。このコードは、ユーザのアプリケーション/OSとハードウ ェア装置の間に動作インタフェースを提供して、ハードウェア装置の特性を考慮 するという重荷からユーザを解放した。このコードは、最終的に基本入出力シス テム(以下「BIOS」と略記)として開発され、これによりアプリケーション /OSをハードウェア装置の特性から隔離しつつ、新しいハードウェア装置をシ ステムに追加することが可能となった。BIOSが重要である所以は、これによ って装置ドライバが特定のハードウェア装置の特性に依存しなくなり、しかもハ ードウェア装置への中間インタフェースを有する装置ドライバを提供することが できる、という点にある。BIOSは、パーソナル・コンピュータの不可分の部 分を構成していて、システム・プロセッサと授受すべきI/Oデータの移動を制 御するものであるから、システム・ユニットのプレーナ・ボード上に搭載した読 み取り専用メモリ(ROM)又は消去可能読み取り専用メモリ(EPROM)の 形態で、ユーザに出荷されていた。例えば、当初のIBM PCにおけるBIO Sは、プレーナ・ボード上に搭載したROMの8Kバイトを占有していた。プレ ーナ・ボードは、ROMに加えて、システム・プロセッサと、主ランダム・アク セス・メモリ(RAM)と、このボード上で実質的に共平面状に固定された他の 構成要素を含んでいた。また、ROMは、そのパーソナル・コンピュータをテス トし且つ初期化するために使用する電源オン自己テスト・プログラム(以下「P OST」と略記)を保持していた。かかるROM内に常駐するコードの集合は、 「システム・ファームウェア」又は単に「ファームウェア」と呼ばれるようにな った。このように、ファームウェアは、POST部分及びBIOS部分を含んで いた。或る形態のBIOSは、POSTを含むように定義されていた。 パーソナル・コンピュータ・ファミリの新しいモデルが導入される場合、その ファームウェアを更新するとともに、I/O装置のような新しいハードウェア装 置をサポートするように、これを拡張しなければならなかった。容易に予測でき るように、ファームウェアのメモリ・サイズは、次第に増大してきた。例えば、 ATの導入とともに、ファームウェアは32KバイトのROMを必要とするよう になった。また、マイクロチャネル・アーキテクチャを使用するPS/2の導入 に際し、拡張BIOS(ABIOS)と呼ばれる処の、実質 的に新しいBIOSが開発された。しかしながら、ソフトウェア上の互換性を維 持するために、互換BIOS(CBIOS)と呼ばれるファミリ1モデルからの BIOSを、ファミリ2モデルに含めなければならなかった。かくて、当初のB IOSは、互換BIOS及び拡張BIOSのような2種類以上のBIOSを含む ように発展してきた。パーソナル・コンピュータに係る現在のアーキテクチャ上 の定義は、ファームウェア用として最大128Kバイトまでのシステム・アドレ ス空間(システム・ファームウェア・アドレス空間)を許容する。 現在では、新しい技術の継続的な開発とともに、パーソナル・コンピュータは 一層複雑になりつつあり、また一層頻繁に拡張されるようになっている。技術が 速やかに変わりつつあり、しかも新しいI/O装置がパーソナル・コンピュータ に追加されつつあるので、その開発サイクルにおいては、ファームウェアの修正 及び拡張が以前にも増して重要な問題となってきた。 マイクロチャネル・アーキテクチャの導入に際し、IBM社は、プログラマブ ル・オプション・セレクト(POS)と呼ばれる処の、新しい構成手順を提供し た。POSは、インストール及びパーソナル・コンピュータの拡張を以前のPC よりも容易に且つ簡明に行うことを目標として、DIPスイッチ、ジャンパ及び ヘッダを使用しないでパーソナル・コンピュータの構成動作を行うことができる ように設計されてい る。PS/2は、低電力のバッテリ・パック式CMOSメモリを使用して、その ハードウェア構成を記憶することができる。この構成は、拡張装置の識別子と、 システムの残りの部分に関しこれらの拡張装置がどのように機能するかという情 報を含んでいる。マイクロチャネル用に設計された全ての拡張カードは、一意的 な識別番号を有する。パーソナル・コンピュータがブートする場合、PS/2は 、インストールされるオプションをその不揮発性メモリ(NVRAM)内の情報 と比較して、その設定の完全性を保証するために構成上の変更を検出する。これ らの設定ファイルは、リファレンス・ディスケットを使用する構成手順の間にフ ァイル・システム内に自動的に取り込まれる。例えば、PS/2のモデル70及 び80用のリファレンス・ディスケットは、これらのコンピュータに付属し且つ システム構成情報を格納するフロッピ・ディスケットから成る。PS/2の構成 手順は、極めて簡単でその実行が容易であるが、そのリファレンス・ディスケッ トは、すぐに使えるように手近の場所に置いておかなければならない。しかしな がら、最後のシステム構成から或る期間が経過すると、リファレンス・ディスケ ットを失ったり、どこかに置き忘れたりすることがあり得る。従って、リファレ ンス・ディスケットのコピーを直接アクセス記憶装置(DASD)上に格納して おくことが望ましい。 本発明の譲受人に譲渡された米国特許第5128995号は、DASDのシス テム部分からリファレンス・ディスケッ トのイメージをロードするための装置を開示している。このDASDの保護領域 には、ブート・レコード、BIOSイメージ及びリファレンス・ディスケットの イメージが格納されるようになっている。DASDの一部を保護する理由は、B IOSの汚染及び破壊を防止する必要があるからである。所定のシステム動作の 間、例えばプロセッサがOSの制御下にあるか、又はこのプロセッサが或るアプ リケーションを実行している場合、DASD制御装置は、この保護領域を無視す るように構成される。 現在の傾向として、複数のパーソナル・コンピュータを互いにリンクして情報 ハンドリング・ネットワーク(例えば、LAN)を構築することが、次第に多く なってきた。このようにすると、複数のパーソナル・コンピュータが、情報を交 換したり、I/O装置を共有したり、特定のハード・ファイル又はディスケット のような特定のDASDを利用することができるからである。典型的な情報ネッ トワークは、クライアントと呼ばれる多数の情報処理システムと、サーバと呼ば れる少なくとも1つの管理用の情報処理システムとを含んでおり、そしてこれら の全てのシステムは、銅線又は光ファイバ・ケーブルのような通信媒体を介して 互いに接続又はネットワーク化されている。サブシステム構成要素(即ち、クラ イアント又はサーバ)による典型的なネットワーク通信は、トークン・リング又 はイーサネットのような、1つ以上のネットワーク通信プロトコルに従う通信ア ダプタを介して行わ れる。更に、種々の無線又は赤外線プロトコルによってサーバに接続される処の 、無線式のモバイル・クライアントが開発された。有線式のLANに見られる前 述の諸問題は、無線式のLANについても殆どそのまま該当する。 ネットワーク化情報ハンドリング・システムの主要な利点は、複数の情報処理 システム間で種々の形式の情報を通信することができる、という能力にある。こ のネットワーク内で通信可能な情報は、情報ハンドリング・システム自体のステ ータス又は構成に係る情報を含んでいる。この構成情報は、種々の態様で(例え ば、診断を行ったり、ネットワーク化情報処理システム間で互いに構成及び機能 を通知するように)処理することができる。 従来、システム構成情報は、大型のネットワーク化システム内の障害条件を検 出するために利用されていた。例えば、IBM社のシステム390は、ネットワ ーク化システム内の性能を実時間式に監視するように設計されている。障害条件 を検出すると、診断ルーチンを実行して、この障害条件を欠陥のあるシステム構 成要素として隔離した後、検出済みの障害条件及びその診断結果を、モデム及び 電話回線を介して中央ステーションに通信するようになっている。 一般に、かかる実時間式の障害監視及び障害通信機能は、システムのハードウ ェア・アーキテクチャ、OS又はアプリケーション内に取り込まれている。しか しながら、大型のコンピュータ・ネットワーク内で実現されているような実時間 式の障害検出機能は、パーソナル・コンピュータから構成されるような小型の情 報ハンドリング・システムには適していない。その一部の理由は、事実上の業界 標準となっているOS(例えば、DOS及びWINDOW)が、大型のシステム で利用可能な障害分析及び報告機能をサポートしていない、という点にある。一 層重要なことは、実時間式の構成監視、障害検出及び報告機能を実現するには、 パーソナル・コンピュータの現在の中央処理能力が十分でない、ということであ る。 しかしながら、情報ハンドリング・ネットワークを構成する小型の情報処理シ ステム(例えば、パーソナル・コンピュータ)のOS及びCPUの能力が、かか るネットワークを介してシステム構成情報を実時間式に通信することをサポート していないとしても、かかるネットワークを介してシステムに関係する情報を通 信するという要請が依然として存在するのである。 このような要請が取り組まれたことのある情報ハンドリング・ネットワークと は、各々が対応するOS及び予定のシステム構成をそれぞれ有する複数の情報処 理システムを備え、各情報処理システムがその対応するOSの制御下でそれぞれ 動作するように編成されているものである。各情報処理システムは、そのOSを ロードする前の初期マイクロコード・ロード(以下「IML」と略記)期間中に 、予定のシステム構成に基づいてシステム構成中の任意の変更を検出するための 検出手段を含んでいる。また、各情報処理システムは、OSをロードする前にシ ステム構成中の変更を検出したことに応答して、システム構成情報をネットワー クを介して通信するための通信手段を含んでいる。 また、この情報ハンドリング・ネットワークに含まれる管理用の情報処理シス テム(例えば、サーバ)は、このネットワークを介して行われる通信を監視する ための監視手段及びこのネットワークを介して通信されるシステム構成情報を受 信するための受信手段を有する。 システム構成情報は、システム構成中の変更がユーザによって開始された特定 の情報処理システムを識別するための情報を含むことができる。管理用の情報処 理システムは、許可信号を供給することにより、ユーザが開始したシステム構成 の変更を許可したり又は不許可にする。 ここで、図面のうち特に図1Aを参照すると、そこには図1Bの情報ハンドリ ング・ネットワーク150(以下「ネットワーク150」と略記)内で動作可能 なパーソナル・コンピュータ100(以下「システム100」と略記)が示され ている。システム100は、適当なケースを有するシステム・ユニット102、 表示モニタ104(例えば、通常のビデオ表示装置)、キーボード110、オプ ションのマウス112及び印刷装置114から成る。また、システム・ユニット 102は、ディスケット駆動装置108及びハード・ファイルとも呼ばれる固定 ディスク駆動装置106を含むことがで きる。 図1Bのネットワーク150は、複数の情報処理システム102A及び102 Bから成り、そのうちの少なくとも1つは、図1Aのシステム100と同等の構 成とすることができる。システム102Aはサーバであり、ネットワーク150 内の管理用の情報処理システムとして動作する。他方、システム102Bは、ク ライアントとして動作する。典型的なクライアント(102B)は、サーバ10 2Aと同等の構成を有する。但し、システム102Bは、固定ディスク駆動装置 106を備えていなくてもよい(その場合、システム102Bは「メディアレス ・クライアント」と呼ばれる)。システム102A及び102Bは、周知の方法 で互いにネットワーク化され、ケーブル160を介して情報ハンドリング・ネッ トワーク内で情報信号を通信する。 動作を説明すると、システム102A及び102Bの動作を制御するためのO S(例えば、DOS又はOS/2)は、IML期間後にロードされる。一般に、 このOSが利用するBIOSは、IML期間後に主メモリにロードされるように なっている。BIOSは、ハードウェア装置とOSの間のインタフェースを提供 する。これにより、プログラマ又はユーザは、特定のハードウェア装置の動作に ついて高度な知識を有さなくても、そのマシンをプログラムすることができる。 例えば、BIOSディスケット・モジュールは、ディスケット駆動装置のハード ウェアについて高度な知識を有さないプ ログラマが、そのディスケット駆動装置をプログラムすることを可能にする。か くて、異なる企業が設計及び製造した多数のディスケット駆動装置をシステム1 00内で使用することができる。また、IML期間中にロードされるPOSTは 、電源オン時にシステム・ハードウェアの自己テストを行い、システム構成を決 定するとともに、そのシステム構成をNVRAM内に格納する。即ち、POST は、予定のシステム構成を現在のシステム構成と比較することにより、システム 構成上の変更を検出することができる。BIOS及びPOSTの詳細については 、「IBM Personal System/2 and Personal Computer BIOS Interface Technical Reference 1991」を参照されたい。本明細書では、この文献を援用する。統合化プレーナ 図2には、システム102A又は102Bの統合化プレーナ200が示されて いる。プレーナ200の印刷回路ボード(PCB)201上には、それぞれI/ Oスロットを有する多数のI/Oバス・コネクタ232と、バス制御ユニット2 14の制御下で高速のCPUローカル・バス210を介してメモリ制御ユニット 256に接続されたプロセッサ202が実装されている。メモリ制御ユニット2 56は、RAM264のような主メモリに接続されている。適当な任意のプロセ ッサ202(例えば、インテル社の80386、80486等)を使用すること ができる。PCB201上に実装したシステム電源コネクタ205は、システム 100用の電力を供 給するための電源ユニット(図示せず)に接続されている。 CPUローカル・バス210(アドレス、データ及び制御部分から成る)は、 プロセッサ202、オプションの数値演算コプロセッサ204、キャッシュ制御 装置206及びキャッシュ・メモリ208を相互接続する。CPUローカル・バ ス210に結合したシステム・バッファ212は、システム・バス216(アド レス、データ及び制御部分から成る)に接続されている。システム・バス216 は、システム・バッファ212とI/Oバッファ228の間に延びており、バス 制御ユニット214及び直接メモリ・アクセス(DMA)制御ユニット220に 接続されている。DMA制御ユニット220は、中央アービタ224及びDMA 制御装置222を含んでいる。I/Oバッファ228は、システム・バス216 とI/Oバス230の間のインタフェースを提供する。システム100に対し適 当なクロック信号を提供するために、発信器(OSC)207が図示のように接 続されている。推奨実施例は、当該技術分野で周知のPS/2のマイクロチャネ ル・バス上で実現されているが、本発明を実施するに当たって他のバス・アーキ テクチャも同様に使用できることは、当業者には明らかであろう。 I/Oバス230に接続した複数のI/Oバス・コネクタは、I/O装置又は メモリ用のアダプタ・カードを受け取るためのI/Oスロット232を有する。 図面の内容を簡潔にするため、図2には2つのI/Oコネクタ232が示されて いるに過ぎないが、特定のシステムの要件に応じて追加のI/Oコネクタを設け ることができる。図示のように、1つのI/Oコネクタは、システム(102又 は102B)用のネットワーク通信機能を提供するための、周知のトークン・リ ング式の通信アダプタ・カード231に接続されている。ネットワーク通信を開 始する場合、プロセッサ202は、周知の方法で通信アダプタ・カード231を 起動して、ネットワーク150を介してインバウンド及びアウトバウンド情報が 通信できるようにする。このため、通信アダプタ・カード231は、ネットワー ク150を介して情報を通信するために送信手段及び受信手段の両方を含んでい る。アービトレーション・バス226は、DMA制御装置222及び中央アービ タ224をI/Oコネクタ232及びディスケット・アダプタ246に結合する 。システム・バス216に接続したメモリ制御ユニット256は、メモリ制御装 置258、アドレス・マルチプレクサ260及びデータ・バッファ262を含ん でおり、RAM264によって代表されるような主メモリにも接続されている。 メモリ制御ユニット256は、プロセッサ202からのアドレスをRAM264 の特定領域にマップしたり、RAM264の特定領域をプロセッサ202へのア ドレスにマップするための論理手段を含んでいる。システム100は、1メガバ イトの容量を有する基本のRAM264を備えるように図示されているが、オプ ションのRAM266、268及び270を追加することもできる。 システム・バス216とプレーナI/Oバス234の間には、バッファ218 が結合されている。プレーナI/Oバス234は、アドレス、データ及び制御部 分を含んでいる。プレーナI/Oバス234に沿って、多様なI/Oアダプタ及 び周辺装置が結合されている。これを例示すると、(オプションの表示モニタ1 04を駆動するための)表示アダプタ236、クロック/CMOS RAM25 0、NVRAM248、直列アダプタ240(同期アダプタ又はRS232アダ プタと呼ばれることもある)、並列アダプタ238、複数のタイマ252、ディ スケット・アダプタ246、キーボード/マウス制御装置244、割り込み制御 装置254及びファームウェア・サブシステム242である。一般に、ファーム ウェア・サブシステム242は、ROMを含んでいて、そこに「ステージI P OST」と呼ばれるPOST及びBIOSプログラムの一部を保持している。以 下で詳述するように、「ステージI POST」は、初期の及び制限されたシス テム・テストを行うために使用され、IMLイメージとも呼ばれる「ステージI I POST」を、ディスケット駆動装置108又は固定ディスク駆動装置10 6のような外部記憶装置からロードするためのルーチンを含んでいる。 クロック/CMOS RAM250は、時刻を計算するために使用する。NV RAM248は、システム構成を格納するために使用する。即ち、NVRAM2 48は、システム100の現構成(例えば、アダプタ・カードの初期データ、固 定ディスク又はディスケットの容量、主メモリの容量、等)を記述するための情 報を保持する。構成プログラムを実行するたびに、これらのデータがNVRAM 248に格納されるようになっている。この構成プログラムは、PS/2に付属 するリファレンス・ディスケット上に格納した、通常の構成情報設定プログラム とすることができる。このリファレンス・ディスケットは、診断保守又はサービ ス・ディスケットと呼ばれることもある。この構成プログラムの目的は、システ ム100の構成を特徴づける値を予め決定し且つこれをNVRAM248に予め 格納することである。NVRAM248は、システム100の電源がオフとなっ てもこれらの値を保存することができるように、バッテリ・バックアップを有し 且つ消費電力の小さなCMOSメモリとすることができる。 キーボード/マウス制御装置244には、ポートA 278及びポートB 2 80が接続されている。これらのポートA及びBは、キーボード110及びマウ ス112をシステム100に接続するために使用される。直列アダプタ240に は、直列コネクタ276が結合されている。モデム(図示せず)のようなオプシ ョンの装置をこのコネクタ276を通してシステム100に結合することができ る。並列アダプタ238に結合した並列コネクタ274には、印刷装置114の ような装置を接続することができる。ディスケット・アダプタ246に接続した ディスケット・コネクタ282は、1つ以上のディスケット駆動装置108を接 続するために使用す る。代替的なプレーナ・ボード システム100の代替実施例に従って、統合化プレーナ200は、プレーナ・ ボード300及びプロセッサ・カード400(図3及び図4を参照)によって置 き換えられる。プロセッサ・カード400は、プレーナ・ボード300上に取り 外し可能に実装され、これに電気的に接続されている。図3及び図4における構 成要素のうち、図2の構成要素と同じものには、後者と同じ参照番号が付されて いる。図3を参照するに、プレーナ・ボード300のPCB301上には、その 内部配線又は回路により相互接続された種々の構成要素が実装(例えば、表面実 装)されている。これらの構成要素は、適当な電気コネクタ302を含んでいる 。このコネクタ302には、プロセッサ・カード400のエッジ416を差し込 んで、プロセッサ・カード400をプレーナ・ボード300上に取り外し可能に 実装し且つこれに電気的に接続する。PCB301上に実装した複数のシングル ・インライン・メモリ・モジュール(SIMM)コネクタ306は、システムの 主メモリを形成するメモリ・バンク308A、308Bへ接続するためのもので ある。PCB301上に実装した1つ以上のI/Oバス又は拡張コネクタ232 は、システム100に追加又は内蔵可能な種々の拡張アダプタ又はオプションへ 接続するためのものである。例えば、固定ディスク駆動装置106は、小型コン ピュータ用周辺機器インタフェース(S CSI)ディスク制御装置を有する処の、アダプタ・カード231に接続されて いる。アダプタ・カード231は、I/Oバス又は拡張コネクタ232に接続さ れている。各コネクタ232は、前述のマイクロチャネル・アーキテクチャに準 拠した型の市販のコネクタであることが望ましい。 また、PCB301上に実装した他の構成要素には、キーボード・コネクタ2 78及びマウス・コネクタ280にそれぞれ接続した割り込み制御装置254及 びキーボード/マウス制御装置244、ディスケット・コネクタ282に接続し たディスケット制御装置又はアダプタ246、直列コネクタ276及び並列コネ クタ274にそれぞれ接続した直列アダプタ240及び並列アダプタ238があ る(これらのアダプタ240及び238は、種々のI/O装置をシステム100 に接続することを可能にする)。PCB301上に実装したシステム電源コネク タ205は、システム100の電力を供給するための電源ユニット(図示せず) に接続されている。PCB301上に実装したその他の構成要素には、NVRA M248、クロック/CMOS RAM250、タイミング信号を供給するため の種々の発信器(図示せず)、回路の諸セクションを周知の方法で隔離するため のバッファ342及び344がある。 PCB301の配線は、図示されている種々の構成要素を相互接続し、次の3 つのグループに大別される。即ち、メモリ・バス310(線324〜338を含 む)と、チャネル・ バス312(アドレス・バス322、データ・バス320及び制御バス318を 含む)と、割り込み線314及び316を含むその他の信号線である。これらの グループの全ては、コネクタ302及び416を通して、PCB402上の対応 する配線に接続されることになる。バス312から分岐されているのは、プレー ナ機能バス319である。プロセッサ・カード 図4には、プレーナ・ボード300上に取り外し可能に実装すべきプロセッサ ・カード400が示されている。このプロセッサ・カード400のPCB401 上に実装(例えば、表面実装)した複数の構成要素は、プロセッサ202、オプ ションの数値演算コプロセッサ204、キャッシュ制御装置206、キャッシユ ・メモリ208、DMA制御ユニット220、バス制御ユニット214、メモリ 制御ユニット256、ファームウェア・サブシステム242、パリティ検査ユニ ット402及び404を含んでいる。プロセッサ202は、例えばインテル社の 80486のように、32ビットのデータ経路及び32ビットのアドレス指定能 力を有する高性能型であることが望ましい。もちろん、インテル社の80386 及びそれと同等のプロセッサも使用することができる。残りの構成要素は、この プロセッサとの互換性を維持するように、通常の方法で選択することができる。 複数のバッファ406、408、410、412及び414は、図示のように接 続されていて、諸回路間の選択的な隔離又は接続機能をそれぞれ 提供する。その目的とする処は、異なる回路を同時に使用できるようにすること であり、1例を挙げれば、プロセッサ202とキャッシュ・メモリ208の間で データを移動するのと並行して、或るI/O装置と主メモリ308A、308B の間でデータを転送する、ということである。前述の全ての構成要素は、PCB 401内の印刷配線回路によって、互いに電気的に接続されている。エッジ・コ ネクタ416は、図3に示したプレーナ・ボード300上のエッジ・コネクタ3 02に差し込み可能であり、その場合には、プレーナ・ボード300とプロセッ サ・カード400を電気的に且つ機械的に相互接続することができる。かくて、 それぞれに関連する特定の型のプロセッサを有する処の、種々のバージョンのプ ロセッサ・カード400を、プレーナ・ボード300に差し込むことができる。 PCB401の配線回路は、ローカル・バス418を含んでいる。このローカ ル・バス418は、データ線420、アドレス線422及び制御線424から成 り、図4に示すように、プロセッサ202、オプションの数値演算コプロセッサ 204、キャッシュ制御装置206及びキャッシュ・メモリ208を相互接続す る。残りの回路線は、一般に、割り込み線316、チャネル・バス線312及び メモリ・バス線310を含んでいる。チャネル・バス線312は、制御バス線3 18、データ・バス線320及びアドレス・バス線322を含んでいる。他方、 メモリ・バス線310は、多重化メモリ ・アドレス線324及び332、メモリ・バンク308A及び308B用の行ア ドレス・ストローブ(RAS)線328及び336、列アドレス・ストローブ( CAS)線138、データ・バスA線326及びデータ・バスB線334、パリ ティ検査又はECC検査を介したエラー検査に使用するための線330を含んで いる。システム100に対し適当なクロック信号を提供するために、発信器20 7が図示のように接続されている。図2〜図4の内容を簡潔にするため、これら の図面では、他の種々雑多の線(例えば、リセット、接地、電源オン等)が省略 されている。 プレーナ・ボード300及びプロセッサ・カード400を有するシステム10 0の通常の動作中、プロセッサ・カード400は、プレーナ・ボード300に電 気的に及び機械的に接続される。この場合、プロセッサ・カード400は、プレ ーナ・ボード300に対し実質的に垂直な平面内に位置することが多い。 前述のように、システム・ファームウェアは、POST及びBIOSを含んで いる。また、BIOSは、互換BIOS及び拡張BIOSを含んでいる。POS Tは、システム100の電源が最初にオンとなるときに実行すべき1組の命令を 含んでいる。現在のシステム構成が決定される場合、POSTの実行は、システ ム100の初期化にとって極めて重要である。BIOSは、プロセッサ202と I/O装置の間のデータ及び制御命令の転送を容易にするための1組の命令を含 んでいる。 システム102B(クライアント)がメディアレスで、固定ディスク駆動装置 又はディスケット駆動装置を有していない場合、通信アダプタ・カード231を 介して、リモート初期プログラム・ロード(RIPL)が行われる。この通信ア ダプタ・カードは、例えばコネクタ232の1つに接続されていて、周知の方法 でシステム102A(サーバ)からOSをブートすることを可能にする。 POST内のブートストラップ・プログラムは、ブート装置を突き止めるとと もに、ブート・レコードをロードするように試みる。代表的なブート装置は、固 定ディスク駆動装置106又はディスケット駆動装置108であるが、メディア レス・クライアントの場合には、サーバ102Aをブート装置として使用する。 ディスケット駆動装置108は、その動作のためにブート又はOSのディスケッ ト(図示せず)を必要とする。もし、POSTが、ブート装置からのブート・レ コードを成功裏にロードすれば、POSTは、このブート・レコードに制御を渡 して、そのブートストラップ・プログラムの動作を完了する。他方、ブート・レ コードがロード不能で、しかもRIPLアダプタが存在すれば、POSTは、ブ ート・ソースが必要であることをユーザに指示する。このシステムのブートスト ラップ動作には、互換BIOSが不可欠である。互換BIOSは、固定ディスク 駆動装置106及びディスケット駆動装置108へのアクセスを含む、多数のサ ービスを提供する。 システム102A及び102Bは、IMLと呼ばれる処の、2ステージのPO STを実行する。このIMLは、当該技術分野では周知であり、本明細書におい て援用する米国特許第5128995号に詳細に開示されている。IMLに従っ て、プロセッサは、「ステージI POST」の間にファームウェア・サブシス テム242の内容をロードし、その諸コマンドを実行して、表示装置や所定のメ モリ・アドレスの如き所定のI/O装置の最小検査を行う。その後の「ステージ II POST」の間に、プロセッサ202は、IMLイメージを使用してシス テム・テストを完了する。このIMLイメージは、POSTを完了し且つプロセ ッサ202の制御をOSに渡すための諸命令を含んでいる。POSTの間、現在 のシステム構成を決定した後に、予め決定され且つNVRAM248内に予め格 納されているシステム構成情報と比較する。このIMLイメージは、プロセッサ 202に特有のものであって、記憶装置のシステム区画内に格納される。もし、 この記憶装置がディスケット駆動装置108内のディスケットであれば、このシ ステム区画は、このディスケットの一部を占有することになる。このシステム区 画上に格納したIMLイメージは、POSTの一部を構成するとともに、システ ム・ハードウェアを設定又は診断するための諸ルーチンを保持するリファレンス ・イメージの一部を構成する。一の構成変更に起因するエラーをPOSTが検出 する場合、このリファレ ンス・イメージがロードされて実行される。また、予め定義されたキー・シーケ ンスに応答して、このリファレンス・イメージがロードされることもある。もし 、記憶装置が固定ディスク駆動装置106であれば、前記のシステム区画は、重 要なIMLイメージが不注意により破壊されないように、記憶媒体の保護領域に 格納される。PS/2のモデル90及び95では、保護されたシステム区画が記 憶媒体の最後の領域に格納されて、3メガバイトの記憶容量を占有するようにな っている。 本発明によれば、ネットワーク150のシステム102A及び102Bは、I ML期間中にシステム構成中の任意の変更を検出する際に、通信アダプタ・カー ド231を活動化することにより、OSをロードする前に、ネットワーク150 を介して所定のシステム構成情報を同報通信する。 図5を参照するに、その流れ図500は、本発明の目的を達成するために取ら れる諸動作ステップを示している。システムの電源がオンになると(ブロック5 01)、システムは、IML期間中にPOSTを実行する(ブロック502)。 次に、このシステムは、システム構成の変更が試みられたか否かを決定する。か かるシステム構成の変更が生じ得るのは、例えば主メモリの増加又は減少のよう なハードウェア構成が変更される場合である。或いは、ユーザが予め定義された キー・ストローク・シーケンスを実行してシステム構成の変更を要求するような 場合にも、システム構成の変更がユーザか ら開始又は指示されることがある。先ず、このシステムは、IML期間中にPO STを通してハードウェア構成の変更があったか否かを決定する(ブロック50 3)。このような決定を行うには、現在のシステム構成をNVRAM248に格 納した予定のシステム構成と比較すればよい。もし、ハードウェア構成の変更が 存在しなければ、ユーザが開始した構成の変更が存在するか否かを決定する(ブ ロック504)。この決定を行うには、周知の方法を使用して、予め定義された キー・ストローク・シーケンスをユーザが実行したか否かを検出すればよい。も し、ユーザが開始した構成の変更が存在しなければ、OSがロードされる(ブロ ック505)。 他方、このシステムのハードウェア構成が変更されたことをPOSTが決定す れば(ブロック503)、所定のシステム構成情報を収集した後、OSをロード する前にネットワーク150を介してこれを通信する。かかるシステム構成情報 は、就中、1つ以上のアダプタ・カードの障害に係るエラー・コード、NVRA M、CMOS及びBIOSデータ領域、等の情報を含んでいる。その後、システ ム区画からリファレンス・イメージをロードし且つこれを実行することにより、 現在のシステム構成をNVRAM248内に格納する。 もし、POSTの結果、ユーザが開始した構成の変更が試みられたことが分か れば、システム区画のアクセスが許可されているか否かを決定する(ブロック5 07)。もし、許可されていなければ、システム構成情報を収集し且つこれをネ ットワークを介して通信した後(ブロック508)、OSをロードする(ブロッ ク509)。他方、システム区画のアクセスが許可されていれば(ブロック50 9)、このアクセスが、管理用の情報処理システム、即ちサーバ102Aからの 許可を必要とするか否かを決定する(ブロック510)。もしそうでなければ、 リファレンス・イメージをロードし且つこれを実行することにより、ユーザが変 更したシステム構成を許可する。他方、システム区画のアクセスがサーバ102 Aからの許可を必要としていれば、変更すべきシステム構成の識別子を含むシス テム構成情報の変更要求を、通信アダプタ・カード231を通して、サーバ10 2Aへ通信する(ブロック511)。もし、サーバ102Aが許可を与えなけれ ば、OSをロードする(ブロック510及び505)。 図6には、図5のブロック506及び508の間に取られる諸ステップの一層 詳細な流れ図600が示されている。システム構成の変更(ハードウェアの変更 又はユーザが開始した構成の変更)を検出すると、通信アダプタ・カード231 を活動化する(ブロック601)。次に、このシステムは、NVRAM248か ら予定のシステム構成を収集するためのドライバをロードする(ブロック602 )。このドライバは、種々の装置からこのシステムの現在のハードウェア構成を 収集する(ブロック603)。次に、エラーに関係する情報、即ちハードウェア 構成変更のエラー・コード又はユーザ・アクセス要求情報を収集する(ブロック 604)。前述の諸ス テップの間に収集した全ての情報をフォーマット化し且つこれを通信アダプタ・ カード231を通してネットワーク150上に通信する。 サーバ102Aは、通信アダプタ・カード231を通して、通信されたシステ ム構成情報を受信する。サーバ102Aは、ネットワーク150上の通信を監視 するためのソフトウェア・ルーチンの形態であることが好ましい、監視手段を含 んでいる。前記システム構成情報を検出する場合、サーバ102Aは、この情報 を受信するとともに、これをDASDのような永続記憶媒体内に格納する。この ような格納情報をフォーマット化することが好ましく、また後の処理に備えて時 刻スタンプを付すことが好ましい。 ネットワーク150内の各システムは、本発明に従って通信されるシステム構 成情報を受信する機能を有する。これらのシステムが受信した情報は、各受信シ ステムに対し、ネットワーク150内の他のシステムの諸機能を通知して、これ らのネットワーク機能を十分に活用するように各受信システムのハードウェアを 適応させることを可能にする。 前述の内容から明らかなように、本発明は、OS又は他の任意のアプリケーシ ョンをロードする前に、システム構成情報の通信機能を提供する。かくて、通常 のOSを搭載した情報処理システム(例えば、IBM互換マシン)から成る情報 ハンドリング・ネットワークが、この有用なネットワーク機能を活用することが できるようになる。また、本発明によれ ば、起動時であって、しかもOSをロードする前に、必要に応じてシステム構成 情報を通信することができるので、各システムは構成の監視タスクを実時間式に 行うことから解放されることになる。ソフトウェア環境 概要:オブジェクト指向技術 本発明は、オブジェクト指向のフレームワーク技術を使用して、これを実現す ることができる。かかるフレームワーク技術について十分な知識を有する当業者 は、以下の概要に係る説明をスキップしてもかまわない。しかしながら、オブジ ェクト指向技術やフレームワーク技術の知識が十分でない当業者については、本 発明の利点を理解するために、以下の概要に係る説明を十分に検討すべきである 。オブジェクト指向技術と手続き型技術との対比 本発明は特定のオブジェクト指向技術に係るが、ここで最初に理解すべきは、 一般に、オブジェクト指向技術が通常の手続き型技術(プロセス型技術とも呼ば れる)と著しく異なる、という点である。これらの技術は、両者とも同じ問題を 解決するために使用することができるが、この問題に対する最終的な解は、常に 著しく異なっている。その原因は、手続き型技術の設計目標がオブジェクト指向 技術のそれと根本的に異なっている、という点にある。即ち、手続き型技術の設 計目標が、問題を解決するプロセスの全体に向けられているのに対し、オブジェ クト指向技術の設計目標は、問題の解を 与えるために、この問題を作業可能な1組の自律走行式エンティティ(オブジェ クトと呼ばれるもの)にどのようにして分解することができるか、ということに 向けられている。別言すれば、オブジェクト指向技術が手続き型技術と著しく異 なっている理由は、それぞれの問題が互いに協働する1組のオブジェクトに還元 され、ネストされたプログラム又は手続きの階層構造に還元されるのではないか らである。用語「フレームワーク」 オブジェクト指向技術の専門家にとって特定の意味を有する用語や他の表現は 、時代とともに次第に発展してきた。しかしながら、オブジェクト指向分野にお いて最も曖昧な定義の1つは、「フレームワーク」という用語の定義である。な ぜなら、フレームワークという用語は、人が変わればその意味も変わってくるか らである。従って、想定した2つのフレームワーク機構の特性を比較する場合、 この比較が適正な比較対象について行われていることに留意すべきである。以下 の説明から明らかなように、本明細書では、コア機能及び拡張可能な機能を有す るように設計されたオブジェクト指向機構を意味するものとして、「フレームワ ーク」という用語を使用する。コア機能とは、フレームワークの消費者による修 正の対象とはならない処の、フレームワーク機構の部分である。他方、拡張可能 な機能とは、フレームワークの消費者によってカストマイズ及び拡張されるよう に明示的に設計した処の、フレームワーク機構の部分である。オブジェクト指向のフレームワーク機構 一般に、オブジェクト指向のフレームワーク機構は、オブジェクト指向の解と して適正に特徴づけることができるが、フレームワーク機構と基本的なオブジェ クト指向の解との間には、根本的な相違点が存在する。この相違点は、フレーム ワーク機構が、この解の或る側面のカストマイズ及び拡張を許容し且つこれを促 進するように設計されていることに由来する。別言すれば、フレームワーク機構 は、問題に対する解を与えるのに留まらない。なぜなら、フレームワーク機構は 、時間の経過とともに変わる個別の要件に取り組むためにカストマイズ及び拡張 可能であるという意味の、生きている解を与えるからである。もちろん、フレー ムワーク機構のカストマイズ/拡張性は、フレームワークの消費者にとって極め て価値がある。なぜなら、フレームワークをカストマイズ又は拡張するのに要す るコストは、既存の解の置き換え又はその再作業を行うのに要するコストよりも ずっと少ないからである。 従って、フレームワーク設計者(以下「設計者」と略記)が特定の問題を解決 せんとする場合、この設計者は、単に個々のオブジェクトや、これらのオブジェ クトの相互関係を設計しているのに留まらない。この設計者は、そのフレームワ ークのコア機能(即ち、フレームワーク消費者による潜在的なカストマイズ及び 拡張の対象とすべきでないフレームワークの部分)及び拡張可能な機能(即ち、 潜在的なカストマイ ズ及び拡張の対象とすべきフレームワークの部分)をも設計するからである。要 するに、フレームワーク機構の最終的な価値は、オブジェクト設計の品質だけに あるのではなく、フレームワークのどの側面がコア機能を表し且つどの側面が拡 張可能な機能を表すかということを含む、設計上の選択肢にもある。ZAF:例示的なフレームワーク機構 当業者には明らかなように、フレームワークの設計は、必然的に絡み合った反 復的プロセスとなるが、以下では、簡略化したフレームワーク機構の設計上の選 択肢を例示する。当然のことなから、この例示的フレームワークは、本発明の利 点を理解することができるように、フレームワーク機構を説明するための便宜上 のものであるに過ぎない。 この設計者は、問題ドメインから諸オブジェクトを選択することによって、或 るフレームワーク機構に必要な諸オブジェクトを決定する。問題ドメインとは、 解決すべき特定の問題の抽象的な表示である。このフレームワーク機構について 選択した例示的な問題ドメインは、動物園の管理用のそれである。特定の問題は 、動物園の動物(animal)を世話し且つ給餌する際に、飼育係(zoo keeper)を 援助するための機構を設計することである。これから例示的に説明する動物園管 理用フレームワーク(Zoo Administration Framework:以下「ZAF」と略記) では、この設計者は、動物に関する問題ドメインを調べた上で、任意のZAFが 飼育係と動物の間の 関連を表現した機構(即ち、飼育係が行うべき動物の飼育方法を表現した機構) を必然的に含んでいるのを決定することになろう。また、この設計者は、動物が 、檻、囲い、水槽及び他の収容ユニット(containment unit)内で生息している のを認識することになろう。従って、この設計者は、かかるフレームワークが、 これらの3つのエンティティ及び関連の全てを表現した機構を包含しなければな らない、という着想から出発することになろう。 設計プロセスから説明すると、この設計者は、カテゴリ図と呼ばれるものから 出発する筈である。カテゴリ図とは、高レベルの複数のフレームワーク機構が互 いにどのように関係しているかを記述するのに使用されるものである。図7は、 ZAFのカテゴリ図である。カテゴリ図にある各機構は、特定の機能を遂行する 諸オブジェクトのグループ化を表している。説明の便宜上、この設計者が、ZA Fを4つの高レベルの機構(即ち、管理用の機構、飼育係の機構、動物の機構及 び収容ユニットの機構)から構成しなければならない、と決定するものと仮定す る。 管理用の機構は、動物園を管理するために、飼育係の機構を使用するように設 計されている。従って、管理用の機構は、飼育係の機構との使用関連を有してい ると云われる。 前述の如く、管理用の機構は、ZAFの全体を制御するための責任を有するよ うに設計されている。従って、管理用の機構は、飼育係の機構の動作をスケジュ ールするための責任 を有する。ここで、この設計者が、管理用の機構をZAFのコア機能として設計 した、という点に留意すべきである。つまり、管理用の機構は、潜在的なカスト マイズ及び拡張の対象とならないように設計されている。図7のカテゴリ・ボッ クス内の記号「C」は、かかるコア機能を意味する。また、管理用の機構と飼育 係の機構の間の使用関連も、フレームワーク消費者による最終的なカストマイズ に利用できないように設計されている。 飼育係の機構は、総じて動物の世話及び給餌について責任を有するように設計 されている。従って、飼育係の機構は、そのタスクを遂行するために、動物の機 構及び収容ユニットの機構を使用する。しかしながら、管理用の機構の設計と異 なり、この設計者は、飼育係の機構を拡張可能な機能として設計した。つまり、 飼育係の機構は、動物の世話及び給餌の将来の要件に取り組むために、フレーム ワーク消費者が変更及び/又は拡張するのに使用することができるように設計さ れている。図7のカテゴリ・ボックス内の記号「E」は、かかる拡張可能な機能 を意味する。 この設計者は、動物と飼育係の間の動物側の対話を表すように、動物の機構を 設計している。動物園内の動物の総数は定期的に変動するのが普通であるから、 動物の機構は、これを反映して拡張可能な機能として設計されている。収容ユニ ットの機構は、(囲いや水槽や檻などの)個々の収容ユニットを表すことにより 、飼育係の機構と対話する。動物の機構 と同様に、収容ユニットの機構は、将来のカストマイズ及び拡張要件を処理する ことができるように、拡張可能な機能として設計されている。ここで、飼育係、 動物及び収容ユニットのそれぞれの機構の全てが拡張可能な機能として設計され ているとしても、これらの機構の間の関連は、ZAFのコア機能として設計され ていることに留意されたい。別言すれば、フレームワークの消費者(以下「ZA F消費者」と表記)に対し飼育係、動物及び収容ユニットの機構に関する柔軟性 を与えることが望ましいとしても、これらの機構の間の関連を、ZAF消費者が 変更することを許容するのは望ましくない、ということである。 次に、この設計者は、図7の諸機構を構成する処の、諸クラス及び諸関連を設 計することになろう。クラスとは、1組の同様のオブジェクトの定義である。か くて、クラスとは、これらのオブジェクトの抽象概念又はオブジェクトの或る型 の定義であると考えることができる。コンピュータ・システムの観点からすれば 、単一のオブジェクトは、カプセル化した1組のデータ及びかかるデータについ てコンピュータ・システムが遂行するような単一又は1群の動作を表す。事実、 安全なコンピュータ・システムでは、或るオブジェクトによって制御された情報 をアクセスするには、このオブジェクト自体を介して行わなければならない。こ のことが、オブジェクト内に保持された情報がこのオブジェクトによってカプセ ル化されている、と云われる所以である。 各クラス定義は、そのオブジェクトによって制御される情報を定義するための データ定義と、そのオブジェクトが制御するデータについて諸オブジェクトによ って遂行される1つ又は1組の動作を定義するための動作定義とから成る。別言 すれば、クラス定義とは、定義されたデータについて遂行される1つ又は1組の 動作を定義することによって、或るオブジェクトが他のオブジェクトに対しどの ように作用及び反応するかを定義するものである(これらの動作は、メソッド、 メソッド・プログラム及び/又はメンバ_機能と呼ばれることもある)。まとめ て考える場合、かかる定義済みの動作及びデータは、そのオブジェクトの振る舞 い(behaviour)と呼ばれる。要するに、クラス定義とは、その1つ以上のメン バ・オブジェクトの振る舞いを定義するものである。 図8は、この設計者がZAF用に設計した諸基本クラスを示す処の、オブジェ クト指向のクラス図である。各クラス表示は、図7の諸機構に対するその関連を 含んでいる。例えば、飼育係のクラスは、飼育係の機構からのものであると表示 されている。ZAFの諸基本クラスが含んでいるのは、動物園の管理者のクラス (管理用の機構の一部)、飼育係のレジストリ・クラス(管理用の機構の一部) 、動物のレジストリ・クラス(飼育係の機構の一部)、飼育係のクラス(飼育係 の機構の一部)、収容ユニットのレジストリ・クラス(飼育係の機構の一部)、 動物のクラス(動物の機構の一部)、収容ユニットのクラス(収容ユニットの機 構の一部)である。 ここで、これらのクラスの間の関連は、ZAFのコア機能として設計されてい るので、ZAF消費者がこれらを最終的に変更できないことに留意されたい。 管理者のクラスは、ZAFの制御全般に責任のあるオブジェクトの定義である 。ここで、オブジェクト指向の全てのクラスは、特定の問題の解を与えるように 対話する処の、複数のオブジェクトを定義することを想起されたい。しかしなが ら、生きている解(即ち、将来の諸要件に取り組むようにカストマイズ及び/又 は拡張可能な解)を与えるために、それぞれのフレームワーク機構のそれぞれの オブジェクトがどのように設計されているかを理解するには、これらのクラス定 義の特性を調べることが必要である。 管理者のクラスは、飼育係のレジストリとの使用関連を有するように設計され ている。この設計者は、管理者のクラス及びレジストリ・クラスを、ZAFのコ ア機能として設計している。なぜなら、この設計者は、ZAF消費者が、これら のクラス定義のメンバである諸オブジェクトの振る舞いを変更できないようにす べきであると決定したからである。飼育係のレジストリは、飼育係のクラスに対 し「a contains by reference」と呼ばれる関連を有するクラスであって、飼育 係のオブジェクトの全ての収容体であるようなオブジェクトを定義する。従って 、飼育係のレジストリは、「list_zoo_keepers()」動作の定義を含んでいる。後 述するように、この動作は、飼育係のオブジェクトのリストを、当該リストを要 求 する他のオブジェクトに与える責任を有する。 図9は、管理者のクラスの下位レベル表示である。管理者の型の諸オブジェク トは、ZAFの制御全般について責任を有するから、管理者のクラスは、動物園 の管理に向けられた諸タスクを遂行するための諸動作を含むように設計されてい る。このクラス定義は、次の5つの動作を含んでいる。 5_minute_timer(); add/delete_animal(); add/delete_containment_unit(); add/delete_zoo_keeper(); start_zoo_admin()。 前記の「start_zoo_admin()」動作は、ZAFを開始する責任を有する。即ち 、ユーザ又はシステム管理者が「start_zoo_admin()」動作と対話することによ り、ZAFを介して動物園の管理を開始する、ということである。この設計者は 、一旦開始されると、「5_minute_timer()」動作を開始するように、「start_zo o_admin()」動作を設計している。この「start_zoo_admin()」動作は、飼育者の 諸オブジェクトに対し、外に出て動物を調べるように、5分ごとに命令する。「 add/delete_zoo_keeper()」動作の責任は、ZAFのユーザと対話することを通 して、追加の飼育係を定義し(即ち、追加の飼育係のクラス)、追加の飼育係を 加え(即ち、飼育係のオブジェクト)、飼育係のクラス及び/又はオブジェクト を除去することである。明らかに、飼育係のオブジェクトの各々は、 動物園内の特定のタスクを遂行する責任を有する。従って、ZAFのユーザの希 望に応じて、追加のタスクを取り扱うために飼育係の定義及びオブジェクトを追 加したり、もはや必要でなくなった定義又はオブジェクトを除去することができ る。この柔軟性は、飼育係の機構を拡張可能な機能として設計することに由来す るものである。 前記の「add/delete_zoo_keeper()」動作と同様に、「add/delete_animal()」 動作の責任は、ユーザと対話することを通して、動物の追加のクラス及びオブジ ェクトを定義し、もはや必要でなくなったクラス及びオブジェクトを除去するこ とである。動物園にとっては、動物を追加したり除去することは、極めて自然で あるからである。「add/delete_containment_unit()」動作の責任は、収容ユニ ットの新しいクラス及びオブジェクトを定義するとともに、もはや必要でなくな ったクラス及び/又はオブジェクトを除去することである。この柔軟性を得るた めに、この設計者は、動物の機構及び収容ユニットの機構を拡張可能な機能とし て設計している。 再び図8を参照するに、飼育係のクラス定義は、動物のレジストリ、動物、収 容ユニットのレジストリ及び収容ユニットのクラスとの使用関連を有する。ZA Fの価値を強化するには、飼育者、動物及び収容ユニットのクラスをZAF消費 者がカストマイズ及び拡張できるようにすればよいから、これらのクラスは拡張 可能な機能として設計されている。しかしながら、動物及び収容ユニットのレジ ストリ・クラスの振 る舞いを変更すると、ZAFの基本動作を混乱させることになりかねない。従っ て、これらのクラスは、ZAFのコア機能として設計されている。 図10は、飼育者のクラスのクラス図である。図10の詳細を説明するに先立 ち、図10のクラス定義が、「クラス階層」と呼ばれる非常に簡単な配列内でラ ンクされていることを指摘しておく。或るクラス階層において最も一般的/抽象 的なクラスを表すようなクラス(例えば、飼育者のクラス)は、この階層の基本 クラスと呼ばれる。或るクラス階層における諸クラスの配列は、最も抽象的なも のから最も具体的なもの(即ち、一般から特殊)に移行する。一般性が比較的少 ないクラス(例えば、給餌係のクラス)は、これより一般的な1つ以上のクラス (例えば、飼育係のクラス)からの特性を継承すると云われる。かくして、給餌 係、獣医(veterinarian)及び温度制御係のクラス定義は、飼育係のクラスのサ ブクラスであると云われる。継承機構については、図11を参照して以下で詳述 する。 図10に示すように、飼育係のクラス定義は、「check_animals()」動作の単 一の定義を含んでいる。また、飼育者のクラスが、抽象クラスとしてマークされ ていることに留意されたい。抽象クラスとは、そのメンバとして作成されたオブ ジェクトを有するように設計されておらず、その代わりに、その諸サブクラス用 の共通のインタフェース/プロトコルを定義するために使用される。或るクラス が抽象クラスであると 云われるのは、その少なくとも1つの動作定義が、純粋で仮想的な動作定義であ る場合である。かかる純粋で仮想的な動作定義を定義する目的は、その動作のサ ブクラス定義用の共通のインタフェースを定義するためだけにある。別言すれば 、実際の振る舞い(即ち、データ及び動作)の設計は、サブクラス自体に任され るのである。飼育係のクラス定義の場合は、給餌係、獣医及び温度制御係のサブ クラス定義が、飼育係のクラスに含まれている処の、純粋で仮想的な「check_an imal()」動作定義の特定の実現体を規定する。或る動作がゼロに等しく設定され ると、この動作は、純粋で仮想的なものとマークされることになる。 尤も、純粋で仮想的な動作定義の共通なインタフェースを、全てのサブクラス が尊重しなければならないことに留意する必要がある。即ち、要求元のオブジェ クト(クライアント・オブジェクトと呼ばれるもの)がサブクラスのメンバ・オ ブジェクト(サーバ・オブジェクトと呼ばれるもの)を使用することが可能であ り、しかもその場合において、このサーバ・オブジェクトの特定のサブクラスを 知る必要がない、ということである。例えば、動物園の管理者のクラスによって 定義されたオブジェクトが特定のアクションの遂行を必要とする場合、このオブ ジェクトは、常に飼育者のオブジェクトと対話することになる。これらのオブジ ェクトに対するインタフェースは抽象的に定義されたから、基本クラスの飼育係 及び「check_animal()」動作用のサブクラス定義内に保持され た管理者のオブジェクトは、任意のサーバ・オブジェクトの諸サブクラスに関す る特別の知識を有する必要がない。この結果、(管理者のオブジェクトの側にお ける)アクションの必要性を、このアクションを(飼育係のサブクラスのオブジ ェクトの1つによって)実行する方法から隔離することができる。抽象クラスの 特性を活用する(ZAFの設計と同様の)設計は、ポリモアフィック(polymorp hic)であると云われる。 かかるポリモアフィズム(polymorphism)がオブジェクト指向のフレームワー ク設計にとって極めて重要である理由は、アクションが実際に行われているとい う事実に依存するような機構を生じさせることなしに、何かが行われる方法(実 現体と呼ばれるもの)を変更又は拡張することが可能となるからである。別言す れば、クライアント・オブジェクトは、所定のオブジェクトが所定の機能を遂行 することだけを理解すれば十分であって、これらの機能が実際にどのように遂行 されるかを理解する必要はないのである。この方法を使用すれば、将来の諸要件 を満足するように、適正に設計されたフレームワークのカストマイズ及び拡張を 容易に行うことができる。 前述の通り、この設計者は、飼育係のオブジェクトが動物のオブジェクト及び 収容ユニットのオブジェクトと対話してそれらのタスクを遂行するように、ZA Fを設計している。図11は、抽象クラスである動物のクラス階層についてのク ラス図である。動物のクラス定義は動物の特性及び振る舞い を表現する責任を有するから、この設計者は、この責任を反映するように抽象ク ラスである動物を設計している。図示の如く、例示的な動物のクラス定義は、デ ータ定義の「feed_freq」、「location」及び「temp_range」と、動作定義の「g et_temp_range()」、「feed()」、「needs_food()」及び「vet_visit()」を含ん でいる。 このフレームワークの全容を理解するには、各定義を詳細に調べる必要はない 。しかしながら、データ定義の「temp_range」、並びに動作定義の「get_temp_r ange()」及び「feed()」は、十分に考えられたフレームワーク設計の選択肢の良 い例である。 「feed()」動作定義は、(図示されていない特定の給餌装置を通して)動物へ の実際の給餌を遂行するように設計されている。かかる「feed()」動作は、純粋 で仮想的な動作である。このことは、このクラスの設計が次のようなものである こと、即ち必要な機能を遂行する実際の機構がその諸サブクラスによって定義さ れることを意味する。説明中の例では、諸サブクラスのメンバとして作成される 諸オブジェクトがそれぞれ特殊化されたニーズを有しているので、このようにサ ブクラス定義に任すことは、良い設計方法である。例えば、ZAFでは、動物の それぞれの型ごとに特定の給餌装置が必要となる公算が大きいから、一般的な「 feed()」動作を定義することは困難であるばかりでなく、無駄でもある。 比較のため、この設計者は、「get_temp_range()」動作を、 純粋で仮想的な動作定義ではないように、明示的に設計している。このことは、 「get_temp_range()」動作がデフォルト動作として一般的に定義されていること を意味する。かくて、これは仮想的な動作であると見なされる。デフォルト動作 は、諸サブクラスに対し一般的な機能を与えるために使用されるものである。こ れらのサブクラスは、単にデフォルト動作を使用するか、或いは再定義によって デフォルト動作をカストマイズ又は拡張することができる。 哺乳動物は、動物のクラスのサブクラスであるから、後者の全ての特性を継承 する。これに関連して、哺乳動物のクラスが抽象クラスとしても定義されること に留意されたい。つまり、このクラスがそのメンバとして作成されたサブクラス を有するように設計されていないが、その代わりに、その諸サブクラス用の共通 のインタフェースを与えるように設計されている、ということである。哺乳動物 のサブクラスは、更に肉食動物及び草食動物のクラスにサブクラス化される。 「feed()」動作の定義は、それぞれのサブクラスに任されているから、肉食動 物及び草食動物のサブクラスの各々は、「feed()」動作のそれ自体の定義を有す る。これが良い設計方法である所以は、肉食動物のニーズと草食動物のニーズが それぞれ異なるからである。 「temp_range」データ定義は、特定の動物が自然に生息する場所のそれと一致 するような温度の範囲を定義し、「get_temp_range()」動作定義は、特定の動物 に対する「temp_ran ge」を検索し且つこれを要求元のクライアント・オブジェクトに戻すように設計 されている。爬虫動物のサブクラスは、それ自体の「temp_range」データ定義と 、それ自体の「get_temp_range()」動作定義を含んでいる。ZAFは、動作定義 と同様にデータ定義が変更可能であることを記述するように、設計されている。 多くの爬虫動物は、夜が非常に寒く且つ日中が非常に暑い砂漠条件下で生息して いるから、爬虫動物のクラスに関しては、時刻及び温度情報を含むようにデフォ ルトの「temp_range」定義が変更されている(図11には明示せず)。これが良 い設計方法である所以は、時刻及び爬虫動物の収容ユニット自体の現在の温度に 基づいて温度調整を行うことができるように、ZAFが、爬虫動物の収容ユニッ トを他の収容ユニットとは異なる態様で扱うことを可能にするからである。 図12は、収容ユニットのクラスの下位レベル表示のクラス図である。収容ユ ニットのクラスは、仮想的な動作定義である処の、「adjust_temp()」を含んで いる。かかる「adjust_temp()」動作定義は、動物園の諸収容ユニット内の温度 を(図示しない加熱及び冷却機構を介して)実際に調整するために使用されるよ うな、インタフェース及び機構の両方を定義する。ZAFの諸オブジェクトが対話する方法 特定の問題に対する解を構成する諸オブジェクトを設計することに加えて、こ の設計者は、個々のオブジェクトがどの ように対話するかということも設計しなければならない。別言すれば、これらの オブジェクトは、その設計方法を活用するように相互に関係しなければならない 。前述のように、或るオブジェクトの定義済みの動作がこのオブジェクト用に定 義したデータを操作する方法は、このオブジェクトの振る舞いと呼ばれる。それ ぞれのオブジェクトは、自律走行式エンティティとして特徴づけることができる が、依然として重要なことは、各オブジェクトが他のオブジェクトと相互に関係 するときに、一貫性のある振る舞いを呈することである。なぜなら、オブジェク ト自体が一貫性のある振る舞いを呈するためには、これらのオブジェクトが、他 のオブジェクトの一貫性のある振る舞いに依存することになるからである。事実 、一貫性のある振る舞いが非常に重要であることは、或るオブジェクトの振る舞 いを、このオブジェクトが他のオブジェクトと有する契約と呼んでいることから も明らかであろう。或るオブジェクトが一貫性のある振る舞いを呈さない場合、 このオブジェクトは、他のオブジェクトとの契約に違反したと云われる。 第1のオブジェクトの動作が第2のオブジェクトの制御下にあるデータのアク セスを必要とする場合、第1のオブジェクトは、第2のオブジェクトのクライア ントであると見なされる。第2のオブジェクトの制御下にあるデータをアクセス するために、このクライアントの1つの動作は、第2のオブジェクトの1つの動 作を呼び出して、このデータへのアクセ スを獲得する。次に、呼び出されたオブジェクトの1つの動作(即ち、本例の場 合は、サーバ動作)を実行して、呼び出されたオブジェクトの制御下にあるデー タをアクセス及び/又は処理する。 図13のオブジェクト図は、動物園の職員を援助して動物園を運営するために 、ZAFの例示的な諸オブジェクトがどのように対話するかを示している。この 全容を理解するには、ZAFの全てのオブジェクトの対話を詳細に解析すること は必要ではない。しかしながら、諸問題を解決するためにこれらのオブジェクト がどのように対話するかを一般的に理解するには、以下で説明する簡単な制御の 流れを検討するのが有用であろう。 前述の如く、オブジェクトは、特定クラスのメンバとして作成される。従って 、動物園の管理者の「Zelda」(オブジェクト706)は、管理者のクラスのメ ンバ(実際には唯一のメンバ)であるようなオブジェクトである。かくて、「Ze lda」のオブジェクトは、ZAFの制御全般について責任を有する。飼育係のオ ブジェクトの全ては、飼育係のレジスタ・オブジェクト(オブジェクト700) に登録されている。従って、「Zelda」のオブジェクトは、飼育係のレジスタ・ オブジェクトの「list_zoo_keepers()」動作を呼び出して(ステップ1)、現在 の飼育者のリストを獲得する。飼育係のレジスタ・オブジェクトは、飼育係のレ ジスタ・クラスのメンバとして作成されている。説明の便宜上、これが「Zelda 」の「5 _minute_timer()」動作の一部として5分ごとに生ずるものと仮定する。次に、 飼育係のレジスタ・オブジェクトは、「keepers_list」に応答する(ステップ2 )。この飼育係のリストは、温度検査係の「Tina」(オブジェクト714)、獣 医の「Vince」(オブジェクト740)、食餌係の「Fred」(オブジェクト75 2)を含んでいる。飼育係の各々は、飼育係のクラスのメンバとして作成されて いる。特に、温度検査係の「Tina」、獣医の「Vince」及び食餌係の「Fred」の オブジェクトは、温度制御係、獣医及び食餌係のサブクラスのそれぞれのメンバ である。「Temp()」動作は、ポリモアフィックである。別言すれば、オブジェク ト「Tina」の「check_animals()」動作は、「adjust_temp()」動作の各々がその タスクをどのように遂行するかということに関する特殊な知識を必要としない。 従って、「check_animals()」動作は、インタフェースによって単に「adjus_tem p()」動作を呼び出すことに留まるのである。その後は、個々の「adjust-temp() 」動作が、それらのタスクを適正に行うことになる。 以上で、ZAFの機構を説明したのは、これが極めて簡単なフレームワーク機 構であって、当業者がその幾つかのフレームワーク概念を理解することを通して 、本発明の利点を十分に認識することができると考えられるからである。これら の利点は、以下の説明を参照すれば一層明らかとなろう。 ここで、図14A、図14B及び図15を参照して、説明を続ける。図14A 及び図14Bは、前述の文脈において、 本発明のフレームワーク(以下「管理フレームワーク」と表記)を例示し、図1 5は、この管理フレームワーク内で使用される特定のオブジェクトを例示する。 図14Bは高レベルのブロック図であり、図14Aは低レベルの詳細を示す図で ある。図14A及び図14Bの管理フレームワークは、以下の要素を有する。 ウェブ・ブラウザ; マッピング・ブロック; サーバ層;及び OS。 この実施例のマッピング・ブロックは、インターネット上の任意のブラウザを 有する任意のユーザに対し、システム管理プロトコルのイベント監視及び制御手 段を提供する。マッピング・ブロックは、ブラウザ上で表示するためにプロトコ ル・サービスの内部データをHTMLに変換し、HTMLとしてのユーザの入力 をプロトコル・サービスの制御信号に変換する。 本発明のユーザは、現に市販中の任意のものでよいブラウザから、システムを 監視及び制御する。 マッピング・ブロックは、インターネット上のウェブ・ブラウザに、静的形式 (例えば、HTML形式)又は動的形式(例えば、Java形式)のアプレット を供給する。これらの形式又はアプレットは、システム管理プロトコルからの監 視情報を供給するか、又はシステム管理プロトコル内でイベ ントを生成するための入力手段を供給する。 ブラウザへのユーザ入力は、このユーザが監視することを望んでいる監視対象 又はこのユーザが望んでいる制御方法を指示する。これらのユーザ入力は、前記 形式又はアプレットが与える諸命令の制御下で、ブラウザを介して、マッピング ・ブロックに返送される。マッピング・ブロックとブラウザの間で交換すべきデ ータは、HTMLのような標準言語の形式を有し、HTTPプロトコルを使用し てインターネットを介して伝送される。 マッピング・ブロックは、システム管理プロトコルのサービス層と直接的に通 信する。実際、マッピング・ブロックは、このサービス用のGUIになる。サー バは、インターネットを介して受信したHTMLを、サービス層に与えられる諸 コマンドに変換する。かくて、サービス層は、OSを通して諸要求を実行する。 本発明は、DMI、SNMP、CMIP及びCMOLシステム管理プロトコル 用の、プラットフォーム独立のインターネット上のブラウザを許容する。 マッピング・ブロックは、ウェブ・ブラウザからのHTTP要求をサービス層 に固有の呼び出し(コール)に変換する処の、HTTPサーバとして設計するこ とができる。このサービス層から戻されたデータは、HTMLに変換されてブラ ウザに戻される。このようにすると、実質的にプラットフォーム独立のウェブ・ ブラウザから、DMI、SNMP、CM IP、CMOL又は他の任意のシステム管理プロトコルを管理することができる 。 他の実施例として、図14A及び図14Bの管理フレームワークは、次の要素 を含んでいる。 HTTP要求元; マッピング・ブロック; トランスポート層;及び HTTPサーバ。 本発明のこの実施例は、マッピング・ブロックを通して、HTTPをトランス ポート層が使用するプロトコル独立の諸コマンドに変換するための管理フレーム ワークを提供する。HTTP要求元とマッピング・ブロックの間の通信は、2つ の型のうちの何れかとすることができる。マッピング・ブロックは、TCP/I PからのHTTP要求を受理し、これを NetBIOS、IPX又は直列プロトコ ルを備えたトランスポート層を通して経路指定する処の、ゲートウェイ式のHT TPサーバとすることができる。この方式によれば、一般的なウェブ・ブラウザ を使用して、TCP/IPに直接に接続されていないHTTPサーバに到達する ことが可能になる。TCP/IP接続を持たないコンピュータについては、HT TP要求元又はウェブ・ブラウザをマッピング・ブロックと直接に統合化しなけ ればならない。 本発明を実現するには、例えば、マッピング・ブロックを含むようにブラウザ のバッタエンドに再書き込みを行うか、 又はこのブラウザによって送信されるHTTP要求用のゲートウェイとして機能 するマッピング・ブロックを開発すればよい。 更に他の実施例として、図14A及び図14Bの管理フレームワークは、次の 要素を含んでいる。 ウェブ・ブラウザ; マッピング・ブロック; トランスポート層;及び システム管理ベース。 この実施例のマッピング・ブロックは、インターネット上の任意のブラウザを 有する任意のユーザに対し、システム管理の監視及び制御手段を提供することを 可能にする。マッピング・ブロックは、ブラウザ上で表示するためにシステム管 理ソフトウェアの内部データをHTMLに変換し、HTMLとしてのユーザ入力 をシステム管理ソフトウェアの制御信号に変換する。ウェブ・ブラウザを除くと 、この管理フレームワークの諸要素は、サーバ上で実行することができる。本発 明のユーザは、一般的な任意のウェブ・ブラウザから、管理中の諸システムを監 視及び制御する。 マッピング・ブロックは、インターネット上のウェブ・ブラウザに、静的形式 (例えば、HTML形式)又は動的形式(例えば、Java形式)のアプレット を供給する。これらの形式又はアプレットは、管理中の諸システムからの監視情 報を供給するか、又はトランスポート層を通してシステム管 理ベースにアクセスすることにより、管理中の諸システムを制御するための入力 手段を提供する。ブラウザへのユーザ入力は、このユーザが監視することを望ん でいる監視対象又はこのユーザが望んでいる制御方法を指示する。かかるユーザ 入力は、前記形式又はアプレットが与える諸命令の制御下で、ブラウザを介して 、マッピング・ブロックに返送される。 マッピング・ブロックとウェブ・ブラウザの間で交換すべきデータは、HTM Lのような標準言語の形式を有し、HTTPプロトコルを使用してインターネッ ト上に伝送される。 マッピング・ブロックは、トランスポート層及びシステム管理ベースを通して 、管理中の諸システムと通信する。実際、マッピング・ブロックは、GUIベー ス・パラダイムにおけるGUIになる。マッピング・ブロックは、インターネッ トを介して受信したHTMLを、トランスポート層に与えられるプロトコル独立 の諸コマンドに変換する。 トランスポート層は、これらのコマンドを、NetBIOS、TCP/IP、I PX又は直列リンクを介して、システム間で伝送する。 システム管理ベースは、トランスポート層からのコマンドを受信する。次に、 システム管理ベースは、ユーザの諸命令を実行するか、又はコンピュータ・シス テム自体からの所望の監視を要求する。 このシステム管理ベース内で利用可能な諸サービスは、ウェブを通して本発明 が制御することができるものである。こ れらのサービスを列挙すると、次の通りである。 (1)システム情報ツール: 当該システムのハードウェア及びソフトウェア構 成について包括的な情報を供給する。 (2)システム監視サービス: 当該システムにおける測定可能な量の監視を可 能にする。これらの量を表示し、収集し、データベースにエクスポートすること ができる。また、警報をトリガするために、これらの量について閾値を設定する ことができる。 (3)システム区画アクセス・サービス: 或るシステムのシステム区画の表示 及び制御を可能にする。 (4)警報管理サービス: 警報ログの表示、警報時に行うべきアクションの設 定、諸警報クラスをカプセル化する諸プロファイルの定義、警報収集手段からの プロファイルによる警報の要求を可能にする。 (5)セキュリティ管理サービス: 或るサービス・レベル上のアクセスを制限 するために、ユーザ及びパスワードを定義することを可能にする。 (6)ECCメモリ・サービス: ECCメモリ・エラー及び障害についての監 視及び警報を可能にする。 (7)予知式障害分析サービス: ディスク・エラー及び障害についての監視及 び警報を可能にする。 (8)システム・プロファイル・サービス: 当該システム上の重要な会計及び インベントリ情報の定義及び入力を可能にする。 (9)クリティカル・ファイル・モニタ: 諸ファイル内の変更を検出するため に、これらのファイルの監視及び警報を可能にする。 (10)NetFinity 直列制御: 内部プロトコルによる通信用の直列回線の定義 及び設定を可能にする。 なお、「NetFinity」は、インターナショナル・ビジネス・コーポレイション の商標である。 (11)RAID管理: それぞれのRAID駆動装置を制御し、RAID駆動 装置のエラー及び障害を監視及び警報することを可能にする。 (12)遠隔セッション・サービス: それぞれの遠隔システムについて端末シ ェル能力を可能にする。 (13)ファイル転送サービス: ローカル・システムと遠隔システムの間のフ ァイル又はディレクトリの転送を可能にする。 (14)画面ビュー・サービス: ローカル又は遠隔システム上の可視画面の捕 捉及び表示を可能にするとともに、システム入力及び出力の実時間的な捕捉を可 能にする。 (15)遠隔システム管理サービス: 諸システム・グループの定義及び保守に 加えて、諸システムのステータス又は存在についての警報を可能にする。 (16)サーバ保護サポート・システム: 諸サーバ上のハードウェア・モニタ (電源、温度、等)の状態についての監視及び警報を可能にする。 (17)イベント・スケジューラ・サービス: スケジュールされたサービス又 はコマンドの定義及び活動化を可能にする。 (18)電源オン・エラー検出: 電源オンとシステム・ブートの間に生ずるエ ラーの捕捉及び警報を可能にする。 (19)データベース・サポート: サービス・データをデータベースに対しエ クスポートするための諸パラメータの設定及び調整を可能にする。 (20)ソフトウェア・インベントリ: 当該システム上に導入されたソフトウ ェアの定義及び監視を可能にする。 (21)DMIブラウザ: DMIイベントの生成及び表示を可能にする。 (22)報告: 種々の監視サービスから生ぜられる諸報告の定義、生成及び表 示を可能にする。この報告サービスは、種々のサービスによって与えられる実時 間式のデータを補足する処の、履歴データの静的なベースとして機能する。更に 、これらの報告は、システム管理業務について直接の責任を負わない人々によっ て消費されることが多い。この目的にとって、プラットフォーム独立のウェブ・ インタフェースを有することは、極めて有用である。 HTTPサーバは、インターネットに接続されたポート上にHTMLを受理す るような、マッピング・ブロックとして書かれている。このサーバの大部分は、 公知のシステム管理プログラム、例えばIBM社が提供する「NetFinity」内に 既 に存在する各サービスへのそれぞれのGUIを書き換えたものである。主要な相 違は、ウインドウ・システムと対話する代わりに、このサーバがHTMLと対話 することにある。 更に、多くの強力なシステム管理能力がウェブ/ブラウザ・パラダイムには自 然であり、専用のGUIにおいては一層困難である。 マッピング・ブロックの内部構造を示す図15には、マッピング・ブロック内 に見いだされる諸オブジェクトが一層詳細に示されている。図14の内容からも 明らかなように、マッピング・ブロックは、ウェブ・ブラウザとインターネット を介して制御される観察中のアプリケーションの間に存在する。マッピング・ブ ロックは、2つのオブジェクト、即ちHTTPオブジェクト及びHTMLオブジ ェクトから成る。 HTTPオブジェクトは、次の事項に責任を有する。 * インターネット通信をオープンし且つこれを維持する; * インターネットを介してHTTP要求を受理する; * この要求を形成するURL及び他の任意のデータを解析する; * このURL、入力データ及びブラウザの識別子をHTMLオブジェクト に伝送する; * このHTMLオブジェクトからHTMLソースを受理し、これを要求元 のブラウザに戻す。 図15に示すように、HTTPオブジェクトは、ブラウザ の型によって更にサブクラス化することができる。このようにすると、HTTP オブジェクトは、HTMLフィルタとして振る舞って、HTMLオブジェクトが 戻すHTMLソースを、特定のブラウザが一層良好に使用することができるよう なソースにメッセージ交換することになろう。図15には、3つのブラウザが例 示されている。市販の製品である「NetScape」のような十分に機能的なブラウザ にサービスする場合、HTTPオブジェクトは、このブラウザに転送するHTM Lに対し、如何なる変更も加えないことがある。しかしながら、比較的に能力の 低いブラウザ(例えば、HTML1.0だけを適正に処理することができるもの )にサービスする場合には、それよりも拡張されたサービスを必要とするHTM Lソース部分のフィルタ処理を行って、かかる環境で有意に表示可能なソースに 変換することになろう。更に、HTTPオブジェクトは、或るコマンド行「ブラ ウザ」を処理するように、サブクラス化することができる。この場合、HTML を端末画面上に有意に表示するためには、このHTMLを根本的に変更して、全 てのマークアップを除去するとともに、適当なスペースを挿入しなければならな い。 HTMLオブジェクトは、次の事項に責任を有する。 * URL及び他の要求データを受理する; * これらの要求を理解し且つこれらの要求をアプリケーションのインタフ ェース表示内に形成する; * アプリケーションからの応答を受理する; * これらの応答をHTMLに変換し、このHTMLをHTTPオブジェク トに送信する。 図15に示されているように、HTMLオブジェクトは、ブラウザの型によっ て更にサブクラス化することができる。HTTPオブジェクトの場合と同様に、 このサブクラス化の目的は、特定のブラウザによって最も良く理解されるような HTMLを生成することにある。しかしながら、HTTPオブジェクトは、単に HTMLを入力として受け取り、HTML/HTML又はHTML/ASCII フィルタとして機能するに過ぎないから、入力のHTMLが表す実際のデータに 対し何の意味も与えない。これとは対照的に、HTMLオブジェクトのステージ では、アプリケーションとのインタフェースの設計者は、このデータが真に何を 表してるかを依然として知っている。従って、この設計者は、このステージにお けるブラウザの選択に反応し、このブラウザの識別に応じて、このデータをHT ML又はASCIIにフォーマット化することができる。簡単な1つの例は、グ ラフのブラウザによって要求することである。このブラウザが「NetScape」ブラ ウザであれば、HTMLオブジェクトは、GIFとして送信されるようなグラフ を生成することができよう。他方、このブラウザが或るコマンド行であれば、こ のブラウザは、このグラフのASCII近似を生成することになろう。 本発明の実施例では、2つのオブジェクトが関与する。 第1のオブジェクトは、HTTPオブジェクトである。こ のオブジェクトは、HTTP接続をカプセル化する。 そのメンバは、次の通りである。 TCP/IPソケット; 要求されたURL。 そのメソッドは、次の通りである。 get the path; get the service; get the user; get the password; get the capability; get the particular arguments。 第2のオブジェクトは、HTMLオブジェクトである。このオブジェクトは、 HTML/アプリケーション・インタフェースをカプセル化する。 そのメンバは、次の通りである。 HTMLデータ。 そのメソッドは、次の通りである。 adding text; adding of markup; adding of browser-sepcific markup。 本発明のこの実施例は、HTTPオブジェクト及びHTMLオブジェクト用の 1組のクラス・ライブラリとして実現される。このHTMLオブジェクトは、特 定のブラウザに固有のマークアップ機能を提供するように、サブクラス化される ことになろう。本発明は、ウェブ・サーバが生成するHTMLを、特定のブラウ ザ(例えば、MVS又はVT100ブラウザ)に適合させるために使用される。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 FI H04L 12/58 (31)優先権主張番号 08/558,628 (32)優先日 1995年11月14日 (33)優先権主張国 米国(US) (31)優先権主張番号 08/558,631 (32)優先日 1995年11月14日 (33)優先権主張国 米国(US) (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),BR,CA,CN,C Z,HU,JP,KR,PL,RU (72)発明者 リード、ベンジャミン アメリカ合衆国カリフォルニア州サンタ・ クルーズ、コシュランド・ウエイ 507 (72)発明者 ウエルッチ、ステイーブン アメリカ合衆国カリフォルニア州ギルロ イ、カナダ・ロード 3330 (72)発明者 メドフォード、ミッチェル アメリカ合衆国ノースカロライナ州カリ ー、ストラスバーグ・レーン 109 【要約の続き】 置のうち少なくとも1つのコンピュータ装置から前記ネ ットワークを介して送信されるか又は前記ネットワーク を介して前記少なくとも1つのコンピュータ装置によっ て受信されるHTML/HTTP情報を、前記ネットワ ーク伝送プロトコル及び前記ネットワーク・データ・フ ォーマットに変換する。

Claims (1)

  1. 【特許請求の範囲】 1.一のクライアント・コンピュータ装置が一のサーバ・コンピュータ装置に置 かれている情報をアクセスすることを可能にするための情報ハンドリング・シス テムであって、 前記クライアント・コンピュータ装置が、ハイパーテキスト転送プロトコル( HTTP)を使用して前記サーバ・コンピュータ装置と通信するための手段及び 前記サーバ・コンピュータ装置から受信される情報をハイパーテキスト・マーク アップ言語(HTML)を使用して当該クライアント・コンピュータ装置の一の ユーザに供給するための手段を含み、 更に、前記情報ハンドリング・システムが、 前記クライアント及びサーバ・コンピュータ装置間に設けられた一のネットワ ークを備え、 当該ネットワークが、HTTPとは異なる一のネットワーク伝送プロトコルを 使用するとともに、HTMLとは異なる一のネットワーク・データ・フォーマッ トを使用するものであり、 更に、前記クライアント及びサーバ・コンピュータ装置から前記ネットワーク を介して送信されるか又は前記ネットワークを介して前記クライアント及びサー バ・コンピュータ装置によって受信されるHTML/HTTP情報を、前記ネッ トワーク伝送プロトコル及び前記ネットワーク・データ・フォーマットに変換す るための伝送プロトコル変換手段を備え ることを特徴とする、前記情報ハンドリング・システム。 2.前記伝送プロトコル変換手段が、オブジェクト指向のコンピュータ・ソフト ウェアを実行することを特徴とする、請求の範囲第1項記載のシステム。 3.前記クライアント・コンピュータ装置が、インターネットに接続され、前記 ネットワークが、前記インターネットと前記サーバ・コンピュータ装置の間に設 けられていることを特徴とする、請求の範囲第1項記載のシステム。 4.前記クライアント・コンピュータ装置の前記情報を供給するための手段が、 特定の型のグラフィカル・ユーザ・インタフェースを使用し、 前記クライアント・コンピュータ装置が、インターネットに接続され、前記ネ ットワークが、前記インターネットと前記サーバ・コンピュータ装置の間に設け られ、 前記伝送プロトコル変換手段が、オブジェクト指向のコンピュータ・ソフトウ ェアを実行し、 前記コンピュータ・ソフトウェアが、 前記クライアント・コンピュータ装置からHTML要求データを受理し且つ当 該受理されたHTML要求データを前記ネットワーク・データ・フォーマットに 変換するための一のHTMLオブジェクトと、 前記クライアント及びサーバ・コンピュータ装置間でインターネット接続をオ ープン及び維持し、前記クライアント・コンピュータ装置から受信される前記H TML要求データを 解析し、前記クライアント・コンピュータによって使用される前記特定の型のグ ラフィカル・ユーザ・インタフェースの識別子を検出し、前記要求データ及び検 出済みのグラフィカル・ユーザ・インタフェースの識別子を前記HTMLオブジ ェクトに伝送するとともに、HTMLデータを前記ネットワーク及び前記インタ ーネットを介して前記HTMLオブジェクトと前記クライアント・コンピュータ 装置の間で転送するための一のHTTPオブジェクトを含んでいることを特徴と する、請求の範囲第1項記載のシステム。 5.前記サーバ・コンピュータ装置が、一のシステム管理ソフトウェア・プログ ラムを実行するためのシステム管理手段を含み、前記ネットワーク伝送プロトコ ルが、一のシステム管理プロトコルであり、前記クライアント・コンピュータ装 置からのHTML/HTTPデータが、前記システム管理ソフトウェア・プログ ラムを制御するための少なくとも1つのコマンドを含んでいることを特徴とする 、請求の範囲第3項記載のシステム。 6.前記システム管理ソフトウェア・プログラムが、前記クライアント及びサー バ・コンピュータ装置のハードウェア及びソフトウェア構成に係るデータを処理 することを特徴とする、請求の範囲第5項記載のシステム。 7.情報ハンドリング・システム用の一のプログラム要素であって、 前記情報ハンドリング・システム上で実行される際に、デ ータと(a)HTML及びHTTP、並びに(b)少なくとも1つのコマンド及 びHTML又はHTTPの何れとも異なるプロトコルの間のマッピングを行うた めの一のマッピング・ブロックを備え、 前記マッピング・ブロックが、一のHTMLオブジェクト及び一のHTTPオ ブジェクトを有し、 前記HTMLオブジェクトが、URL(未入手資源ロケータ)及び他の要求デ ータを受理し、受理済みの要求を内部コマンド及びHTML又はHTTPの何れ とも異なるプロトコルに形成し、内部コマンド及びHTML又はHTTPの何れ とも異なるプロトコルの形式を有する応答を受理し、受理済みの応答をHTML に変換するとともに、当該HTMLを前記HTTPオブジェクトに送信するよう に機能し、 前記HTTPオブジェクトが、インターネット通信をオープン及び維持し、前 記インターネットを介してHTTP要求を受理し、受理済みの要求を形成するU RL及び関連するデータを解析し、当該URL、関連するデータ及びブラウザ・ プログラムの識別子を前記HTMLオブジェクトに伝送し、前記HTMLオブジ ェクトからHTMLソースを受理するとともに、HTMLソースをHTTP応答 として前記インターネットに戻すように機能することを特徴とする、前記プログ ラム要素。 8.前記HTMLオブジェクトが、そのメンバとして、 TCP/IPソケット; 要求済みのURL を有し、そのメソッドとして、 get the path; get the service; get the user; get the password; get the capability; get the particular arguments を有することを特徴とする、請求の範囲第7項記載のプログラム要素。 9.前記HTTPオブジェクトが、そのメンバとして、 HTMLデータ。 を有し、そのメソッドとして、 adding text; adding of markup; adding of browser-sepcific markup を有することを特徴とする、請求の範囲第7項記載のプログラム要素。
JP51864297A 1995-11-14 1996-09-20 一般的なウエブ・ブラウザが複数の異なるプロトコル型のサーバをアクセスすることを可能にするための情報ハンドリング・システム Expired - Fee Related JP3381926B2 (ja)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US55862695A 1995-11-14 1995-11-14
US55862895A 1995-11-14 1995-11-14
US55863195A 1995-11-14 1995-11-14
US55862795A 1995-11-14 1995-11-14
US08/558,627 1995-11-14
US08/558,628 1995-11-14
US08/558,631 1995-11-14
US08/558,626 1995-11-14
PCT/GB1996/002317 WO1997018635A2 (en) 1995-11-14 1996-09-20 Multiprotocol communication between a generic web browser and several access servers

Publications (2)

Publication Number Publication Date
JPH11500248A true JPH11500248A (ja) 1999-01-06
JP3381926B2 JP3381926B2 (ja) 2003-03-04

Family

ID=27504798

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51864297A Expired - Fee Related JP3381926B2 (ja) 1995-11-14 1996-09-20 一般的なウエブ・ブラウザが複数の異なるプロトコル型のサーバをアクセスすることを可能にするための情報ハンドリング・システム

Country Status (11)

Country Link
EP (1) EP0861551B1 (ja)
JP (1) JP3381926B2 (ja)
KR (1) KR100307016B1 (ja)
CN (1) CN1226852C (ja)
CA (1) CA2235501A1 (ja)
CZ (1) CZ148298A3 (ja)
DE (1) DE69623035T2 (ja)
ES (1) ES2180793T3 (ja)
HU (1) HUP9900026A3 (ja)
PL (1) PL326670A1 (ja)
WO (1) WO1997018635A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6092121A (en) * 1997-12-18 2000-07-18 International Business Machines Corporation Method and apparatus for electronically integrating data captured in heterogeneous information systems

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6564321B2 (en) 1995-04-28 2003-05-13 Bobo Ii Charles R Systems and methods for storing, delivering, and managing messages
US6377886B1 (en) 1997-07-31 2002-04-23 Honda Giken Kogyo Kabushiki Kaisha Navigation apparatus and medium recording program therefor
US20060193278A1 (en) 1997-10-15 2006-08-31 Wolfgang Theimer Mobile telephone for Internet applications
DE19814859B4 (de) * 1998-04-02 2006-04-13 Fujitsu Siemens Computers Gmbh Verfahren zum Steuern des Informationsaustausches unter Verwendung des Internet
US6338096B1 (en) 1998-06-10 2002-01-08 International Business Machines Corporation System uses kernals of micro web server for supporting HTML web browser in providing HTML data format and HTTP protocol from variety of data sources
KR100420428B1 (ko) 1998-07-13 2004-02-26 인터내셔널 비지네스 머신즈 코포레이션 송신기, 트랜스코더 및 수신기와, 이 장치들의 정보 데이터 전송, 트랜스코딩 및 수신 방법과, 컴퓨터 판독가능한 기록 매체
US6925595B1 (en) 1998-08-05 2005-08-02 Spyglass, Inc. Method and system for content conversion of hypertext data using data mining
DE19936314A1 (de) * 1998-08-05 2000-02-17 Spyglass Inc Verfahren und System zur Inhaltskonvertierung von elektronischen Daten unter Verwendung von Konvertierungspräferenzen
US7356482B2 (en) 1998-12-18 2008-04-08 Alternative Systems, Inc. Integrated change management unit
US6643690B2 (en) 1998-12-29 2003-11-04 Citrix Systems, Inc. Apparatus and method for determining a program neighborhood for a client node in a client-server network
US6928469B1 (en) * 1998-12-29 2005-08-09 Citrix Systems, Inc. Apparatus and method for determining a program neighborhood for a client node in a client-server network using markup language techniques
US6687745B1 (en) 1999-09-14 2004-02-03 Droplet, Inc System and method for delivering a graphical user interface of remote applications over a thin bandwidth connection
US7051118B2 (en) * 1999-12-22 2006-05-23 Tibo Software, Inc. Method and apparatus for anonymous subject-based addressing
US7020773B1 (en) 2000-07-17 2006-03-28 Citrix Systems, Inc. Strong mutual authentication of devices
KR20020010429A (ko) * 2000-07-28 2002-02-04 정석현 무선 사이트의 컨텐츠 리퍼메팅 시스템 및 그 방법
US6986040B1 (en) 2000-11-03 2006-01-10 Citrix Systems, Inc. System and method of exploiting the security of a secure communication channel to secure a non-secure communication channel
KR100448865B1 (ko) * 2000-12-19 2004-09-18 엘지전자 주식회사 인터넷상에서 서로 다른 시스템 모듈을 가지는 시스템관리 방법
GB2371433B (en) * 2001-01-12 2005-10-19 Waptv Ltd Television receiver and method of operating a server
US7100200B2 (en) 2001-06-13 2006-08-29 Citrix Systems, Inc. Method and apparatus for transmitting authentication credentials of a user across communication sessions
US20050198379A1 (en) 2001-06-13 2005-09-08 Citrix Systems, Inc. Automatically reconnecting a client across reliable and persistent communication sessions
US8671213B2 (en) 2002-03-14 2014-03-11 Citrix Systems, Inc. Methods and apparatus for generating graphical and media displays at a client
US7111038B2 (en) 2002-04-03 2006-09-19 International Business Machines Corporation Enhancing application server performance by relocating performance-degrading processing
JP2004021547A (ja) 2002-06-14 2004-01-22 Buffalo Inc 無線lan装置
CN1750466B (zh) * 2004-09-16 2011-06-15 温普敦资讯股份有限公司 全球资源定位器的信息流动态重导路径的方法
CN106856434B (zh) * 2015-12-08 2020-06-30 阿里巴巴集团控股有限公司 访问请求转换的方法和装置
CN113157309B (zh) * 2021-01-26 2024-02-13 上海商米科技集团股份有限公司 一种利用nvram保存激活文件的软件设计方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175730A (ja) * 1993-01-26 1995-07-14 Internatl Business Mach Corp <Ibm> オブジェクト指向環境においてデータを転送するためのシステム及び方法
JPH09101924A (ja) * 1995-10-06 1997-04-15 Nippon Telegr & Teleph Corp <Ntt> 通信サービス仲介方法及び装置並びに通信サービス仲介装置を利用した電子掲示板システム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5224098A (en) * 1991-07-17 1993-06-29 International Business Machines Corporation Compensation for mismatched transport protocols in a data communications network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175730A (ja) * 1993-01-26 1995-07-14 Internatl Business Mach Corp <Ibm> オブジェクト指向環境においてデータを転送するためのシステム及び方法
JPH09101924A (ja) * 1995-10-06 1997-04-15 Nippon Telegr & Teleph Corp <Ntt> 通信サービス仲介方法及び装置並びに通信サービス仲介装置を利用した電子掲示板システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6092121A (en) * 1997-12-18 2000-07-18 International Business Machines Corporation Method and apparatus for electronically integrating data captured in heterogeneous information systems

Also Published As

Publication number Publication date
CN1226852C (zh) 2005-11-09
DE69623035D1 (de) 2002-09-19
EP0861551B1 (en) 2002-08-14
PL326670A1 (en) 1998-10-12
WO1997018635A3 (en) 1997-08-07
CZ148298A3 (cs) 1999-08-11
CN1202291A (zh) 1998-12-16
ES2180793T3 (es) 2003-02-16
JP3381926B2 (ja) 2003-03-04
KR19990064264A (ko) 1999-07-26
HUP9900026A2 (hu) 1999-04-28
EP0861551A2 (en) 1998-09-02
DE69623035T2 (de) 2003-03-06
WO1997018635A2 (en) 1997-05-22
CA2235501A1 (en) 1997-05-22
KR100307016B1 (ko) 2001-11-02
HUP9900026A3 (en) 1999-11-29

Similar Documents

Publication Publication Date Title
JPH11500248A (ja) 一般的なウエブ・ブラウザが複数の異なるプロトコル型のサーバをアクセスすることを可能にするための情報ハンドリング・システム
US6021437A (en) Process and system for real-time monitoring of a data processing system for its administration and maintenance support in the operating phase
US7269534B2 (en) Method to reduce IPMB traffic and improve performance for accessing sensor data
US6167358A (en) System and method for remotely monitoring a plurality of computer-based systems
US7293165B1 (en) BMC-hosted boot ROM interface
US6189114B1 (en) Data processing system diagnostics
US7069349B2 (en) IPMI dual-domain controller
US6625742B1 (en) Computer diagnostic having an LED to provide direct visual feedback as to the status of the standby power supply when power button is actuated
US6970948B2 (en) Configuring system units using on-board class information
US20160026661A1 (en) System and method for the automated generation of events within a server environment
KR100843495B1 (ko) 부착된 컴퓨터 시스템의 파워 오프시 rfid 태그로서비스 데이터를 전송하는 방법 및 이를 위한 컴퓨터시스템
US6640203B2 (en) Process monitoring in a computer system
US20030208593A1 (en) Uniquely identifying a crashed application and its environment
JPH0778771B2 (ja) 遠隔システムリブート機構及び遠隔コンソールからローカル中央処理ユニットをリブートする方法
US6480903B1 (en) Hardware component interface for desktop computer management systems
KR100376939B1 (ko) 통신망을 통한 원격 사후관리 방법 및 이를 이용한전자제품의 사후관리시스템
TW200525422A (en) Method of using feature flags to determine compatibility between bios revisions and installed hardware during flash update
CN101268442A (zh) 远程数据处理系统的配置
GB2342471A (en) Configuring system units
WO2024119843A1 (zh) 一种数据采集方法、装置和计算机设备
CN114253573A (zh) PCIe设备固件批量升级方法、系统、终端及存储介质
TW299422B (en) Transmittal of hyper text markup language instructions through lan protocols
TW299543B (en) Browsing and control of systems management protocols via a web browser over the internet
TW305972B (ja)
CN116627514B (zh) 一种i2c设备管理方法、装置、设备及存储介质

Legal Events

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