JP2016510920A - Usb非同期通知機能のホスト検出のためのシステムおよび方法 - Google Patents

Usb非同期通知機能のホスト検出のためのシステムおよび方法 Download PDF

Info

Publication number
JP2016510920A
JP2016510920A JP2015561512A JP2015561512A JP2016510920A JP 2016510920 A JP2016510920 A JP 2016510920A JP 2015561512 A JP2015561512 A JP 2015561512A JP 2015561512 A JP2015561512 A JP 2015561512A JP 2016510920 A JP2016510920 A JP 2016510920A
Authority
JP
Japan
Prior art keywords
storage device
removable media
database
media
host system
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
JP2015561512A
Other languages
English (en)
Other versions
JP6293798B2 (ja
JP2016510920A5 (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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2016510920A publication Critical patent/JP2016510920A/ja
Publication of JP2016510920A5 publication Critical patent/JP2016510920A5/ja
Application granted granted Critical
Publication of JP6293798B2 publication Critical patent/JP6293798B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

リムーバブルメディアを有しているとホストシステムに誤っておよび/または不正確に報告し得るレガシーストレージデバイスを検出するためのシステムおよび方法。そのような誤ったまたは不正確な報告のせいで、ホストシステムが、ストレージデバイスに対して、I/O処理の準備ができているかについて定期的にポーリングすることになり得る。そのようなポーリングは不要であり、ホストシステムが消費する電力の無駄を意味する。一実施形態では、本システムは、ストレージメディアに定期的にポーリングし、データベースを更新する処理を実行することができる。データベースは、ストレージデバイスのリストであって、これらが本当にリムーバブルメディアを有するかまたはリムーバブルメディアを有すると誤って報告するかを示すリストとなる。他の実施形態では、本システムは、何らかのヒューリスティックなテストを用いて、ストレージデバイスがそのように誤ってリムーバブルメディアを示すか否かを判定できる。他の実施形態では、テレメトリサービスが、ホストの組により用いられて、そのようなストレージデバイスに関するデータを共有することができる。

Description

消費電力が最小限であることは、新しい計算プラットフォームにおいて注目されるますます重要となる特徴である。オリジナルのユニバーサルシリアルバス(USB)マスストレージの、たとえばバルクオンリー転送(BOT)およびUSB接続SCSIプロトコル(UASP)などの、規格のいくつかの側面は、この動向にそぐわないままである傾向がある。USBマスストレージデバイスに接続されたホストシステムに対する全体の電力消費は、これら既存の規格へのわずかな修正のみで改良することができる。
現在、新しいUSB3.0規格の一部として、新しい機能が、バス利用および電力効率を改良するために追加されている。USB3.0で接続された特定のデバイスは現在、デバイスの準備完了をホストに非同期で通知することができ、接続された全てのデバイスのポーリングを不要にする。加えて、BOT規格およびUASP規格の修正は、リムーバブルメディアを有するデバイスのメディア状態変化を検出する他の種類のポーリングを不要にするのに役立つ。
以下は、本明細書に記載したいくつかの態様についての基本的な理解が得られるように、本革新の簡略化した概要を示すものである。この概要は、特許請求する主題の広範な概観ではない。特許請求する主題の主要なまたは重要な要素を特定することも、本革新の範囲を線引きすることも意図していない。その唯一の目的は、特許請求する主題のいくつかの概念を、後述するより詳細な説明への前置きとして、簡略化した形式で示すことにある。
リムーバブルメディアを有しているとホストシステムに誤っておよび/または不正確に報告し得るレガシーストレージデバイスを検出するためのシステムおよび方法。そのような誤ったまたは不正確な報告のせいで、ホストシステムが、ストレージデバイスに対して、I/O処理の準備ができているかについて定期的にポーリングすることになり得る。そのようなポーリングは不要であり、ホストシステムが消費する電力の無駄を意味する。一実施形態では、本システムは、ストレージメディアに定期的にポーリングし、データベースを更新する処理を実行することができる。データベースは、ストレージデバイスのリストであって、これらが本当にリムーバブルメディアを有するかまたはリムーバブルメディアを有すると誤って報告するかを示すリストとなる。他の実施形態では、本システムは、何らかのヒューリスティックなテストを用いて、ストレージデバイスがそのように誤ってリムーバブルメディアを示すか否かを判定できる。他の実施形態では、テレメトリ(telemetry)サービスが、ホストの組により用いられて、そのようなストレージデバイスに関するデータを共有することができる。
一実施形態では、ストレージデバイスを検出するための方法であって、前記ストレージデバイスはホストシステムに接続され、前記ストレージデバイスは関連するメタデータを含み、前記関連するメタデータはそのようなストレージデバイスがリムーバブルメディアを有すると誤って示すことがあり、前記方法は、前記ホストシステムから第1のストレージデバイスへメディアポーリングメッセージを送信することであって、前記メディアポーリングメッセージは前記第1のストレージデバイスが準備ができているかを問い合わせるものである、送信することと、前記第1のストレージデバイスが準備ができていないと応答する場合、前記第1のストレージデバイスが本当にリムーバブルメディアを有するとしてデータベースを更新することとを備える、方法を開示する。
他の実施形態では、ホストシステムにおいてストレージデバイスを検出するためのシステムであって、前記ストレージデバイスは関連するメタデータをさらに含み、前記関連するメタデータは前記ストレージデバイスがリムーバブルストレージメディアを備えると誤って示すことがあり、前記システムは、前記ストレージデバイスと接続することと、前記ストレージデバイスとの間でメッセージをやりとりすることが可能なマスストレージドライバと、前記マスストレージドライバと接続され、前記ストレージデバイスとの間でメッセージを送受信することが可能なブロックストレージドライバと、前記ストレージデバイスへメディアポーリングメッセージを送信することと、本当はリムーバブルメディアを有さない前記ストレージデバイスへのさらなるメディアポーリングメッセージを無効にすることが可能なプロセッサとを備える、システムを開示する。
本システムの他の特徴および態様は、本出願で示される図面と共に読まれる場合に、発明を実施するための形態において以下に示される。
例示の実施形態を、図面中の参照図に示す。本明細書で開示される実施形態および図面は、限定的ではなく例示的なものとみなされるべきであるものとする。
典型的なホスト/ハブ/周辺デバイス構成環境の一実施形態の図である。 修正されたBOT規格の下で行われ得る処理の1つの例示の実施形態の図である。 本出願の原理に従って作られた本システムの1つの例示の実施形態の図である。 リムーバブルメディアを有するまたは有さないことがあるレガシーデバイス間を識別および/または区別するための処理の1つのフローチャートの実施形態の図である。 リムーバブルメディアステータスを誤報告し得るデバイスを識別し、節電の実施を支援するための処理の他のフローチャートの実施形態の図である。 参加しているホストシステムからテレメトリデータを収集し集約する処理のさらなる他のフローチャートの実施形態の図である。
本明細書で使用される場合、「コンポーネント」、「システム」、「インターフェース」、「コントローラ」などの用語は、ハードウェア、(たとえば実行中の)ソフトウェア、および/またはファームウェアのいずれであれ、コンピュータ関連のエンティティを指すものとする。たとえば、これらの用語のいずれかは、プロセッサ上で動作するプロセス、プロセッサ、オブジェクト、実行可能ファイル、プログラム、および/またはコンピュータとすることができる。例として、サーバ上で動作するアプリケーションおよびこのサーバの双方は、コンポーネントおよび/またはコントローラとすることができる。1つまたは複数のコンポーネント/コントローラは、プロセス内に存在することでき、コンポーネント/コントローラは、1つのコンピュータ上に局在させることができ、および/または2つ以上のコンピュータに分散させることができる。
特許請求する主題を、図面を参照して説明するが、同様の参照番号を、全体を通して、同様の要素を参照するために用いる。以下の記載においては、説明の目的で、多数の具体的な詳細を記載し、本革新の完全な理解が得られるようにする。しかしながら、特許請求する主題が、これらの具体的な詳細なくとも実践可能であることは明らかであろう。他の例では、周知の構造およびデバイスを、本革新の説明を容易にするために、ブロック図の形式で示す。
はじめに
一実施形態では、USBフラッシュドライブに対するメディア状態のポーリングを除去することで、電力を節約できる。しかしながら、以下の理由により、これを安全に行うことができない場合がある:(1)リムーバブルメディアを不正確に報告する大多数のUSBフラッシュドライブ(UFD)、(2)これらのUFDを、本当にリムーバブルメディアを含むデバイス(たとえばUSBフラッシュカードリーダデバイス)から一義的に区別する方法が現在存在しない。これは、そのようなリムーバブルメディアを実際には有さない場合に、リムーバブルメディアを含むと(誤っているが)符号化したレガシーUFDに特に当てはまる。
現在、新しい非レガシーデバイスは、ホストが誤動作またはデータ破損のリスクなしでメディアポーリングを断定的および安全に除去できる、新しい非同期通知機構を実装することができる。しかしながら、これは、現在およびしばらくの間、使用中である全てのレガシーデバイスに対しては、何も行わない。
状況を理解するために、図1は、典型的なUSB3.0ホスト/ハブ/周辺デバイス構成の1つの構成図(100)の1つの例示の実施形態である。図1からわかるように、新しいスーパースピードバスは、従来のUSB2.0バスと平行して動作するデュアルバスアーキテクチャの一部である。コントローラ102は、I/O処理および/または機能を提供するために、USB3.0ホスト104と通信可能である。USB3.0ホスト104は、レガシーUSB2.0ホスト106に対する互換性サポート、ならびに新しいスーパースピードホスト機能108を提供することができる。コントローラ102は、システムのCPU、I/Oコントローラ、またはそのようなコントローラのハードウェアおよび/またはソフトウェアコンポーネントの組合せでもよい。
ホストは、多数のポート(たとえば110aおよび110b)を備えることができる。ポートは、複数のハブ112と接続することができる。ハブ112は、レガシーハブ114と、新しい(たとえばスーパースピード)ハブ116とをさらに備えることができる。そのようなハブは、今度は、複数のUSB周辺デバイス120と接続でき、これらは、非スーパースピード機能122およびスーパースピード機能124の組を備えることができる。
そのような周辺デバイスは、種々のレガシーデバイス、たとえば、(リムーバブルメディアを有するとホストに誤って報告し得る)リムーバブルメディアを有さないUSBフラッシュドライブ126、または、実際のリムーバブルメディアコンポーネント(たとえばメモリーカード130)を有することができるカメラ128を含むことができる。
図2は、修正されたBOTまたはUASP規格の下で行われ得る処理の1つの例示の実施形態(200)を示す。USBマスストレージデバイス208は、リムーバブルとは限らないストレージメディア216と、処理ユニット214と、インターフェースバンドル210とを備えることができる。インターフェースバンドル210は、レガシー(たとえば既存のBOTおよびUASP規格の)インターフェースINエンドポイント(EP)(210a)およびOUT EP 210b、ならびにステータスの非同期通知のための新たに導入されたインタラプトエンドポイント(INT EP 212)をさらに備えることができる。
たとえば、リムーバブルストレージが取り外されたかまたは交換されたかに関するステータスの変化は、通知処理206aにおいて、ホストシステムに、たとえばUSBマスストレージドライバ206に、非同期で信号により通知することができる。この通知はさらに、ブロックストレージドライバ204へ、メディア変更処理204aへ、非同期で伝えることができる。最後に、そのようなステータスの変化は、上位レベルファイルシステムスタック202へ報告することができる。
前述したように、レガシーデバイスは、新しい規格に従って実装されていないので、そのようなステータスの変化を非同期に報告することはない。実際には、レガシーデバイスは、BOT/UASP規格への新たに提案された修正より前から存在するか、またはこれらの修正を実装しないことを選択したデバイスであってもよい。加えて、レガシーデバイスは、リムーバブルメディアを有すると、そのようなリムーバブルメディアを有さない場合でさえ、誤って報告することがある(したがって、継続的なポーリングを要求する)。潜在的な節電に対する様々な態様をより理解するために、様々なコンポーネントへの影響を考慮することが望ましいだろう:
ハブおよびコントローラの考慮
USBデバイスツリーの各ノードに対して電力を管理しながら、特定のノードの全ての子を、そのノード自身が休止し得る前に、休止させなければならない。そして、ホストコントローラに接続されたデバイスの全体のツリーが休止した場合、コントローラ自身を休止させることができる。コントローラを休止させることは、自身の回路をアクティブに保つことに関連する電力を節約するだけでなく、コントローラが生成し得る割り込みの停止によってホストCPU消費電力を低下させることもできる。
CPUの考慮
リムーバブルメディアを有するデバイスの現在のメディア状態に関してホストを最新に保つために、システムは、たとえばメディアポーリングメッセージとしてTEST UNIT READY(TUR)コマンドを用いた定期的なポーリングに作用することができる。これは、この活動によってCPUをより高い電源状態に保持する傾向がある、タイマプロシージャコールのコンテキストにおけるコードの定期的な実行に対応する。全体のシステム消費電力の最小化を試みるために、以下を考慮するのが望ましいだろう:
(1)リムーバブルメディアを報告するデバイスは、メディア状態の任意の変化を検出するために、ホストによりTEST UNIT READYコマンドを用いて継続的にポーリングされる。これは、追加の電力を消費する傾向があり、実際のデータI/Oの不在下で、USBデバイスツリーならびにホストコントローラおよびホストCPUを不必要にアクティブに保つ。
(2)より多くの電力が最適化されたホストに接続されている間、バスパワー型マスストレージデバイスは、以前のホストのバージョンの場合より長い期間の間、自身が休止したままであると気づくことがある。休止状態におけるこの期間の長さは、デバイスが安定した動作を維持するために必要な長さを越えることがある。そのような環境下では、デバイスは、デバイスがある一連の内部のハウスキーピングタスクを完了可能な時間の間、ポートがアクティブのままで、臨時ポートを再開するように要求することになる。
周辺機器/デバイスの種類
本明細書の一部の実施形態では、記載した機構の実装に対する見返りとして得られる利益は、デバイスの種類に応じて変化することがある。結果に影響し得る2種類の着脱性を広く考慮することは有益である:すなわち、デバイス着脱性およびメディア着脱性である。以下の表1は、これら2つの特性の入れ替えを表す様々なデバイスの種類の例を示す:
Figure 2016510920
カテゴリ1および3のデバイスは、TEST UNIT READYポーリングの除去から明らかに恩恵を受けやすいであろう一方で、カテゴリ2および4のデバイスは、ポートをリモートウェイク(remote wake)する機能から恩恵を多く受けることができる。加えて、カテゴリ1のデバイスのユーザは電力を節約するために単にプラグを抜くことができる一方で、カテゴリ3のデバイスのユーザは同じ選択肢が与えられないことがあるということを考慮することが望ましいだろう。カテゴリ3のデバイスは、リムーバブルメディアスロットが占有されているか否かに関わらず、システムの電力を消費することも指摘しておいてもよいだろう。加えて、正規のUSBフラッシュドライブが、カテゴリ1および2の双方に現れることを指摘しておいてもよいだろう。これは正しく、なぜなら、既存のフラッシュドライブの大部分が、リムーバブルメディアビット(RMB)に対してビット値1(真)を指定するので、リムーバブルストレージメディアの正しいベアラ(bearer)でないにも関わらず、TEST UNIT READYポーリングを誘発するためである。しかしながら、一部のフラッシュドライブは、たとえば、ゼロに設定されたリムーバブルメディアビット(RMB)(すなわち、RMB=0)により、自身の非リムーバブルメディアを正確に表現し、不正確な値(RMB=1)を報告するデバイスに比べて、接続されたホストシステムに対してより多くの電力を節約するのに効果的に役立つ。
一実施形態
述べたように、USBフラッシュドライブのこの不要なメディアポーリングを安全に除去することにより得られる利益は多種多様である:
(1)継続的なポーリングは、デバイスをアクティブに保持する傾向があるので、選択的な休止を阻害する。ポーリングを除去することにより、デバイス自体をアイドル状態に到達させて、低電力非アクティブ状態に置くことが可能とすることができる。
(2)これは、デバイスだけでなく、全体のUSBデバイスツリーに影響することがあり、というのは、全ての介在するハブデバイスが、USBホストコントローラに加えて、アクティブのままである傾向があるためである。
(3)連続的なポーリングDPCタイマもまた、CPUを不必要にアクティブに保つ傾向がある場合がある。
したがって、本当に着脱可能なリーダデバイス対USBフラッシュドライブの正確な識別に作用することで、ポーリングを安全に除去することが望ましいだろう。また、誤った識別を行うと、メディア変更が見逃されることがあるので、場合により、機能が低下し、データ崩壊が起こり得ることになる。
図3は、USB3.0規格などに影響し得る、本システム(300)の1つの例示の実施形態を示す。レガシーUSBマスストレージデバイス308は、ストレージメディア316と、処理コンポーネント314と、インターフェースバンドル310とを備え、インターフェースバンドル310は、レガシーインターフェースIN EP 310aおよびOUT EP 310bをさらに備えることができる。
この場合、レガシーデバイスがリムーバブルメディアを有するか否かを誤って指定することがあるとしても、システムは、非同期通知を、そのような非同期通知を待つUSBマスストレージドライバ306と共に、これは到着することはないが、依然として採用できることがある。システムがストレージデバイスから非同期通知メッセージを受信する場合、これはストレージデバイスがレガシーデバイスでないことを示す傾向があり、システムは、そのような通知メッセージを受信したときを含めて、そのデバイスをしかるべく扱うことができ、システムは、そのIDまたはストレージデバイスに関連する他のメタデータを用いて、ストレージデバイスが本当にリムーバブルメディアを有するとしてデータベースを更新することができる。このデータおよび/またはデータベースはさらに、テレメトリまたはその他により、他のホストシステムと共有することができる。
ステータスは、メディア変更処理304aにより、ブロックストレージドライバ304に非同期で通知することができる。最後に、そのようなステータスはさらに、上位レベルファイルシステムドライバスタック302に通知することができる。ブロックストレージドライバ304はさらに、メディア変更処理、または、接続されたストレージデバイスのステータスを検出し、I/O処理に対する準備状況またはRMBステータスについてストレージデバイスに問い合わせるための何らかの十分な処理を実行するプロセッサを備えるか、または十分な処理能力にアクセスすることができる。
この節電非同期ステータス更新に作用するために、本システムのいくつかの実施形態は、リムーバブルメディアの正しい指定および/または検出を改良するための様々な技法および/または方法を採用することができる。
単なる一例として、製品を出荷する前に、データを照合することが可能である。まず、出来る限り多くの既知の(レガシーまたはその他の)USBフラッシュドライブ対リーダデバイスを識別することが可能である。これらのリーダおよびデバイスに関するメタデータは、検索可能テーブルまたは他の適したデータベース内に置くことができる。このデータベースは、(たとえば初期テーブルとして)調べることができ、システムは、正しいポーリング動作を必要に応じて用いることができる。
しかしながら、この初期テーブル/データベースは、網羅的でも前向きでもないという点で制限があることがあるので、ホストシステムは、特定の追加のヒューリスティックな手続きおよび/または方法を用いて、以下のようにこれをさらに精製することが可能である:
(1)初期化中、RMB=1と報告する一部または全部のレガシーユニット(LUN)に、TURコマンド(または、デバイスがI/O処理の準備ができていることを示す何らかの他の「ready」コマンド)を一度発行する。少なくとも1つのLUNがTURに対してNOT READY−MEDIA NOT PRESENTと応答した場合、これは、フラッシュカードリーダまたは本当にリムーバブルメディアを有する他のデバイスである。システムまたはホストは、そのデバイスへのポーリングを無効にすることおよび/またはデバイスが本当にリムーバブルメディアを有するとしてテーブル/データベースを更新することを含めて、これを後でしかるべく扱うことができる。
(2)全てがREADYを報告する場合、さらなる証拠が、正確な判定を行うために要求されることがある。テレメトリのレポートにおいて、デバイスのハードウェアID(VIDおよびPID)、LUN数、および、各LUNがREADY対NOT READYを報告した回数(これは、若干のRMB=0のデバイスが時々および断続的にNOT READYを報告するので、望ましい場合がある)を含むように、データをアップロードし共有すること(たとえば他のホストと共にデバイス正誤(errata)データベースを更新すること)が可能である。
(3)テレメトリサンプルデータを集約し、初期テーブル/データベースに含まれなかった可能性のある、可能性の高いUFD対フラッシュカードリーダデバイスを識別する。このレビュー処理は、任意のまれなケースまたは異常を考慮から除外するのに役立つことがある。
(4)この新しい情報を定期的に用いて、テーブル/データベースを更新し、動的にドライバを更新する。
述べたように、非同期通知を実装する新しいUSBマスストレージデバイスは、ホストに公開されたインターフェース記述子バンドルに挿入された追加のインタラプトエンドポイントを介して、そのようにすることができる。レガシー(または下位の)ホストは、この新しい非同期通知機能に気づいていないが、追加のエンドポイントを単に無視し、新しい機能を利用できないままとすることができる。
しかしながら、新しいホストシステムだけが、この新しい非同期通知機構を認識し利用することができる。これは、新しいインタラプトエンドポイントを選択し、デバイスがアクティブなD0電源状態のままである限り、持続する未処理の要求をこのエンドポイント上に保持することで行う。この要求は、デバイスにより生成された任意のメディア変更イベントがあったときに、デバイスにより完了する。これに続いて、ホストは、最近完了した要求を置き換えるための他のインタラプトエンドポイント要求を再発行する。デバイスが非アクティブなD3電源状態に遷移したとき、ホストシステムは、インタラプトエンドポイントへのこの未処理の要求を取り消す。続いて、デバイスがアクティブD0電源状態に復旧したとき、デバイス上のローカルに検出されたメディア変更に対応するデバイスウェイクシグナリングの結果として、またはホストが開始した遷移に起因して、ホストは、持続するインタラプトエンドポイントの非同期通知要求を再確立する。
いくつかの処理実施形態
図4は、リムーバブルメディアを有するとは限らないレガシーデバイス間を識別および/または区別するのを手助けし、電力を節約するのを手助けすることができる処理の1つのフローチャートの実施形態(400)を示す。
402において、デバイスをハブに挿入することができ、その後、システムは、404においてInquiryコマンド(すなわち、何らかのreadyコマンド)を発行することができる。このデバイスがリムーバブルメディアを有さないこと(RMB=0)を折り返し報告する場合、システムは、414の節電経路へ遷移することができ、ここでデバイスアイドルタイマをリセットすることができる。システムは、デバイスが切断されているというレポートを受信することがあり、この場合、424においてデバイスをさらなる考慮から除外することができる。
しかしながら、システムからのI/O要求がある場合、デバイスアイドルタイマを414に戻ってリセットすることができ、この要求は処理される。そのようなI/O要求がない場合、デバイスアイドルタイマは、420において期限切れになり得る。その場合、422において、電力を節約するために、デバイスポートを休止させることができる。
しかしながら、406に戻って、デバイスがRMB=1(すなわちリムーバブルメディアを有する)と報告する場合、システムは、何らかのヒューリスティックなテストを用いて、デバイスが本当にリムーバブルメディアを有するかを判定することができる。一実施形態では、そのようなヒューリスティックなテストは、上記のものに従って進行することができる。デバイスがヒューリスティックスによると非リムーバブルメディアを有する場合、この処理は414に遷移し、しかるべく進行することができる。
そうでなければ、システムは、デバイスが、(たとえば、BOT/UASP規格拡張、またはそのような非同期通知をサポート可能な任意の他の規格に従って)非同期メディア通知を実装しているかについて、さらに問い合わせることができる。その場合、システムは414に遷移することができる。そうでなければ、システムは、定期的なTURポーリングを実行することができ、デバイスはアイドル状態になることができない。
図5は、節電の実施を支援可能な他の処理(たとえば図4など)を補完し、ならびにリムーバブルメディアステータスを誤報告し得るデバイスに関するメタデータを更新し精製することが可能な、他のフローチャートの実施形態(500)である。502において、デバイスを挿入することができる。504において、システムは、テーブル/データベースを調べて、特定のデバイスのステータスを判定することができる。506において、デバイスがリムーバブルメディアを有さないものとしてリストに含まれる場合、508において、システムは、このデバイスに対してTURポーリングを無効にすることができる。
そうでなければ、データベースエントリがない場合、システムは510に遷移し、デバイスが切断されるかを検出することができる。その場合、システムは、デバイス取り外し状態518に遷移することができる。そうでなければ、システムは、TURポーリングへのデバイスの応答を監視することができる。メディアが存在しないことを示す応答があった場合、システムは、516において、デバイスに関するデータを収集し、テレメトリによりデバイスを報告することができる。そうでなければ、システムは、TURポーリングに対するデバイスの応答を監視し続け、しかるべく進行することができる。
図6は、参加しているホストシステムからテレメトリデータを収集し集約する(たとえばサーバシステム上でオフラインで動作し得る)処理のさらなる他のフローチャートの実施形態(600)である。これを用いて、リムーバブルメディアステータスを誤認し得るデバイスを正しく識別するように、テーブル/データベースを更新することができる。この処理は、オフラインか否かにかかわらず、進行することができる。602において、システムは、デバイスデータベースを更新するために、テレメトリデータをレビューすることができる。更新されたデータベースを用いて、システムは、604において、任意の非リムーバブルメディアが存在するかを判定することができる。その場合、システムは、606において、特定のデバイスの取り扱いについて全ての更新可能なホストシステムに通知するために、データベースを更新することができる。報告すべき新しいデバイスが存在する場合、システムはこの情報をデータベースにプッシュできる。ある後の時点で、このデータベースは、適切な更新処理により(たとえばWindows Update(登録商標)コンピュータサービスにより)、全ての更新可能なホストシステムと共有することができる。
上記の記載には、本革新の例が含まれている。特許請求する主題を説明するために、コンポーネントまたは方法の全ての考え得る組合せを説明することはもちろん不可能であるが、当業者は、本革新の多数のさらなる組合せおよび順列が可能であることを理解するだろう。したがって、特許請求する主題は、添付の特許請求の範囲の趣旨および範囲内に含まれる全てのそのような変更、修正、および変形を含むものとする。
具体的には、上述のコンポーネント、デバイス、回路、システムなどにより実行される様々な機能に関して、そのようなコンポーネントを記述するのに用いられる(「手段」への言及を含む)用語は、別段の指示がない限り、開示された構造と構造的に同等でなくても、記述したコンポーネントの指定機能を実行し、特許請求する主題の本明細書で示された例示の諸態様の機能を実行する、任意のコンポーネント(たとえば機能的な同等物)に対応するものとする。これに関して、本革新が、特許請求する主題の様々な方法の行為および/またはイベントを実行するためのコンピュータ実行可能命令を有するシステムならびにコンピュータ可読媒体を含むこともまた理解されよう。
加えて、本革新の特定の特徴は、いくつかの実装のうちの1つのみに関して開示されている場合があるが、そのような特徴は、任意の所与のまたは特定の用途のために望むようにおよび有利なように、他の実装の1つまたは複数の他の特徴と組み合わせることができる。さらに、「含む(includes)」および「含む(including)」という用語およびこれらの変形が、発明を実施するための形態または特許請求の範囲において用いられる範囲においては、これらの用語は、「備える(comprising)」という用語と同様に、包含的であるものとする。

Claims (10)

  1. ストレージデバイスを検出するための方法であって、前記ストレージデバイスはホストシステムに接続され、前記ストレージデバイスは関連するメタデータを含み、前記関連するメタデータはそのようなストレージデバイスがリムーバブルメディアを有すると誤って示すことがあり、前記方法は、
    前記ホストシステムから第1のストレージデバイスへメディアポーリングメッセージを送信することであって、前記メディアポーリングメッセージは前記第1のストレージデバイスが準備ができているかを問い合わせるものである、送信することと、
    前記第1のストレージデバイスが準備ができていないと応答する場合、前記第1のストレージデバイスが本当にリムーバブルメディアを有するとしてデータベースを更新することと
    を備える、方法。
  2. 前記関連するメタデータが、(RMB=0)ステータスおよび(RMB=1)ステータスを含むグループのうちの1つを含む、請求項1に記載の方法。
  3. 前記ストレージデバイスから非同期通知メッセージを受信することと、
    受信したときに、前記第1のストレージデバイスが本当にリムーバブルメディアを有するとしてデータベースを更新することと
    をさらに備える、請求項1に記載の方法。
  4. 前記第1のストレージデバイスが本当はリムーバブルメディアを有さない場合、前記ホストシステムによる前記第1のストレージデバイスへのさらなるメディアポーリングを無効にすること
    をさらに備える、請求項1に記載の方法。
  5. リムーバブルメディアを誤って示す関連するメタデータを含む既知のストレージデバイスのデータベースで、前記第1のストレージデバイスに対するエントリを検索することであって、前記第1のストレージデバイスが前記ホストシステムに接続される、検索することと、
    エントリが前記第1のストレージデバイスに対して前記データベースに存在する場合、前記ホストによる前記第1のストレージデバイスへのポーリングを無効にすることと
    をさらに備える、請求項1に記載の方法。
  6. リムーバブルメディアを誤って示す関連するメタデータを含むストレージデバイスに関するデータを、第2のホストシステムと共有すること
    をさらに備える、請求項1に記載の方法。
  7. 前記データを共有することが、
    前記データをテレメトリサーバへ報告することと、
    デバイス正誤データベースを更新することと、
    更新処理により前記デバイス正誤データベースをホストシステムへプッシュすることと
    をさらに備える、請求項6に記載の方法。
  8. ホストシステムにおいてストレージデバイスを検出するためのシステムであって、前記ストレージデバイスは関連するメタデータをさらに含み、前記関連するメタデータは前記ストレージデバイスがリムーバブルストレージメディアを備えると誤って示すことがあり、前記システムは、
    前記ストレージデバイスと接続することと、前記ストレージデバイスとの間でメッセージをやりとりすることが可能なマスストレージドライバと、
    前記マスストレージドライバと接続され、前記ストレージデバイスとの間でメッセージを送受信することが可能なブロックストレージドライバと、
    前記ストレージデバイスへメディアポーリングメッセージを送信することと、本当はリムーバブルメディアを有さない前記ストレージデバイスへのさらなるメディアポーリングメッセージを無効にすることが可能なプロセッサと
    を備える、システム。
  9. 前記プロセッサが、
    リムーバブルメディアを誤って示す関連するメタデータを含む既知のストレージデバイスのデータベースで、前記第1のストレージデバイスに対するエントリを検索することであって、前記第1のストレージデバイスが前記ホストシステムに接続される、検索することと、
    エントリが前記第1のストレージデバイスに対して前記データベースに、本当はリムーバブルメディアを有さないものとして存在する場合、前記ホストによる前記第1のストレージデバイスへのポーリングを無効にすることと
    が可能である、請求項8に記載のシステム。
  10. 前記プロセッサが、
    リムーバブルメディアを誤って示す関連するメタデータを含むストレージデバイスに関するデータを、第2のホストシステムと共有することと、
    前記データをテレメトリサーバへ報告することと、
    デバイス正誤データベースを更新することと、
    更新処理により前記デバイス正誤データベースをホストシステムへプッシュすることと
    が可能である、請求項9に記載のシステム。
JP2015561512A 2013-03-07 2014-03-04 Usb非同期通知機能のホスト検出のためのシステムおよび方法 Active JP6293798B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/789,088 2013-03-07
US13/789,088 US9589010B2 (en) 2013-03-07 2013-03-07 Systems and methods for host detection of USB asynchronous notification capability
PCT/US2014/020060 WO2014137959A1 (en) 2013-03-07 2014-03-04 Systems and methods for host detection of usb asynchronous notification capability

Publications (3)

Publication Number Publication Date
JP2016510920A true JP2016510920A (ja) 2016-04-11
JP2016510920A5 JP2016510920A5 (ja) 2017-03-09
JP6293798B2 JP6293798B2 (ja) 2018-03-14

Family

ID=50382614

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015561512A Active JP6293798B2 (ja) 2013-03-07 2014-03-04 Usb非同期通知機能のホスト検出のためのシステムおよび方法

Country Status (11)

Country Link
US (2) US9589010B2 (ja)
EP (1) EP2965215B1 (ja)
JP (1) JP6293798B2 (ja)
KR (2) KR102270531B1 (ja)
CN (1) CN105264511B (ja)
AU (1) AU2014226091B2 (ja)
BR (1) BR112015020052B1 (ja)
CA (1) CA2898753C (ja)
MX (1) MX348640B (ja)
RU (1) RU2667033C2 (ja)
WO (1) WO2014137959A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9589010B2 (en) 2013-03-07 2017-03-07 Microsoft Technology Licensing, Llc Systems and methods for host detection of USB asynchronous notification capability
CN106168903A (zh) * 2016-06-30 2016-11-30 国云科技股份有限公司 一种管理usb和自动挂载到虚拟机的方法
US10725939B2 (en) * 2017-02-13 2020-07-28 Microchip Technology Incorporated Host-detecting USB hub
US10705157B2 (en) * 2017-08-09 2020-07-07 Microsoft Technology Licensing, Llc Testing system for an electrical cable
RU2685063C1 (ru) * 2018-10-09 2019-04-16 Акционерное общество "Актив-софт" (АО "Актив-софт") Система для программирования и тестирования usb устройств
RU187402U1 (ru) * 2018-11-27 2019-03-05 Акционерное общество "Актив-софт" (АО "Актив-софт") Аппарат для маркировки и тестирования usb-устройств
RU2694143C1 (ru) * 2018-11-27 2019-07-09 Акционерное общество "Актив-софт" (АО "Актив-софт") Аппарат для маркировки и тестирования usb-устройств
CN111431952B (zh) * 2019-01-09 2022-06-03 阿里巴巴集团控股有限公司 消息推送方法、装置及系统,计算机存储介质和电子设备
CN111813727B (zh) * 2020-08-21 2020-12-08 南京沁恒微电子股份有限公司 一种实时高效的usb数据传输方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005209288A (ja) * 2004-01-23 2005-08-04 Matsushita Electric Ind Co Ltd メディアドライブおよびコンピュータシステムとメディアドライブ制御方法
WO2005119469A2 (en) * 2004-05-28 2005-12-15 Thomson Licensing Method for managing the plug-in or removal of a memory card into or from a card reader and apparatus for use in said method
US20080071963A1 (en) * 2003-11-22 2008-03-20 Super Talent Electronics Inc. Express card with extended USB interface
US7819750B2 (en) * 1999-10-06 2010-10-26 Igt USB software architecture in a gaming machine
JP2012008846A (ja) * 2010-06-25 2012-01-12 Yokogawa Electric Corp 記憶装置を備えたデバイス
US8285909B2 (en) * 2007-12-07 2012-10-09 Intel Corporation Hardware assisted endpoint idleness detection for USB host controllers

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6532535B1 (en) * 1998-02-24 2003-03-11 Adaptec, Inc. Method for managing primary and secondary storage devices in an intelligent backup and restoring system
US6567921B1 (en) 1999-01-25 2003-05-20 Agere Systems, Inc. Asynchronous low power mode bus controller circuit and method of low power mode operation
US6546437B1 (en) * 1999-03-18 2003-04-08 Intel Corporation Communication between a computer and a peripheral with legacy failure control mechanism
US7707321B2 (en) 1999-08-04 2010-04-27 Super Talent Electronics, Inc. Chained DMA for low-power extended USB flash device without polling
CN100418341C (zh) * 2003-06-30 2008-09-10 汤姆森特许公司 用于视频记录或再现设备的可移除介质存储设备
EP1671253A2 (en) * 2003-09-24 2006-06-21 Medtronic, Inc. Apparatus and method for serving medical device application content to a remote computing device
US7124248B2 (en) * 2003-10-20 2006-10-17 Intel Corporation Current media status determination for a storage device
US8200862B2 (en) 2004-03-17 2012-06-12 Super Talent Electronics, Inc. Low-power USB flash card reader using bulk-pipe streaming with UAS command re-ordering and channel separation
RU2348992C2 (ru) * 2004-07-12 2009-03-10 Кабусики Кайся Тосиба Запоминающее устройство и ведущее устройство
US10204338B2 (en) * 2004-11-24 2019-02-12 Microsoft Technology Licensing, Llc Synchronizing contents of removable storage devices with a multimedia network
US8478860B2 (en) * 2006-03-14 2013-07-02 Strong Bear L.L.C. Device detection system for monitoring use of removable media in networked computers
US20080189554A1 (en) 2007-02-05 2008-08-07 Asad Ali Method and system for securing communication between a host computer and a secure portable device
US8655463B2 (en) 2007-05-18 2014-02-18 Sandisk Technologies Inc. Method for avoiding refreshing a database of metadata associated with digital media content
US8510494B2 (en) 2009-12-24 2013-08-13 St-Ericsson Sa USB 3.0 support in mobile platform with USB 2.0 interface
US9589010B2 (en) * 2013-03-07 2017-03-07 Microsoft Technology Licensing, Llc Systems and methods for host detection of USB asynchronous notification capability

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7819750B2 (en) * 1999-10-06 2010-10-26 Igt USB software architecture in a gaming machine
US20080071963A1 (en) * 2003-11-22 2008-03-20 Super Talent Electronics Inc. Express card with extended USB interface
JP2005209288A (ja) * 2004-01-23 2005-08-04 Matsushita Electric Ind Co Ltd メディアドライブおよびコンピュータシステムとメディアドライブ制御方法
US20070104042A1 (en) * 2004-01-23 2007-05-10 Yoshiyuki Sugahara Media drive, computer system, and media drive control method
WO2005119469A2 (en) * 2004-05-28 2005-12-15 Thomson Licensing Method for managing the plug-in or removal of a memory card into or from a card reader and apparatus for use in said method
JP2008500617A (ja) * 2004-05-28 2008-01-10 トムソン ライセンシング カードリーダに対するメモリカードのプラグイン又は取り外しを管理する方法及び当該方法を使用する装置
US8285909B2 (en) * 2007-12-07 2012-10-09 Intel Corporation Hardware assisted endpoint idleness detection for USB host controllers
JP2012008846A (ja) * 2010-06-25 2012-01-12 Yokogawa Electric Corp 記憶装置を備えたデバイス

Also Published As

Publication number Publication date
CA2898753C (en) 2021-03-16
US20170177659A1 (en) 2017-06-22
US20140258225A1 (en) 2014-09-11
US10366077B2 (en) 2019-07-30
MX348640B (es) 2017-06-22
JP6293798B2 (ja) 2018-03-14
KR102270531B1 (ko) 2021-06-28
MX2015011836A (es) 2016-01-08
KR20210021136A (ko) 2021-02-24
AU2014226091A1 (en) 2015-08-06
BR112015020052A8 (pt) 2019-11-12
CN105264511B (zh) 2018-03-30
BR112015020052A2 (pt) 2017-07-18
RU2015137806A (ru) 2017-03-10
CN105264511A (zh) 2016-01-20
CA2898753A1 (en) 2014-09-12
BR112015020052B1 (pt) 2021-12-21
US9589010B2 (en) 2017-03-07
AU2014226091B2 (en) 2019-01-17
EP2965215B1 (en) 2017-05-03
WO2014137959A1 (en) 2014-09-12
RU2015137806A3 (ja) 2018-03-07
KR102219218B1 (ko) 2021-02-23
EP2965215A1 (en) 2016-01-13
RU2667033C2 (ru) 2018-09-13
KR20150123827A (ko) 2015-11-04

Similar Documents

Publication Publication Date Title
JP6293798B2 (ja) Usb非同期通知機能のホスト検出のためのシステムおよび方法
CN102314377B (zh) 加速器及其实现支持虚拟机迁移的方法
TWI357557B (en) Program product for controlling an execution mode
CN102959502A (zh) 在系统中提供异步事件通知的方法
US8255928B2 (en) Automated termination of selected software applications in response system events
CN101452369A (zh) 用于控制usb大容量存储设备的逻辑单元的方法和系统
TW201044172A (en) Power management system and method
US9395799B2 (en) Power management techniques for USB interfaces
US7124248B2 (en) Current media status determination for a storage device
CN110647409A (zh) 消息写入方法、电子设备、系统及介质
CN105900067A (zh) 指示储存器装置的重建状态
CN204044694U (zh) 一种低成本扩展式gpu刀片服务器
JP6358389B2 (ja) 情報処理装置
US20110270814A1 (en) Expanding Functionality Of One Or More Hard Drive Bays In A Computing System
CN115756619A (zh) 硬盘启动方法、装置、设备、介质及程序产品
US7337338B2 (en) Information handling system capable of operation in reduced power states
US7266711B2 (en) System for storing data within a raid system indicating a change in configuration during a suspend mode of a device connected to the raid system
JP2017041110A (ja) マルチコンピュータシステム,管理装置および管理プログラム
US8510583B2 (en) Asynchronous sleep mode for host controller
CN116860681A (zh) 热插拔方法及计算机系统
US8941863B1 (en) Techniques for image duplication optimization
TW201205437A (en) Server system
TW201027326A (en) Main board system and setting method thereof

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170201

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: 20180122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180214

R150 Certificate of patent or registration of utility model

Ref document number: 6293798

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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