On Tue, Aug 24, 2004 at 01:57:22PM +0300, Romeo Ninov wrote: > Имам следната ситуация: > изшълнявам следната команда tar cf - <files>|bzip2 -9 > Интересува ме има ли някой идея какво е влиянието на размера на блока, > дефиниран от tar : --block-size=N върху степента и скоростта на > компресия на bzip2
Според мен не би трябвало да има никакво значение. От това, което чета за формата на tar архиви в manual page tar(5) във FreeBSD 5.x (след като Тим Кинцле създаде bsdtar и документира файловите формати), тази опция управлява единствено това колко запълване да има на края на всеки файл. Блоковете, съставящи един файл в архива, не съдържат НИКАКВИ контролни данни, които да бъдат използвани от архиватора (или деархиватора) - единствената причина за съществуване на тези блокове е просто фактът, че лентовите устройства (а все пак tar значи tape archiver) изискват четенето и записа да се прави на блокове с определен размер. С други думи, какъвто и размер да избереш, tar няма да вмъква никаква контролна информация "по средата" на съдържанието на архивираните файлове. Единственото, за което размерът има значение, е колко байта с нули ще има на края на всеки файл - хм, сега като се замисля, това наистина би могло да има значение, ако архивираш голям брой файлове, всеки от които е с размер доста по-малък от 10KB (10KB е размерът на блок по подразбиране) - тогава може да се окажеш в ситуация, в която архивът съдържа доста повече нули, отколкото истински файлове. Но мисля, че bzip2 със стандартния си размер на блок от малко по-малко от 900KB няма да се шашне изобщо от това - ще си компресира нулите съвсем спокойно и все още ще може да използва контекст/речник/whatever, за да използва съдържанието на предишните файлове за компресия на следващите. Разбира се, ако на някого му се намира време и желание за едно истинско изследване (компресия на няколко вида данни с няколко различни размери на блокове за tar и няколко различни размера на блокове за bzip2), това ще бъде интересно и може да покаже какви глупости съм наговорил :) Поздрави, Петър -- Peter Pentchev [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553 Hey, out there - is it *you* reading me, or is it someone else?
pgpokAw482xPi.pgp
Description: PGP signature
