Path: utzoo!utgpu!water!watmath!clyde!ima!cfisun!lakart!dg From: dg@lakart.UUCP (David Goodenough) Newsgroups: comp.sources.d Subject: Re: Standard for file transmission Message-ID: <119@lakart.UUCP> Date: 17 May 88 17:38:29 GMT References: <4776@teddy.UUCP> Organization: Lake - The systems people Lines: 108 From article <4776@teddy.UUCP>, by jpn@teddy.UUCP (John P. Nelson): >>The point is that an article which contains binary thats compressed and then >>uuencode/btoa/your_favorite'd will lower the compression ration for the batch >>that contains it. The overall size of the batch will be smaller if the >>included binary was just uuencoded, etc. > > If this was TRUE, it would be a good argument. It is NOT true. > > Most binary files that are compressed, uuencoded, then compressed again > are SMALLER than binary files that are simply uuencoded, then > compressed. I have yet to see anyone post results that refute this. >>>>> CORRECT <<<<< Note this: Script started on Tue May 17 13:01:21 1988 lakart!dg(bin/junk)[61]-> ds -rwxr-x--- 1 dg 40960 May 17 12:55 arc* -rwxr-x--- 1 dg 32768 May 17 12:55 atob* -rwxr-x--- 1 dg 16384 May 17 12:55 btoa* -rwxr-x--- 1 dg 36864 May 17 12:55 cg* -rwxr-x--- 1 dg 24576 May 17 12:55 clock* -rwxr-x--- 1 dg 16384 May 17 12:55 ddr* lakart!dg(bin/junk)[62]-> file * arc: demand paged pure executable atob: demand paged pure executable btoa: demand paged pure executable cg: demand paged pure executable clock: demand paged pure executable ddr: demand paged pure executable lakart!dg(bin/junk)[63]-> foreach i (*) ? compress < $i | uuencode $i.Z | compress > $i.u.Z ? uuencode $i < $i | compress > $i.u.z ? end lakart!dg(bin/junk)[64]-> ds -rwxr-x--- 1 dg 40960 May 17 12:55 arc* -rw-r----- 1 dg 29285 May 17 13:03 arc.u.Z -rw-r----- 1 dg 32027 May 17 13:03 arc.u.z -rwxr-x--- 1 dg 32768 May 17 12:55 atob* -rw-r----- 1 dg 18418 May 17 13:04 atob.u.Z -rw-r----- 1 dg 19330 May 17 13:04 atob.u.z -rwxr-x--- 1 dg 16384 May 17 12:55 btoa* -rw-r----- 1 dg 7896 May 17 13:04 btoa.u.Z -rw-r----- 1 dg 8384 May 17 13:04 btoa.u.z -rwxr-x--- 1 dg 36864 May 17 12:55 cg* -rw-r----- 1 dg 28412 May 17 13:04 cg.u.Z -rw-r----- 1 dg 30864 May 17 13:04 cg.u.z -rwxr-x--- 1 dg 24576 May 17 12:55 clock* -rw-r----- 1 dg 14299 May 17 13:04 clock.u.Z -rw-r----- 1 dg 15116 May 17 13:04 clock.u.z -rwxr-x--- 1 dg 16384 May 17 12:55 ddr* -rw-r----- 1 dg 7123 May 17 13:04 ddr.u.Z -rw-r----- 1 dg 7682 May 17 13:04 ddr.u.z lakart!dg(bin/junk)[65]-> foreach i (*[a-y]) ? echo $i ? echo -n `wc -c <$i.u.Z` '* 100 /' `wc -c <$i` '== ' ? z `wc -c $ <$i.u.Z` '* 100 /' `wc -c <$i` ? echo -n `wc -c <$i.u.z` '* 100 /' `wc -c <$i` '== ' ? z `wc -c <$i.u.z` '* 100 /' `wc -c <$i` ? end arc 29285 * 100 / 40960 == 71 == 0x47 32027 * 100 / 40960 == 78 == 0x4e atob 18418 * 100 / 32768 == 56 == 0x38 19330 * 100 / 32768 == 58 == 0x3a btoa 7896 * 100 / 16384 == 48 == 0x30 8384 * 100 / 16384 == 51 == 0x33 cg 28412 * 100 / 36864 == 77 == 0x4d 30864 * 100 / 36864 == 83 == 0x53 clock 14299 * 100 / 24576 == 58 == 0x3a 15116 * 100 / 24576 == 61 == 0x3d ddr 7123 * 100 / 16384 == 43 == 0x2b 7682 * 100 / 16384 == 46 == 0x2e lakart!dg(bin/junk)[66]-> ^D script done on Tue May 17 13:12:09 1988 In all cases (I actually looked at over 20 stripped executables) compress | uuencode | compress is fractionally smaller than: uuencode | compress, Both of which are heaps smaller than the raw file. Since the difference between compress | uuencode | compress and just plain uuencode | compress is so small (between 2 and 10 %) I can't see the point in continuing this discussion. >>>>> THEREFORE 'COMPRESS, UUENCODE AND POST' GETS THE BEST RESULTS. <<<<< [1] Now can we let this subject rest in peace. [1] Not counting ARC & ZOO. I Don't know where they stand, so I am saying nothing about them. -- dg@lakart.UUCP - David Goodenough +---+ | +-+-+ ....... !harvard!adelie!cfisun!lakart!dg +-+-+ | +---+