History

bzip1怎麼了?

  • January 24, 2018

多年來,bzip2 一直是相當強大的壓縮的事實標準。bzip2到目前為止,我自己已經輸入了數千次命令,這讓我想知道 - bzip 或 bzip1 發生了什麼?Google似乎並沒有告訴我太多關於它的資訊,聽起來這可能是一堂有趣的歷史課。

由於使用的算術壓縮存在專利問題,原件似乎bzip在 1998 年左右被撤下。一點點探勘(實際上只閱讀維基百科)bzip2從大約這個時候開始出現了一個指向該網站的存檔連結。

以下是相關部分的詳細資訊和其他差異:

它與您之前的產品 (bzip-0.21) 有什麼關係?

bzip2 是 0.21 的重寫和重新設計的版本。它表面上看起來非常相似,但幾乎完全重寫了(多次:-)。重要的區別是:

  • 免專利!(我希望;見上面的聲明)。bzip-0.21 使用算術編碼;bzip2 使用霍夫曼編碼,從專利的角度來看,這通常被認為是沒有問題的。這兩個程序都基於 Burrows-Wheeler 變換,但據我所知,這也沒有獲得專利。
  • 更快,尤其是在減壓時。bzip2 的解壓速度比 0.21 快 50% 以上,主要是因為使用了 Huffman 編碼。我還提高了壓縮速度,雖然沒有那麼多——也許它的壓縮速度比 0.21 快 30%。
  • 從媒體錯誤中恢復。兩個程序都以塊為單位壓縮數據,預設情況下為 900k 長。使用 bzip2,每個塊都完全獨立處理,帶有自己的校驗和,並由 48 位序列分隔。因此,如果您有損壞的壓縮文件,bzip2 可以提取壓縮塊,檢測哪些未損壞,然後解壓縮。
  • 測試模式。您可以測試壓縮文件的完整性,而無需解壓縮它們。真的,我應該把它放在 0.21 中,但是太懶了(+ 在我發布它的時候被黑客燒壞了)。
  • 更好地處理非常重複的文件。這樣的文件對於任何塊排序壓縮器來說都是最壞的情況。對於此類文件,bzip2 的執行速度比 0.21 快大約十倍。
  • 支持更小的機器。bzip2 可以解壓縮它創建的任何 2300k 文件,這意味著您可以在 4-meg 機器上解壓縮文件。與 0.21 相比,壓縮期間的峰值記憶體使用量也減少了約 900k,至約 6400k。
  • 更好的標誌處理。特別是,支持長標誌(–like –this),使其更易於使用。
  • 0.21 列印的一行啟動資訊,不見了。這是 0.21 最受抱怨的功能。如今,它甚至讓我感到困擾。

我不再分發 0.21,因為這樣做會使專利問題長期存在,從而確保該程序永遠不會被廣泛使用。真可惜,因為它是一個有用的程序,而且似乎很多人都喜歡它。如果您已經使用 0.21,請升級到 bzip2。不幸的是,我不能讓 bzip2 能夠解壓縮 0.21 的 .bz 文件,因為這會使專利避免活動變得毫無意義。我知道更改文件格式很痛苦;從現在開始,我將嘗試以向後兼容的方式進行任何進一步的更改。

這也是任何想要使用它的人的原始碼的僅解壓縮版本的連結。bzip

引用自:https://unix.stackexchange.com/questions/125798