JP3636080B2 - Usbホストでusb装置依存プログラムを実行するためにusb装置によって提供されるエージェント - Google Patents

Usbホストでusb装置依存プログラムを実行するためにusb装置によって提供されるエージェント Download PDF

Info

Publication number
JP3636080B2
JP3636080B2 JP2001043479A JP2001043479A JP3636080B2 JP 3636080 B2 JP3636080 B2 JP 3636080B2 JP 2001043479 A JP2001043479 A JP 2001043479A JP 2001043479 A JP2001043479 A JP 2001043479A JP 3636080 B2 JP3636080 B2 JP 3636080B2
Authority
JP
Japan
Prior art keywords
peripheral device
agent
applet
web site
data processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001043479A
Other languages
English (en)
Other versions
JP2001265705A (ja
Inventor
ロバート・トーマス・ケイト
フック・キ・ドゥ
ユージーン・マイケル・マクシミリアン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2001265705A publication Critical patent/JP2001265705A/ja
Application granted granted Critical
Publication of JP3636080B2 publication Critical patent/JP3636080B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • G06F9/4413Plug-and-play [PnP]
    • G06F9/4415Self describing peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4081Live connection to bus, e.g. hot-plugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • G06F9/4413Plug-and-play [PnP]

Description

【0001】
【発明の属する技術分野】
本発明は、一般にデータ処理システムに関し、特にUSB装置に結合するために適合可能なデータ処理システムに関する。
【0002】
【従来の技術】
過去数年間に民間製造業者の協会は、多数の周辺装置を1台のパーソナル・コンピュータに同時にリンクするための汎用規格および方法を作成した。この規格はユニバーサル・シリアル・バス(USB)という。USBは、比較的単純なケーブルにより広範囲の装置または周辺装置に相互接続する能力をパーソナル・コンピュータに提供する通信アーキテクチャまたは「バス」である。ケーブル接続した周辺装置は、ホストがスケジューリングしたブール・ベース・プロトコルによりUSB帯域幅を共用する。このバスにより、ホストおよびその他の周辺装置が動作中の間に周辺装置の接続、構成、使用、切離しを行うことができる。USBは、事前に専用インタフェースに接続され、直接ハードウェア方式によってアクセスされた周辺装置の交換を可能にする。
【0003】
入出力(I/O)装置は、インストールまたはセットアップ・データ、診断プログラム、ドライバ、チュートリアル、「readme」ファイル、その他の情報を含むディスケットとともに出荷される場合が多い。このようなディスケットは、置き場所を間違えたり、必要なときに使用不能であることがよくある。
【0004】
【発明が解決しようとする課題】
USB装置に関しては、本発明によりこのようなディスケットが不要になり、機能性が追加される。
【0005】
【課題を解決するための手段】
本発明は上記の必要性に対処するものである。電源投入後、USB装置は、実際には「大容量記憶装置」(通常はハード・ファイル、CD−ROM、またはフロッピー・ドライブである)ではない場合でも「大容量記憶装置」として列挙される。オペレーティング・システム(OS)非依存の(たとえば、Javaで作成された)USB装置エージェントは、実行可能ファイル(.exe)の形でUSB装置のROMまたはEPROMに含まれることになる。装置が最初に「大容量記憶装置」として列挙された後、ユーザはWindowsのエクスプローラまたはDOSのウィンドウ(または同等のもの)に移行し、その「大容量記憶装置」(j:またはk:などの文字が示す)を選択し、エージェントを含む適切な.exeファイルを実行することを求められることになる。次にエージェントは、それ自体をホストのハード・ファイル上にインストールすることになり、その後、互換性のある他のUSB装置とともに機能することができる。エージェント・ソフトウェアは、1回だけロードすればよい。
【0006】
装置エージェントは、互換性のあるUSB装置が列挙された場合を検出し、次いで装置依存情報を求めて装置に照会することになる。この情報は、その装置をサポートするためにどの種類の情報およびソフトウェアが使用可能であるかと、その情報をどこで入手できるかを含むことになる。
【0007】
あるいは、USB装置は、追加のドライバの必要性なしにホストにデータを入力でき、オペレーティング・システムによって認識可能な装置として列挙することができる。
【0008】
上記の説明では、以下に示す本発明の詳細説明をよりよく理解できるように、本発明の特徴および技術的利点をかなり広く概説した。本発明の特許請求の範囲の主題を形成する本発明の追加の特徴および利点については、以下に説明する。
【0009】
本発明およびその利点をより完全に理解するために、添付図面に関連して示す以下の説明を参照する。
【0010】
【発明の実施の形態】
以下の説明では、本発明を徹底的に理解するために、具体的なワードまたはバイト長など、多数の具体的な詳細を示す。しかし、本発明はこのような具体的な詳細なしでも実施可能であることは、当業者には明白になるだろう。その他の事例では、不必要な詳細で本発明を不明確にしないために、周知の回路をブロック図形式で示した。タイミングの考慮事項などに関する詳細は、大部分は、このような詳細が本発明の完全な理解を得るために不要であり、当業者の技能の範囲内であるので、省略されている。
【0011】
次に添付図面を参照すると、図示の要素は必ずしも一定の縮尺で示されておらず、類似または同様の要素は複数の図にわたって同じ参照番号で示されている。
【0012】
図1を参照すると、USB装置101は通常、読取り専用メモリ(ROM)またはフラッシュEPROM(電子的にプログラム可能な読取り専用メモリ)などの何らかのタイプの記憶装置を有する。本発明の一実施形態では、このようなメモリ装置はJavaベースのソフトウェア・プログラムを記憶するための十分なメモリ容量を有することになり、そのプログラムは、Windowsおよびその他のほとんどのオペレーティング・システムとともに含まれるJava仮想計算機(JVM)と、ネットスケープ・ナビゲータを利用することができるだろう。未使用のEPROM空間は、特定のI/O装置に関連して顧客が使用できる1つまたは複数のプログラムを記憶するために使用することができるだろう。本開示では、このようなプログラムの1つ、すなわち「エージェント」がUSB装置101からホスト103にどのようにアップロードされるかを説明する。このエージェントはホスト103とともに機能し、ホストはその他のUSB装置固有プログラムとの人間の対話に必要なディスプレイ、キーボード、マウスなどを提供することになる。装置エージェントは、USB装置固有情報またはソフトウェアあるいはその両方をホストのハード・ファイルに記憶することができ、(任意選択で)ホストのディスプレイ・デスクトップ上にアイコンを作成することもできるだろう。ユーザは、拡張機能を後で再利用することができる。
【0013】
基本的な考え方は、OS非依存Javaエージェントがホスト103にロードされると、そのエージェントはカストマイズ・クラス・ローダを使用し、そのローダが装置101(USB記憶装置として現れる)から対話(診断など)クラスをロードするということになる。これらのクラス・ファイル(Java実行可能ビット・コード)は、USB装置101との対話方法をそのエージェントに説明することになる。USB装置101との対話後、エージェントは通常使用のために再列挙するよう装置に命令することになる。その後、エージェントは、互換性のあるUSB装置が大容量記憶装置として列挙された場合を検出し、(適宜)それが実際にそうであるものとして再列挙するようその装置に命令することになる。このようなエージェントは、USBJavaAPI(アプリケーション・プログラミング・インタフェース)と、USB装置101へのJavaアクセスを可能にする何らかの固有コードとを使用することになる。
【0014】
USB装置は、ホストに接続されたときに、それが何であるかをホストに通知する。USB装置はそれがどのように動作することになっているかを把握している限り、USB装置は他の何かであるふりをし、すなわち、それが実際にそうであるもの以外の装置として列挙することができる。
【0015】
もう一度、図1を参照すると、USB装置101は、ホスト・コンピュータ103に結合されたHUB102に接続されている。ステップ111でUSB装置101は大容量記憶装置として列挙される。ただし、装置101は追加のドライバの必要性なしにデータを入力でき、オペレーティング・システムによって認識可能な装置として列挙することができる。以下、このような装置は「列挙済み入力装置」ともいうことができる。
【0016】
ステップ112では、エージェント・プログラムがすでにホスト・コンピュータ103にロードされているかどうかの判定を行う。yesの場合、ステップ114では、列挙後にオペレーティング・システムによってロードされたエージェントによって装置101内の実行可能プログラムが立ち上げられる。しかし、エージェントがホスト103にまだロードされていない場合、ユーザはステップ113で、オペレーティング・システムのファイル・エクスプローラに移行し、列挙によって作成された大容量記憶装置用のセットアップ・ファイルをクリックしなければならないか(DOSコマンドも使用することができる)、またはホスト・コンピュータ103に記憶するためにインターネットからエージェントをダウンロードしなければならない。ステップ120では、所望の機能を提供するためにそのエージェントがインターネットからアプレットをダウンロードする必要があるかどうかを判定する。その必要がある場合、ステップ115が実行される。その必要がない場合、ステップ121でプロセスは、追加のアプレットなしでそれが実行できる機能を実行する。その後、エージェントはステップ129で完了する。
【0017】
ステップ115では、ネットワーク・ブラウズが使用可能になっているかどうかの判定を行う。ネットワーク・ブラウズが使用可能になっているかどうかを判定する方法は2通りある。1つの方法は、システムがシステム・レジストリを見回って、ブラウザ(すなわち、マイクロソフトのインターネット・エクスプローラ(IE)またはネットスケープ・ナビゲータ)用の項目が存在するかどうかを確認し、ブラウザの立上げを試みることである。それが失敗するかまたはレジストリ内の項目が見つからない場合、ネットワーク・ブラウズは使用不能にしなければならない。ただし、マイクロソフトはそのオペレーティング・システムとIEをバンドルしているので、そのブラウザは必ず存在する。第2の方法は、ほとんどのオペレーティング・システムおよびシステム・ミドルウェア(すなわち、Java)には、「部外者」がプログラム式かつ動的に照会または通信するために構成要素がインタフェースを公開できるという概念が存在することである。たとえば、マイクロソフトのインターネット・エクスプローラはCOMおよびCOM+インタフェースを公開し、それによりプログラマはインターネット・エクスプローラの機能性をそれぞれのプログラムに組み込むかまたはインターネット・エクスプローラを(マイクロソフトのWin32/COM APIにより)直接立ち上げるかあるいはその両方を行うことができる。このインタフェースは、ネットワーク・ブラウズが使用可能になっている場合にプログラムの検出を可能にするプロパティも公開する。ただし、ロータス・ノーツと、マイクロソフトのマネー99および2000はいずれもIEのCOMインタフェースを使用するアプリケーションの例である。他のオペレーティング・システムは同様の手法を有するが、CORBA、JavaBeans(HotJavaネットワーク・ブラウザ)など、他のオブジェクト通信ミドルウェアを使用する。
【0018】
ブラウズが使用可能になっていない場合、ステップ116で、このようなブラウズが使用可能になっていないという適切なメッセージがユーザに示される。しかし、ネットワーク・ブラウズが使用可能になっている場合、ステップ117でプロセスは、システム・レジストリを介してブラウザの外部インタフェースにアクセスし、ブラウザを立ち上げ、その装置用のデフォルト・ウェブ・サイトを伝える。これは、ネットワーク・ブラウズが使用可能であるかどうかを判定するための第2のオプションで上記と同様に実施することができる。公開された機能性の一部は、特定のサイトに移行するようブラウザに動的に命令するためのインタフェースである。このウェブ・サイトは訪れたときに立ち上げられる実行可能アプレットを含むことになり、これは装置101の機能性の診断、更新、保守、または拡張を行うことができる。
【0019】
以下に記載する機能を提供することに加え、エージェント・プログラムは、互換性のあるUSB装置が大容量記憶装置として列挙された場合を感知することになる。その場合、エージェントは、最近列挙された互換性のある「大容量記憶装置」にコマンドを送ることになる。エージェントのコマンドにより、USB装置はUSBから切り離され、それが実際にそうであるものとして再列挙されることになる。これについては図2に示すが、同図のステップ201では新しいUSB装置が差し込まれ、すべての登録済みエージェントに関するオペレーティング・システム・イベント通知が行われる。その後、ステップ202では、新しいUSB装置が差し込まれたときに通知を受けるためにそのエージェントがオペレーティング・システムに登録されているかどうかの判定を行う。登録されていない場合、ステップ203では、エージェントは何も行わない。しかし、ステップ202で回答が肯定の場合、プロセスはステップ204に移行する。ステップ204では、新しい装置が「大容量記憶装置」であるかどうかの判定を行う。この場合も、代わりに入力が可能な装置であればどのような装置でも十分だろう。ホストまたはホスト内のエージェントは、列挙中に装置がホストに提供する記述子を調べることにより、新たに列挙した装置の特性を決定することができる。USBにより列挙するUSB装置の標準プロセスは、標準のUSBホスト・システムに精通したプログラマ間で共通の知識である。新しい装置が「大容量記憶装置」として列挙された場合、ステップ207で、新しい装置がエージェントと互換性があるかどうかの判定を行う。言い換えれば、新しい装置がエージェントのコマンドに応答して、それが実際にそうであるものとして再列挙することになるかどうかである。互換性がない場合、プロセスはステップ206に移行し、そこで新しい装置が大容量記憶装置ではないものとして指定され、そのプロセスで何も実行されない。ステップ207で新しい装置がエージェントと互換性がある場合、プロセスはステップ208に移行し、そこでエージェントはアプレット(ある場合)を実行し、それが実際にそうであるものとして再列挙するよう装置に命令する。
【0020】
上記の一部を言い換えると、装置エージェントは、互換性のあるUSB装置が列挙された場合を検出し、装置依存情報を求めて装置に照会することになるだろう。この情報は、その装置をサポートするためにどの種類の情報およびソフトウェアが使用可能であるかと、その情報をどこで入手できるかを含むことになる。情報自体を提供することに加え、装置は、追加情報を提供するウェブのURLを提供することができるだろう。
【0021】
まとめとして、本発明の構成に関して以下の事項を開示する。
【0022】
(1)データ処理システムにおいて、
周辺装置をプロセッサに結合するステップと、
第1の列挙済み入力装置として周辺装置を列挙するステップであって、周辺装置が実際にはその列挙によって表される入力装置ではない可能性があるステップと、
第1の列挙済み入力装置を選択するステップと、
第1の列挙済み入力装置内に含まれる実行可能ファイルを実行するステップであって、その結果、プロセッサに結合されたデータ処理システムのメモリにエージェントがロードされるステップと、
周辺装置がそれ自体として列挙されるようにエージェントによって周辺装置を再列挙するステップとを含む方法。
(2)周辺装置がユニバーサル・シリアル・バス(「USB」)装置である、上記(1)に記載の方法。
(3)列挙するステップが、大容量記憶装置として周辺装置を列挙するステップをさらに含み、周辺装置が実際の大容量記憶装置ではない、上記(1)に記載の方法。
(4)エージェント内に含まれるかまたはエージェントによって呼び出されるアプレットを使用してウェブ・サイトにアクセスするステップをさらに含む、上記(1)に記載の方法。
(5)ウェブ・サイトからアプレットを立ち上げるステップであって、ウェブ・サイトからのアプレットが周辺装置に関する動作を実行するために動作可能であるステップをさらに含む、上記(4)に記載の方法。
(6)ウェブ・サイトからのアプレットが周辺装置を診断するために動作可能である、上記(5)に記載の方法。
(7)ウェブ・サイトからのアプレットが周辺装置の機能性を使用可能にするか、更新するか、または拡張するために動作可能である、上記(5)に記載の方法。
(8)ウェブ・サイトからのアプレットが周辺装置を保守するために動作可能である、上記(5)に記載の方法。
(9)データ処理システムに結合するために適合可能な周辺装置と、
周辺装置がデータ処理システムに結合されたときに周辺装置が第1の列挙済み入力装置として列挙されるようにするために動作可能なエージェントおよびコードを含む記憶装置とを含むUSB装置。
(10)コードが実行可能ファイルも含み、その結果、データ処理システムに結合されたメモリにエージェントがロードされ、
周辺装置がそれ自体として列挙されるようにエージェントによって周辺装置を再列挙するためにエージェントが動作可能である、上記(9)に記載のUSB装置。
(11)周辺装置がユニバーサル・シリアル・バス(「USB」)装置である、上記(10)に記載のUSB装置。
(12)エージェント内に含まれるアプレットを使用してウェブ・サイトにアクセスするために動作可能なコードをさらに含む、上記(11)に記載のUSB装置。
(13)プロセッサと、
バス・システムによってプロセッサに結合されるメモリと、
バス・システムによってプロセッサに結合される周辺装置と、
偽の大容量記憶装置として周辺装置を列挙するための回路であって、周辺装置が実際の大容量記憶装置ではない回路と、
偽の大容量記憶装置を選択するための回路と、
偽の大容量記憶装置内に含まれる実行可能ファイルを実行するための回路であって、その結果、プロセッサに結合されたメモリにエージェントがロードされる回路と、
周辺装置がそれ自体として列挙されるようにエージェントによって周辺装置を再列挙するための回路とを含むデータ処理システム。
(14)周辺装置がユニバーサル・シリアル・バス(「USB」)装置である、上記(13)に記載のシステム。
(15)エージェント内に含まれるアプレットを使用してウェブ・サイトにアクセスするための回路をさらに含む、上記(13)に記載のシステム。
(16)ウェブ・サイトからアプレットを立ち上げるための回路であって、ウェブ・サイトからのアプレットがデータ処理システムに結合された周辺装置に関する動作を実行するために動作可能である回路をさらに含む、上記(15)に記載のシステム。
(17)ウェブ・サイトからのアプレットが周辺装置を使用可能にし、診断するために動作可能である、上記(16)に記載のシステム。
(18)ウェブ・サイトからのアプレットが周辺装置の機能性を使用可能にするか、更新するか、または拡張するために動作可能である、上記(16)に記載のシステム。
(19)ウェブ・サイトからのアプレットが周辺装置を保守するために動作可能である、上記(16)に記載のシステム。
【図面の簡単な説明】
【図1】本発明による流れ図である。
【図2】互換性のある他のUSB装置が大容量記憶装置として列挙された場合を感知するエージェントの流れ図である。
【符号の説明】
101 USB装置
102 HUB
103 ホスト

Claims (19)

  1. プロセッサおよびメモリを含んで構成されるデータ処理システムにおいて、
    前記プロセッサに接続された、実際には第1の入出力装置でない可能性がある周辺装置を第1の入出力装置として、該プロセッサが認識するステップと、
    該プロセッサが、選択された前記第1の入出力装置内に含まれる実行可能ファイルを実行することにより、前記メモリにエージェントをロードするステップと、
    前記エージェントを実行することにより、前記プロセッサが前記周辺装置をそれ自体として再認識するステップと、を含む方法。
  2. 前記周辺装置がユニバーサル・シリアル・バス(「USB」)装置である、請求項1に記載の方法。
  3. 前記認識するステップは、前記周辺装置が実際の大容量記憶装置ではないが、該周辺装置を大容量記憶装置として前記プロセッサが認識するステップをさらに含む、請求項1に記載の方法。
  4. 前記プロセッサが、前記エージェント内に含まれるかまたは前記エージェントによって呼び出されるアプレットを使用してウェブ・サイトにアクセスするステップをさらに含む、請求項1に記載の方法。
  5. 前記ウェブ・サイトから前記アプレットを立ち上げるステップであって、前記ウェブ・サイトからの前記アプレットが前記周辺装置に関する動作を実行するために動作可能であるステップをさらに含む、請求項4に記載の方法。
  6. 前記ウェブ・サイトからの前記アプレットが前記周辺装置を診断するために動作可能である、請求項5に記載の方法。
  7. 前記ウェブ・サイトからの前記アプレットが前記周辺装置の機能性を使用可能にするか、更新するか、または拡張するために動作可能である、請求項5に記載の方法。
  8. 前記ウェブ・サイトからの前記アプレットが前記周辺装置を保守するために動作可能である、請求項5に記載の方法。
  9. 請求項1に記載の方法を実現するデータ処理システムにて使用されるエージェントおよびコードを記憶した記憶装置を有する周辺装置。
  10. 前記コードは、前記データ処理システムのメモリに前記エージェントをロードするように実行可能なファイルを含む、請求項9に記載の周辺装置。
  11. ユニバーサル・シリアル・バス(「USB」)装置である、請求項10に記載の周辺装置。
  12. 前記エージェント内に含まれるアプレットを使用してウェブ・サイトにアクセスするために動作可能なコードをさらに含む、請求項11に記載の周辺装置。
  13. プロセッサと、
    バス・システムにより前記プロセッサに接続されたメモリと、
    前記バス・システムにより前記プロセッサに接続された周辺装置と、を含んで構成されるデータ処理システムであって、
    実際の大容量記憶装置ではない前記周辺装置を大容量記憶装置として認識する手段と、
    前記大容量記憶装置として認識された前記周辺装置を選択する手段と、
    前記周辺装置に含まれる実行可能ファイルを実行することにより前記メモリにエージェントをロードする手段と、
    前記エージェントが前記周辺装置をそれ自体として再認識する手段と、を備えたデータ処理システム。
  14. 前記周辺装置がユニバーサル・シリアル・バス(「USB」)装置である、請求項13に記載のデータ処理システム。
  15. 前記エージェント内に含まれるアプレットを使用してウェブ・サイトにアクセスするための手段をさらに含む、請求項13に記載のデータ処理システム。
  16. 前記ウェブ・サイトから前記アプレットを立ち上げるための手段であって、
    前記ウェブ・サイトからの前記アプレットが前記データ処理システムに接続された前記周辺装置に関する動作を実行するために動作可能である手段をさらに含む、請求項15に記載のデータ処理システム。
  17. 前記ウェブ・サイトからの前記アプレットが前記周辺装置を使用可能にし、診断するために動作可能である、請求項16に記載のデータ処理システム。
  18. 前記ウェブ・サイトからの前記アプレットが前記周辺装置の機能性を使用可能にするか、更新するか、または拡張するために動作可能である、請求項16に記載のデータ処理システム。
  19. 前記ウェブ・サイトからの前記アプレットが前記周辺装置を保守するために動作可能である、請求項16に記載のデータ処理システム。
JP2001043479A 2000-02-24 2001-02-20 Usbホストでusb装置依存プログラムを実行するためにusb装置によって提供されるエージェント Expired - Fee Related JP3636080B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/512200 2000-02-24
US09/512,200 US6813669B1 (en) 2000-02-24 2000-02-24 Agent provided by USB device for executing USB device dependent program in USB host

Publications (2)

Publication Number Publication Date
JP2001265705A JP2001265705A (ja) 2001-09-28
JP3636080B2 true JP3636080B2 (ja) 2005-04-06

Family

ID=24038108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001043479A Expired - Fee Related JP3636080B2 (ja) 2000-02-24 2001-02-20 Usbホストでusb装置依存プログラムを実行するためにusb装置によって提供されるエージェント

Country Status (4)

Country Link
US (1) US6813669B1 (ja)
JP (1) JP3636080B2 (ja)
KR (1) KR100424993B1 (ja)
TW (1) TW498211B (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW556096B (en) * 2002-05-01 2003-10-01 Prolific Technology Inc Installation method for driver of plug-and-play device
ATE544111T1 (de) 2002-11-01 2012-02-15 Saslite Corp Ablösbare usb einrichtung mit getrennten einheiten
WO2004086363A2 (en) 2003-03-27 2004-10-07 M-Systems Flash Disk Pioneers Ltd. Data storage device with full access by all users
EP1634160A4 (en) * 2003-06-16 2009-11-04 Iocell Corp INFORMATION PROCESSING DEVICE AND METHOD FOR CONTROLLING THE SAME
KR20030059773A (ko) * 2003-06-16 2003-07-10 주식회사 아이오셀 정보처리 단말기
US7664839B1 (en) * 2004-06-30 2010-02-16 Symantec Operating Corporation Automatic device classification service on storage area network
SG123627A1 (en) * 2004-12-20 2006-07-26 Trek 2000 Int Ltd Method for overcoming system administration blockage
US8078788B2 (en) 2005-12-08 2011-12-13 Sandisk Technologies Inc. Media card command pass through methods
US8135880B2 (en) * 2006-03-31 2012-03-13 Cypress Semiconductor Corporation USB mass storage locking
TWI312467B (en) * 2006-05-19 2009-07-21 Avermedia Tech Inc External device and operating method applied thereto
US20080022380A1 (en) * 2006-05-25 2008-01-24 Gemalto, Inc. Method of patching applications on small resource-constrained secure devices
GB2439579A (en) * 2006-06-30 2008-01-02 Advanced Risc Mach Ltd Target device programmer
US7711863B2 (en) * 2006-09-11 2010-05-04 Research In Motion Limited Method and apparatus for variably enabling USB interaction
US7707323B2 (en) 2006-09-11 2010-04-27 Research In Motion Limited Method and apparatus for enabling enhanced USB interaction
US7774027B2 (en) * 2006-09-28 2010-08-10 Sandisk Corporation Flash drive that configures generic bluetooth controller of the drive to be compatible with multiple bluetooth peripheral devices
TWI362003B (en) * 2006-09-28 2012-04-11 Sandisk Corp Method, flash memory drive and system for bluetooth communication
US7801561B2 (en) * 2006-09-28 2010-09-21 Sandisk Corporation Methods of configuring a generic bluetooth controller of a flash drive to be compatible with multiple bluetooth peripheral devices
KR100800589B1 (ko) 2006-12-20 2008-02-04 엘지전자 주식회사 정보 처리 장치 및 그 운용방법
US8595390B1 (en) 2007-05-28 2013-11-26 Sandisk Il Ltd. Multiple session accessiblity via a CD-ROM interface
WO2010057526A1 (en) * 2008-11-19 2010-05-27 Nec Europe Ltd. Virtualization mediated system and method
JP2011008311A (ja) * 2009-06-23 2011-01-13 Casio Computer Co Ltd 入出力制御装置および電子楽器
US8468180B1 (en) * 2010-12-31 2013-06-18 Emc Corporation Porting storage metadata
CN111104075B (zh) * 2019-12-18 2023-11-07 北京数衍科技有限公司 Usb设备模拟装置及方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05289854A (ja) 1992-04-08 1993-11-05 Olympus Optical Co Ltd 外部記憶装置のアクセス装置
US5465357A (en) 1992-06-22 1995-11-07 International Business Machines Corporation Method and apparatus for an automated dynamic load of an ABIOS device support layer in a computer system
US5689726A (en) 1995-05-03 1997-11-18 United Microelectronics Corporation Computer system interface adapter capable of automatic self-configuration and self-diagnosis before operating system initiation
US5854905A (en) 1996-09-03 1998-12-29 Intel Corporation Extensible bios for boot support of devices on multiple hierarchical buses
US5935224A (en) * 1997-04-24 1999-08-10 Microsoft Corporation Method and apparatus for adaptively coupling an external peripheral device to either a universal serial bus port on a computer or hub or a game port on a computer
US6012103A (en) * 1997-07-02 2000-01-04 Cypress Semiconductor Corp. Bus interface system and method
US5987530A (en) * 1997-07-10 1999-11-16 National Instruments Coporation Method for caching data and generating only one read request to read the requested data and additional data in universal serial bus system
US5958027A (en) * 1997-08-05 1999-09-28 Advanced Micro Devices, Inc. Method and system for optimizing the flow of isochronous data and clock rate information
US6009480A (en) * 1997-09-12 1999-12-28 Telxon Corporation Integrated device driver wherein the peripheral downloads the device driver via an I/O device after it is determined that the I/O device has the resources to support the peripheral device
US6349352B1 (en) * 1998-01-06 2002-02-19 Sony Corporation Of Japan Home audio/video network with both generic and parameterized device control
TW444165B (en) * 1998-05-12 2001-07-01 Primax Electronics Ltd Hot plug and play universal serial bus switch device and control method
JP4146983B2 (ja) 1999-02-26 2008-09-10 インターナショナル・ビジネス・マシーンズ・コーポレーション サーバ・オブジェクトのメソッドを呼び出すプロセス方法及びデータ処理システム
JP4809968B2 (ja) 1999-04-09 2011-11-09 キヤノン株式会社 情報処理装置、情報処理方法、及びコンピュータ読み取り可能な記録媒体
US6516114B2 (en) 2000-06-27 2003-02-04 Oluma, Inc. Integration of fibers on substrates fabricated with grooves

Also Published As

Publication number Publication date
TW498211B (en) 2002-08-11
KR20010085354A (ko) 2001-09-07
JP2001265705A (ja) 2001-09-28
KR100424993B1 (ko) 2004-03-27
US6813669B1 (en) 2004-11-02

Similar Documents

Publication Publication Date Title
JP3636080B2 (ja) Usbホストでusb装置依存プログラムを実行するためにusb装置によって提供されるエージェント
US6754811B1 (en) Operating system device centric agent
US5854905A (en) Extensible bios for boot support of devices on multiple hierarchical buses
US6336152B1 (en) Method for automatically configuring devices including a network adapter without manual intervention and without prior configuration information
JP3330569B2 (ja) コンピュータの制御方法、コンピュータ及び記録媒体
US6487608B2 (en) Method for automatically configuring network interface card and capable of randomizing a media access controller address of the network interface card
US5675795A (en) Boot architecture for microkernel-based systems
US6334149B1 (en) Generic operating system usage in a remote initial program load environment
US7082598B1 (en) Dynamic driver substitution
CA2276565C (en) Method and system for configuring plug and play devices for a computer operating system
US5920709A (en) Bus interface for IDE device
US20040230963A1 (en) Method for updating firmware in an operating system agnostic manner
JP4117193B2 (ja) コンピューティング・デバイスにおいてポートを有効化する方法
CN1399194A (zh) 创建和使用具有选定功能的操作系统的方法和系统
US7299169B2 (en) Device driver auto-load
JP2006518504A (ja) システム・ブート時にハードウェア構成中のユーザ対話を不要にするためのシステムおよび装置
US7143277B2 (en) Methods and apparatus for event based console variable coherence maintenance in a pre-boot environment
US20020138680A1 (en) Apparatus and methods for controlling removable media devices using a BIOS abstraction layer
WO2001065365A1 (en) Apparatus and method for swapping devices while a computer is running
Hendrick Overview of NetWare Client 32 for Windows 95
KR20040007128A (ko) 프레쉬웹오에스를 구비한 컴퓨터 및 이를 제어하는 방법

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040420

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040614

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041116

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041119

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041214

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20041214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041227

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090114

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090114

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S202 Request for registration of non-exclusive licence

Free format text: JAPANESE INTERMEDIATE CODE: R315201

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090114

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100114

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100114

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100114

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110114

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110114

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120114

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120114

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130114

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130114

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140114

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees