こんばんは、川合です。 とりあえずstk1/stk2/stk5の仕様が確定して、さあKHBIOSへと行こう と思っているのですが、現状を見渡すと中途半端なものがたくさん残っ ているのが気になります。 ・sartol関係 ディレクトリのサポートがまだない (仕様は既にできているんですが。) 1ファイル展開をサポートしていない ファイルリストを得るなどもできない そもそもsartolはもとが余興だったこともあり、ソースが汚い ・tek関係 マルチブロックのサポートができてない 補助バッファ利用モードのサポートもできてない tek5用の拡張部分も書けてない(註) ・その他 最新版qemuや新tekやsartolなどに対応した、osa_dir3相当のも のを作りたい osask.jpのページを少しは整理したい tolsetのバージョンアップもしたい 他にもいろいろやり残している事があるんですが、tek関係でかなり 気にしているのはこんなところです。 最近は暑くて集中力が落ちていることもあり、そういうときだからこ そ、こういうこまごましたことを片付けていこうかなと思っています。 こまごまとしたことなら集中力が落ちていてもできますし、前もって片 付けておけば、そのあとは心置きなく前進できそうです。 ということで8月は、上記をメインにして、9月からKHBIOSにしようと 思っています。 それを踏まえて、readme46用の「最後に」欄は、こんな感じでお願い します。>I.Tak.さん 間に合わなければ、僕が自分でいれますので 気にしないでいいです。 --- 今回の最大のみどころは、OSASKで利用可能な圧縮フォーマットが、 3種類も追加されたところでしょう。追加された3形式は、今までのtek0 と比べて、圧縮率と展開速度の「バランス」という点でずっと優れてい ます。・・・これはKHBIOS関係の開発のおまけみたいなものですが、単 なるおまけで済ませるにはもったいないほど、OSASKの性能が改善しま した。 このフォーマットに到達するためにかなり試行錯誤を繰り返したため 追加されたコード量の割には、長い開発時間が掛かってしまいました。 実際追加された展開ルーチンはわずか2KBほどでしかありません。 さて次バージョンですが、夏の暑さも考慮に入れて(?)、この圧縮 形式に関するやり残した拡張や、関連ツールの充実という軽めの予定で す。一般公開は9月中旬を予定しています。 --- (註) tek5の拡張というのは、主にstk1/2や旧stk3/4には導入されていた技 術のことで、今のstk5にはそのうちの一つしか入っていません(という か、LZMAに対してそういう拡張がほとんど入っていないのがstk5だとい うことになっています)。たとえばstk5では、完全にランダムでLZ圧縮 も文字出現頻度による圧縮も効かないようなデータが長く続くと、なん とstk1よりも悪い圧縮率になります(もちろんstk2やLHAにも負ける) 。・・・これはLZMAの欠点をそのまま引き継いでしまった点といえるで しょう。これを克服するための仕組みは既に検討済みで、今のstk5との 互換性を何ら損なうことなく、追加的に導入できます(というか、stk5 を決める時点でその部分をリザーブしておきました。もちろん、これを 使ったものはstk5ではなくtek5ですので、stk5用の展開ルーチンでは展 開できませんが)。 もちろん通常の使用ではこのようなデータが出てくることはあまりな いので、LZMAの開発者たちは問題にしなかったのでしょう。しかし、た とえばすでに圧縮済みのファイルを含むアーカイブを圧縮するときには (例:.lzhファイルが含まれるアーカイブとか)、まさにこの問題に直 面します。OSASKアプリも部分的に二重圧縮の個所がありますので、実 はこのサポートで圧縮率はさらに(すこしだけ)改善するでしょう。 またLZMAでは、圧縮対象の統計的性質がファイル全体を通じて変化し ないことを前提にしており、これはsarやtarでアーカイブを圧縮する場 合に、ひどく損をします(ディスクイメージでも同じ)。アーカイブに 限らずとも、ファイルの途中で統計的性質が変わるのはそう珍しいこと ではないので、このサポートでさらに圧縮率が改善できるでしょう。し かし問題もあって、今のところどのタイミングで切り替えるかを圧縮ル ーチン側が判断できません(判断させるアルゴリズムを思いつけていな い)。ということでこのサポートによって、すぐに圧縮率が改善すると いうことは残念ながらありません。将来、圧縮ルーチンがかしこくなれ ば、メリットが出てくるでしょう。 それでは。 -- 川合 秀実(KAWAI Hidemi) OSASK計画代表 / システム設計開発担当 E-mail:kawai !Atmark! osask.jp Homepage http://osask.jp/