Autor Wątek: KGB Archiver  (Przeczytany 3171 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Asgard

  • Aktywny użytkownik
  • ***
  • Wiadomości: 181
    • Zobacz profil
    • moje repo germanistyczne
KGB Archiver
« dnia: Sierpnia 07, 2013, 23:09:08 »
https://yadi.sk/d/ZpymcDAS3Fp77T

Jeden z najbardziej skutecznych archiwerów na świecie. Dzieło polskiego programisty. Ta bezpłatna (otwartoźródłowa) aplikacja wykorzystuje PAQ6 i wyraźnie przewyższa swoim algorytmem inne znane programy pakujące. KGB potrafi na domyślnym "normalnym" poziomie kompresji spakować 4 MB plik tekstowy z Biblią Tysiąclecia (wydanie II) do archiwum o rozmiarze 853 kB (czyli zysk 100% --> 21.02 %, co odpowiada prawie pięciokrotnemu "zagnieceniu"). ZIP na zwykłym poziomie kompresji pakując ten sam 4 MB plik tekstowy uzyskuje archiwum o rozmiarach 1.376 MB, 7-zip na maksymalnym poziomie "ultra" 1.1 MB, WinRar (również na maksymalnym poziomie) 929 kB, a archiwer B1 (na poziomie "ultra") wypadł dokładnie tak samo jak 7z@ultra.

Wspomniane 853 kB nie są szczytem możliwości aplikacji, bo na wyższych (i pamięcio-, czaso- oraz zasobochłonnych) poziomach kompresji wynik ten można jeszcze poprawić. Program domyślnie operuje na poziomie trzecim (wykorzystując przy tym 18 MB pamięci RAM; na słabszych maszynach z małą ilością dostępnej pamięci operacyjnej nie powinno się korzystać z opcji wyższych niż "-4", bo pakowanie pliku 4 MB może zająć nam od jednej do kilku godzin).

Najbardziej spektakularne wyniki osiągniemy zazwyczaj na plikach tekstowych, bo nie ma raczej większego sensu dalsze zagniatanie już wcześniej skompresowanych plików, np. *.mp3, *.jpg, *.flv, *.avi itd. itp.

Program działa w trybie tekstowym:

Cytuj
KGB Archiver v1.0, (C) 2005-2006 Tomasz Pawlak
Based on PAQ6 by Matt Mahoney
mod by Slawek (poczta-sn@gazeta.pl)

Compression:    kgb - archive.kgb files <@files_list>
Decompression:   kgb archive.kgb
Table of contents:   more < archive.kgb

m argument   memory usage
----------   ------------------------------
-0 2 MB (the fastest compression)
-1 3 MB
-2 6 MB
-3 18 MB (dafault)
-4 64 MB
-5 154 MB
-6 202 MB
-7 404 MB
-8 808 MB
-9 1616 MB (the best compression)

Jak rozumieć powyższą instrukcję? Nie ma tu żadnej czarnej magii.

Mam sobie np. plik biblia.txt w folderze /root/Downloads.

Otwieram konsolę i wpisuję komendę:

cd Downloads
Teraz pakujemy:

kgb biblia.kgb biblia.txt
I po chwili (trochę to może potrwać) we wspomnianym folderku pojawi się plik o nazwie biblia.kgb.

Aby rozpakować wspomniany wyżej plik biblia.kgb korzystamy z komendy:

kgb biblia.kgb
Przed rozpakowaniem warto usunąć plik biblia.txt (lub przesunąć go w inne miejsce).


Informacja dodatkowa:

Program PeaZip (aplikacja z wygodnym interfejsem graficznym) również dysponuje możliwością kompresowania z wykorzystaniem algorytmu PAQ (korzysta z nowszego i "mocniejszego" PAQ8) --> domyślnie pakuje na poziomie piątym (wykorzystując aż 154 MB RAM), co dla słabszych maszyn, np. z 256 MB RAM, stanowi istną katorgę, więc jeśli ktoś ma aż tak słaby komputer i zamierza korzystać z algorytmu PAQ poprzez program PeaZip, to powinien przed rozpoczęciem pakowania przejść do drugiej pionowej zakładki i w zaawansowanych opcjach kompresji PAQ wybrać algorytm "najszybszy", odpowiadający poziomowi "-3" (wspomniany 4 MB plik tekstowy udało mi się w ten sposób zagnieść do 807 kB, czyli 100 % --> 19 %, jednak czas był mniej więcej trzykrotnie dłuższy niż w przypadku analogicznej kompresji wykonywanej programem KGB).


kliknij na obrazku, aby go powiększyć

Dla zainteresowanych programem PeaZip (troszkę starsza wersja):

https://yadi.sk/d/EUWlSNSJ3Fh2XA
(program)

https://yadi.sk/d/7pTxGGsV3Fgzfb
(wsparcie dla formatu *.ace)


Wnioski z powyższego nasuwają się same. KGB (na domyślnym poziomie trzecim) to bardzo ciekawe narzędzie łączące kompromisowo szybkość działania z sakrucko wysokim współczynnikiem "zagniotu".

Poniżej przykładowy plik ze wspomnianą Biblią Tysiąclecia:

https://yadi.sk/d/00EmDx7w3Fp7zG

Pliczek ma 826 kB. Pakowałem troszkę większy plik tekstowy (4.3 MB) z kodowaniem UTF-8 (w moich pierwotnych testach pracowałem z analogicznym czteromegabajtowym tekściakiem zakodowanym windzianym CP-1250). Aby to zrównoważyć pakując skorzystałem z mocniejszej opcji "-4":

kgb -4 biblia.kgb biblia.txt
I właśnie dlatego mimo faktu, że kompresji poddałem plik o 300 kB cięższy od pierwotnego testowego, udało mi się uzyskać archiwum wynikowe nawet jeszcze trochę mniejsze rozmiarowo. Opcja "-4" zajmuje 64 MB pamięci RAM, to jest tyle, ile mój 10 letni komp-staruszek (256 MB RAM) jest w stanie bezboleśnie użyczyć bez zamulania. Przy opcji "-5" (154 MB RAM na potrzeby pakowania) zarżnąłby się biedaczek lub mulił ponad godzinę.

================

niniejszy post jako plik PDF: https://yadi.sk/i/uj4SRM873Fp8ia
« Ostatnia zmiana: Marca 14, 2017, 20:31:11 wysłana przez Asgard »
1.8 GHz / 1.25 GB RAM / Precise 5.6.1 full install @ HDD + spolszczenie / rox / śmiga jak błyskawica. Używam zawodowo od lat jako jedynego OS'a, dlatego zawsze z kopią zapasową wszystkich plików w / (odpalam z CD lub pędraka, 30 minut max i system odtworzony z backupa na drugiej partycji)