とにかく好き。各ノードのファイルシステムの最上位にある他のファイルへの参照として保存するか、ブロック参照を使用するファイルシステムドライバーを作成できます。
提供:
- ノードには、持続する場所への参照が含まれています
- ノードを書き込むときに、書き込む場所を知ることができます
好きなようにできます。ファイルシステムは、ディスクベースの i ノード システムを使用するツリーです。
常にヘッダー付きの単一のファイルを使用し、unsigned int または int にマップされる値として格納されたバイト オフセットを使用できます。いくつかのノードの開始を示すためにファイル内に...次に、各ノードの最後に記録の終わりがあります。
他の場所または単一のファイルとXPath/XPointersへの参照を含む XML ファイルを使用することもできます。
<Node id="someNode">
<value>...</value>
<children>
<child xpath="/node[id=1]" />
<child xpath="/node[id=29]" />
ただし、これは、値が単なるバイナリ BLOB の場合、値を文字にシリアル化することを意味します (eww)。値は、次のようなファイルに書き込まれたばかりのバイナリ チャンクのパスである可能性があります。
<value>/path/to/mappable.bin</value>
XML カプセル化から C で記述されたファイルシステムまで、ツリー実装の全範囲について調べてください。
この XML ソリューションは肥大化する可能性がありますが、速度が必要ない場合は十分に単純です。高レベルのアプローチのほんの一例です。ツリー ストレージは古くからの問題であり、あらゆるレベルで解決策があります。
木は木です。