JP6209861B2 - 記憶メタデータのための拡張可能な方法及びシステム - Google Patents

記憶メタデータのための拡張可能な方法及びシステム Download PDF

Info

Publication number
JP6209861B2
JP6209861B2 JP2013109184A JP2013109184A JP6209861B2 JP 6209861 B2 JP6209861 B2 JP 6209861B2 JP 2013109184 A JP2013109184 A JP 2013109184A JP 2013109184 A JP2013109184 A JP 2013109184A JP 6209861 B2 JP6209861 B2 JP 6209861B2
Authority
JP
Japan
Prior art keywords
format
metadata
stored
value pair
key value
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
JP2013109184A
Other languages
English (en)
Other versions
JP2013246827A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2013246827A publication Critical patent/JP2013246827A/ja
Application granted granted Critical
Publication of JP6209861B2 publication Critical patent/JP6209861B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Description

本願明細書で議論される実施形態は、データ記憶フォーマットに関する。
パーソナルコンピュータは、1980年代に普及し、現在も重要性及び展開の範囲を増し続けている。広範な種類のオペレーティングシステム及び記憶フォーマットが展開され、インターネットを形成するために記憶装置の多様な使用及びハードウェアのネットワーク接続を可能にしている。このようなオペレーティングシステムの例は、Microsoft Windows(登録商標)、Linux(登録商標)、Mac OS/Xを含み、数々のあまり知られていない変形も含む。これらのオペレーティングシステムの全ては、2つの共通の特徴を有する。つまり、それらはブ―ト可能でなければならないこと、それらはディスクドライブに格納されたデータにアクセス可能でなければならないことである。残念ながら、分かりにくい相違点の多様すぎる賛辞(compliment)は、先行する動作をサポートするために必要なメタデータを操作するためにオペレーティングシステム個別の自動ユーティリティが拡散したことから生じている。ブートシステム機能なしでは、オペレーティングシステムは起動できない。ディスクドライブのパーティション及びファイルシステムメタデータの記録機能なしでは、オペレーティングシステムは、自身が格納しているデータへのアクセスを提供できない。これら2つの動作をサポートするために多くのユーティリティが作成されているが、いずれも拡張性をサポートするために設計されていない。拡張性サポートの欠如は、多様なオペレーティングシステムとマシンアーキテクチャとの間の相互接続性を制限する。
限られた相互接続性は、ホームユーザやサーバ技術者に対して、ブート及び初期ファイルシステムの実装の複雑性を著しく増大し且つ信頼性を低下させ、システム管理コストを有意に増大させてしまう。
ある単純な例は、「fdisk」ユーティリティ又はコマンドである。このコマンドは、Windows及びLinuxの両方において同じ名称である。残念ながら、fdiskコマンドの動作は、WindowsとLinuxの間で変わる。例えば、fdiskコマンドの2つのバージョンは、MBR及びEBRフォーマットパーティション情報をハードディスクドライブに読み出し及び書き込むが、それらは、それぞれ異なるコマンドラインオプションと異なる対話式コマンドメニューを用いる。MBRパーティションテーブル内には、論理ブロックアドレス(logical block address:LBA)セクタ番号及びCHS(Cylinder-Head-Sector)アドレスの両方がある。CHSアドレスは、ことなるランタイム環境及びオペレーティングシステムで異なるように解釈される。ブートアップでは、基本入力/出力システム(BIOS)は、通常、CHSアドレスを用いる。最新のオペレーティングシステムは、パーティションテーブル内のCHS値を完全に無視するが、それらがLBAアドレスと一致しないときは分かりにくい診断メッセージを印刷する。Linux sfdiskコマンドのマニュアルページに記載されているように、特定バージョンのDOSの中のシリンダ番号の1つの解釈には相違がある。Linuxには、「fdisk」、「cfdisk」、「sfdisk」及び「gdisk」と称される少なくとも4個の有名なディスクパーティションの変形がある。これら全ては僅かに異なる動作を有し、名称が類似しWindowsの変形と類似するので初心者には区別するのが難しい。今やUnix(登録商標)シェルは、Cygwinのような類似システムを通じてWindows下で利用可能なので、ディスクドライブパーティションを操作するための自動シェルスクリプトの使用に関連する非常に多くの危険と混乱がある。自動パーティションテーブル操作の頻繁な出力は、共有ドライブ上の1又は複数のオペレーティングシステムを失うことである。
年を追って、オペレーティングシステムの記憶装置の設置面積よりも速く、ハードドライブの容量が増大しコストが低減したので、アドバンスドユーザは彼らのコンピュータに1より多いオペレーティングシステムをインストールすることが一般的である。その結果、インストール又は復旧中に、ユーザがどのシステムが望ましいかを選択できるよう、ディスクドライブパーティション及びブートシーケンスに変更が必要であり得る。Intel Virtualization Technology (VT) CPU機能のような機能を通じてCPUハードウェアでサポートされるエミュレーションシステムの普及は、ブートブロック及びパーティションテーブルの変更の実行に伴う複雑性及び危険を増すだけである。オペレーティングシステムは、互いを承知し、これらのシステムの重要な領域を操作するときに協力すべきであるが、現在の多くの異なるコマンド、フォーマット及びバイナリデータの解釈は、このような相互動作を妨げてしまう。
本願明細書で請求される主題は、上述のような欠点を解決する実施形態や上述のような環境でのみ機能する実施形態に限定されない。むしろ、この背景技術は、単に、本願明細書に記載される複数の実施形態が実施される技術分野の一例を説明するために提供される。
一実施形態の一態様によると、記憶メタデータを表現するために拡張可能言語を用いるシステムは、コンピュータ可読記憶媒体及び処理装置を有する。コンピュータ可読記憶媒体は、記憶メタデータを格納しても良い。処理装置は、記憶メタデータをコンピュータ可読記憶媒体に拡張可能言語フォーマットで書き込むよう構成されても良い。処理装置は、拡張可能言語フォーマットの記憶メタデータを操作するよう構成されても良い。処理装置は、拡張可能言語フォーマットの記憶メタデータを転送するよう構成されても良い。
実施形態の目的及び利点が理解され、少なくとも特に特許請求の範囲で指摘された要素、特徴及び組合せを用いて達成されるだろう。
上述の全体的説明及び以下の詳細な説明の両方は、例示及び説明のためであり、本発明の範囲を限定しないことが理解される。
例示的な実施形態は、添付の図面を用いて、更なる特異性及び詳細事項と共に記載され説明される。
記憶メタデータを表すために拡張可能言語を用いるよう構成された例示的なコンピューティングシステムを示すブロック図である。 図1の記憶メタデータの例示的な実施形態を示す。 圧縮バイナリフォーマットの記憶メタデータの例示的な実施形態を示す。 拡張可能言語フォーマットの図3の記憶メタデータの例示的な実施形態を示す。 記憶メタデータを表現する拡張可能言語を用いる例示的な方法のフローチャートである。 記憶メタデータを表現する拡張可能言語を用いる別の例示的な方法のフローチャートである。
本発明の実施形態を、添付の図面を参照して以下に説明する。
図1は、本開示による、記憶メタデータを表すために拡張可能言語を用いるよう構成された例示的なコンピューティングシステム100を示すブロック図である。記憶メタデータは、例えばシステムクリティカルメタデータであっても良い。非常に基本的な構成102では、コンピューティングシステム100は、1又は複数のプロセッサ104及びシステムメモリ106を有しても良い。メモリバス108は、プロセッサ104とシステムメモリ106との間の通信のために用いられても良い。
所望の構成に依存して、プロセッサ104は、マイクロプロセッサ(μP)、マイクロコントローラ(μC)、デジタル信号プロセッサ(DSP)又はそれらの任意の組合せを含むがこれらに限定されない任意の種類であっても良い。プロセッサ104は、レベル1キャッシュ110及びレベル2キャッシュ112のような1又は複数のキャッシュ、プロセッサコア(又は複数のコア)114、及びレジスタ116を有しても良い。例示的なプロセッサコア114は、算術論理演算ユニット(ALU)、浮動小数点演算ユニット(FPU)、デジタル信号プロセッサコア(DSPコア)又はこれらの任意の組合せを有しても良い。例示的なメモリ制御部118は、プロセッサ104と共に用いられても良い。または、幾つかの実施形態では、メモリ制御部118は、プロセッサ104の内部の一部であっても良い。プロセッサ104は、例えばシステムメモリ106にロードされたコンピュータ命令又はコードを実行することにより、及び/又はシステムメモリ106を使用しないでコンピュータ命令又はコードを1行ずつ実行することにより、本願明細書に記載された1又は複数の動作を実行するよう構成されても良い。
所望の構成に依存して、システムメモリ106は、(RAM(Random Access Memory)のような)揮発性メモリ、(ROM(Read Only Memory)、フラッシュメモリ等のような)不揮発性メモリ又はそれらの任意の組合せを含むがこれらに限定されない任意の種類であっても良い。システムメモリ106は、オペレーティングシステム120、1又は複数のアプリケーション122、プログラムデータ124を有しても良い。アプリケーション122は、図5A−5Bに関して記載される1又は複数の機能を含む、本願明細書に記載される機能を実行するよう構成される拡張可能アルゴリズム126を有しても良い。例えば、アプリケーション122は、プロセッサ104により実行され、コンピューティングシステム100に本願明細書に記載される機能を実行させても良い。プログラムデータ124は、例えばプロセッサ104により本願明細書に記載される拡張可能言語フォーマットで書かれ、操作され及び/又は転送され得る記憶メタデータ128を有しても良い。幾つかの実施形態では、アプリケーション122は、オペレーティングシステム120上でプログラムデータ124により動作するよう構成されても良い。したがって、記憶メタデータ128は、拡張可能言語フォーマットを用いて表現されても良く、及び/又は拡張可能言語フォーマットで書かれ、操作され及び/又は転送されても良い。記憶メタデータ128のための拡張可能言語フォーマットの使用を更に詳細に説明する前に、幾つかの実施形態による図1のコンピューティングシステム100の種々の任意のコンポーネント、特徴及び/又は機能が記載される。
コンピューティングシステム100は、基本構成102と他の装置及びインタフェースとの間の通信を実現するために、追加の特徴又は機能、及び追加インタフェースを有しても良い。例えば、バス/インタフェース制御部130は、記憶装置インタフェースバス134を介して基本構成102と1又は複数のデータ記憶装置132との間の通信を実現するために用いられても良い。データ記憶装置132は、取り外し可能記憶装置136、非取り外し可能記憶装置138又はそれらの組合せであっても良い。取り外し可能記憶装置及び非取り外し可能記憶装置の例は、少数を列挙すると、フレキシブルディスクドライブ及びハードディスクドライブ(HDD)のような磁気ディスク装置、CD(compact disk)又はDVD(digitalversatiledisk)のような光ディスクドライブ、SSD(solid state drive)及びテープドライブを含む。例示的なコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール又は他のデータのような情報を記憶する方法又は技術で実装される揮発性及び不揮発性、取り外し可能及び非取り外し可能媒体を含み得る。
幾つかの実施形態では、記憶メタデータは、以下に更に詳細に記載するように、圧縮バイナリフォーマットで及び/又は拡張可能言語フォーマットで1又は複数のデータ記憶装置132に書き込まれ、及び/又はそれから転送されても良い。まとめると、例えば、コンピューティングシステム100は、データ記憶装置132のうちの1つに圧縮バイナリフォーマットで格納され、システムメモリ106及び/又はプロセッサ104へ転送されて拡張可能言語フォーマットに変換され、次に拡張可能言語フォーマットでデータ記憶装置132のうちの1つに書き込まれる記憶メタデータを有しても良い。
システムメモリ106、取り外し可能記憶装置136及び非取り外し可能記憶装置138は、コンピュータ記憶媒体の例である。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリ又は他のメモリ技術、CD−ROM、DVD(digital versatile disk)又は他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又は他の磁気記憶装置、又は所望の情報を格納するために用いることができコンピューティングシステム100によりアクセスできる任意の他の媒体を含むがこれらに限定されない。任意のこのようなコンピュータ記憶媒体は、コンピューティングシステムの一部であっても良い。
コンピューティングシステム100は、バス/インタフェース制御部130を介して種々のインタフェース装置(例えば、出力装置142、周辺機器インタフェース144、及び/又は通信装置146)から基本構成102への通信を実現するインタフェースバス140を有しても良い。例示的な出力装置142は、グラフィック処理ユニット148及びオーディオ処理ユニット150を有する。これらは、ディスプレイ又はスピーカのような種々の外部装置と1又は複数のA/Vポート152を介して通信するよう構成されても良い。例示的な周辺機器インタフェース144は、シリアルインタフェース制御部154又はパラレルインタフェース制御部156を有する。これらは、入力装置(例えば、キーボード、マウス、ペン、音声入力装置、タッチ入力装置等)又は他の周辺機器(例えば、プリンタ、、スキャナ等)のような外部装置と通信するよう構成されても良い。例示的な通信装置146は、ネットワーク制御部160を有する。ネットワーク制御部160は、1又は複数の通信ポート164を介したネットワーク通信リンクを介して1又は複数の他のコンピューティングシステム162との通信を実現するよう構成されても良い。
ネットワーク通信リンクは、通信媒体の一例であっても良い。通信媒体は、通常、コンピュータ可読命令、データ構造、プログラムモジュール又は搬送波又は他のトランスポート機構のような変調されたデータ信号内の他のデータにより実現されても良く、任意の情報配信媒体を有しても良い。「変調されたデータ信号」は、1又は複数の特性セットを有する信号であるか、又は信号内の情報をエンコードするために変更されても良い。例として限定ではなく、通信媒体は、有線ネットワーク又は直接有線接続のような有線媒体、並びに音響、無線周波数(RF)、マイクロ波、赤外線(IR)のような無線媒体及び他の無線媒体を含み得る。本願明細書で用いられる用語コンピュータ可読媒体は、記憶媒体及び通信媒体の両方を含み得る。
コンピューティングシステム100は、携帯電話機、PDA(personal data assistant)、個人向けメディアプレイヤ装置、無線ウェブ閲覧装置、個人向けヘッドセット装置、特定用途装置、又は上述の機能のうちの任意のものを有するハイブリッド装置のような小型ポータブル(又はモバイル)電子機器の一部として実装されても良い。コンピューティングシステム100は、ラップトップコンピュータ及び非ラップトップコンピュータ構成を有するパーソナルコンピュータとして実装されても良い。
図2は、図1の記憶メタデータ128の例示的な実施形態を示す。上述のように、記憶メタデータ128は、取り外し可能記憶装置136及び/又は非取り外し可能記憶装置138内にあるような1又は複数のデータ記憶装置132に格納されても良い。代替で又は追加で、記憶メタデータ128は、システムメモリ106内にロードされても良い。さらに、記憶メタデータ128は、圧縮バイナリフォーマットで表現されても良い。この例は、図3に関して詳細に記載される。また、記憶メタデータ128は、拡張可能言語フォーマットで表現されても良い。この例は、図4に関して詳細に記載される。あるいは、記憶メタデータ128は、圧縮バイナリフォーマット及び拡張可能言語フォーマットの両方のような複数のフォーマットで表現されても良い。
図2に図示した実施形態では、記憶メタデータ128は、1又は複数のハードディスクパーティションテーブル202、1又は複数のブロックアドレスデータ204、ブート命令コード206を有する。他の実施形態では、記憶メタデータ128は、ハードディスクパーティションテーブル202、ブロックアドレスデータ204、及び/又はブート命令コード206のうちの一部を有するが全部を有しなくても良く、及び/又は記憶メタデータ128は、図2に示したものとは異なる幾つかのコンポーネントを有しても良い。
ハードディスクパーティションテーブル202は、図1の1又は複数のデータ記憶装置132に含まれるようなディスクドライブ又は他の記憶装置のパーティションを記述するデータを有しても良い。ハードディスクパーティションテーブル202は、MBR(master boot record)パーティションテーブル、EBR(extended boot record)パーティションテーブル、GUID(globally unique identifier)パーティションテーブル(GPT)、BSD(Berkeley Software Distribution)ディスクラベル、APM(Apple Partition Map)等、又はそれらの任意の組合せを有し得るが、これらに限定されない。
ブロックアドレスデータ204は、図1の1又は複数のデータ記憶装置132に含まれるようなディスクドライブ又は他の記憶装置に格納されるデータの位置及びブロックを記述するよう構成されたデータを有しても良い。ブロックアドレススキームは、CHS(cylinder-head-sector)ブロックアドレスデータ、LBA(logical block address)ブロックアドレスデータ等又はこれらの任意の組合せを有し得るが、これらに限定されない。
ブート命令コード206は、図1のコンピューティングシステム100のようなコンピューティングシステムのブートを制御するよう構成されるデータを有しても良い。ブート命令コードは、BIOS(Basic Input/Output System)パラメータブロック(BPB)等又はこれらの任意の組合せを有し得るが、これらに限定されない。
図3は、圧縮バイナリフォーマット300(以下では「記憶メタデータ300」と表す)の記憶メタデータの例示的な実施形態を示す。記憶メタデータ300のような圧縮バイナリフォーマットの記憶メタデータは、従来のコンピューティングシステム及び/又は他のコンピューティングシステムに含まれても良い。以下に更に詳述するように、記憶メタデータを圧縮バイナリフォーマットで表現することから生じる問題を実質的に除去するために、記憶メタデータ300は拡張可能言語フォーマットに変換され表現されても良い。
圧縮バイナリフォーマットの記憶メタデータ300のような記憶メタデータを提供することは、誤りを生じ、及び/又はデータ損失をもたらし得る。これらの一例は、以下の図3の議論で説明される。圧縮バイナリフォーマットは、概して、記憶メタデータに可能な限り少ないデータを含むことにより、記憶メタデータの記憶装置の専有面積を最小化する。オペレーティングシステム、バックアップシステム、再パーティショニングユーティリティ又は他のプログラム若しくはシステムが記憶メタデータのフォーマット、位置等を理解する限り、記憶メタデータの圧縮特性は問題がない。しかしながら、記憶メタデータを様々に理解し解釈する多様なオペレーティングシステム、バックアップシステム、再パーティショニングユーティリティ又は他のプログラム若しくはシステムが同じコンピューティングシステムで動作するとき、問題が生じ得る。
例えば、図3の記憶メタデータ300を検討する。幾つかのオペレーティングシステム、バックアップシステム、再パーティショニングユーティリティ又は他のプログラム若しくはシステムは、記憶メタデータ300をMBRハードディスクパーティションテーブル及びブート命令コードが格納され得るコンピュータ可読記憶媒体内のCHS型の開始アドレス302及びCHS型の終了アドレス304を含むCHSブロックアドレスデータとして解釈し得る。代替として又は追加で、他のオペレーティングシステム、バックアップシステム、再パーティショニングユーティリティ又は他のプログラム若しくはシステムは、記憶メタデータ300をGPTハードディスクパーティションテーブル及びブート命令コードが格納され得るコンピュータ可読記憶媒体内のLBA型の開始アドレス306及びLBA型の終了アドレス308を含むLBAブロックアドレスデータとして解釈し得る。更に他のオペレーティングシステム、バックアップシステム、再パーティショニングユーティリティ又は他のプログラム若しくはシステムは、記憶メタデータ300自体を認識もしないかも知れない。記憶メタデータ300が誤って解釈されるか又は認識されないとき、誤ったデータが誤って解釈された記憶アドレスからロードされ、記憶メタデータ300は上書きされ及び/又は他の問題が生じ得る。類似した問題は、記憶メタデータが独自又は非拡張可能フォーマットで表現されるとき、生じ得る。したがって、記憶メタデータを圧縮バイナリフォーマットで又は独自若しくは非拡張可能フォーマットで表現することは、記憶メタデータが理解されない及び/又はそれ自体認識されない程度の誤り及び/又はデータ損失を生じ得る。
しかしながら、本願明細書に記載する幾つかの実施形態によると、拡張可能言語フォーマットが、記憶メタデータを表現するために用いられ、特に異種環境内のオペレーティングシステムの継続的成長を可能にする安全且つプログラミング的に都合の良い方法で、根本的な圧縮バイナリフォーマットの解釈における不一致を解決し得る。代替又は追加で、幾つかの実施形態は、圧縮バイナリフォーマットで格納される等価な記憶メタデータよりも僅かに大きな記憶装置占有面積を代償にして、記憶メタデータを明確に識別し、記憶メタデータの意味を明確化し得る。
拡張可能言語フォーマットは、XML(eXtensible Markup Language)フォーマット、JSON(JavaScript(登録商標) Object Notation)フォーマット等又はそれらの組合せを含み得るがこれらに限定されない。代替又は追加で、拡張可能言語フォーマットは、キー値ペアを有する記憶メタデータを表現し得る。キー値ペアの各キーは、記憶メタデータの所与のパラメータ、属性又は態様を識別するストリングを有しても良く、対応する値は、識別されるパラメータ、属性又は態様の値を有しても良い。上述及び他の実施形態では、拡張可能言語フォーマットは、人間に理解可能であっても良い。
図4は、拡張言語フォーマット400(以下では「記憶メタデータ400」と表す)の図3の記憶メタデータ300の例示的な実施形態を示す。図4の例では、記憶メタデータ400は、1又は複数のキー値ペアを含むJSONフォーマットで表現されても良い。例えば、第1、第2及び第3のキー値ペア402、404、406が図4に示されるが、他の実施形態では、3個のキー値ペア402、404、406より多数又は少数が含まれても良い。第1、第2及び第3のキー値ペア402、404、406の各々は、それぞれ「フォーマット」、「開始」、「終了」を含むストリングを有するキーを含む。
第1のキー値ペア402は、コンピュータ可読記憶媒体のハードディスクパーティションテーブルの「フォーマット」を識別し得る。図示した実施形態では、フォーマットは、第1のキー値ペア402の値により「MBR」フォーマットとして識別できる。
第2のキー値ペア404は、コンピュータ可読記憶媒体の「開始」アドレスを識別し得る。また、第3のキー値ペア406は、ブート命令コードが格納されているコンピュータ可読記憶媒体の「終了」アドレスを識別し得る。図示した実施形態では、第2のキー値ペア内の値は開始オブジェクト408を有し、第3のキー値ペア内の値は終了オブジェクト410を有し得る。
開始オブジェクト408は、図4の例では、第2のキー値ペア404により特定のブロックアドレスフォーマット(本例では「CHS」)を有するとして識別される開始アドレスの「フォーマット」を識別するフォーマットキー値ペア、及び特定の開始アドレスを識別する1又は複数の他のキー値ペア有しても良い。CHSブロックアドレスフォーマットの例では、例えば、開始オブジェクト408は、開始アドレスの「シリンダ」を特定のシリンダ(本例では「03」)として識別するシリンダキー値ペア、開始アドレスの「先頭」を特定の先頭(本例では「57」)として識別する先頭キー値ペア、及び開始アドレスを特定のセクタ(本例では「22」)として識別するセクタキー値ペアを更に有しても良い。
同様に、終了オブジェクト410は、図4の例では、第3のキー値ペア406により特定のブロックアドレスフォーマット(本例では「CHS」)を有するとして識別される終了アドレスの「フォーマット」を識別するフォーマットキー値ペア、及び特定の終了アドレスを識別する1又は複数の他のキー値ペア有しても良い。CHSブロックアドレスフォーマットの例では、例えば、終了オブジェクト410は、終了アドレスの「シリンダ」を特定のシリンダ(本例では「05」)として識別するシリンダキー値ペア、終了アドレスの「先頭」を特定の先頭(本例では「10」)として識別する先頭キー値ペア、及び終了アドレスを特定のセクタ(本例では「00」)として識別するセクタキー値ペアを更に有しても良い。
図5Aは、記憶メタデータを表現する拡張言語を用いる例示的な方法500のフローチャートである。方法500及び/又はその変形は、本願明細書に記載されたコンピューティングシステム100のようなコンピューティングシステムにより全体又は一部が実施されても良い。代替又は追加で、方法500及び/又はその変形は、図1のプロセッサ104のようなプロセッサ又は他の処理装置により全体又は一部が実施されても良い。別個のブロックとして示したが、所望の実装に依存して、種々のブロックは、更なるブロックに分割され、少ないブロックに結合され、又は除去されても良い。
方法500は、ブロック502で開始する。ブロック502で、記憶メタデータは、拡張可能言語フォーマットで書かれても良い。例えば、記憶メタデータは、図1のシステムメモリ106、取り外し可能記憶装置136又は非取り外し可能記憶装置138のようなコンピュータ可読記憶媒体に拡張可能言語フォーマットで書かれ、
ブロック504で、記憶メタデータは、拡張可能言語フォーマットで操作されても良い。幾つかの実施形態では、拡張可能言語フォーマットの記憶メタデータを操作することは、拡張可能言語フォーマットで表現されたハードディスクパーティションテーブルを再パーティショニングすることを含んでも良い。記憶メタデータは拡張可能言語フォーマットで表現されるので、記憶メタデータが圧縮バイナリフォーマットであった場合に生じる可能性のある、異なるシステム等による記憶メタデータの解釈に関する不一致は、最初から解決されるか又は部分的に回避され得る。
ブロック506で、拡張可能言語フォーマットの記憶メタデータは、転送されても良い。幾つかの実施形態では、拡張可能言語フォーマットの記憶メタデータを転送することは、拡張可能言語フォーマットの記憶メタデータをサーバからクライアントへネットワークを介して転送することを含んでも良い。記憶メタデータを拡張可能言語フォーマットで転送することにより、1より多いプログラム又はシステムが記憶メタデータの同じピースを操作するために用いられるとき、異なるシステム間の互換性は改善でき及び/又はソフトウェアバグが低減又は回避できる。
当業者は、この処理及び本願明細書に開始した他の処理及び方法において、その処理及び方法で実行される機能が異なる順序で実施されても良いことを理解するだろう。さらに、概略のステップ及び動作は、単に例として提供され、幾つかのステップ及び動作は、開示の実施形態の本質から逸脱することなく、任意であり、より少ないステップ及び動作に組み合わされ、又は追加ステップ及び動作に拡張されても良い。
例えば、方法500は、記憶メタデータをコンピュータ可読記憶媒体に拡張可能言語フォーマットで書き込む前に、記憶メタデータを圧縮バイナリフォーマットから拡張可能言語フォーマットに変換するステップを更に有しても良い。上述及び他の実施形態では、圧縮バイナリフォーマットの記憶メタデータは、予めコンピュータ可読記憶媒体に格納されても良く、将来の使用で記憶メタデータの解釈に関する不一致を回避するために、例えば図1の拡張可能アルゴリズム126により拡張可能言語フォーマットに変換されても良い。
代替又は追加で、拡張可能言語フォーマットの記憶メタデータをコンピュータ可読記憶媒体に書き込む前に、記憶メタデータは、最初に、プラットフォーム固有のキー値符号化フォーマットで又は独自フォーマットでコンピュータ可読記憶媒体に格納されても良い。上述及び他の実施形態では、方法500は、拡張可能言語フォーマットの記憶メタデータをコンピュータ可読記憶媒体に書き込む前に、プラットフォーム固有のキー値符号化フォーマット(又は独自若しくは他のフォーマット)で格納された記憶メタデータを拡張可能言語フォーマットに変換するステップを更に有しても良い。
図5Bは、記憶メタデータを表現するために拡張可能言語を用いる別の例示的な方法510のフローチャートである。方法510及び/又はその変形は、本願明細書に記載されたコンピューティングシステム100のようなコンピューティングシステムにより全体又は一部が実施されても良い。代替又は追加で、方法510及び/又はその変形は、図1のプロセッサ104のようなプロセッサ又は他の処理装置により全体又は一部が実施されても良い。別個のブロックとして示したが、所望の実装に依存して、種々のブロックは、更なるブロックに分割され、少ないブロックに結合され、又は除去されても良い。
方法510は、ブロック512で開始し得る。ブロック512で、コンピューティングシステムが設けられ、該コンピューティングシステムは記憶メタデータを有する。
ブロック514で、記憶メタデータは、拡張可能言語フォーマットで表現されても良い。記憶メタデータを拡張可能言語フォーマットで表現するステップは、記憶メタデータの複数のコンポーネントの各々を表現するためにキー値ペア、又はより詳細にはキー及び値を用いるステップを有しても良い。
ブロック516で、拡張可能言語フォーマットの記憶メタデータは、コンピューティングシステムに格納されても良い。
図5Bには図示しないが、方法510は、拡張可能言語フォーマットを用いて記憶メタデータを表現する前に、記憶メタデータを圧縮バイナリフォーマットから拡張可能言語フォーマットに変換するステップを更に有しても良い。
幾つかの実施形態では、図5Bの方法510は、拡張可能言語フォーマットで格納された記憶メタデータを読み出す拡張可能言語フォーマットを理解する再パーティショニングユーティリティを有しても良い。次に、再パーティショニングユーティリティは、コンピュータ可読記憶媒体に格納されたデータを失うことなく及び記憶メタデータに上書きすることなく、コンピューティングシステムのコンピュータ可読記憶媒体を再パーティショニングしても良い。
幾つかの実施形態では、コンピューティングシステムは、コンピュータ可読記憶媒体を有しても良い。また、記憶メタデータは、コンピュータ可読記憶媒体内に格納されたデータの位置を示す第1及び第2のアドレスデータを有しても良い。第1のブロックアドレスデータは、第2のブロックアドレスデータを用い且つ拡張マークアップ言語を理解しないコンピューティングシステムのオペレーティングシステムに格納され及び/又はインスタンスを作成することにより、危険に晒され得る。上述及び他の実施形態では、図5Bの方法510は、第1のブロックアドレスデータを用いるコンピューティングシステムの第1のオペレーティングシステムを格納し及び/又はインスタンスを生成するステップを有しても良い。第1のオペレーティングシステムは、拡張可能言語フォーマットを理解するよう構成されても良い。第2のオペレーティングシステムもコンピューティングシステムに格納され及び/又はインスタンスを生成されても良い。第2のオペレーティングシステムは、拡張マークアップ言語フォーマットを理解するよう構成されても良く、コンピューティングシステムに第2のオペレーティングシステムのインスタンスを生成することにより、第1のブロックアドレスデータが危険に晒されないようにしても良い。
したがって、本願明細書に記載した幾つかの実施形態は、JSONフォーマット又は他の拡張可能言語フォーマットの記憶メタデータを読み出し及び書き込むディスクパーティショニング及びブートブロック操作プログラムを有しても良い。上述及び他の実施形態は、記憶メタデータが圧縮バイナリフォーマット、プラットフォーム固有キー値ペアフォーマット、及び/又は独自フォーマットで読み出され及び書き込まれるシステムと比べて、複数の言語、オペレーティングシステム及びランタイム環境に渡り大きな互換性を提供できる。
幾つかの実施形態では、記憶メタデータを拡張可能言語フォーマットで表現することは、記憶メタデータ又は他のデータを危険に晒すことなく、記憶メタデータに関して異種の及び時には矛盾する前提を有する複数のオペレーティングシステムを同じコンピューティングシステムで動作可能にし得る。代替又は追加で、記憶メタデータに関して異種の及び場合によっては矛盾する前提を有するエミュレータ、仮想機械、再パーティショニングユーティリティ又は他のプログラムは、記憶メタデータを拡張可能言語フォーマットで表現することにより、記憶メタデータ又は他のデータを危険に晒すことなく、同じコンピューティングシステムで動作され得る。
上述及び他の実施形態は、記憶メタデータが圧縮バイナリフォーマットで表現されるシステムと比べて、ブートメニュー調整、オペレーティングシステムのインストール、データ記憶装置の追加、データ統合及び/又は再パーティショニングに含まれる危険を除去又は実質的に低減できる。代替又は追加で、記憶メタデータを圧縮バイナリフォーマットではなく拡張可能言語フォーマットで表現することにより、データセンタ及び/又は他のシステムは、高度なパーティションテーブルフォーマットを用い、異なるオペレーティングシステムに渡って分散する可能性のある大規模且つ増大するディスクドライブアレイを、データ損失又はダウンタイムの少ない危険で管理できる。クラウドサービスは、種々のオペレーティングシステムを用い、圧縮バイナリフォーマットとは対照的に拡張可能言語フォーマットを用いることにより、ハードウェアアップグレードの危険及びダウンタイムを低減し得る。
前述のように、幾つかの実施形態で、拡張可能言語フォーマットの記憶メタデータは、人間に理解可能であっても良い。記憶メタデータを人間に理解可能に作成することにより、記憶メタデータは、比較的ユーザフレンドリであり、ユーザに理解し易くなり、異なるオペレーティングシステム及びハードウェアに渡り安全の一貫性の道を開き得る。
代替又は追加で、拡張可能言語フォーマットを理解するソフトウェアエージェントは、推測を行うことなくより多くを理解できるので、拡張可能言語フォーマットの記憶メタデータに対して、圧縮バイナリフォーマットの記憶メタデータに対するより多くを自動的に行うことができても良い。
本願明細書に記載した実施形態は、以下に更に詳細に議論するように、種々のコンピュータハードウェア又はソフトウェアモジュールを備えた特定用途又は汎用コンピュータの使用を含み得る。
本願明細書に記載した実施形態は、コンピュータにより実行可能な命令又はデータ構造を伝える又は格納しているコンピュータ可読媒体を用いて実施され得る。このようなコンピュータ可読媒体は、汎用又は特定目的コンピュータによりアクセスできる利用可能な媒体であり得る。例として且つ限定ではなく、このようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD−ROM又は他の光ディスク記憶装置、磁気ディスク記憶装置又は他の磁気記憶装置を含むコンピュータ可読記憶媒体、又はコンピュータにより実行可能な命令若しくはデータ構造の形式で所望のプログラムコード手段を伝える若しくは格納するために用いられ汎用若しくは特定目的コンピュータによりアクセス可能な他の媒体を有し得る。上述の組合せも、コンピュータ可読媒体の範囲に包含され得る。
コンピュータにより実行可能な命令は、例えば、汎用コンピュータ、特定目的コンピュータ又は特定目的処理装置に特定の機能又は機能グループを実行させる命令及びデータを有する。本発明の主題は構造的特徴及び/又は方法論的動作に特有の言葉で記載されたが、本発明の主題は、特許請求の範囲に定められる上述の特定の特徴又は動作に限定されないことが理解されるべきである。むしろ、上述の特定の特徴及び動作は、特許請求の範囲の実施の例示的携帯として開示されたものである。
本願明細書で用いられるように、用語「モジュール」又は「コンポーネント」は、コンピューティングシステムで実行されるソフトウェアオブジェクト又はルーチンを表し得る。本願明細書に記載されたのと異なるコンポーネント、モジュール、エンジン及びサービスは、(例えば、別個のスレッドとして)コンピューティングシステムで実行されるオブジェクト又は処理として実施されても良い。本願明細書に記載されたシステム及び方法はソフトウェアで実施されることが望ましいが、ハードウェアによる実装又はソフトウェアとハードウェアの組合せも、可能であり想定される。この説明では、「コンピュータエンティティ」は、本願明細書で先に定められたようにコンピューティングシステム、又はコンピューティングシステムで実行されるモジュール若しくはモジュールの組合せであっても良い。
本願明細書に記載された全ての例及び条件文は、教育上の目的で、読者が本発明の原理及び発明者により考案された概念を理解するのを助け、技術を促進させるためであり、これらの特に記載された例及び条件に限定されないものと考えられるべきである。本発明の実施形態が詳細に記載されたが、種々の変更、置換及び修正が本発明の精神及び範囲から逸脱することなく行われうることが理解されるべきである。
100 コンピューティング装置
102 基本構成
104 プロセッサ
106 システムメモリ
108 メモリバス
110 L1キャッシュ
112 L2キャッシュ
114 プロセッサコア
116 レジスタ
118 メモリ制御部
120 OS
122 アプリケーション
124 プログラムデータ
126 拡張可能アルゴリズム
128 記憶メタデータ
128 記憶メタデータ
130 バス/インタフェース制御部
132 記憶装置
134 記憶装置インタフェースバス
136 取り外し可能記憶装置
138 非取り外し可能記憶装置
140 インタフェースバス
142 出力装置
144 周辺機器インタフェース
146 通信装置
148 グラフィックス処理ユニット
150 オーディオ処理ユニット
152 A/Vポート
154 シリアルインタフェース制御部
156 パラレルインタフェース制御部
158 I/Oポート
160 ネットワーク制御部
162 他のコンピューティング装置
164 通信ポート
202 ハードディスクパーティションテーブル
204 ブロックアドレスデータ
206 ブート命令コード

Claims (10)

  1. 記憶メタデータを表現するために拡張可能言語を用いるシステムであって、前記システムは、
    プラットフォーム固有のキー値で符号化された圧縮バイナリ形式の記憶メタデータを格納されたコンピュータ可読記憶媒体
    処理装置と、
    を有し、
    前記記憶メタデータは、ハードディスクパーティションテーブル、前記コンピュータ可読記憶媒体に格納されたデータの位置を示すブロックアドレスデータ、及びブート命令コードを有し、
    前記処理装置は、
    前記ハードディスクパーティションテーブルを、前記ハードディスクパーティションテーブルのフォーマットを識別する第1のキー値ペアに変換し、
    前記ブロックアドレスデータを、ブート命令コードが格納されている前記コンピュータ可読記憶媒体の開始アドレスを識別する第2のキー値ペアに変換し、
    前記ブート命令コードを、前記ブート命令コードが格納されている前記コンピュータ可読記憶媒体の終了アドレスを識別する第3のキー値ペアに変換し、
    前記第1、第2、第3のキー値ペアを含む拡張可能言語フォーマットの記憶メタデータを前記コンピュータ可読記憶媒体にき込み
    前記拡張可能言語フォーマットの記憶メタデータを操作し、
    前記拡張可能言語フォーマットの記憶メタデータを転送する、
    よう構成される、
    システム。
  2. 前記ハードディスクパーティションテーブルは、MBR(master boot record)パーティションテーブル、EBR(extended boot record)パーティションテーブル、GUID(globally unique identifier)パーティションテーブル(GPT)、BSD(Berkeley Software Distribution)パーティションテーブル、又はAPM(Apple Partition Map)パーティションテーブルのうちの少なくとも1つを有する、請求項に記載のシステム。
  3. 前記ブロックアドレスデータは、CHS(cylinder-head-sector)ブロックアドレスデータ又はLBA(logical block address)ブロックアドレスデータのうちの少なくとも1つを有する、請求項に記載のシステム。
  4. 前記ブート命令コードは、BPB(BIOS Parameter Block)又はブートセクタデータのうちの少なくとも1つを有する、請求項に記載のシステム。
  5. 前記拡張可能言語フォーマットは、XML(eXtensible Markup Language)フォーマット又はJSON(JavaScript Object Notation)フォーマットを有する、請求項1に記載のシステム。
  6. 前記第2のキー値ペアは開始オブジェクトを有し、前記第3のキー値ペアは終了オブジェクトを有し、前記開始オブジェクト及び前記終了オブジェクトの各々は、前記コンピュータ可読記憶媒体に格納されたデータの位置を示すブロックアドレスデータのフォーマットを識別するフォーマットキー値ペアを含む複数のキー値ペアを有する、請求項に記載のシステム。
  7. 前記開始オブジェクト及び前記終了オブジェクトの各々は、
    前記開始又は終了アドレスの個々のシリンダを識別するシリンダキー値ペア、
    前記開始又は終了アドレスの個々の先頭を識別する先頭キー値ペア、
    前記開始又は終了アドレスの個々のセクタを識別するセクタキー値ペア、
    を更に有する請求項に記載のシステム。
  8. 記憶メタデータを表現するために拡張可能言語を用いる処理装置の作動方法であって、前記方法は、
    記憶メタデータをプラットフォーム固有のキー値で符号化された圧縮バイナリ形式でコンピュータ可読記憶媒体に格納するステップであって、前記記憶メタデータは、ハードディスクパーティションテーブル、前記コンピュータ可読記憶媒体に格納されたデータの位置を示すブロックアドレスデータ、及びブート命令コードを有する、ステップと、
    前記ハードディスクパーティションテーブルを、前記ハードディスクパーティションテーブルのフォーマットを識別する第1のキー値ペアに変換するステップと、
    前記ブロックアドレスデータを、ブート命令コードが格納されている前記コンピュータ可読記憶媒体の開始アドレスを識別する第2のキー値ペアに変換するステップと、
    前記ブート命令コードを、前記ブート命令コードが格納されている前記コンピュータ可読記憶媒体の終了アドレスを識別する第3のキー値ペアに変換するステップと、
    前記第1、第2、第3のキー値ペアを含む拡張可能言語フォーマットの記憶メタデータを前記コンピュータ可読記憶媒体にき込むステップと、
    前記拡張可能言語フォーマットの記憶メタデータを操作するステップと
    前記拡張可能言語フォーマットの記憶メタデータを転送するステップと
    を有する方法。
  9. コンピューティングシステムに記憶メタデータを表現するために拡張可能言語を用いる動作を実行させるコンピュータ命令を実行するよう構成されるプロセッサであって、前記動作は、
    記憶メタデータをプラットフォーム固有のキー値で符号化された圧縮バイナリ形式でコンピュータ可読記憶媒体に格納するステップであって、前記記憶メタデータは、ハードディスクパーティションテーブル、前記コンピュータ可読記憶媒体に格納されたデータの位置を示すブロックアドレスデータ、及びブート命令コードを有する、ステップと、
    前記ハードディスクパーティションテーブルを、前記ハードディスクパーティションテーブルのフォーマットを識別する第1のキー値ペアに変換するステップと、
    前記ブロックアドレスデータを、ブート命令コードが格納されている前記コンピュータ可読記憶媒体の開始アドレスを識別する第2のキー値ペアに変換するステップと、
    前記ブート命令コードを、前記ブート命令コードが格納されている前記コンピュータ可読記憶媒体の終了アドレスを識別する第3のキー値ペアに変換するステップと、
    前記第1、第2、第3のキー値ペアを含む拡張可能言語フォーマットの記憶メタデータを前記コンピュータ可読記憶媒体に書き込むステップ
    前記拡張可能言語フォーマットの記憶メタデータを操作するステップ
    前記拡張可能言語フォーマットの記憶メタデータを転送するステップ
    を有する、プロセッサ。
  10. 前記拡張可能言語フォーマットは、XML(eXtensible Markup Language)フォーマット又はJSON(JavaScript Object Notation)フォーマットを有する、請求項に記載のプロセッサ。
JP2013109184A 2012-05-29 2013-05-23 記憶メタデータのための拡張可能な方法及びシステム Expired - Fee Related JP6209861B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/482,832 2012-05-29
US13/482,832 US9870232B2 (en) 2012-05-29 2012-05-29 Extensible method and system for storage metadata

Publications (2)

Publication Number Publication Date
JP2013246827A JP2013246827A (ja) 2013-12-09
JP6209861B2 true JP6209861B2 (ja) 2017-10-11

Family

ID=49671775

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013109184A Expired - Fee Related JP6209861B2 (ja) 2012-05-29 2013-05-23 記憶メタデータのための拡張可能な方法及びシステム

Country Status (2)

Country Link
US (1) US9870232B2 (ja)
JP (1) JP6209861B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9417842B2 (en) * 2013-03-01 2016-08-16 Empire Technology Development Llc Idempotent representation of numbers in extensible languages
US9940111B2 (en) * 2013-12-18 2018-04-10 Red Hat, Inc. Policy-based application deployment to a target application platform system
US10318491B1 (en) 2015-03-31 2019-06-11 EMC IP Holding Company LLC Object metadata query with distributed processing systems
US11016946B1 (en) * 2015-03-31 2021-05-25 EMC IP Holding Company LLC Method and apparatus for processing object metadata
US20180095788A1 (en) * 2016-10-04 2018-04-05 Pure Storage, Inc. Scheduling operations for a storage device
CN112565870B (zh) 2019-09-26 2021-09-14 北京字节跳动网络技术有限公司 内容的缓存和读取方法、客户端及存储介质
CN113094292B (zh) * 2020-01-09 2022-12-02 上海宝存信息科技有限公司 数据存储装置以及非挥发式存储器控制方法
CN114924914B (zh) * 2022-05-31 2023-04-25 广州鼎甲计算机科技有限公司 磁盘分区表信息备份、恢复方法及系统
CN115827601A (zh) * 2022-12-14 2023-03-21 中国联合网络通信集团有限公司 数据处理方法、装置、设备及存储介质

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100490935B1 (ko) * 2000-08-23 2005-05-24 시게이트 테크놀로지 엘엘씨 지능형 데이터 저장 디바이스
US20030115443A1 (en) * 2001-12-18 2003-06-19 Cepulis Darren J. Multi-O/S system and pre-O/S boot technique for partitioning resources and loading multiple operating systems thereon
US7325038B1 (en) * 2002-09-27 2008-01-29 Ricoh Company, Ltd. Mechanism for transferring data between applications running on multiple networked computers
JP3719516B2 (ja) 2003-06-11 2005-11-24 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
US7614051B2 (en) * 2003-12-16 2009-11-03 Microsoft Corporation Creating file systems within a file in a storage technology-abstracted manner
US8099736B2 (en) * 2004-10-14 2012-01-17 The Trizetto Group, Inc. Systems and methods providing intelligent routing of data between software systems
KR101404083B1 (ko) 2007-11-06 2014-06-09 삼성전자주식회사 반도체 디스크 및 그것의 동작 방법
US7818667B2 (en) * 2005-05-03 2010-10-19 Tv Works Llc Verification of semantic constraints in multimedia data and in its announcement, signaling and interchange
US20080196043A1 (en) * 2007-02-08 2008-08-14 David Feinleib System and method for host and virtual machine administration
JP2009043083A (ja) * 2007-08-09 2009-02-26 Nec Corp データベース接続システム、データベース接続用プログラムおよびデータベース接続方法
US7971050B2 (en) * 2007-12-13 2011-06-28 Dell Products, Lp Methods of using bios information when booting information handling systems and machine-executable code for carrying out the methods
JP4816740B2 (ja) * 2009-02-09 2011-11-16 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
US8028079B2 (en) * 2009-06-15 2011-09-27 Microsoft Corporation Efficient transform from XML to javascript objects
US8903904B2 (en) * 2009-08-21 2014-12-02 Avaya Inc. Pushing identity information
JP5640480B2 (ja) 2010-06-11 2014-12-17 富士通株式会社 データ管理プログラム、ストレージシステム、およびデータ管理方法
JP5854654B2 (ja) * 2010-09-30 2016-02-09 キヤノン株式会社 プリントシステム、印刷方法、プリントサーバ、制御方法、及びプログラム
US9069468B2 (en) * 2011-09-11 2015-06-30 Microsoft Technology Licensing, Llc Pooled partition layout and representation
US9760549B2 (en) * 2012-07-18 2017-09-12 Software Ag Usa, Inc. Systems and/or methods for performing atomic updates on large XML information sets

Also Published As

Publication number Publication date
JP2013246827A (ja) 2013-12-09
US20130326189A1 (en) 2013-12-05
US9870232B2 (en) 2018-01-16

Similar Documents

Publication Publication Date Title
JP6209861B2 (ja) 記憶メタデータのための拡張可能な方法及びシステム
EP2176747B1 (en) Unified provisioning of physical and virtual disk images
EP3210103B1 (en) Disk partition stitching and rebalancing using a partition table
CN101650660B (zh) 从中央存储装置引导计算机系统
US8370835B2 (en) Method for dynamically generating a configuration for a virtual machine with a virtual hard disk in an external storage device
US8370819B2 (en) Mechanism to store information describing a virtual machine in a virtual disk image
US9606748B2 (en) Importing pre-existing data of a prior storage solution into a storage pool for use with a new storage solution
US20160188232A1 (en) Systems and methods for implementing stretch clusters in a virtualization environment
US20120239922A1 (en) Preparing and preserving a system configuration during a hot upgrade
BRPI0915636B1 (pt) Método e sistema para iniciar um aplicativo
CN100428156C (zh) 在多种存储介质上完整运行操作系统的方法及操作系统
JP2015043202A (ja) クラウドスケールの異種データセンタ管理インフラストラクチャ
US11995449B2 (en) Layered composite boot device and file system for operating system booting in file system virtualization environments
JP7291764B2 (ja) イーサリアム仮想マシンのトランザクション処理方法、装置、機器、プログラムおよび媒体
US11231953B2 (en) Minimizing downtime when importing virtual machines from other platforms
US11593113B2 (en) Widening memory access to an aligned address for unaligned memory operations
US10705865B2 (en) Disk resize of a virtual machine
US20150026683A1 (en) Data control system for virtual environment
US8566512B2 (en) Automatic alignment of write requests in virtualization systems
CN114579251A (zh) 虚拟机磁盘跨云迁移方法、电子设备及存储介质
CN115794132A (zh) 操作系统部署方法、装置、设备及存储介质
US20160232023A1 (en) Systems and methods for defining virtual machine dependency mapping
CN117075973A (zh) 一种基于RISC-V服务器CPU的新型LinuxBoot启动引导方法及系统
US10846011B2 (en) Moving outdated data from a multi-volume virtual disk to a backup storage device
CN103699636A (zh) 一种在WIN7-32/64bit操作系统下使文件夹/文件位置随意移动的方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170413

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170828

R150 Certificate of patent or registration of utility model

Ref document number: 6209861

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees