(57)【要約】  補助ユニット（３０）に対する準備が未だできていないコンピュータ（１０）上に、自動的に補助ユニット（３０）をインストールする方法を提案する。新たな補助ユニット（３０）をコンピュータに接続すると、登録ルーチン（１８）が実行され、補助ユニット（３０）の動作に必要な動作ルーチン（２４）がインストールされ、このルーチンのインストール後、補助ユニット（３０）は基本モードから補助ユニット固有の動作モードに切り替え可能になる。動作ルーチン（２４）がコンピュータ（１０）に未だ存在しない場合、それらは最初に補助ユニット（３０）によりコンピュータ（１０）へ送信される。本発明によれば、バックグラウンド処理（２０）をコンピュータ（１０）にインストールすることにより、必要な動作ルーチン（２４）を送信しなければならないか否かが判定され、補助ユニット（３０）が接続されると、要求に応じてコンピュータ（１０）に再送信された識別情報（５０）が既にコンピュータ（１０）に格納されているか否かを調べる。【選択図】      図２
2009521025.tif 000002
【特許請求の範囲】
【請求項１】
補助ユニットを接続するのに適したインターフェースを有するコンピュータに補助ユニットをインストールする方法であって、前記コンピュータは、前記インターフェースへの新たな補助ユニットの接続を検知すると、登録ルーチンを実行するために準備され、前記登録ルーチンにおいて、前記補助ユニットの動作に必要な動作ルーチンのインストールが実行され、前記インストール実行後に前記補助ユニットが基本モードから補助ユニット固有のモードに切り替え可能であって、前記動作ルーチンが未だコンピュータに存在しない場合、最初に前記補助ユニットから前記コンピュータへ送信される方法において、
必要な動作ルーチン（２４）を送信しなければならないか否かを判定すべく、前記コンピュータ（１０）にバックグラウンド処理（２０）がインストールされ、補助ユニット（３０）が接続されると、前記コンピュータ（１０）からの要求に応じて前記補助ユニット（３０）により返送される識別情報（５０）が既に前記コンピュータ（１０）に格納されているか否かを調べる（１４８）ことを特徴とする方法。
【請求項２】
前記コンピュータ（１０）が、前記補助ユニット（３０）から識別情報（５０）を受信した後で、前記バックグラウンド処理（２０）の動作を検知しない場合、前記補助ユニット（３０）により前記バックグラウンド処理（２０）が前記コンピュータ（１０）へ送信されることを特徴とする、請求項１に記載の方法。
【請求項３】
前記コンピュータ（１０）に前記バックグラウンド処理（２０）が存在しないことを検知すると、前記コンピュータ（１０）が制御信号を介して前記補助ユニット（３０）による前記バックグラウンド処理（２０）の送信を要求することを特徴とする、請求項２に記載の方法。
【請求項４】
新たな補助ユニット（３０）を検知すると、前記コンピュータ（１０）が、前記バックグラウンド処理（２０）により認識されるイベント信号（１１２）を出力することを特徴とする、請求項１に記載の方法。
【請求項５】
前記識別情報（５０）が前記リスト（２２）に含まれている場合、前記バックグラウンド処理（２０）により前記補助ユニット（３０）が補助ユニット固有の動作モードに切り替えられる（１６０）ことを特徴とする、請求項１に記載の方法。
【請求項６】
前記切り替えが前記バックグラウンド処理（２０）により生起され、前記バックグラウンド処理（２０）が、前記補助ユニット（３０）を前記コンピュータ（１０）から切り離す制御信号を補助ユニット（３０）へ送信することを特徴とする、請求項５に記載の方法。
【請求項７】
前記バックグラウンド処理（２０）が識別情報（５０）を割り当てることができない場合、必要な動作ルーチンの前記コンピュータ（１０）へのロードおよびインストールが引き起こされることを特徴とする、請求項１に記載の方法。
【請求項８】
新たな補助ユニット（３０）の接続を検知すると、前記補助ユニット（３０）の正確な指定、前記補助ユニット（３０）の論理構造および特性、前記補助ユニット（３０）の機能、および／または登録ルーチン（１８）を実行するためのルーティング情報を含む標準データに関する基本情報を前記コンピュータ（１０）へ送信する要求が前記補助ユニット（３０）へ送られることを特徴とする、請求項１に記載の方法。
【請求項９】
補助ユニットを接続するのに適したインターフェースを有するコンピュータに補助ユニットをインストールする方法であって、前記コンピュータは、前記インターフェースへの新たな補助ユニットの接続を検知すると、登録ルーチンを実行するために準備され、前記登録ルーチンにおいて、前記補助ユニットの動作に必要な動作ルーチンのインストールが実行され、前記インストール実行後に前記補助ユニットが基本モードから補助ユニット固有のモードに切り替え可能であって、前記動作ルーチンが未だコンピュータに存在しない場合、最初に前記補助ユニットから前記コンピュータへ送信される方法において、
最初に前記補助ユニット（３０）を接続すると、前記補助ユニット（３０）によりインストールプログラムが前記コンピュータ（１０）へ送信されて前記コンピュータ（１０）上で実行され（１２１）、次いで前記インストールプログラムが引き続き前記補助ユニット（３０）から前記必要な動作ルーチン（２４）を読み込んでそれを前記コンピュータ（１０）にインストールすることを特徴とする方法。
【請求項１０】
前記動作ルーチン（２４）をインストールした後で、前記インストールプログラムが、前記補助ユニット（３０）を前記コンピュータ（１０）から切り離す制御信号の前記補助ユニット（３０）への送信を生起させることを特徴とする、請求項９に記載の方法。
【請求項１１】
補助ユニット（３０）が接続されると、前記インストールプログラムの送信が前記登録ルーチン（１８）により引き起こされることを特徴とする、請求項９に記載の方法。
【請求項１２】
請求項１に記載の方法を実行する携帯データキャリアであって、前記携帯データキャリア固有の機能を実行するオペレーティングシステム（３４）と、前記コンピュータ（１０）に対して前記携帯データキャリアが大容量メモリユニットであるとみなして動作することに適したエミュレータ（３６）とを有する携帯データキャリアにおいて、
メモリ（４６）内にバックグラウンド処理（２０）が格納されていて、コンピュータ（１０）へ送信されてインストールされた後で、前記携帯データキャリア（３０）の認識を実行することを特徴とする携帯データキャリア。
【請求項１３】
ＵＳＢインターフェース（３２）を有するチップカードとして構成されることを特徴とする、請求項１２に記載の携帯データキャリア。
【請求項１４】
請求項９に記載の方法を実行する携帯データキャリアであって、前記携帯データキャリア固有の機能を実行するオペレーティングシステム（３４）と、前記コンピュータ（１０）に対して前記携帯データキャリアが大容量メモリユニットであるとみなして動作することに適したエミュレータ（３６）とを有する携帯データキャリアにおいて、
メモリ（４６）内にインストールプログラムが格納されていて、コンピュータ（１０）へ送信されてインストールされた後で、前記補助ユニット（３０）から必要な動作ルーチン（２４）を読み出してそれを前記コンピュータ（１０）にインストールすることを特徴とする携帯データキャリア。
【発明の詳細な説明】
【背景技術】
【０００１】
本発明は、主請求項の前文に記載の方法から始まる。このような方法は、特許文献１により公知である。そこに、特定の大容量メモリユニットを認識すべく設置されたホストコンピュータに機能ユニットを自動的にインストールする方法が記載されている。この方法によれば、インストールされる機能ユニットは最初に、標準の大容量メモリとしてホストコンピュータに登録される。この目的のためにこの機能ユニットは、エミュレータを備えている。エミュレータのスイッチはオフにすることができるが、予め初期設定された基本モードではスイッチはオンになっている。大容量メモリとして登録された後で、機能ユニットは、ホストコンピュータに、この機能ユニットに対応するドライバおよび設定手段がホストコンピュータに存在するか否かに関する情報を含むデータ・シーケンスを転送させる。存在しない場合、機能ユニットは更に、ホストコンピュータに、ホストコンピュータにインストールされたオペレーティングシステムに関する情報を提供させる。このように決定されたオペレーティングシステムに従い、機能ユニットは、機能ユニットに保存されているこのような複数のドライバおよび設定手段から適当なドライバおよび設定手段を選択してそれらをホストコンピュータへ送信する。送信されたドライバおよび設定手段をインストールした後で、機能ユニットは機能ユニット固有の動作モードに切り替えられてインストールが完了する。
【０００２】
公知の方法は、初期設定では機能ユニットに対する準備ができておらず、また機能ユニットを動作させるために必要なドライバおよび設定手段も備えていないようなホストコンピュータに対し、機能ユニットをインストールすることを可能にする。しかしこの方法は、機能ユニットが、インストール段階の間、ホストコンピュータ用の能動要素として少なくとも部分的に機能することを前提とする。従って、この方法は、ホストコンピュータが専らマスタとしてのみ機能する「マスタ−スレーブ原理」に厳密に従って設計された構成には適していない。ドライバを選択する目的でホストコンピュータに関する情報を機能ユニットに送信することは、更に実装が困難である。そのような送信は、手動入力をシミュレートすることによりユーザがシミュレートすることができる。しかし、これには、インストール段階において、ユーザの入力に誤りが生じるリスクがある。
【０００３】
特許文献２が示すように、ホストコンピュータと、ホストコンピュータ上で動作するアプリケーションのフレームワーク内で副機能を実行している機能ユニットとの間で協働を確立する方法が知られている。機能ユニットに備えられている副機能をホストコンピュータに導入するために、機能ユニットは、まず第１の構成において、標準の大容量メモリとして登録される。そして、サポートされる標準アプリケーションに関する情報をホストコンピュータへ送信する。標準アプリケーションの１つは、機能ユニットに備えられている更なる副機能を決定すべく設計されている。更に、ホストコンピュータは、使用するオペレーティングシステムを機能ユニットへ通知する。その情報に基づいて、機能ユニットは、候補アプリケーション用に起動される副機能およびその実行のためにホストコンピュータで必要とされる動作ルーチンを決定する。続いて、機能ユニットが再起動される。この時点で、機能ユニットは、標準機能に加えて起動済みの副機能を含む拡張された第２の構成で、ホストコンピュータに登録される。更に、必要とされる動作ルーチンがホストコンピュータへ送信される。補助ユニットは、フラグの設定により、第１から第２の構成に切り替えられる。提案されているようなＵＳＢスマートカードの高速実装方法は、標準アプリケーションの提案により決定される利用可能な副機能や、使用するオペレーティングシステムとして通知されたシステムが、ＵＳＢの規格と容易に合致しない場合には、適用できない。更に、補助ユニットを複合的な構成において登録する場合、正式に示された最初のものしかホストコンピュータが受理しないというリスクがある。
【特許文献１】国際公開第０３／０１２５７７Ａ３号パンフレット
【特許文献２】国際公開第２００４／００８３１３Ａ１号パンフレット
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、マスタ−スレーブ原理に従い整合的に機能する構成で使用可能な補助ユニットをホストコンピュータへ自律的にインストールする方法を提供することである。
【課題を解決するための手段】
【０００５】
この課題は、主請求項の特徴を有する方法により解決される。本発明の方法によれば、ホストコンピュータは、データを補助ユニットへ送信する必要はなく、未だ準備ができていないホストコンピュータでも自律的に補助ユニットをインストールすることができる。特に、本方法はユーザによる手動入力のシミュレーションを一切必要としない。一旦インストールされたバックグラウンド処理が、引き続き複数の異なる補助ユニットのより高速なインストールを可能にすることが本方法の特別な利点である。本方法は、ハードウェアまたはソフトウェアに対する一切の変更を必要とせずに、任意の所望のホストコンピュータにインストールすることができるのが有利である。
【０００６】
上記課題はまた、独立請求項９に記載の方法により解決される。本方法によれば、ホストコンピュータは補助ユニットへデータを送信する必要なく、ホストコンピュータが補助ユニットに対して自律的に準備できるようにする。
【０００７】
本発明の方法は、特にＵＳＢインターフェースを有する補助ユニットに適している。
【０００８】
以下に本発明の実施形態について、図面を参照しつつ更に詳細に説明する。
【発明を実施するための最良の形態】
【０００９】
図１に、ホストコンピュータ１０および補助ユニット３０の構成を、各々が本発明に関係するそれらの内部構造の要素と共に示す。
【００１０】
以下で単にコンピュータと称するホストコンピュータ１０は、中央演算処理装置、複数のメモリ、マンマシン・インターフェース、および補助ユニット３０接続用の少なくとも１つのインターフェース１２を有する従来型データ処理装置である。コンピュータ１０の具体例としては、個人使用のＰＣ、銀行端末またはコンピュータ・ネットワークの端末等の公共的にアクセス可能な端末が考えられる。コンピュータ１０の動作は、新たにインターフェース１２に接続された補助ユニット３０を自動的に識別すべく標準識別機能１６を備えているオペレーティングシステム１４により制御される。オペレーティングシステム１４の一部は、補助ユニット３０のインターフェース１２への新たな接続が検知されると特定の起動プログラム・ルーチンの実行を生起させる登録ルーチン１８である。オペレーティングシステム１４には更に、バックグラウンド処理２０、既知の補助ユニット識別情報を含むリスト２２、並びに補助ユニットの動作に必要な動作ルーチン、補助ユニット固有のドライバおよび構成設定を有するメモリ２４が割り当てられている。メモリ２４内の動作ルーチンは、破線枠で示すように、リスト２２に格納された識別情報に対応する。要素２０、２２、２４およびそれらの実行は各々全体として、特に標準識別機能１６では起動できない補助ユニット３０を起動するのに適した起動ルーチンの中核を形成する。コンピュータ１０の全ての言及された論理要素は、コンピュータ１０のハードウェアおよびソフトウェア構造内に通常の方法で実装されている。本明細書での論理的区別は単に説明を分かりやすくするためのものであり、必ずしも現実の実装に反映されていなくてもよい。
【００１１】
補助ユニット３０は通常、リソースがマイクロコントローラ、メモリ手段、および恐らくは動作要素に限定されるコンピュータであり、例えばチップカードまたはＵＳＢトークンの形状をなしている。補助ユニット３０は、２通りの動作モード、すなわち基本モードおよび補助ユニット固有の動作モードで動作することができる。補助ユニット固有の動作モードは、コンピュータ１０に通常は存在しない固有の機能４２をコンピュータ１０に提供する。補助ユニット３０は、２通りの動作モード間を切り替える機能を果たすモード・スイッチ４４およびインターフェース３２に接続されている補助ユニット固有のオペレーティングシステム１４により制御されて動作する。基本モードを実装すべく、モード・スイッチ４４は、所定の種類の装置としてコンピュータ１０に補助ユニット３０を登録する機能を果たすエミュレータ３６に接続されている。メモリ領域４６には、バックグラウンド処理２０、補助ユニット３０を動作させるためのドライバと構成設定４０、および識別情報５０が格納されている。言及する全ての論理要素は、補助ユニット３０のハードウェア構造に実装されているか、または従来方式で補助ユニット３０にソフトウエア・モジュールとして格納されている。本明細書での論理的区別は単に説明を分かりやすくするためのものであり、必ずしもハードウェアの実装に反映されていなくてもよい。
【００１２】
コンピュータ１０および補助ユニット３０は、「マスタ−スレーブ」原理に従い協働し、コンピュータ１０がマスタとして動作して、補助ユニット３０がスレーブとして動作する。このマスタ−スレーブ原理に従い、コンピュータ１０は補助ユニット３０へ命令を送信し、補助ユニット３０が応答する。
【００１３】
コンピュータ１０のオペレーティングシステム１４は従来型の種類のものである。例えば、ＭＩＣＲＯＳＯＦＴ社の準標準オペレーティングシステムＷＩＮＤＯＷＳ（登録商標）とすることができる。インターフェース１２は例えば、ＵＳＢインターフェース、ＦＩＲＥＷＩＲＥ（登録商標）インターフェース、あるいは他の任意の所望の標準化インターフェースとすることができる。標準識別機能１６は、インターフェース１２に新たに接続されている特定の標準種類の補助ユニット３０を起動して、それらをコンピュータ１０の動作と一体化させることを可能にするコンピュータ１０の基本機能である。補助ユニット３０の新たな接続を検知すると、標準識別機能１６は、オペレーティングシステム１４に、登録ルーチン１８を実行させるが、これは好適には自動的に実行されて、補助ユニット３０が自動的に起動される効果をもたらす。この概念は「プラグ・アンド・プレイ」として知られ、例えばＵＳＢインターフェースを備えたＰＣに実装される場合が多く、新たにＰＣに接続されたＵＳＢ装置を直接識別して起動する。識別ルーチン１８もまた従来型のものであり、ＷＩＮＤＯＷＳの下で例えば「自動実行」ルーチンとして知られている。これは、対応する制御信号を受信すると、オペレーティングシステム１４に、新たなハードウェア装置を起動する特定の所定プログラム・ルーチンを実行させる。例えばＷＩＮＤＯＷＳの下では通常は実行可能プログラムが開始される。
【００１４】
バックグラウンド処理２０は、自動的に且つ連続的にバックグラウンドで動作するプログラム・ルーチンであり、ユーザ入力を一切必要とせず、リソースも一切割り当てない。提供されていれば、バックグラウンド処理２０はコンピュータ１０の起動に伴い開始される。バックグラウンド処理２０の機能は、インターフェース１２に新たに接続された補助ユニット３０を識別して、それらの起動を生起させることである。バックグラウンド処理２０は補助ユニット固有ではなく、オペレーティングシステム１４が発行したイベント信号に応答して、異なる補助ユニット３０を識別できるようにする。
【００１５】
リスト２２には補助ユニット３０の識別情報５０が格納されており、どのユニットが現在コンピュータ１０に接続されているか、または以前の時点でコンピュータ１０に接続されていたかを示す。ＷＩＮＤＯＷＳの下で、識別情報５０は、オペレーティングシステム１４の標準識別機能１６により最初にドライブ文字が割り当てられた後で、補助ユニット３０自身により転送されたドライブ名（ボリュームＩＤ）の形式であってよい。
【００１６】
メモリ２４には、リスト２２内の識別情報５０に対応していて、補助ユニット３０を動作させるのに必要な動作ルーチンが格納されている。これらの動作ルーチンは、個々の補助ユニット３０用の同様のルーチンと共に、特定のドライバ、構成設定を含んでいる。
【００１７】
リスト２２およびメモリ２４は通常、コンピュータ１０にバックグラウンド処理２０が存在しなければ、空であるかまたは提供されない。
【００１８】
補助ユニット３０は、補助ユニット３０固有の少なくとも１つの機能４２を実装するスタンドアローン型オペレーティングシステム３４を有する。補助ユニット３０としては、例えば、ミニ・ウェブサーバの機能を備えたチップカードで、ＴＣＰ／ＩＰプロトコルを用いてＵＳＢインターフェースを介して接触するようなものが考えられる。
【００１９】
エミュレータ３６は、最初、新たに接続された補助ユニット３０を、コンピュータに備えられている標準識別機能１６により起動可能な標準の装置とみなして、コンピュータ１０に登録すべく機能する。ＷＩＮＤＯＷＳオペレーティングシステムを備えたコンピュータ１０に対して、エミュレータ３６は、補助ユニット３０が例えば「メモリースティック」または一般に標準の大容量メモリユニットであるとみなして、動作する。
【００２０】
補助ユニット３０のメモリ領域４６には、バックグラウンド処理２０（バックグラウンド処理を実行するプログラム）が格納されている。バックグラウンド処理２０は、コンピュータ１０へ送信された後、コンピュータ１０が、将来補助ユニット３０を認識して、補助ユニット３０を動作させるのに必要な動作ルーチンすなわち対応ドライバおよび構成設定を提供またはロードできるように準備する。メモリ４８に格納されているバックグラウンド処理２０は、補助ユニット３０を接続可能なコンピュータ１０のオペレーティングシステム１４に適合するものとする。好ましくは、バックグラウンド処理２０は同一種類のオペレーティングシステム１４を備えたコンピュータ１０に接続可能な全ての補助ユニット３０に保存されている。
【００２１】
補助ユニット３０のメモリ領域４６には更に、情報ファイル３１が存在する。情報ファイル３１は、補助ユニット３０をコンピュータ１０に接続すると、初期設定により、登録ルーチン１８またはコンピュータ１０のオペレーティングシステム１４により最初にアクセスされる。補助ユニット３０がＷＩＮＤＯＷＳオペレーティングシステムに適合するものである場合、情報ファイル３１は、例えばファイル「ａｕｔｏｒｕｎ．ｉｎｆ」である。情報ファイル３１は、コンピュータ１０へ送信された後、コンピュータ１０により実行できるインストールプログラムを含んでいる。インストールプログラムは、主に、補助ユニット３０に対してコンピュータ１０を準備するためのバックグラウンド処理や、動作ルーチンのデータの送信およびインストールを行う。
【００２２】
メモリ４６にはドライバおよび構成設定４０が格納されている。これらはコンピュータ１０を介して補助ユニット３０を更に動作させるために必要であって、コンピュータ１０への送信を意図されている。メモリ４０に保存されているドライバおよび構成設定は、補助ユニット３０の種類に固有である。
【００２３】
メモリ５０は更に、要求に応じてコンピュータ１０へ送信される補助ユニット３０固有の識別情報（ボリュームＩＤ）を含んでいる。好ましくは、メモリ５０は更に、登録ルーチン１８を実行するための情報と共に、補助ユニット３０の正確な指定、および技術的特性に関する基本的な情報を含んでいるとよい。
【００２４】
図２、３に、新たにコンピュータ１０に接続された補助ユニット３０を起動する処理を示す。コンピュータ１０はＷＩＮＤＯＷＳオペレーティングシステムの下で動作し、補助ユニット３０はチップカードのような種類の携帯データキャリアであると仮定されており、インターフェース１２、３２はＵＳＢインターフェースとして実装されている。
【００２５】
起動処理はコンピュータ１０の起動から始まる（ステップ１００）。バックグラウンド処理２０が存在するならば、コンピュータ１０の起動と同時に開始される（ステップ１０６）。バックグラウンド処理２０の開始は、図２に示すようにオペレーティングシステム１４が、コンピュータ１０の起動後の適当な時点で、バックグラウンド処理２０が存在するか否かを調べ（ステップ１０２）、存在する場合、引き続きこれを開始する（ステップ１０４）。
【００２６】
バックグラウンド処理が開始されたか否かとは関係なく、コンピュータ１０は起動後に補助ユニット３０を接続する準備が完了している。準備完了状態を図２の待機ループ１０８で示し、コンピュータ１０は補助ユニット３０がインターフェース１２に接続されていたか否かを調べる。
【００２７】
現在新たな補助ユニット３０がインターフェース１２に接続されている場合、コンピュータ１０の標準識別機能１６が応答し、接続されている補助ユニット３０の種類を判定して、ＷＩＮＤＯＷＳの下で例えばドライブ文字等のタイプ識別情報を割り当てる。補助ユニット３０側では、コンピュータ１０に接続する際に基本モードが予め初期設定されており、従ってエミュレータ３６がスイッチオンされる。エミュレータは、補助ユニット３０を例えば標準大容量メモリユニット等の標準装置とみなして動作する。オペレーティングシステム１４は、これに対応して補助ユニット３０を標準装置として識別し、対応するタイプの識別情報により従来型の標準装置として登録する。
【００２８】
更に、標準識別機能１６は、オペレーティングシステム１４に、内部標準識別機能を実行させ（ステップ１１４）、このステップは２個の副ステップ１１０、１１２で実行される。第１の副ステップ１１０において、オペレーティングシステム１４は、補助ユニット３０に、例えばＷＩＮＤＯＷＳの下でいわゆるボリュームＩＤ等の特定の識別情報５０を送信させ、それを新たに接続された補助ユニット３０の名前としてタイプ識別情報に関連付ける。オペレーティングシステム２２は、その名前をリスト２２に格納する。好ましくは、オペレーティングシステム１４は同時に、製造業者およびシリアル番等、補助ユニット３０の正確な指定に関する情報、ＵＳＢ構造を記述するＵＳＢクラスまたは記述子等の技術的特性に関する情報、あるいは登録ルーチン１８を実行するためのルーティング情報等の特定の識別情報と共に、更なる基本情報を要求する。
【００２９】
識別情報５０および基本情報が補助ユニット３０から受信されると、第２の副ステップ１１２において、コンピュータ１０はイベント信号を生成する。これは、バックグラウンド処理が存在すれば、バックグラウンド処理２０により認識される。
【００３０】
起動処理が更に先へ進むか否かは、起動ルーチン２８の実行を可能または不可能にするバックグラウンド処理２０がコンピュータ１０に既に存在するか否かに依存する。以下では最初に、そのようなバックグラウンド処理２０が存在しないものと仮定する。
【００３１】
この場合、標準識別機能１６は、オペレーティングシステム１４に、登録ルーチン１８の実行を開始させる（ステップ１１６）。オペレーティングシステム１４の設定により可能にされた場合、開始は自動的に行なわれるのが好ましい。登録ルーチン１８が自動起動により直接実行可能でない場合、オペレーティングシステム１４はユーザによる手動起動の実行を求める。
【００３２】
次いで、オペレーティングシステム１４はバックグラウンド処理２０が与えられているか否かを調べる（ステップ１１８）。バックグラウンド処理２０の応答を調べるために時間スロットが提供される場合がある。この場合、オペレーティングシステム１４はステップ１２０において時間スロットを超過しているか否かを調べる。何らの結果なしに時間スロットを超過している場合、バックグラウンド処理２０はコンピュータ１０に存在しない。
【００３３】
バックグラウンド処理２０が存在する場合には、便宜上、ステップ１４８が最初に実行されるものと想定され、識別情報５０がリスト２２に含まれているか否かが調べられる（ステップ１４８）。特に、ステップ１１２で生成された可能性のあるイベント信号を評価する前に登録ルーチン１８が既に開始されている可能性がある場合、中間ステップが推奨される。リスト２２に識別情報が含まれていない場合、処理はステップ１２４で継続される。
【００３４】
バックグラウンド処理が存在しないと判定された場合、登録ルーチン１８は、補助ユニット３０に対してコンピュータ１０を準備すべく、補助ユニット３０に備えられているデータを読み出してコンピュータ１０へ送信してインストールする機能を有するインストールプログラムを起動する。インストールプログラムは好ましくは、この目的のために特別に補助ユニット３０のメモリ４６に備えられている情報ファイル３１に格納されている。データはそこから、登録ルーチン１８により読み出されてコンピュータ１０へ送信され、コンピュータ１０上で実行される（ステップ１２１）。インストールプログラムは、実行のフレームワーク内で、補助ユニット３０への制御信号の送信を実行し、インストールされるデータの送信を生起させる。
【００３５】
制御信号に続いて、補助ユニット３０は最初に自身のメモリ４６から、格納されているバックグラウンド処理２０をコンピュータ１０へ送信する。バックグラウンド処理は好ましくは、直ちにコンピュータ１０にインストールされる（ステップ１２２）。更に、補助ユニット３０は制御信号に続いて、自身のメモリ４０から、補助ユニット固有の動作ルーチンをコンピュータ１０のメモリ２４にインストールするためのデータを送信する（ステップ１２４）。最初に、補助ユニット固有のドライバがこの目的で送信され、これらもまた好ましくはコンピュータ１０に直接インストールされる。更に、補助ユニット３０は、構成設定１０をコンピュータ１０へ送信する（ステップ１２６）。これらは可能であれば直ちにインストールされる。
【００３６】
コンピュータ１０へのデータの送信およびインストールは、好ましくはインストールプログラムが最初に全てのデータをコンピュータ１０へ送信するような仕方で実行される。例えば一時ディレクトリにそれらをコピーする。バックグラウンド処理２０に続いて、動作ルーチン４０および構成設定１０は一括インストールされる。タスクの割り当てに応じて、インストールプログラムは、コンピュータ１０へのデータの送信を実行するスタータ要素と、スタータ要素に要求されて送信されたデータのインストールを行なう設定要素とからなるものとしてもよい。
【００３７】
好ましくは、インストールプログラムは更に、バックグラウンド処理が存在するか否かを検証するチェック機能を含んでおり、これはインストールプログラムの開始直後に実行される。バックグラウンド処理が認識された場合、登録ルーチン１８またはインストールプログラムは終了する。
【００３８】
補助ユニット３０の種類やオペレーティングシステム１４の設定によっては、構成設定を完了させるために、また再起動後にドライバおよび構成設定のインストールを完了させるステップを実行するために、補助ユニット３０を再起動しなければならない場合もある。これらのステップは、補助ユニット３０を補助ユニット固有の動作モードに切り替えた後でなければ実行できない。これらのステップは、後述するように後の時点で実行される。
【００３９】
再起動が必要でない場合には、オペレーティングシステム１４は、バックグラウンド処理２０に関連付けられているリスト２２に識別情報５０を入れる（ステップ１３２）。続いて、インストールプログラムは、補助ユニット３０への制御信号の送信を実行し、これは、補助ユニット３０のオペレーティングシステム３４に、補助ユニット３０に備えられたモード・スイッチ４４を補助ユニット固有の動作モードに切り替えさせ、補助ユニット３０固有の機能４２が実行される（ステップ１６０）。制御信号として、好ましくは、基本モードにおいて有効な標準コマンドを用いることができ、これにより補助ユニット３０はコンピュータ１０から論理的に分離される。基本モードが大容量メモリユニットと一致する場合、例えばコマンドＥＪＥＣＴまたはＳＣＳＩコマンドＰＲＥＶＥＮＴ＿ＡＬＬＯＷ＿ＭＥＤＩＵＭ＿ＲＥＭＯＶＡＬが制御信号として問題になる。制御信号を受信すると、補助ユニット３０は基本モードを完了させて、補助ユニット固有の動作モードに切り替わる。補助ユニット固有のドライバおよび構成設定１０のインストールに対応して、予め準備が完了しているコンピュータ１０が直接に補助ユニット固有の動作モードを認識する。
【００４０】
これにより、コンピュータ１０および補助ユニット３０により構成されたシステムは、現在コンピュータ１０にインストールされている動作ルーチンにより制御されて、補助ユニット３０に固有な機能を実行できる状態となる（ステップ１９０）。
【００４１】
ステップ１３０の結果再起動が必要となった場合、補助ユニット３０が再起動される（ステップ１４０）。引き続き実行される再起動ルーチンは、再起動が１回しか生起されないように設計されているのが好ましい。この目的のため、好都合にはステップ１２６における設定の第１の部分を実行している間に特別な再起動設定（１回のみ実行の設定）がインストールされ、再起動ルーチンが１回だけ実行されることを決定する（ステップ１３４）。
【００４２】
再起動は、インストールプログラムが補助ユニット３０に制御信号を送る（ステップ１４０）ことにより生起され、この信号は、補助ユニット２０のモード・スイッチ４４を補助ユニット固有の動作モードへ切り替える（ステップ１６０）。
【００４３】
以下のステップ１４４において、オペレーティングシステム１４は次いで、補助ユニット固有の動作モードにおいて、１回のみ実行の設定による仕様に従いコンピュータ１０の設定を完了する。その場合、ステップ１２６で未だ直接実行きない構成設定を設定する。構成設定が完了した後で、オペレーティングシステム１４は１回のみ実行の設定をリセットする。
【００４４】
これにより、コンピュータ１０および補助ユニット３０により構成されたシステムは、後続する動作を実行できる状態となる（ステップ１９０）。
【００４５】
再起動の後で実行されるステップ１５０におけるチェックの結果、識別情報５０がバックグラウンド処理２０に認識されていない場合、バックグラウンド処理２０は、オペレーティングシステム１４に、ステップ１１６（以下参照）を実行することにより登録ルーチン１８の実行を開始させる。
【００４６】
以下に、ステップ１００でコンピュータ１０が起動された、あるいはステップ１４０で補助ユニット３０が再起動された時点でバックグラウンド処理２０が既に存在するケースについて説明する。
【００４７】
ステップ１１２で生成されたイベント信号は、このケースのバックグラウンド処理２０によってのみ登録される（ステップ１４６）。バックグラウンド処理２０は続いて、オペレーティングシステム１４により得られた識別情報５０を要求して、識別情報５０がリスト２２に含まれているか否かを調べる（ステップ１４８）。
【００４８】
含まれている場合、バックグラウンド処理２０は直接ステップ１６０を実行して、上述のように制御信号を送信することにより、オペレーティングシステム１４に、補助ユニット３０のモード・スイッチ４４に接触して補助ユニット３０を補助ユニット固有の動作モードに切り替えさせる。これにより、補助ユニット３０は直ちに動作できる状態となる（ステップ１９０）。
【００４９】
ステップ１５０におけるチェックの結果、補助ユニット３０により送信された識別情報５０がリスト２２に含まれていない場合、バックグラウンド処理２０は、オペレーティングシステム１４に、登録ルーチン１８を開始してステップ１１６（以下参照）を実行させる。
【００５０】
図４〜６に、引き続きコンピュータ１０の異なる補助ユニット３０を起動させる例示的な処理を示す。図４に示す処理において、インターネット・サーバ（インターネット・スマートカード）として機能するチップカードが補助ユニット３０として接続されていて、最初に接続された際にコンピュータ１０の再起動が必要であると仮定する。コンピュータ１０は更に、登録ルーチン１８の自動起動の準備が完了しているが、バックグラウンド処理２０は未だ存在しない。
【００５１】
本処理は、コンピュータ１０へのインターネット・スマートカード３０の接続から始まる（ステップ４００）。接続を認識すると、コンピュータ１０のオペレーティングシステム１４は、バックグラウンド処理２０が存在しないと判定し（ステップ４０２）、これにより、登録ルーチン１８の実行が自動的に開始される（ステップ４０４）。これにより、必要なドライバがインターネット・スマートカード３０からインストールされ（ステップ４０８）、可能な限り構成設定が設定されて（ステップ４１０）、１回のみ実行の設定がインストールされる（ステップ４１２）。その後で、補助ユニット３０が再起動される（ステップ４１４）。再起動は、補助ユニット３０を補助ユニット固有の動作モードへ切り替えさせる制御信号を送信することにより行なわれる（ステップ４２２）。
【００５２】
あるいは、再起動はまた、コンピュータ１０から補助ユニット３０を一時物理的に切り離すことにより行なうことができる。この場合、オペレーティングシステム１４は再び補助ユニット３０の接続を認識して、現在バックグラウンド処理２０が存在すると判定する（ステップ４１８）。バックグラウンド処理２０は現在、補助ユニット３０をインターネット・スマートカード３０として認識していて（ステップ４２０）、この時点でオペレーティングシステムはインターネット・スマートカード３０を補助ユニット固有の動作モードへ切り替えさせる（ステップ４２２）。
【００５３】
補助ユニット固有のモードへ切り替えた後で、オペレーティングシステム１４は、１回のみ実行の設定に従い構成設定を読み出して（ステップ４２４）、設定を完了する（ステップ４２６）。これにより、コンピュータ１０および補助ユニット３０は動作の準備が完了する。
【００５４】
図５に、例えば有料テレビ受像機等の復号チップカード（ビデオデコーダ・カード）が続いて補助ユニット３０として初めてコンピュータ１０に接続された場合の起動処理を示す。ビデオデコーダ・カード３０の接続は再起動を必要としない。
【００５５】
本処理は再び、コンピュータ１０へのビデオデコーダ・カード３０の接続から始まる（ステップ５００）。そのオペレーティングシステム１４は接続を検知すると、バックグラウンド処理２０が既に存在することを認識する（ステップ５０２）。しかし、バックグラウンド処理２０は、補助ユニット３０として接続されているビデオデコーダ・カードの識別情報５０がリスト２２に含まれていないため、これを認識することができない（ステップ５０４）。従って、登録ルーチン１８は自動的に開始される（ステップ５０６）。登録ルーチン１８はバックグラウンド処理２０が存在することを認識し（ステップ５０８）、ビデオデコーダ・カードから必要なドライバをインストールして（ステップ５１０）、ビデオデコーダ・カード３０が提供する構成設定を設定する（ステップ５１２）。続いて、オペレーティングシステム１４は、ビデオデコーダ・カード３０を固有モードへ切り替えさせることにより起動を完了して、ビデオデコーダ・カード３０を動作準備完了状態にする（ステップ５１６）。
【００５６】
図６に、ビデオデコーダ・カードに続いて図４によるインターネット・スマートカードが再びコンピュータ１０に接続されている場合の起動処理を示す。
【００５７】
本処理は再び、コンピュータ１０へのインターネット・スマートカード３０の接続から始まる（ステップ６００）。そのオペレーティングシステム１４は接続を検知すると、バックグラウンド処理２０が既に存在することを認識する（ステップ６０２）と共に、補助ユニット３０をインターネット・スマートカード３０として認識する（ステップ６０４）。オペレーティングシステム１４は次いで、インターネット・スマートカード３０をその固有動作モードへ直接切り替えさせる（ステップ６０６）ことにより、インターネット・スマートカード３０を動作準備完了状態にする（ステップ６０８）。
【００５８】
コンピュータ１０に接続される補助ユニット３０の一貫性を有するマスタ−スレーブ構成を確立する基本方式のフレームワーク内において、補助ユニット３０の要求によりコンピュータ１０にバックグラウンド処理２０をインストールすることで補助ユニット３０が必要とする特定の動作ルーチンをコンピュータ１０に提供し、その後、このバックグラウンド処理が、補助ユニット固有の動作モードを認識してこれに切り替えることにより、補助ユニット３０の高速起動を可能にするような方法およびその前提となる構成としては、このほかにも複数の実施形態が考えられる。例えば、更なる好都合な機能をロードおよびインストールするような方法ステップを追加しても問題ないし、再起動等の任意のプログラムステップを強制的に実行するようにしてもよいし、時間スロットを超過したか否か調べる等の方法ステップを省略してもよいし、新たな補助ユニットの接続の登録およびその識別情報の認識等の方法ステップを統合してもよい。但し、これらの実施形態は、主として、原理を可視化する役割を果たすものであるため、図面における表現は決して厳密に拘束性のあるものと解釈してはならない。たとえ図面の表現から逸脱していても、本発明を実現することができる。ＷＩＮＤＯＷＳオペレーティングシステムとは異なる構造を有するオペレーティングシステムを基礎とするコンピュータ１０において本方法を採用する場合、当然ながら、変更が必要な場合もあり得る。更に、コンピュータ１０および補助ユニット３０を、各種の方法で設定することができる。
【図面の簡単な説明】
【００５９】
【図１】ホストコンピュータおよび補助ユニットの構成の構造を示す。
【図２】補助ユニットのインストール処理のフロー図を示す。
【図３】補助ユニットのインストール処理のフロー図を示す。
【図４】引き続き異なる補助ユニットをインストールする処理を示す。
【図５】引き続き異なる補助ユニットをインストールする処理を示す。
【図６】引き続き異なる補助ユニットをインストールする処理を示す。
【図１】
2009521025.tif 000003
【図２】
2009521025.tif 000004
【図３】
2009521025.tif 000005
【図４】
2009521025.tif 000006
【図５】
2009521025.tif 000007
【図６】
2009521025.tif 000008
【国際調査報告】
2009521025.tif 000009
2009521025.tif 000010
2009521025.tif 000011
2009521025.tif 000012
2009521025.tif 000013
2009521025.tif 000014