@@ -1,140 +1,140 @@
PAR 2.0 の修復用データを作ってファイルの破損や消失に備えます
PAR 2.0 <20> ̏C<CC8F> <43> <EFBFBD> p<EFBFBD> f<EFBFBD> [<5B> ^<5E> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ăt<C483> @<40> C<EFBFBD> <43> <EFBFBD> ̔j<CC94> <6A> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɔ<EFBFBD> <C994> <EFBFBD> <EFBFBD> ܂ <EFBFBD>
<EFBFBD> V<EFBFBD> c <20> L <20> ɂ<EFBFBD> <C982> <EFBFBD> Parchive 2.0 <20> N<EFBFBD> <4E> <EFBFBD> C<EFBFBD> A<EFBFBD> <41> <EFBFBD> g
澤田 豊 による Parchive 2.0 クライアント
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
[ <EFBFBD> ȒP<EFBFBD> ȉ<EFBFBD> <EFBFBD> <EFBFBD> ]
[ 簡単な解説 ]
<EFBFBD> @<40> <> <EFBFBD> <EFBFBD> <EFBFBD> ̃\<5C> [<5B> X<EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> 烊<EFBFBD> J<EFBFBD> o<EFBFBD> <6F> <EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> 쐬<EFBFBD> <EC90AC> <EFBFBD> āA
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̃t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ̈ꕔ<CC88> <EA9594> <EFBFBD> j<EFBFBD> <6A> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <C482> A
<EFBFBD> c<EFBFBD> <EFBFBD> <EFBFBD> ꂽ<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ƃ<EFBFBD> <C683> J<EFBFBD> o<EFBFBD> <6F> <EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> A
<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ׂ̃\<5C> t<EFBFBD> g<EFBFBD> ł<EFBFBD> <C582> B
PAR 1.0 <EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> P<EFBFBD> ʂŏC<C58F> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂ɔ<CC82> <C994> ׂāA
PAR 2.0 <EFBFBD> ̓t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <F095A190> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> ɕ<EFBFBD> <C995> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <C482> ̃u<CC83> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> P<EFBFBD> ʂŏC<C58F> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂ŁA
<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ̈ꕔ<CC88> <EA9594> <EFBFBD> j<EFBFBD> <6A> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <C482> j<EFBFBD> <6A> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȊO<C88A> ̃u<CC83> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> ͖<EFBFBD> <CD96> <EFBFBD> <EFBFBD> Ŏ<EFBFBD> <C58E> <EFBFBD> <EFBFBD> o<EFBFBD> <6F> <EFBFBD> <EFBFBD> <EFBFBD> Ƃ<EFBFBD> <C682> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> ̂<EFBFBD> <EFBFBD> ߁A<EFBFBD> <EFBFBD> <EFBFBD> 蕡<EFBFBD> G<EFBFBD> ȃG<EFBFBD> <EFBFBD> <EFBFBD> [<5B> ɂ<EFBFBD> <C982> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> 璷<EFBFBD> <E792B7> <EFBFBD> őΏ<C591> <CE8F> <EFBFBD> <EFBFBD> 邱<EFBFBD> Ƃ<EFBFBD> <C682> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> B
複数のソース・ファイルからリカバリ・ファイルを作成して、
それらのファイルの一部が破損したり消失しても、
残されたソース・ファイルとリカバリ・ファイルから、
ファイルを修復する為のソフトです。
PAR 1.0 がファイル単位で修復するのに比べて、
PAR 2.0 はファイルを複数ブロックに分割してそのブロック単位で修復するので、
ファイルの一部が破損しても破損部分以外のブロックは無傷で取り出すことができます。
そのため、より複雑なエラーにも少ない冗長性で対処することができます。
<EFBFBD> @<40> <> <EFBFBD> J<EFBFBD> o<EFBFBD> <6F> <EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> X<C281> ɓƗ<C993> <C697> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> p<EFBFBD> P<EFBFBD> b<EFBFBD> g<EFBFBD> ō\<5C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> \<5C> <> <EFBFBD> Ȃ̂ŁA
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> I<EFBFBD> Ȕj<EFBFBD> <EFBFBD> <EFBFBD> ɋ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> āA<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> L<EFBFBD> <EFBFBD> <EFBFBD> Ɏg<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƃ<EFBFBD> <EFBFBD> ł<EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> B
<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> E<EFBFBD> T<EFBFBD> C<EFBFBD> Y<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> قNjǒn<EFBFBD> I<EFBFBD> ȃG<EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> <EFBFBD> <EFBFBD> ɉe<C989> <65> <EFBFBD> <EFBFBD> <EFBFBD> ɂ<EFBFBD> <C982> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> A
<EFBFBD> C<EFBFBD> <EFBFBD> <EFBFBD> ɕK<EFBFBD> v<EFBFBD> ȃ<EFBFBD> <EFBFBD> J<EFBFBD> o<EFBFBD> <EFBFBD> <EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> čς݂܂ <DD82> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> A<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ꂽ<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <EFBFBD> <F0959C8C> <EFBFBD> <EFBFBD> 邽<EFBFBD> ߂ɂ<DF82>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̃p<EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> B<EFBFBD> E<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> <EFBFBD> <EFBFBD> K<EFBFBD> v<EFBFBD> ɂȂ<EFBFBD> <EFBFBD> Ƃ<EFBFBD> <EFBFBD> <EFBFBD> PAR <20> ̊<EFBFBD> <CC8A> {<7B> <> <EFBFBD> <EFBFBD> <EFBFBD> ͓<EFBFBD> <CD93> <EFBFBD> <EFBFBD> ł<EFBFBD> <C582> B
<EFBFBD> 쐬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> B<EFBFBD> E<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> ̐<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ł<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʂŁA
<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> E<EFBFBD> T<EFBFBD> C<EFBFBD> Y<EFBFBD> ͂<EFBFBD> <EFBFBD> ̕<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> P<EFBFBD> ʂɂȂ<EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> B
リカバリ・ファイルも個々に独立したパケットで構成される構造なので、
部分的な破損に強くて、より有効に使うことができます。
ブロック・サイズが小さいほど局地的なエラーが他に影響しにくくなり、
修復に必要なリカバリ・ファイルも少なくて済みます。
しかし、失われたソース・ブロックを復元するためには
同数のパリティ・ブロックが必要になるという PAR の基本原理は同じです。
作成するパリティ・ブロックの数が復元できる量で、
ブロック・サイズはその復元する単位になります。
<EFBFBD> @ PAR 2.0 <EFBFBD> ̓t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> Ƀf<C983> B<EFBFBD> <42> <EFBFBD> N<EFBFBD> g<EFBFBD> <67> <EFBFBD> <EFBFBD> <EFBFBD> ܂ ނ<DC82> <DE82> Ƃ<EFBFBD> <C682> ł<EFBFBD> <C582> <EFBFBD> <EFBFBD> ̂ŁA
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̃t<EFBFBD> H<EFBFBD> <EFBFBD> <EFBFBD> _<EFBFBD> ɎU<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂܂ C<DC8F> <43> <EFBFBD> <EFBFBD> <EFBFBD> 邱<EFBFBD> Ƃ<EFBFBD> <C682> ł<EFBFBD> <C582> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƁA
PAR 1.0 <EFBFBD> ɔ<EFBFBD> <EFBFBD> ׂĂ<EFBFBD> <EFBFBD> 葽<EFBFBD> <EFBFBD> <EFBFBD> ̃t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> _<EFBFBD> <5F> <EFBFBD> ɏC<C98F> <43> <EFBFBD> ł<EFBFBD> <C582> Ďg<C48E> <67> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͂悭<CD82> Ȃ<EFBFBD> <C882> Ă܂ <C482> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> ̔<EFBFBD> <EFBFBD> ʁA<EFBFBD> 傫<EFBFBD> ȃt<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ⑽<EFBFBD> <E291BD> <EFBFBD> ̃u<CC83> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƁA
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> <EFBFBD> <EF82AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> v<EFBFBD> Z<EFBFBD> ɂ₽<C982> <E282BD> <EFBFBD> Ǝ<EFBFBD> <C68E> Ԃ<EFBFBD> <D482> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> B
<EFBFBD> @<40> \<5C> I<EFBFBD> ɂ<EFBFBD> PAR 2.0 <20> ̕<EFBFBD> <CC95> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʔ łł<C582> <C582> <EFBFBD> <EFBFBD> A<EFBFBD> \<5C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> G<EFBFBD> őΉ<C591> <CE89> \<5C> t<EFBFBD> g<EFBFBD> <67> <EFBFBD> قƂ<D982> <C682> ǂȂ<C782> <C882> A
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> \<5C> ȃp<C883> \<5C> R<EFBFBD> <52> <EFBFBD> łȂ<C582> <C882> Ǝ<EFBFBD> <C68E> p<EFBFBD> I<EFBFBD> ȏ<EFBFBD> <C88F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> x<EFBFBD> <EFBFBD> <F093BE82> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> B
<EFBFBD> <EFBFBD> <EFBFBD> ɔ<EFBFBD> <EFBFBD> ͂ȃp<EFBFBD> \<5C> R<EFBFBD> <52> <EFBFBD> ł̓V<CD83> <56> <EFBFBD> v<EFBFBD> <76> <EFBFBD> Ōy<C58C> <79> <EFBFBD> <EFBFBD> PAR 1.0 <20> ̕<EFBFBD> <CC95> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ă邱<C482> Ƃ<EFBFBD> <C682> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂ŁA
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> p<EFBFBD> r<EFBFBD> ɉ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ďg<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> B
PAR 2.0 はファイル名にディレクトリも含むことができるので、
複数のフォルダに散らばったファイルをそのまま修復することができたりと、
PAR 1.0 に比べてより多くのファイルを柔軟に修復できて使い勝手はよくなってます。
その反面、大きなファイルや多数のブロックを処理すると、
メモリー消費が増えたり計算にやたらと時間がかかります。
機能的には PAR 2.0 の方が上位版ですが、構造が複雑で対応ソフトがほとんどなく、
高性能なパソコンでないと実用的な処理速度を得られないかもしれません。
特に非力なパソコンではシンプルで軽快な PAR 1.0 の方が向いてることもあるので、
環境や用途に応じて使い分けてください。
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
[ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> d<EFBFBD> l<EFBFBD> Ȃ<EFBFBD> ]
[ 特徴や仕様など ]
<EFBFBD> @ Parity Archive 2.0 <EFBFBD> ̖{<7B> <> par2cmdline <EFBFBD> <EFBFBD> QuickPar <EFBFBD> ɔ<EFBFBD> <EFBFBD> ׂāA
<EFBFBD> <EFBFBD> <EFBFBD> J<EFBFBD> o<EFBFBD> <EFBFBD> <EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ɃR<C983> <52> <EFBFBD> <EFBFBD> <EFBFBD> g<EFBFBD> <67> <EFBFBD> t<EFBFBD> <74> <EFBFBD> 邱<EFBFBD> Ƃ<EFBFBD> <C682> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> j<EFBFBD> R<EFBFBD> [<5B> h<EFBFBD> <68> <EFBFBD> ǂݏ<C782> <DD8F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂Ń}<7D> <> <EFBFBD> `<60> o<EFBFBD> C<EFBFBD> g<EFBFBD> <67> <EFBFBD> <EFBFBD> <EFBFBD> ɂ<EFBFBD> <C982> Ή<EFBFBD> <CE89> <EFBFBD> <EFBFBD> Ă܂ <C482> <DC82> B
<EFBFBD> T<EFBFBD> C<EFBFBD> Y<EFBFBD> <EFBFBD> 0<> ̋<EFBFBD> <CC8B> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ɂ<EFBFBD> <C982> Ή<EFBFBD> <CE89> <EFBFBD> <EFBFBD> Ă܂ <C482> <DC82> B
par2cmdline <EFBFBD> ̓T<EFBFBD> u<EFBFBD> E<EFBFBD> f<EFBFBD> B<EFBFBD> <EFBFBD> <EFBFBD> N<EFBFBD> g<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> Ƃ<EFBFBD> <C682> ĔF<C494> <46> <EFBFBD> <EFBFBD> <EFBFBD> A
QuickPar <EFBFBD> ͖<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> A<EFBFBD> <EFBFBD> <EFBFBD> ̃A<EFBFBD> v<EFBFBD> <EFBFBD> <EFBFBD> P<EFBFBD> [<5B> V<EFBFBD> <56> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> t<EFBFBD> H<EFBFBD> <EFBFBD> <EFBFBD> _<EFBFBD> <EFBFBD> <EFBFBD> T<EFBFBD> u<EFBFBD> E<EFBFBD> f<EFBFBD> B<EFBFBD> <EFBFBD> <EFBFBD> N<EFBFBD> g<EFBFBD> <EFBFBD> <EFBFBD> Ȃǂ̃f<EFBFBD> B<EFBFBD> <EFBFBD> <EFBFBD> N<EFBFBD> g<EFBFBD> <EFBFBD> <EFBFBD> \<5C> <> <EFBFBD> <EFBFBD> <F0959C8C> <EFBFBD> <EFBFBD> 邱<EFBFBD> Ƃ<EFBFBD> <C682> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> B
Parity Archive 2.0 の本家 par2cmdline や QuickPar に比べて、
リカバリ・ファイルにコメントを付けることができます。
ユニコードを読み書きするのでマルチバイト文字にも対応してます。
サイズが 0の空ファイルにも対応してます。
par2cmdline はサブ・ディレクトリをファイル名として認識し、
QuickPar は無視しますが、このアプリケーションは
フォルダやサブ・ディレクトリなどのディレクトリ構造を復元することができます。
<EFBFBD> @ QuickPar <EFBFBD> ͖<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɃS<EFBFBD> ~<7E> <> <EFBFBD> t<EFBFBD> <74> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԂŔ<D482> <C594> [<5B> ȃu<C883> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> ̒<EFBFBD> <CC92> O<EFBFBD> ̃u<CC83> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> <EFBFBD> j<EFBFBD> <6A> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ̃u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> <EFBFBD> <EFBFBD> F<EFBFBD> <EFBFBD> <EFBFBD> ł<EFBFBD> <EFBFBD> Ȃ<EFBFBD> <EFBFBD> Ȃ<EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> A<EFBFBD> <EFBFBD> <EFBFBD> ̃A<EFBFBD> v<EFBFBD> <EFBFBD> <EFBFBD> P<EFBFBD> [<5B> V<EFBFBD> <56> <EFBFBD> <EFBFBD> <EFBFBD> ł͂<C582> <CD82> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ɣ<EFBFBD> <C694> 肵<EFBFBD> ܂ <EFBFBD> <DC82> B
<EFBFBD> ܂ <EFBFBD> <EFBFBD> A<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> E<EFBFBD> T<EFBFBD> C<EFBFBD> Y<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ē<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> œ<EFBFBD> <C593> e<EFBFBD> <65> <EFBFBD> d<EFBFBD> <64> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <C482> ƁA
<EFBFBD> j<EFBFBD> <EFBFBD> <EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> ȍ~<7E> Ɍ<EFBFBD> <C98C> ̃u<CC83> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> <EFBFBD> <EFBFBD> <EFBFBD> Ɍ<EFBFBD> <C98C> o<EFBFBD> <6F> <EFBFBD> 錻<EFBFBD> ۂ<EFBFBD> <DB82> N<EFBFBD> <4E> <EFBFBD> āA
<EFBFBD> <EFBFBD> <EFBFBD> ̌<EFBFBD> <EFBFBD> Ŗ{<7B> <> <EFBFBD> ̏<EFBFBD> <CC8F> Ԃ̃u<CC83> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> <EFBFBD> F<EFBFBD> <46> <EFBFBD> ł<EFBFBD> <C582> Ȃ<EFBFBD> <C882> Ȃ<EFBFBD> <C882> Ă<EFBFBD> <C482> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> 肪<EFBFBD> <E882AA> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> A
<EFBFBD> <EFBFBD> <EFBFBD> ̃A<EFBFBD> v<EFBFBD> <EFBFBD> <EFBFBD> P<EFBFBD> [<5B> V<EFBFBD> <56> <EFBFBD> <EFBFBD> <EFBFBD> ł͌<C582> <CD8C> o<EFBFBD> <6F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԂɊւ<C98A> <D682> 炸<EFBFBD> <E782B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƔF<C694> <46> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> B
<EFBFBD> j<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̌<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1<> o<EFBFBD> C<EFBFBD> g<EFBFBD> <67> <EFBFBD> <EFBFBD> <C288> v<EFBFBD> <76> <EFBFBD> <EFBFBD> <EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> ׂĂ<D782> <C482> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߎ<EFBFBD> <DF8E> Ԃ͂<D482> <CD82> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> A
<EFBFBD> j<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 葽<EFBFBD> <E891BD> <EFBFBD> ̗<EFBFBD> <CC97> p<EFBFBD> \<5C> ȃu<C883> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> <EFBFBD> <EFBFBD> <EFBFBD> o<EFBFBD> <6F> <EFBFBD> 邩<EFBFBD> <E982A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> B
QuickPar は末尾にゴミが付いた状態で半端なブロックの直前のブロックが破損すると
そのブロックを認識できなくなりますが、このアプリケーションではきちんと判定します。
また、ブロック・サイズが小さくて同一ファイル内で内容が重複してると、
破損ブロック以降に後のブロックを先に検出する現象が起きて、
その後で本来の順番のブロックを認識できなくなってしまう問題がありますが、
このアプリケーションでは検出した順番に関わらずきちんと認識します。
破損部分の検査で 1バイトずつ一致するブロックを調べていくため時間はかかりますが、
破損したファイルからより多くの利用可能なブロックを検出するかもしれません。
<EFBFBD> @ QuickPar <EFBFBD> ͔j<EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ۂɁ A<C981> <41> <EFBFBD> <EFBFBD> <EFBFBD> ̔j<CC94> <6A> <EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> ̈ʒu<CA92> ƏC<C68F> <43> <EFBFBD> Ɏg<C98E> <67>
<EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> B<EFBFBD> E<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> ̑g<EFBFBD> ݍ<EFBFBD> <EFBFBD> 킹<EFBFBD> ɂ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ẮA<EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> B<EFBFBD> E<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> ̐<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <EFBFBD> Ă<EFBFBD>
<EFBFBD> C<EFBFBD> <EFBFBD> <EFBFBD> ł<EFBFBD> <EFBFBD> Ȃ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƃ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> B<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ́A<EFBFBD> C<EFBFBD> <EFBFBD> <EFBFBD> Ɏg<EFBFBD> <EFBFBD> <EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> B<EFBFBD> E<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƂŕύX<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƃ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߂<EFBFBD> <EFBFBD> ǂ<EFBFBD> <EFBFBD> ȍ<EFBFBD> <EFBFBD> Ƃ<EFBFBD> <EFBFBD> K<EFBFBD> v<EFBFBD> ɂȂ<EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> B
<EFBFBD> <EFBFBD> <EFBFBD> ̃A<EFBFBD> v<EFBFBD> <EFBFBD> <EFBFBD> P<EFBFBD> [<5B> V<EFBFBD> <56> <EFBFBD> <EFBFBD> <EFBFBD> ł͖<C582> <CD96> <EFBFBD> <EFBFBD> ̂<EFBFBD> <CC82> <EFBFBD> <EFBFBD> p<EFBFBD> <70> <EFBFBD> e<EFBFBD> B<EFBFBD> E<EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ď<EFBFBD> <C48E> <EFBFBD> <EFBFBD> I<EFBFBD> <49>
<EFBFBD> ēx<EFBFBD> C<EFBFBD> <EFBFBD> <EFBFBD> ł<EFBFBD> <EFBFBD> 邩<EFBFBD> <EFBFBD> <EFBFBD> ݂Ă<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂Ŋy<EFBFBD> ł<EFBFBD> <EFBFBD> B
QuickPar は破損ファイルを修復する際に、特定の破損ブロックの位置と修復に使う
パリティ・ブロックの組み合わせによっては、パリティ・ブロックの数が足りていても
修復できないことがあります。そういう時は、修復に使うパリティ・ブロックを
手作業で変更するというめんどうな作業が必要になります。
このアプリケーションでは問題のあるパリティ・ブロックを除いて自動的に
再度修復できるか試みてくれるので楽です。
<EFBFBD> @<40> <> <EFBFBD> <EFBFBD> <EFBFBD> ꂽ<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> Ɠ<EFBFBD> <C693> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> ̃u<CC83> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> <EFBFBD> <EFBFBD> <EFBFBD> ݂<EFBFBD> <DD82> ė<EFBFBD> <C497> p<EFBFBD> ł<EFBFBD> <C582> 邩<EFBFBD> <E982A9>
<EFBFBD> `<60> F<EFBFBD> b<EFBFBD> N<EFBFBD> T<EFBFBD> <54> <EFBFBD> <EFBFBD> <EFBFBD> g<EFBFBD> <67> <EFBFBD> Č<EFBFBD> <C48C> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> A<EFBFBD> <41> <EFBFBD> <EFBFBD> <C282> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ꍇ<EFBFBD> ͒<EFBFBD> <CD92> ڃR<DA83> s<EFBFBD> [<5B> <> <EFBFBD> ܂ <EFBFBD> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> ̂<EFBFBD> <EFBFBD> ߁A<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> ̃\<5C> [<5B> X<EFBFBD> E<EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ ܂ <DC82> <DC82> 鎞<EFBFBD> ́A
<EFBFBD> C<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̌v<EFBFBD> Z<EFBFBD> ʂ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƌ<EFBFBD> <EFBFBD> ɏ<EFBFBD> <EFBFBD> Ȃ<EFBFBD> <EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> B<EFBFBD> E<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> ł<EFBFBD> <EFBFBD> C<EFBFBD> <EFBFBD> <EFBFBD> ł<EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> B
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> I<EFBFBD> ɓ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> ̃t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> ܂ ܂ <DC82> <DC82> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> AQuickPar <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> C<EFBFBD> <43> <EFBFBD> ł<EFBFBD> <C582> <EFBFBD> <EFBFBD> \<5C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ł<EFBFBD> <C582> B
失われたソース・ブロックと同じ内容のブロックが存在して利用できるかを
チェックサムを使って検索し、見つかった場合は直接コピーします。
そのため、同じ内容のソース・ブロックが複数含まれる時は、
修復時の計算量が減ると共に少ないパリティ・ブロックでも修復できます。
部分的に同じ内容のファイルが含まれるなら、QuickPar よりも修復できる可能性が高いです。
<EFBFBD> @<40> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> E<EFBFBD> T<EFBFBD> C<EFBFBD> Y<EFBFBD> <59> 4<> o<EFBFBD> C<EFBFBD> g<EFBFBD> ̏ꍇ<CC8F> ́A
<EFBFBD> j<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> ̃`<60> F<EFBFBD> b<EFBFBD> N<EFBFBD> T<EFBFBD> <54> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> <65> <EFBFBD> t<EFBFBD> Z<EFBFBD> <5A> <EFBFBD> <EFBFBD> <EFBFBD> ̂ŁA
<EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> B<EFBFBD> E<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> <EFBFBD> <EFBFBD> S<EFBFBD> <EFBFBD> <EFBFBD> g<EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <EFBFBD> ŏC<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 邱<EFBFBD> Ƃ<EFBFBD> <EFBFBD> ł<EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> B
<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> E<EFBFBD> T<EFBFBD> C<EFBFBD> Y<EFBFBD> <EFBFBD> 8<> o<EFBFBD> C<EFBFBD> g<EFBFBD> ̏ꍇ<CC8F> ̏<EFBFBD> <CC8F> <EFBFBD> <EFBFBD> ́A
1<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> Z<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂ɉ<EFBFBD> <EFBFBD> \<5C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂Ŏ<CC82> <C58E> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <C482> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> B
<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> R<EFBFBD> [<5B> h<EFBFBD> <68> <EFBFBD> ɂ͂<C982> <CD82> <EFBFBD> <EFBFBD> ̂Ŋ<CC82> <C58A> ]<5D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 8<> o<EFBFBD> C<EFBFBD> g<EFBFBD> p<EFBFBD> <70> <EFBFBD> lj<EFBFBD> <C789> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> B
ブロック・サイズが 4バイトの場合は、
破損したソース・ブロックのチェックサムから内容を逆算するので、
パリティ・ブロックを全く使わないで修復することができます。
ブロック・サイズが 8バイトの場合の処理は、
1ブロックを逆算するのに何十分もかかるので実装していません。
ソース・コード上にはあるので希望があれば 8バイト用も追加できます。
<EFBFBD> @<40> <> <EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ̍<EFBFBD> <CC8D> v<EFBFBD> T<EFBFBD> C<EFBFBD> Y<EFBFBD> <59> <EFBFBD> <EFBFBD> <F382AB83> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> ʂ̔<CA82> <CC94> <EFBFBD> <EFBFBD> ȉ<EFBFBD> <C889> Ȃ<EFBFBD> <C882> A
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> PAR 2.0 <EFBFBD> N<EFBFBD> <EFBFBD> <EFBFBD> C<EFBFBD> A<EFBFBD> <EFBFBD> <EFBFBD> g<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƍ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɏC<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> B
<EFBFBD> }<7D> <> <EFBFBD> `<60> E<EFBFBD> R<EFBFBD> A CPU <20> ɑ Ή<C991> <CE89> <EFBFBD> <EFBFBD> ă}<7D> <> <EFBFBD> `<60> E<EFBFBD> X<EFBFBD> <58> <EFBFBD> b<EFBFBD> h<EFBFBD> ōs<C58D> Z<F189898E> <5A>
<EFBFBD> <EFBFBD> <EFBFBD> [<5B> h<EFBFBD> E<EFBFBD> \<5C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̌v<CC8C> Z<EFBFBD> <5A> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂ŁACPU <20> R<EFBFBD> A<EFBFBD> <41> 2<> ȏ゠ <C88F> <E382A0> <EFBFBD> ƍ X<C68D> ɑ <EFBFBD> <C991> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> ܂ <EFBFBD> <DC82> B
<EFBFBD> V<EFBFBD> <EFBFBD> <EFBFBD> O<EFBFBD> <EFBFBD> <EFBFBD> E<EFBFBD> R<EFBFBD> A<EFBFBD> ł<EFBFBD> QuickPar <EFBFBD> <EFBFBD> 2<> {<7B> A
<EFBFBD> f<EFBFBD> <EFBFBD> <EFBFBD> A<EFBFBD> <EFBFBD> <EFBFBD> E<EFBFBD> R<EFBFBD> A<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> QuickPar <20> <> 3<> {<7B> <> <EFBFBD> 炢<EFBFBD> ̑<EFBFBD> <CC91> x<EFBFBD> <78> <EFBFBD> ł܂ <C582> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> A<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> 傫<EFBFBD> <E582AB> <EFBFBD> ƁA
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <EFBFBD> ċɒ[<5B> ɏ<EFBFBD> <C98F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> x<EFBFBD> <78> <EFBFBD> ቺ<EFBFBD> <E189BA> <EFBFBD> ܂ <EFBFBD> <DC82> B
扱うファイルの合計サイズが空きメモリー量の半分以下ならば、
他の PAR 2.0 クライアントよりもずっと高速に修復します。
マルチ・コア CPU に対応してマルチ・スレッドで行列演算と
リード・ソロモン符号の計算をするので、CPU コアが 2個以上あると更に速くなります。
シングル・コアでも QuickPar の 2倍、
デュアル・コアだと QuickPar の 3倍ぐらいの速度がでます。
ただし、空きメモリーが少なかったりファイルが大きいと、
効率が悪くなって極端に処理速度が低下します。
<EFBFBD> @<40> <> <EFBFBD> {<7B> <> <EFBFBD> ̊J<CC8A> <4A> <EFBFBD> <EFBFBD> <C28B> ō<EFBFBD> <C58D> <EFBFBD> <EFBFBD> Ă<EFBFBD> <C482> ̂ŁA
<EFBFBD> <EFBFBD> <EFBFBD> {<7B> <> <EFBFBD> ̃t<CC83> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> f<EFBFBD> B<EFBFBD> <42> <EFBFBD> N<EFBFBD> g<EFBFBD> <67> <EFBFBD> ɑ Ή<C991> <CE89> <EFBFBD> <EFBFBD> Ă܂ <C482> <DC82> B
4GB <EFBFBD> ȏ<EFBFBD> <EFBFBD> ̃t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ɂ<EFBFBD> <C982> Ή<EFBFBD> <CE89> <EFBFBD> <EFBFBD> Ă܂ <C482> <DC82> <EFBFBD> <EFBFBD> A
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> C<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> x<EFBFBD> ̓t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> E<EFBFBD> A<EFBFBD> N<EFBFBD> Z<EFBFBD> X<EFBFBD> <58> <EFBFBD> x<EFBFBD> ɑ 傫<C991> <E582AB> <EFBFBD> ˑ<EFBFBD> <CB91> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> B
日本語の開発環境で作ってるので、
日本語のファイル名やディレクトリに対応してます。
4GB 以上のファイルにも対応してますが、
検査や修復速度はファイル・アクセス速度に大きく依存します。
<EFBFBD> @<40> J<EFBFBD> <4A> <EFBFBD> Ҍ<EFBFBD> <D28C> <EFBFBD> <EFBFBD> Ɂ A
<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> R<EFBFBD> [<5B> h<EFBFBD> <68> <EFBFBD> <EFBFBD> <EFBFBD> J<EFBFBD> <4A> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <C482> ̂ŁA<C581> ׂ<EFBFBD> <D782> <EFBFBD> <EFBFBD> d<EFBFBD> l<EFBFBD> <6C> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ŕύX<CF8D> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɕs<EFBFBD> <EFBFBD> <EFBFBD> ȓ_<EFBFBD> <EFBFBD> <EFBFBD> o<EFBFBD> O<EFBFBD> <EFBFBD> <EFBFBD> ۂ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <EFBFBD> A<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŋm<EFBFBD> F<EFBFBD> <EFBFBD> <EFBFBD> 邱<EFBFBD> Ƃ<EFBFBD> <EFBFBD> ł<EFBFBD> <EFBFBD> Ĉ<EFBFBD> <EFBFBD> S<EFBFBD> ł<EFBFBD> <EFBFBD> B
<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> E<EFBFBD> <45> <EFBFBD> X<EFBFBD> g<EFBFBD> Ŏw<C58E> 肷<EFBFBD> 邱<EFBFBD> Ƃ<EFBFBD> <C682> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> B
<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ƃ<EFBFBD> <C683> J<EFBFBD> o<EFBFBD> <6F> <EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> قȂ<D982> <C882> ꏊ<EFBFBD> ɂ<EFBFBD> <C982> <EFBFBD> <EFBFBD> Ă<EFBFBD> <C482> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> B
開発者向けに、
ソース・コードが公開されてるので、細かい仕様を自分で変更できます。
動作に不明な点やバグっぽい挙動があっても、自分で確認することができて安心です。
ソース・ファイルをファイル・リストで指定することができます。
ソース・ファイルとリカバリ・ファイルが異なる場所にあっても処理できます。
<EFBFBD> @<40> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƃ<EFBFBD> <C682> ẮA
<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> E<EFBFBD> T<EFBFBD> C<EFBFBD> Y<EFBFBD> <EFBFBD> 2 GB <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ɂ<EFBFBD> <C982> <EFBFBD> <EFBFBD> Ή<EFBFBD> <CE89> <EFBFBD> <EFBFBD> Ă܂ <C482> <DC82> <EFBFBD> <EFBFBD> B
<EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> B<EFBFBD> v<EFBFBD> Z<EFBFBD> Ɋ܂ ߂Ȃ<EFBFBD> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> (<28> m<EFBFBD> <6D> <EFBFBD> E<EFBFBD> <45> <EFBFBD> J<EFBFBD> o<EFBFBD> <6F> <EFBFBD> E<EFBFBD> Z<EFBFBD> b<EFBFBD> g) <20> ̎w<CC8E> <77> <EFBFBD> ͂ł<CD82> <C582> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> B
<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> ͍ő<CD8D> <C591> <EFBFBD> 32768<36> ܂ łł<C582> <C582> B(<28> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 65536<EFBFBD> ܂ <EFBFBD> )
<EFBFBD> 쐬<EFBFBD> ł<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> e<EFBFBD> B<EFBFBD> E<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> ͍ő<EFBFBD> <EFBFBD> <EFBFBD> 65535<33> ܂ łł<C582> <C582> B
制限事項としては、
ブロック・サイズは 2 GB 未満にしか対応してません。
パリティ計算に含めないファイル (ノン・リカバリ・セット) の指定はできません。
ソース・ブロックは最大で 32768個までです。(ファイル数は 65536個まで )
作成できるパリティ・ブロックは最大で 65535個までです。
<EFBFBD> @<40> <> <EFBFBD> ӓ_<D393> ̓<EFBFBD> <CD83> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> <EFBFBD> <EFBFBD> ʂ<EFBFBD> <CA82> c<EFBFBD> <63> <EFBFBD> Ȃ<EFBFBD> <C882> Ƃł<C682> <C582> B
<EFBFBD> <EFBFBD> <EFBFBD> J<EFBFBD> o<EFBFBD> <EFBFBD> <EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ŏC<C58F> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ۂɂ́A<CD81> <41> <EFBFBD> [<5B> h<EFBFBD> E<EFBFBD> \<5C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̍s<CC8D> <73> <EFBFBD> <EFBFBD> <EFBFBD> ϊ<EFBFBD> <CF8A> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ׂ<EFBFBD>
<EFBFBD> u <20> \<5C> [<5B> X<EFBFBD> E<EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> * <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ꂽ<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> * 2 <20> v<EFBFBD> ̃<EFBFBD> <CC83> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> K<EFBFBD> v<EFBFBD> Ƃ<EFBFBD> <C682> ܂ <EFBFBD> <DC82> B
<EFBFBD> Ⴆ<EFBFBD> A<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ő<EFBFBD> <EFBFBD> <EFBFBD> 32768 <20> ɂ<EFBFBD> <C982> <EFBFBD> <EFBFBD> ƁA25% <20> ̃u<CC83> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <EFBFBD> <F0959C8C> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɂ<EFBFBD>
32768 * 8192 * 2 = 500MB <EFBFBD> ȏ<EFBFBD> <EFBFBD> ̃<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> K<EFBFBD> v<EFBFBD> Ƃ<EFBFBD> <C682> ܂ <EFBFBD> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> ʂ͏ 璷<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 傫<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 邱<EFBFBD> Ƃ͖<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> A<EFBFBD> S<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> <EFBFBD> <EFBFBD> j<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 邱<EFBFBD> Ƃ<EFBFBD> <EFBFBD> ܂ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂ŁA
<EFBFBD> <EFBFBD> <EFBFBD> ۂɎg<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 郁<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> ͂<EFBFBD> <CD82> <EFBFBD> <EFBFBD> Ə<EFBFBD> <C68F> Ȃ<EFBFBD> <C882> ł<EFBFBD> <C582> <EFBFBD> <EFBFBD> A<EFBFBD> <41> <EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> <EFBFBD> <EFBFBD> G<CE83> <47> <EFBFBD> [<5B> ɂȂ<C982> <C882> ܂ <EFBFBD> <DC82> B
注意点はメモリー消費量が膨大なことです。
リカバリ・ファイルで修復する際には、リード・ソロモン符号の行列を変換する為に
「 ソース・ブロック数 * 失われたソース・ブロック数 * 2 」のメモリーを必要とします。
例えば、ブロック数を最大の 32768 にすると、25% のブロックを復元するには
32768 * 8192 * 2 = 500MB 以上のメモリーを必要とします。
普通は冗長性を大きくすることは無いし、全ブロックが破損することもまず無いので、
実際に使われるメモリーはもっと少ないですが、足りなければエラーになります。
<EFBFBD> @<40> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> E<EFBFBD> A<EFBFBD> N<EFBFBD> Z<EFBFBD> X<EFBFBD> p<EFBFBD> o<EFBFBD> b<EFBFBD> t<EFBFBD> @<40> [<5B> ́u (<28> \<5C> [<5B> X<EFBFBD> E<EFBFBD> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> + 2) * <20> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> E<EFBFBD> T<EFBFBD> C<EFBFBD> Y <20> v
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> {<7B> ̑傫<CC91> <E582AB> <EFBFBD> ɂȂ<C982> <C882> A<EFBFBD> <41> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> ꍇ<EFBFBD> ̓u<CD83> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> <4E> <EFBFBD> f<EFBFBD> Љ<EFBFBD> <D089> <EFBFBD> <EFBFBD> ď<EFBFBD> <C48F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> B
<EFBFBD> f<EFBFBD> ЃT<EFBFBD> C<EFBFBD> Y<EFBFBD> ́u 1KB<4B> `<60> u<EFBFBD> <75> <EFBFBD> b<EFBFBD> N<EFBFBD> E<EFBFBD> T<EFBFBD> C<EFBFBD> Y<EFBFBD> ̔<EFBFBD> <CC94> <EFBFBD> <20> v<EFBFBD> ł<EFBFBD> <C582> B
<EFBFBD> s<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> i<EFBFBD> [<5B> <> <EFBFBD> <EFBFBD> <EFBFBD> ׂ̃<D782> <CC83> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> D<EFBFBD> 悵<EFBFBD> āA<C481> <EFBFBD> <F382AB83> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> ꍇ<EFBFBD> ɂ́A
<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> E<EFBFBD> A<EFBFBD> N<EFBFBD> Z<EFBFBD> X<EFBFBD> p<EFBFBD> o<EFBFBD> b<EFBFBD> t<EFBFBD> @<40> [<5B> <> <EFBFBD> <EFBFBD> <EFBFBD> 炵<EFBFBD> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> A<EFBFBD> <41> <EFBFBD> <EFBFBD> <EFBFBD> ł<EFBFBD> <C582> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> <EFBFBD> <EFBFBD> G<CE83> <47> <EFBFBD> [<5B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> B
<EFBFBD> ܂ <EFBFBD> <EFBFBD> A<EFBFBD> u<EFBFBD> <EFBFBD> <EFBFBD> b<EFBFBD> N<EFBFBD> ̒f<EFBFBD> Љ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƌɒ[<5B> ɏ<EFBFBD> <C98F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> x<EFBFBD> <78> <EFBFBD> ቺ<EFBFBD> <E189BA> <EFBFBD> ܂ <EFBFBD> <DC82> B
ファイル・アクセス用バッファーは「 (ソース・ブロック数 + 2) * ブロック・サイズ 」
が基本の大きさになり、メモリーが足りない場合はブロックを断片化して処理します。
断片サイズは「 1KB~ ブロック・サイズの半分 」です。
行列を格納する為のメモリーを優先して、空きメモリーが足りない場合には、
ファイル・アクセス用バッファーを減らしますが、それでも足りなければエラーが発生します。
また、ブロックの断片化が激しいと極端に処理速度が低下します。
<EFBFBD> @<40> <> <EFBFBD> J<EFBFBD> o<EFBFBD> <6F> <EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ̌<EFBFBD> <CC8C> <EFBFBD> <EFBFBD> ł́A
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> \<5C> <> <EFBFBD> ɂ<EFBFBD> <C982> <EFBFBD> <EFBFBD> Ă<EFBFBD> CPU <20> <> <EFBFBD> \<5C> <> <EFBFBD> t<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> E<EFBFBD> A<EFBFBD> N<EFBFBD> Z<EFBFBD> X<EFBFBD> <58> <EFBFBD> x<EFBFBD> Ȃǂɂ<C782> <C982> <EFBFBD> <EFBFBD> ẮA
<EFBFBD> 傫<EFBFBD> ȃt<EFBFBD> @<40> C<EFBFBD> <43> <EFBFBD> ̌<EFBFBD> <CC8C> <EFBFBD> <EFBFBD> ɉ<EFBFBD> <C989> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҂ <D282> <C282> ƂɂȂ邩<C882> <E982A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> B
<EFBFBD> W<EFBFBD> <EFBFBD> <EFBFBD> ł̓<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> ʂ<EFBFBD> <CA82> \<5C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ΏڍׂȌ<D782> <C88C> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> s<EFBFBD> <73> <EFBFBD> A<EFBFBD> <41> <EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <C882> <EFBFBD> <EFBFBD> ΊȈՌ<C888> <D58C> <EFBFBD> <EFBFBD> ɂȂ<C982> <C882> ܂ <EFBFBD> <DC82> B
<EFBFBD> j<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ă邩<EFBFBD> ǂ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̊m<EFBFBD> F<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̏ꍇ<EFBFBD> <EFBFBD> <EFBFBD> A<EFBFBD> j<EFBFBD> <EFBFBD> <EFBFBD> ̒<EFBFBD> <EFBFBD> x<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ꍇ<EFBFBD> ́A
<EFBFBD> ȈՌ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ł<EFBFBD> <EFBFBD> \<5C> <> <EFBFBD> Ȃ̂ŁA<C581> I<EFBFBD> v<EFBFBD> V<EFBFBD> <56> <EFBFBD> <EFBFBD> <EFBFBD> ŏڍ<DA8D> <D78C> <EFBFBD> <EFBFBD> <EFBFBD> <F096B38C> ɂ<EFBFBD> <C982> 邱<EFBFBD> Ƃ<EFBFBD> <C682> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> B
リカバリ・ファイルやソース・ファイルの検査では、
メモリーが十分にあっても CPU 性能やファイル・アクセス速度などによっては、
大きなファイルの検査に何分も待つことになるかもしれません。
標準ではメモリー量が十分あれば詳細な検査を行い、足りなければ簡易検査になります。
破損してるかどうかの確認をしたいだけの場合や、破損の程度が小さい場合は、
簡易検査でも十分なので、オプションで詳細検査を無効にすることもできます。
<EFBFBD> @<40> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <C28B> <EFBFBD> Windows Vista <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȍ~ (Windows 7, 8, 10, 11) <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> p<EFBFBD> \<5C> R<EFBFBD> <52> <EFBFBD> ł<EFBFBD> <C582> B
Win32 API <EFBFBD> <EFBFBD> VC <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ^<5E> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> g<EFBFBD> <67> <EFBFBD> Ă<EFBFBD> <C482> ̂ŁA
<EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> R<EFBFBD> [<5B> h<EFBFBD> <68> <EFBFBD> R<EFBFBD> <52> <EFBFBD> p<EFBFBD> C<EFBFBD> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɂ<EFBFBD> Visual Studio 2022 <EFBFBD> ȍ~<7E> <> <EFBFBD> K<EFBFBD> v<EFBFBD> ł<EFBFBD> <C582> B
動作環境は Windows 7 かそれ以降 (Windows 8, 10, 11) が動くパソコンです。
Win32 API と VC ランタイムを使ってるので、
ソース・コードをコンパイルするには Visual Studio 2022 以降が必要です。
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
[ <EFBFBD> Q<EFBFBD> l<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ◘<EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> \<5C> [<5B> X<EFBFBD> E<EFBFBD> R<EFBFBD> [<5B> h<EFBFBD> A<EFBFBD> <41> <EFBFBD> C<EFBFBD> u<EFBFBD> <75> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> Ȃ<EFBFBD> ]
[ 参考文献や利用したソース・コード、ライブラリーなど ]
par2-specifications.pdf
Parity Volume Set Specification 2.0
@@ -220,31 +220,31 @@ This module is Public Domain.
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
[ <EFBFBD> <EFBFBD> <EFBFBD> C<EFBFBD> Z<EFBFBD> <EFBFBD> <EFBFBD> X<EFBFBD> Ȃ<EFBFBD> ]
[ ライセンスなど ]
<EFBFBD> @ PAR 2.0 <EFBFBD> ̃t<EFBFBD> H<EFBFBD> [<5B> }<7D> b<EFBFBD> g<EFBFBD> ɂ <C982> <C282> Ă͐<C482> <CD90> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> R<EFBFBD> [<5B> h<EFBFBD> <68> <EFBFBD> <EFBFBD> <EFBFBD> āA
<EFBFBD> ݊<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ێ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĂȂ<EFBFBD> <EFBFBD> ׂ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɂȂ<EFBFBD> <EFBFBD> 悤<EFBFBD> ɂ<EFBFBD> <EFBFBD> Ă܂ <EFBFBD> <EFBFBD> B
<EFBFBD> <EFBFBD> <EFBFBD> ̐l<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> R<EFBFBD> [<5B> h<EFBFBD> 𗬗p<F097AC97> <70> <EFBFBD> Ă镔<C482> <E99594> <EFBFBD> ̒<EFBFBD> <CC92> 쌠<EFBFBD> ͂<EFBFBD> <CD82> ̐l<CC90> ɂ<EFBFBD> <C982> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȊO<EFBFBD> ̕<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̒<EFBFBD> <EFBFBD> 쌠<EFBFBD> <EFBFBD> <20> V<EFBFBD> c <20> L <20> ɂ<EFBFBD> <C982> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> B
PAR 2.0 のフォーマットについては説明書や実装コードを見て、
互換性を維持してなるべく同じになるようにしてます。
他の人が書いたコードを流用してる部分の著作権はその人にあります。
それ以外の部分の著作権は 澤田 豊 にあります。
<EFBFBD> @<40> <> <EFBFBD> C<EFBFBD> Z<EFBFBD> <5A> <EFBFBD> X<EFBFBD> <58> GPL <20> Ƃ<EFBFBD> <C682> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̂ɏ<CC82> <C98F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> B
par2cmdline <EFBFBD> <EFBFBD> phpar2 <EFBFBD> ̃R<EFBFBD> [<5B> h<EFBFBD> 𗬗p<F097AC97> <70> <EFBFBD> Ă<EFBFBD> <C482> āA<C481> <41> <EFBFBD> <EFBFBD> <EFBFBD> 炪 GPL <20> Ŕz<C594> z<EFBFBD> <7A> <EFBFBD> <EFBFBD> <EFBFBD> Ă邩<C482> <E982A9> <EFBFBD> ł<EFBFBD> <C582> B
GPL <EFBFBD> ̃<EFBFBD> <EFBFBD> C<EFBFBD> Z<EFBFBD> <EFBFBD> <EFBFBD> X<EFBFBD> ̏ڍׂ͂悭<EFBFBD> 킩<EFBFBD> <EFBFBD> <EFBFBD> Ȃ<EFBFBD> <EFBFBD> ̂ł<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> A
<EFBFBD> <EFBFBD> <EFBFBD> p<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƂȂ<EFBFBD> <EFBFBD> g<EFBFBD> <EFBFBD> <EFBFBD> ă\<5C> [<5B> X<EFBFBD> E<EFBFBD> R<EFBFBD> [<5B> h<EFBFBD> <68> <EFBFBD> <EFBFBD> <EFBFBD> J<EFBFBD> <4A> <EFBFBD> 邱<EFBFBD> Ƃ<EFBFBD> <C682> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݂<EFBFBD> <DD82> <EFBFBD> <EFBFBD> ł<EFBFBD> <C582> B
<EFBFBD> ڂ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƃ͕t<EFBFBD> <EFBFBD> <EFBFBD> ̉p<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> C<EFBFBD> Z<EFBFBD> <EFBFBD> <EFBFBD> X<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǂނ<EFBFBD> <EFBFBD> A
<EFBFBD> <EFBFBD> <EFBFBD> {<7B> <> <EFBFBD> ̉<EFBFBD> <CC89> <EFBFBD> <EFBFBD> ł<EFBFBD> <C582> T<EFBFBD> <54> <EFBFBD> ēǂ<C493> <C782> ł݂Ă<DD82> <C482> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> B
ライセンスは GPL というものに準拠します。
par2cmdline や phpar2 のコードを流用していて、それらが GPL で配布されてるからです。
GPL のライセンスの詳細はよくわからないのですが、
利用料を払うことなく使えてソース・コードを公開することが条件みたいです。
詳しいことは付属の英文ライセンス文を読むか、
日本語の解説でも探して読んでみてください。
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
[ <EFBFBD> A<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ]
[ 連絡先 ]
<EFBFBD> @<40> <> <EFBFBD> ͂<EFBFBD> <CD82> ܂ <EFBFBD> (<28> T<EFBFBD> ꂮ<EFBFBD> 炢) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> m<EFBFBD> F<EFBFBD> ł<EFBFBD> <C582> ܂ <EFBFBD> <DC82> A
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> ꃖ<EFBFBD> <EA8396> <EFBFBD> <EFBFBD> <EFBFBD> 炢) <20> C<EFBFBD> <43> <EFBFBD> ^<5E> [<5B> l<EFBFBD> b<EFBFBD> g<EFBFBD> <67> <EFBFBD> g<EFBFBD> <67> <EFBFBD> Ȃ<EFBFBD> <C882> <EFBFBD> <EFBFBD> Ƃ<EFBFBD> <C682> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܂ <EFBFBD> <DC82> B
<EFBFBD> <EFBFBD> <EFBFBD> {<7B> I<EFBFBD> ɃT<C983> |<7C> [<5B> g<EFBFBD> ̓<EFBFBD> <CD83> [<5B> <> <EFBFBD> ōs<C58D> <73> <EFBFBD> <EFBFBD> <EFBFBD> ƂɂȂ<C982> <C882> ܂ <EFBFBD> <DC82> <EFBFBD> <EFBFBD> A
<EFBFBD> Ԏ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߂<EFBFBD> <EFBFBD> Ă<EFBFBD> <EFBFBD> 邩<EFBFBD> ͋C<EFBFBD> <EFBFBD> <EFBFBD> ɂ<EFBFBD> <EFBFBD> ҂<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> B
私はたまに (週一ぐらい) しかメール確認できませんし、
長期間 (一ヶ月ぐらい) インターネットを使えないこともあります。
基本的にサポートはメールで行うことになりますが、
返事がいつ戻ってくるかは気長にお待ちください。
<EFBFBD> <EFBFBD> <EFBFBD> O<EFBFBD> <EFBFBD> <20> V<EFBFBD> c <20> L <20> ł<EFBFBD> <C582> B
<EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> E<EFBFBD> A<EFBFBD> h<EFBFBD> <68> <EFBFBD> X<EFBFBD> <58> tenfon (at mark) outlook.jp <EFBFBD> ł<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> f<EFBFBD> <EFBFBD> <EFBFBD> [<5B> <> <EFBFBD> <EFBFBD> <EFBFBD> ۂ̕\<5C> L<EFBFBD> Ȃ̂ŁA<C581> <41> <EFBFBD> ۂ̃<DB82> <CC83> [<5B> <> <EFBFBD> ł<EFBFBD> (at mark) <EFBFBD> <EFBFBD> @ <EFBFBD> Ɋ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ă<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> B
名前は 澤田 豊 です。
メール・アドレスは tenfon (at mark) outlook.jp です
迷惑メール拒否の表記なので、実際のメールでは (at mark) を @ に換えてください。