2007-02-01から1ヶ月間の記事一覧

device_numberの組み込み

昨日作成したdevice_numberを使って、iso_image_file_sourceに「"PN" System Use Entry」を実装しました。 iso_image_file_source_impl.hppの差分 Rock Ridgeでは、デバイスメジャー/マイナー番号をそれぞれ32ビット符号なし整数で記録します。 これらの値を…

device_number

今日はデバイス番号を格納する"PN" System Use Entryを実装しようと思ったのですが、アーカイバ毎にデバイス番号の持ち方が違うため、これらを抽象化するための構造体、device_numberを考えてみました。 <hamigaki/filesystem/device_number.hpp> POSIXではファイルのデバイス番号はdev_t型で、stat(</hamigaki/filesystem/device_number.hpp>…

TortoiseSVNでエクスプローラがクラッシュする件

Vistaのエクスプローラがよくクラッシュするのでいろいろいじっていたのですが、TortoiseSVNが原因のようです。 http://tortoisesvn.tigris.org/servlets/ReadMsg?list=users&msgNo=5167 2007/2/2現在、修正版がリリースされていないのでVistaでナイトリービ…

続々 コンパイラのメモリ使用量

試行錯誤の結果、binary_read/writeで使用しているmember_offsetがメモリ食いの原因であることが分かりました。 template<class T> struct member_offset : boost::mpl::size_t< boost::mpl::accumulate< boost::mpl::iterator_range< typename boost::mpl::begin< ty</class>…

続 コンパイラのメモリ使用量

以前、コンパイルに700MBのメモリを要したuniso.cppですが、原因がHamigaki.Binary(とBoost.MPL)にあるか調査してみました。 試しに一番巨大なvolume_descriptor構造体の入出力をMPLを使わないよう、struct_traitsの特殊化を削除し、次のようなカスタマイズ…