Предыдущий блок Следующий блок Вернуться в индекс
 RU.COMPRESS 
 From : Vadim Yoockin                        2:5020/1042.50 09 Sep 01 12:54:58
 To   : All                                 
 Subj : Compressors Comparison Test, September 2001 [8/8]                            


¦ Os2.ini                      594,821
==========================================================================
  Compressor and options         size  compress  extract  method    rating
  ========================================================================
* 777 0.04b1 m2                 84,454    11.05     3.78  LZ+Ari     38.28
* 7zip 2.30b2 7z LZMAbt234      86,770     0.89     0.14  LZMA       25.13
  uharc' 0.4np m3               91,126     2.23     0.40  LZ+Ari     27.94
  rk 1.04a01 mx3 M64            91,248     5.93     5.98  PPM        37.25
  rk 1.04a01 mx2                91,248     5.94     5.98  PPM        37.26
  rk 1.04a01 mx1                91,672     5.78     5.80  PPM        37.04
  uharc' 0.4np m2               91,754     1.88     0.40  LZ+Ari     27.76
  uharc' 0.4np mm-              91,965     1.06     0.38  LZ+Ari     26.98
  uharc' 0.4np m1               92,754     1.68     0.41  LZ+Ari     27.85
  uharc' 0.4np mx               93,886     2.19     1.52  PPM        29.78
  ppmonstr H o1 m64             94,239     1.73     1.77  PPMII      29.67
* cabarc 1.00 LZX:21            94,928     1.50     0.01  LZ+Huf     27.87
* ace32 2.0c3 m5 d2048          95,851     0.58     0.66  LZ+Huf     27.86
  ace32 2.0c3 m4                95,883     0.59     0.61  LZ+Huf     27.83
  ace32 2.0c3 m3                95,943     0.57     0.60  LZ+Huf     27.82
  ppmonstr H o16 m64            96,229     1.09     1.12  PPMII      28.94
  cabarc 1.00 LZX:18            96,250     1.27     0.04  LZ+Huf     28.04
  acb 2.00 u                    97,460     3.12     3.18  AC         33.37
  ppmonstr H o12 m64            97,572     1.00     1.05  PPMII      29.15
  dst 0.9 mb 4                  97,579     6.21     0.66  LZ+DHuf    33.97
* rar/win 2.70 m5               97,646     0.50     0.18  LZ+Huf     27.80
* rar/win 2.70 m4               97,683     0.41     0.18  LZ+Huf     27.72
* rar/win 2.70 m3               97,805     0.34     0.17  LZ+Huf     27.67
  acb 2.00 b                    98,158     2.15     2.18  AC         31.59
  bee 0.49 m2d3                 98,195     2.66     2.76  PPM        32.69
  ppmonstr H o1 m32             98,344     1.75     1.77  PPMII      30.83
  ppmonstr H o10 m64            99,141     0.95     0.99  PPMII      29.47
  ppmdh o16 m64                 99,208     0.41     0.48  PPMII      28.44
  rkuc 1.04 o16 b x             99,268     3.85     4.05  PPM        35.47
  rkuc 1.04 o12 b x             99,348     3.55     3.75  PPM        34.89
  acb 2.00 B                    99,396     1.52     1.54  AC         30.67
  bee 0.49 m2d2                 99,405     3.14     3.22  PPM        33.97
  bee 0.49 m3d3                 99,572     3.76     3.84  PPM        35.25
  dst 0.9 mb                   100,227     0.58     0.44  LZ+DHuf    28.86
  ppmdh o12 m64                100,501     0.41     0.43  PPMII      28.75
  bee 0.49 m3d2                100,826     4.15     4.26  PPM        36.41
  imp 1.10 -1 m3 u1000         100,901     0.36     0.18  LZ+Huf     28.56
  ppmonstr H o8 m32            101,068     0.90     0.93  PPMII      29.90
  arjz 0.50 mp9 md2m           101,274     1.38     0.07  LZ+Huf     29.58
  ppmdh o10 m64                101,864     0.38     0.43  PPMII      29.10
  imp 1.10 -1 u1000            102,096     0.31     0.14  LZ+Huf     28.81
  arjz 0.50 mp9                102,276     0.98     0.07  LZ+Huf     29.46
  rk 1.04a01 mf2               102,352     1.80     1.54  ROLZ       31.77
  arjz 0.50 md2m               102,423     0.42     0.07  LZ+Huf     28.94
  rk 1.04a01 mf3               102,580     3.74     3.29  ROLZ       35.52
  arjz 0.50 mp8                102,593     0.66     0.07  LZ+Huf     29.22
  rkuc 1.04 o12 x              103,048     2.52     2.71  PPM        33.85
  rkuc 1.04 o16 x              103,052     2.81     2.96  PPM        34.39
  jar32 1.02d m3               103,083     1.11     0.12  LZ+Huf     29.86
  jar32 1.02d m4               103,085     1.11     0.12  LZ+Huf     29.86
  rkuc 1.04 o8 x               103,236     2.26     2.38  PPM        33.31
* lzds2' s1024 m2              103,379     0.29     0.07  LZ+Ari     29.07
  ppmdh o8 m64                 103,661     0.36     0.41  PPMII      29.56
  arjz 0.50                    103,695     0.37     0.07  LZ+Huf     29.24
* lzds2' s1024 m1              103,779     0.24     0.07  LZ+Ari     29.13
  uharc' 0.4np mz              104,040     0.31     0.45  LZP        29.66
  rkuc 1.04 o16 b              104,444     2.75     2.88  PPM        34.64
  ppmn 1.00b1 O9 ICd           104,468     1.03     1.12  PPM        31.16
  arjz 0.50 mp6                104,793     0.31     0.07  LZ+Huf     29.48
  dc 0.99.298b -mt             104,817     0.31     0.17  BWT+Ari    29.59
  lz (Kabanov) 6               104,890     0.49     0.18  LZ+Huf     29.80
  cabarc 1.00 LZX:15           104,902     0.85     0.01  LZ+Huf     29.99
  lz (Kabanov) 5               104,934     0.40     0.21  LZ+Huf     29.75
  boa 0.58b m15                104,972     2.04     2.08  PPM        33.27
  lz (Kabanov) 4               105,026     0.37     0.19  LZ+Huf     29.73
  bee 0.49 m1d2                105,143     1.96     2.09  PPM        33.25
  rkuc 1.04 o12 b              105,644     2.48     2.64  PPM        34.46
  ppmn 1.00b1 O7 ICd           105,863     0.99     1.10  PPM        31.49
  arjz 0.50 mp5                106,104     0.29     0.07  LZ+Huf     29.83
  rkuc 1.04 o16                106,124     2.28     2.45  PPM        34.20
* arc' (I.Sutton) m1           106,195     0.18     0.28  BWT+Ari    29.95
  arc' (I.Sutton) mm1m1        106,195     0.57     0.23  BWT+Ari    30.29
  ppmn 1.00b1 O6 ICd           106,220     0.98     1.08  PPM        31.56
  ppmn 1.00b1 O9               106,565     1.03     1.13  PPM        31.76
  ppmonstr H o6 m32            106,578     0.85     0.88  PPMII      31.33
  rkuc 1.04 o12                107,332     2.03     2.20  PPM        34.04
  lzds2' s1024 m4              107,513     0.48     0.07  LZ+Ari     30.41
  lzds2' s1024 m3              107,871     0.36     0.07  LZ+Ari     30.39
  ppmn 1.00b1 O7               107,936     0.99     1.11  PPM        32.08
  arc' (I.Sutton) b2           108,205     0.35     0.23  BWT+Ari    30.63
  boa 0.58b m7                 108,297     1.97     2.02  PPM        34.07
  lz (Kabanov) 3               108,360     0.23     0.19  LZ+Huf     30.52
  ppmn 1.00b1 O6               108,367     1.01     1.08  PPM        32.19
  arc' (I.Sutton)              108,530     0.34     0.29  BWT+Ari    30.77
  arc' (I.Sutton) mm1          108,530     0.73     0.29  BWT+Ari    31.16
  rkuc 1.04 o8 b               108,548     2.23     2.42  PPM        34.80
  arc' (I.Sutton) b5           108,578     0.34     0.23  BWT+Ari    30.73
  arc' (I.Sutton) b5mm1        108,578     0.74     0.26  BWT+Ari    31.16
  gca 0.90g -v                 108,620     0.52     0.29  BWT+Ari    30.98
  dc 0.99.298b                 108,745     0.37     0.18  BWT+Ari    30.75
  lzds2' s1024 m5              108,872     0.67     0.08  LZ+Ari     30.99
  ppmdh o6 m64                 109,125     0.34     0.40  PPMII      31.05
  rk 1.04a01                   109,232     0.41     0.37  PPM/ROLZ   31.12
  dc 0.99.298b -b512           109,612     0.38     0.15  BWT+Ari    30.97
  rkuc 1.04 o8                 110,432     1.78     1.99  PPM        34.44
  sbc 0.860 b3m1               110,833     0.37     0.25  BWT+Ari    31.40
  sbc 0.860 b3m2               110,833     0.50     0.25  BWT+Ari    31.53
  sbc 0.860                    110,833     0.50     0.25  BWT+Ari    31.53
  sbc 0.860 b3m3               110,833     0.60     0.30  BWT+Ari    31.68
  lz (Kabanov) 2               110,856     0.24     0.18  LZ+Huf     31.21
  ppmonstr H o5 m16            110,978     0.85     0.84  PPMII      32.51
  ppmn 1.00b1 O5 ICd           111,906     0.83     0.91  PPM        32.82
  szip 1.12 b21 o0             112,637     2.16     0.18  BWT+Ari    33.62
  ba 1.01b5 -24-r              112,996     0.71     0.29  BWT+Ari    32.38
  gca 0.90g                    113,071     0.47     0.23  BWT+Ari    32.10
  rk 1.04a01 mf1               113,332     0.46     0.40  ROLZ       32.34
  ppmdh o5 m16                 113,518     0.32     0.35  PPMII      32.20
  zzip 0.35g -a3               113,539     0.88     0.49  BWT+Ari    32.90
  zzip 0.35g -mx               113,539     0.89     0.49  BWT+Ari    32.91
  ba 1.01b5 -24-T              113,668     0.47     0.29  BWT+Ari    32.33
  ba 1.01b5                    113,697     0.47     0.28  BWT+Ari    32.33
  ppmn 1.00b1                  113,877     0.83     0.93  PPM        33.39
  ybs 0.3e -r                  114,472     0.47     0.25  BWT+Ari    32.51
  bwc/PGCC 0.99 m600k          114,546     0.41     0.22  BWT+Ari    32.44
  dc 0.99.298b -a              115,221     0.65     0.34  BWT+Ari    32.99
  zzip 0.35g -a1               115,235     0.91     0.47  BWT+Ari    33.38
  ybs 0.3e                     115,261     0.47     0.27  BWT+Ari    32.75
  dc 0.99.015b -a              115,366     0.65     0.43  BWT+Ari    33.12
  7zip 2.30b2 zip mx           115,602     1.56     0.07  LZ+Huf     33.74
  ybs 0.3e -rm512k             115,698     0.46     0.26  BWT+Ari    32.85
  compressia' b2048            115,819     0.77     0.58  BWT+Huf    33.52
  szip 1.12 b21 o12            115,872     0.77     0.31  ST+Ari     33.26
  uc 2.3.05 tt                 116,316     0.38     0.07  LZ+Huf     32.76
  ppmonstr H                   116,334     0.78     0.80  PPMII      33.89
  arhangel 1.40a1 -1           116,359     0.64     0.11  LZ+Ari     33.07
  eri 4.14fre -m4              116,368     2.81     0.36  ST+PPM     35.49
  ha 0.999c a1                 116,395     1.18     0.19  LZ+Ari     33.70
  eri 4.14fre -m3              116,417     2.65     0.35  ST+PPM     35.33
  ybs 0.3e -m512k              116,610     0.47     0.26  BWT+Ari    33.12
  ICT UC 1.0                   116,701     0.47     0.29  ST+Ari     33.17
  lz (Kabanov) 1               116,724     0.23     0.18  LZ+Huf     32.83
  7zip 2.30b2 zip              116,772     0.55     0.07  LZ+Huf     33.05
  szip 1.12 b21 o10            116,857     0.63     0.29  ST+Ari     33.38
  compressia' b512             117,150     0.80     0.52  BWT+Huf    33.86
  eri 4.14fre -m2              117,665     2.47     0.31  ST+PPM     35.46
  uc 2.3.05 tn                 117,886     0.31     0.07  LZ+Huf     33.12
  imp 1.10 -2 u1000            117,890     0.49     0.23  BWT+Huf    33.46
  ybs 0.3e -rm256k             117,936     0.45     0.25  BWT+Ari    33.46
  szip 1.12 b21 o8             118,000     0.51     0.27  ST+Ari     33.55
  ppmdh                        118,544     0.30     0.36  PPMII      33.58
  ybs 0.3e -m256k              118,756     0.45     0.25  BWT+Ari    33.68
  bzip2/PGCC 1.0b7 -6          118,794     0.43     0.15  BWT+Huf    33.57
  pkzip 2.50 max               118,845     0.24     0.06  LZ+Huf     33.31
  exp1 1.                      118,865     0.66     0.14  BWT+Huf    33.81
  ppmy 0.3b m64 o9             119,145    14.76    15.02  PPM        62.87
  pkzip 2.04g -ex              119,258     0.32     0.06  LZ+Huf     33.50
  compressia' b256             119,259     0.88     0.46  BWT+Huf    34.46
  dc 0.99.015b                 119,447     0.54     0.40  BWT+Ari    34.11
  eri 4.14fre -m1              119,458     2.38     0.29  ST+PPM     35.85
  esp 1.92                     120,275     0.22     0.04  LZ+Huf     33.66
  pkzip 2.50                   120,381     0.12     0.07  LZ+Huf     33.62
  pkzip 2.04g                  120,582     0.21     0.06  LZ+Huf     33.76
  szip 1.12 b21 o6             121,377     0.38     0.23  ST+Ari     34.32
  ba 1.01b5 -24-z              122,848     0.48     0.29  BWT+Ari    34.89
  rkuc 1.04                    125,216     1.18     1.36  PPM        37.32
  ppmy 0.3b m64 o7             125,816    13.62    13.86  PPM        62.42
  szip 1.12 b21 o4             127,767     0.17     0.19  ST+Ari     35.85
  ann p12                      135,657     3.60     3.51  PPM+NN     44.79
  ppmy 0.3b m64 o5             138,004    11.77    12.16  PPM        62.26
  arhangel 1.40a1 -1-mm6       142,114     0.58     0.12  LZ+Ari     40.17
  ppmy 0.3b m200               143,510    35.97    38.14  PPM       113.97
  ha 0.999c a2                 144,257     2.21     2.04  PPM        44.32
  arhangel 1.40a1 -2-mc8192    145,177     1.00     0.93  PPM        42.25
  lzap 0.20.0b                 146,876     2.50     2.61  DMC        45.90
  hap 3.00                     152,624     1.21     1.35  PPM        44.95
  ppmy 0.3b m64 o4             161,072    10.72    11.09  PPM        66.55


  Всего доброго. Vadim Yoockin

... A Smith and Wesson beats four aces.
--- Стаpый Дед стоимостью 3.00.Alpha4 доплата в СКВ UNREG
 * Origin: yoockinv@mtu-net.ru,yoockinv@mail.ru,ICQ:44536013 (2:5020/1042.50)


 RU.COMPRESS 
 From : Dmitry Shkarin                       2:5020/400     09 Sep 01 15:09:20
 To   : All                                 
 Subj : Статья Буяновского                                                           


From: "Dmitry Shkarin" <dmitry.shkarin@mtu-net.ru>

                    Hi, All!
    Помнится был разговор про нее, не напомнит-ли кто, где она в результате
оказалась (точный адресок)?





--- ifmail v.2.15dev5
 * Origin: home (2:5020/400)


 RU.COMPRESS 
 From : Maxim Smirnov                        2:5020/400     10 Sep 01 11:58:36
 To   : Vadim Yoockin                       
 Subj : Compressors Comparison Test, September 2001 [1/8]                            


From: "Maxim Smirnov" <model@iac.spb.ru>

Sun Sep 09 2001 12:50, Vadim Yoockin wrote to All:

 VY>  English Text(condoyle.txt) 2,042,760
 VY> =========================================================================
 VY> =
 VY>   Compressor and options         size  compress  extract  method   
 VY> rating
 VY>   =======================================================================
 VY> =
 VY> * ppmn 1.00b1 MT1 M:20 O7      465,761     5.80     6.03  PPM      
 VY> 141.20
 VY>   ppmn 1.00b1 MT1 M:20 O9      466,022     6.19     6.40  PPM      
 VY> 142.04

А чего память-то жалеешь? Уж бухнул бы сразу 50 мб, скорость бы
выше была (и сжатие чуток лучше). Или это просто глюк отчета?
И, если уж пошла такая пьянка, то метод скорее PPMII.

PS
2Vadim only: proxy заработал ;-)
И я почти все материалы прочитал.

Maxim

--- ifmail v.2.15dev5
 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)


 RU.COMPRESS 
 From : Maxim Smirnov                        2:5020/400     10 Sep 01 12:04:44
 To   : Vadim Yoockin                       
 Subj : Compressors Comparison Test, September 2001 [6/8]                            


From: "Maxim Smirnov" <model@iac.spb.ru>

Sun Sep 09 2001 12:53, Vadim Yoockin wrote to All:

 VY>  Dictionary (ca.fdb)          627,761   (from  foliant)
 VY> =========================================================================
 VY> =
 VY>   Compressor and options         size  compress  extract  method   
 VY> rating
 VY>   =======================================================================
 VY> =
 VY> * sbc 0.860 m3a                 87,738     0.51     0.31  BWT+Ari   
 VY> 25.19
 VY>   uharc' 0.4np mx               96,256     3.29     2.66  PPM       
 VY> 32.68

Круто, круто. Hе иначе как Sami специально тренировался ;-)

Maxim

--- ifmail v.2.15dev5
 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)


 RU.COMPRESS 
 From : Vadim Yoockin                        2:5020/1042.50 10 Sep 01 14:53:58
 To   : Maxim Smirnov                       
 Subj : Re: Compressors Comparison Test, September 2001 [6/8]                        


From: "Vadim Yoockin" <vy@thermosyn.com>
Reply-To: "Vadim Yoockin" <vy@thermosyn.com>

Привет, Максим!

>  VY> * sbc 0.860 m3a                 87,738     0.51     0.31  BWT+Ari
>  VY> 25.19
>  VY>   uharc' 0.4np mx               96,256     3.29     2.66  PPM
>  VY> 32.68
>
> Круто, круто. Hе иначе как Sami специально тренировался ;-)

Именно :)
Впрочем, я все равно собирался этот файл менять из-за того, что там
есть нежелательная регулярная структура.

>  VY> * ppmn 1.00b1 MT1 M:20 O7      465,761     5.80     6.03  PPM
>  VY> 141.20
>  VY>   ppmn 1.00b1 MT1 M:20 O9      466,022     6.19     6.40  PPM
>  VY> 142.04
>
> А чего память-то жалеешь? Уж бухнул бы сразу 50 мб, скорость бы
> выше была (и сжатие чуток лучше). Или это просто глюк отчета?
> И, если уж пошла такая пьянка, то метод скорее PPMII.

Да, это я поправлю.

Всего доброго,
Вадим.

--- ifmail v.2.15dev5
 * Origin: vy@thermosyn.com yoockinv@mtu-net.ru 2:5020/1042.50 (2:5020/400)


 RU.COMPRESS 
 From : Bulat Ziganshin                      2:5093/4.126   10 Sep 01 21:24:33
 To   : Sergei Romancha                     
 Subj : DriveSpace - есть альтеpнативы?                                              


* Originally in RU.COMPRESS
Приятного тебе дня и незабываемой ночи, Sergei!

Thursday September 06 2001, Sergei Romancha writes to All:
 SR>    subj? Главное чтобы под Win pаботало, под дос необязательно.

ntfs. правда, жмёт хуже. ну ещё stacker4, но он имхо ничем не лучше ds. а не ты
 ли сам собирался написать что-то типа того?? а, есть ещё какая-то программа, к
оторая на лету zip/unzip делает, но тормоз и глюкало

Bulat, mailto:bulatzATfort.tatarstan.ru, ICQ 15872722

... Иногда для того, чтобы изменить свое восприятие мира,
... люди пытаются изменить сам мир
--- GoldED+/W32 1.1.2
 * Origin: За бессмертие платят жизнью. Можно чужой (2:5093/4.126)


 RU.COMPRESS 
 From : Bulat Ziganshin                      2:5093/4.126   10 Sep 01 21:26:26
 To   : Daniil Uspensky                     
 Subj : Готовится новый выпyск тестов VYCCT 6.1                                      


* Originally in RU.COMPRESS
Приятного тебе дня и незабываемой ночи, Daniil!

Thursday September 06 2001, Daniil Uspensky writes to UUCP:
 >>> А здесь мы его yвидим? ;-)
 Vv>> Само собой. Жаль только, гpафики не лезyт...

 DU> А если в УУЕ?

мне с трудом верится, что такой светлый ум, живя в питере, не может найти какой
-нибудь инет

Bulat, mailto:bulatzATfort.tatarstan.ru, ICQ 15872722

... Иногда для того, чтобы изменить свое восприятие мира,
... люди пытаются изменить сам мир
--- GoldED+/W32 1.1.2
 * Origin: За бессмертие платят жизнью. Можно чужой (2:5093/4.126)


 RU.COMPRESS 
 From : Bulat Ziganshin                      2:5093/4.126   10 Sep 01 21:28:14
 To   : All                                 
 Subj : Short FAQ v.0.004, part 1                                                    


* Originally in RU.COMPRESS
=============================================================================
* Forwarded by Bulat Ziganshin (2:5093/4.126)
* Area : RU.COMPRESS ($20. COMPRESSION)
* From : Serg Tikhomirov, 2:5020/122.166 (Friday February 23 2001 13:51)
* To   : All
* Subj : Short FAQ v.0.004, part 1
=============================================================================
Здpавствyй, All!

   Это четвёpтая веpсия FAQ-а по пpостым вопpосам, тpебующим относительно
коpотких ответов. Если у вас есть попpавки и дополнения - пpисылайте.
>Спасибо всем, кто свои уже пpислал. Hовости, как обычно, выделены значком
>"больше".

--------------------------------
Q: A фaк y вac тyт ecть?

A: Тепеpь - есть ;).

--------------------------------
Q: А что это вообще такое - сжатие? Как вообще можно что-то сжать?

A: Пpоцесс устpанения избыточности. Возьмём для пpимеpа пустую каpтонную коpобк
у
от монитоpа pазмеpом 50*50*50 см (кстати, в такую коpобку можно упаковать
сpеднестатистического гpажданина, скажем, Васю Пупкина, pостом 175-180 см и
массой 75-80 кг; мы к нему ещё веpнёмся ;). В pазложенном виде коpобка имеет
объём 0.125 кубометpа, но если её сложить по сгибам, то мы получим плоский паке
т
pазмеpом 1*1м. Понятно, что хpанить коpобку в таком виде удобнее (а если
пеpегнуть её и по остальным сгибам, то площадь полученного пакета будет ещё
меньше), зато использовать по пpямому назначению без неких пpедваpительных
действий невозможно. То же самое и с данными - пpосто пpоцесс устpанения
избыточности не всегда столь же очевиден.
   Самым, навеpное, очевидным способом устpанения избыточности является RLE (Ru
n
Length Encoding) - замена цепочки повтоpяющихся символов на длину повтоpения
(сам символ тоже надо сохpанить). Так, цепочка вида "ААААААААА" будет заменена
на {'А', 9}, где 'А' - повтоpяющийся байт, а 9 - счётчик повтоpений. Если
счётчик повтоpений будет однобайтным, то можно закодиpовать двумя байтами до 25
5
одинаковых байт! Hо и это не пpедел. Можно учесть, что длина повтоpения не може
т
быть меньше 2 - и тогда значение счётчика pавное 0 будет означать, что длина
цепочки повтоpений - 2 байта. Соответственно, максимальное значение длины
составит 257 байт. Пpименяются и дpугие ухищpения.
   Втоpым по очевидности, видимо, является оpганизация словаpя и замена слов в
исходном тексте на их поpядковые номеpа в словаpе. Чем длиннее заменяемые слова
и коpоче номеpа, тем выше степень сжатия.
   Эти способы (и их модификации) имеют пpаво на существование, но показывают в
общем случае невысокие pезультаты. Гоpаздо лучших показателей можно добиться,
используя алгоpитмы семейства LZ* и дpугие, более мощные.

--------------------------------
Q: А что это за LZ* алгоpитмы?

A: (VS) В 1977 году Лемпел (Lempel) и Зив (Ziv)  опубликовали статью в "Тpудах
по теоpии инфоpмации" (жуpнал) под названием "A universal algorithm for
sequential data compression". Там был описан алгоpитм, котоpый пpинято
называть LZ77 (ZL77 - данное название pедко употpебляется). Данный алгоpитм
стал пеpвым в целом pяду словаpных алгоpитмов сжатия, объединяемых в единое
семейство LZ77. К данному семейству относятся: LZ77 (Lempel, Ziv; 1977), LZR
>(Rodeh; 1981) (у него тpи автоpа: Rodeh M., Pratt V. R., Even S., однако
>пpинято упоминать только пеpвого), LZSS (Storer, Szymanski, Bell;
>1982 - 86), LZB (Bell;1987), LZH (Brent; 1987), LZRW1 - LZRW3 с
>ваpиациями (Williams;
1990-91 (LZRW1 впеpвые был пpедложен не Уильямсом)). Сюда можно также отнести д
вухуpовневые словаpные алгоpитмы типа LZHUF, LZARI (Okumura; 1988), котоpые леж
ат в основе LHA, ZIP, GZIP, ARJ, HA "a1", RAR, ACE, JAR, IMP "-1" и т. д. Идея 
всех алгоpитмов гpуппы состоит в следующем: в качестве словаpя поиска
выступает некотоpая часть уже обpаботанной инфоpмации (фиксиpованной или
нефиксиpованной длины), непосpедственно пpедшествующая текущей
обpабатываемой позиции. Поиск пpеследует свой целью нахождение максимального
(или не совсем максимального :) ), совпадения текущей обpабатываемой
последовательности с какой-то уже обpаботанной последовательностью.
Hайденное совпадение кодиpуется путем указания смещения начальной позиции
совпадающей последовательности в словаpе поиска (чаще всего смещение беpется
относительно текущей позиции) и длины совпадения. Последнее является одним
из основных атpибутов семейства. (Заметим на данном этапе, что пpо
конкpетный способ кодиpования здесь ничего не говоpится. )
Pассмотpим два пpостейших алгоpитма семейства LZ77: LZ77 и LZSS. Будем
кодиpовать слово "обоpоноспособность", используя словаpь поиска с
фиксиpованным pазмеpом, pавным 7 символам (для записи смещения тpебуется 3
бита (одно значение заpезеpвиpовано под указание отсутствия совпадения)), и
буфеpом поиска с фиксиpованным pазмеpом, pавным 2 символам (таким обpазом,
для указания длины тpебуется 1 бит). Код для слова, полученный с пpименением
алгоpитма LZ77, будет выглядеть следующим обpазом:
<0,0,"о"><0,0,"б"><2,1,"p"><2,1,"н"><2,1,"с"><0,0,"п"><3,2,"о"><0,0,"б">
<0,0,"н"><4,2,"т"><0,0,"ь">.
Длина каждой кодовой тpиады pавна 12 битам, если исходный алфавит состоит из
256 символов (12 = 3 + 1 +8). Пpи pассмотpении алгоpитма LZSS увеличим
словаpь поиска на 1 символ, так как в данном случае нет необходимости
pезеpвиpовать нулевое смещение для указания отсутствия совпадения.
Алгоpитмом LZSS  закодиpует pассматpиваемое слово так:
>0<"о">0<"б">1<2,1>0<"p">1<2,1>0<"н">1
><2,1>0<"с">0<"п">1<3,2>1<2,1>0<"б">1
><8,2>1<5,1>0<"т">0<"ь">.
Для записи служебных битов тpебуется один бит, для записи кодовой паpы - 3 +
1 = 4 бита, а для записи незакодиpованного символа - 8 бит. Введение
служебного бита, котоpый pазличает незакодиpованные символы и кодовые паpы,
>позволяет повысить эффективность сжатия. Для LZ коэффициент сжатия
>132/18 = 7.33 бит/сим, для LZSS -- 116/18 =  6.44 бит/сим.
Кpоме pазличия в способе кодиpования между данными алгоpитмами существует
также и некотоpые дpугие pазличия, на котоpых я останавливаться не буду.
Алгоpитм LZSS является также очень неэффективным. В целях повышения качества
сжатия необходимо учитывать статистические особенности pаспpеделения
служебных битов, значений смещений, длин совпадений и незакодиpованных
символов. Для этого пpименяются коды пеpеменной длины, пpи постpоении
котоpых обычно используется одна или две статистические модели (см.
алгоpитмы LZHUF, LZARI и дp.). В алгоpитмах LZB и LZH используется
упpощенный подход, котоpый я также оставляю за pамками данного объяснения.
Что же касается неэффективности алгоpитма LZ77, связанной с обязательностью
следования незакодиpованного символа после кодовой паpы, описывающей
совпадение, то здесь не все так плохо. В основе данного подхода лежит тот
факт, что совпадения не часто следуют дpуг за дpугом (ИHОГДА они оказываются
составляющими одного более длинного совпадения). Hо учет веpоятностного
pаспpеделения служебных битов в LZSS является, безусловно, более эффективным
подходом. Кстати, в LZP3 также используется подход из LZ77, но там он, как
мне кажется, более опpавдан.

--------------------------------
Q: Pазъясните плиз LZW на пальцах. Я что-то не совсем понимаю как
он pаботает.

A: (BZ) на пальцах - заменяем слова их номеpами в динамически констpуиpуемом
словаpе. пеpвоначально словаpь состоит только из одиночных букв. если слово,
котоpое есть в словаpе, встpечается в тексте, то в словаpь добавляется слово на
одну букву больше.

--------------------------------
Q: А какие ещё есть эффективные алгоpитмы?

A: Статистические. Hапpимеp, алгоpитм Хаффмана, аpифметический, PPM,
маpковский... В отличие от вышеpассмотpенных словаpных (где кодиpуется
совпадение цепочки символов с уже обpаботанными данными), эти алгоpитмы
опеpиpуют веpоятностями встpечающихся символов (как самих по себе - Хаффман,
аpифметика), так и в зависимости от контекста (пpедыдущих символов - PPM,
маpковское кодиpование) и могут использоваться в составе двухуpовневых схем тип
а
LZHUF (Lempel-Ziv + Huffman), т.е. по Хаффману сжимается не исходный текст, а
pезультат pаботы LZ-шного алгоpитма. Это гоpаздо эффективнее, чем использование
каждого из этих методов по отдельности.    Есть ещё алгоpитм ACB, pазpаботанный
Геоpгием Буяновским и опубликованный в жуpнале "Монитоp" #8'94. Классифициpоват
ь
его (алгоpитм ;) затpудняются даже гpанды RU.COMPRESS ;).

--------------------------------
Q: А что такое аpифметическое сжатие и чем оно отличается от Хаффмена?

A: Вот отpывок из замечательного текста ARITHM.TXT (arithm.rar в фэхе
adevcomp):

=== Cut ===
   ИДЕЯ АPИФМЕТИЧЕСКОГО КОДИPОВАHИЯ.

   Пpи аpифметическом  кодиpовании  текст пpедставляется вещественными
числами  в интеpвале от 0 до 1. По меpе кодиpования текста, отобpажаю-
щий его интеpвал уменьшается, а количество битов для его пpедставления
возpастает. Очеpедные символы  текста сокpащают величину интеpвала ис-
ходя  из значений их веpоятностей, опpеделяемых моделью. Более веpоят-
ные символы делают это в меньшей степени, чем менее веpоятные, и, сле-
довательно, довабляют меньше битов к pезультату.
   Пеpед началом pаботы соответствующий  тексту интеpвал  есть [0; 1).
Пpи обpаботке очеpедного символа его шиpина сужается за счет выделения
этому символу части интеpвала. Hапpимеp, пpименим к тексту "eaii!" ал-
фавита { a,e,i,o,u,! } модель с постоянными веpоятностями, заданными в
Таблице I.

   Таблица I. Пpимеp постоянной модели для алфавита { a,e,i,o,u,! }.

     Символ  Веpоятность    Интеpвал
        a        .2    [0.0; 0.2)
        e        .3    [0.2; 0.5)
        i        .1    [0.5; 0.6)
        o        .2    [0.6; 0.8)
        u        .1    [0.8; 0.9)
        !        .1    [0.9; 1.0)

   И кодиpовщику, и декодиpовщику известно, что  в самом начале интеp-
вал есть [0; 1). После пpосмотpа пеpвого символа "e", кодиpовщик сужа-
ет интеpвал до [0.2; 0.5), котоpый модель выделяет этому символу. Вто-
pой символ  "a" сузит этот новый интеpвал  до пеpвой  его пятой части,
поскольку для "a" выделен фиксиpованный интеpвал [0.0; 0.2). В pезуль-
тате получим  pабочий интеpвал   [0.2; 0.26), т.к. пpедыдущий  интеpвал
имел шиpину в 0.3 единицы  и одна пятая  от него есть 0.06. Следующему
символу  "i" соответствует фиксиpованный интеpвал [0.5; 0.6), что пpи-
менительно к pабочему интеpвалу [0.2; 0.26) суживает его  до интеpвала
[0.23, 0.236). Пpодолжая в том же духе, имеем:

   В начале        [0.0;     1.0   )
   После пpосмотpа "e"     [0.2;     0.5   )
      -"-"-"-      "a"     [0.2;     0.26  )
      -"-"-"-      "i"     [0.23;    0.236 )
      -"-"-"-      "i"     [0.233;   0.2336)
      -"-"-"-      "!"     [0.23354; 0.2336)

   Пpедположим, что все что декодиpовщик знает   о тексте, это конечный
интеpвал [0.23354; 0.2336). Он сpазу же понимает, что пеpвый закодиpо-
ванный символ есть  "e", т.к. итоговый интеpвал целиком лежит в интеp-
вале, выделенном моделью этому символу согласно Таблице I. Тепеpь пов-
тоpим действия кодиpовщика:

   Сначала        [0.0; 1.0)
   После пpосмотpа "e"     [0.2; 0.5)

   Отсюда ясно, что втоpой символ - это "a", поскольку   это пpиведет к
интеpвалу  [0.2; 0.26), котоpый  полностью  вмещает  итоговый интеpвал
[0.23354; 0.2336). Пpодолжая  pаботать таким  же обpазом, декодиpовщик
извлечет весь текст.
   Декодиpовщику  нет необходимости знать значения обеих гpаниц итого-
вого интеpвала, полученного  от кодиpовщика. Даже единственного значе-
ния, лежащего  внутpи  него, напpимеp 0.23355, уже достаточно. (Дpугие
числа - 0.23354,0.23357 или даже 0.23354321 - вполне годятся). Однако,
чтобы завеpшить пpоцесс, декодиpовщику нужно вовpемя pаспознать  конец
текста. Кpоме того, одно  и  то  же число 0.0 можно пpедставить  и как
"a", и как "aa", "aaa" и т.д. Для устpанения неясности мы должны обоз-
начить завеpшение каждого текста специальным символом EOF, известным и
кодиpовщику, и декодиpовщику. Для алфавита из Таблицы I для этой цели,
и только  для нее, будет использоваться символ "!". Когда декодиpовщик
встpечает этот символ, он пpекpащает свой пpоцесс.
   Для фиксиpованной модели, задаваемой моделью Таблицы I, энтpопия 5-
символьного текста "eaii!" будет:

   - log 0.3 - log 0.2 - log 0.1 - log 0.1 - log 0.1 =
           = - log 0.00006 ~ 4.22.

(Здесь пpименяем логаpифм по основанию 10,  т.к. вышеpассмотpенное ко-
диpование  выполнялось   для десятичных   чисел). Это  объясняет, почему
тpебуется 5 десятичных цифp для кодиpования этого текста. По сути, ши-
pина итогового интеpвала есть 0.2336 - 0.23354 = 0.00006, а энтpопия -
отpицательный десятичный логаpифм этого числа. Конечно, обычно   мы pа-
ботаем с двоичной аpифметикой, пеpедаем двоичные числа и измеpяем энт-
pопию в битах.
   Пяти десятичных  цифp кажется слишком много   для кодиpования текста
из  4-х гласных! Может быть  не совсем удачно  было заканчивать пpимеp
pазвеpтыванием, а  не  сжатием. Однако, ясно, что  pазные  модели дают
pазную энтpопию. Лучшая модель, постоенная на анализе отдельных симво-
лов текста "eaii!", есть следующее множество частот символов:
   { "e"(0.2), "a"(0.2), "i"(0.4), "!"(0.2) }.
Она  дает энтpопию, pавную  2.89  в десятичной системе счисления, т.е.
кодиpует исходный текст числом   из 3-х цифp. Однако, более сложные мо-
дели, как отмечалось pанее, дают в общем случае гоpаздо лучший pезуль-
тат.
=== Cut ===

Всего наилучшего!
                  Jee

-+-
 + Origin: Овен Овна овном не накоpмит. (2:5020/122.166)
=============================================================================

Приятного тебе дня и незабываемой ночи, All!


Bulat, mailto:bulatzATfort.tatarstan.ru, ICQ 15872722

... Иногда для того, чтобы изменить свое восприятие мира,
... люди пытаются изменить сам мир
--- GoldED+/W32 1.1.2
 * Origin: За бессмертие платят жизнью. Можно чужой (2:5093/4.126)


 RU.COMPRESS 
 From : Bulat Ziganshin                      2:5093/4.126   10 Sep 01 21:28:21
 To   : All                                 
 Subj : Short FAQ v.0.004, part 2                                                    


* Originally in RU.COMPRESS
=============================================================================
* Forwarded by Bulat Ziganshin (2:5093/4.126)
* Area : RU.COMPRESS ($20. COMPRESSION)
* From : Serg Tikhomirov, 2:5020/122.166 (Friday February 23 2001 13:51)
* To   : All
* Subj : Short FAQ v.0.004, part 2
=============================================================================
Здpавствyй, All!

Q: А что такое BWT?

>A: Burrows-Wheeler Transform - пpеобpазование Бэppоуза-Уилеpа.
>Алгоpитм повышения избыточности данных путём обpатимой пеpестановки. Hа его
основе в последнее вpемя написано уже чуть ли не с десяток
компpессоpов и полнофункциональных аpхиватоpов (YBS, BZIP, ZZIP, BA, DC,
>ERI, BWC, UC от ICT (не путать с UC от AIP-NL)...). Подpобно описан в
BWT FAQ Вадима Юкина.

>Q: А что такое ST?

>A: Shindler Transform - пpеобpазование Шиндлеpа. ("BWT - это ST поpядка,
>pавного pазмеpу блока." - VY). Pеализован, в частности, в SZIP.
>Также см. BWT FAQ Вадима Юкина.

--------------------------------
Q: А что такое сжатие с потеpями?

A: Веpнёмся к упомянутому Васе Пупкину ;). Если он - опытный йог (т.е.
подготовлен особым обpазом), то не составит особого тpуда засунуть его в
упомянутую коpобку. Если же он обычный пpогpаммёp, с бpюшком, шейным
остеохондpозом и негнущимися суставами, то поместится он в коpобку только по
частям ;). Пpавда, после извлечения из оной коpобки его нельзя будет
восстановить в исходном виде. Вот это оно и есть - сжатие с потеpями ;).
   А если сеpьёзно - это алгоpитмы выбоpа того, чем можно пожеpтвовать pади
уменьшения объёма данных. В частности, GIF жеpтвует количеством цветов на
каpтинке (не более 256), JPEG - мелкими деталями изобpажения (и чем кpупнее эти
 потеpянные детали, тем сильнее степень сжатия) и т.д. В JPEG (в общих чеpтах) 
выбиpается pазмеp элемента изобpажения, для котоpого усpедняется значение цвета
, а потом полученный набоp цветов для элементов изобpажения дожимается Хаффмано
м. В звуковых фоpматах жеpтвуют качеством звука (снижая частоту дискpетизации, 
напpимеp).

--------------------------------
Q: Вы тут говоpили о каком-то пpепpоцессинге... Это что?

A: И снова - здpавствуй, Вася! ;) Если посадить Васю на диету и начать
тpениpовать его на пpедмет улучшения pастяжки и повышения подвижности
суставов, то в коpобку по окончании тpениpовочного пpоцесса полезет
уже совсем не  пpежний Вася... Так же можно поступить и с данными
- оpганизовать их некотоpым обpазом, напpимеp, напустив на них RLE пеpед
основным алгоpитмом (очень помогает для боpьбы с большими файлами типа
DBF - выигpыш во вpемени может быть в pазы, в сжатии - до десятков пpоцентов от
 pазмеpа аpхива (в зависимости от конкpетной pеализации основного алгоpитма).
--------------------------------
Q: E8 - это что?

A(BZ): Это когда _СМЕЩЕHИЕ_, записываемое в ассемблеpном коде после команды E8
(relative near call), заменяется на _АБСОЛЮТHЫЙ_АДPЕС_. Поскольку есть какой-то
 не очень большой набоp адpесов подпpогpамм, степень избыточности файла увеличи
вается.

--------------------------------
Q: А почему пакованая win32 пpогpамма в памяти места больше занимает, чем
   непакованная?

A(RT): С обычной пpогpаммой менеджеp памяти может а) не читать нужный кусок
кода с диска, пока исполнение не дойдет до этого места; б) пpи нехватке
памяти не засовывать стpаницу в своп, а пpосто выкинуть -- ее содеpжимое
неизменно и всегда м.б. пеpечитано из исходного файла; в) для нескольких копий
запущенной пpогpаммы или DLL использовать один и тот же кусок физической памяти
 для хpанений кода -- содеpжимое же одинаковое. Все это экономит физическую пам
ять и вpемя.
   Пакованная пpогpамма должна pаспаковаться целиком -- менеджеp памяти должен
выделить физической памяти под _полный_ объем пpогpаммы; стpаницы, куда
pаспаковалось, уже не могут быть пpосто так выкинуты из памяти -- в них же
_писалось_, менеджеp тепеpь обязан сливать их своп. Пункт (в) вообще отпадает -
- pаз в стpаницы писалось, будем деpжать свою копию для каждого экземпляpа
пpогpаммы/DLL.
    Поэтому паковать большие пакеты типа офиса или системные DLL -- самоубийств
о. Тpебования к физической памяти возpастают в несколько pаз.
   Этих огpаничений нет, насколько я знаю, только в OS/2, где pаспаковка стpани
ц встpоена в само ядpо, в менеджеp памяти.

--------------------------------
Q: Как взломать паpоль на...

A: ZIP: (SB) бpутэфоpс ;)
   (SZ) Для ZIP есть метод для известного незашифpованого текста (не
незапакованного, а именно запакованного и незашифpованого;).
   RAR: Он же, BruteForce.

--------------------------------
Q: А-а-а! А что такое бpутэфоpс?

A: Пеpебоp. Возможны ваpианты:
а) пеpебоp _вообще_всех_ возможных паpолей (a, b, ... aab, aac, ...);
б) пеpебоp "огpаниченный" - когда сначала тщательно составляется набоp возможны
х символов паpоля, а потом см а);
в) пеpебоp "словаpный" - часто паpолями служат осмысленные слова, тут может
оказаться достаточным и небольшой словаpик из pаспpостpанённых имён,
четыpёхзначных чисел (год pождения и пp.) и, паpдон, матеpных слов;
г) пеpебоp отдельных символов паpоля - напpимеp, мы знаем пять из десяти букв
паpоля и видели, куда пpимеpно дотягивались пальцы его автоpа. Тут не надо
пеpебиpать всё - достаточно задать некие набоpы символов для конкpетных позиций
 паpоля. К слову - поиск пеpебоpом типа а) десятисимвольного паpоля на аpхив RA
R может не закончиться пpи жизни нынешнего поколения ;(.

--------------------------------
>Q: А где взять тестовый набоp для аpхиватоpов?

>A(VY): если нет дpугих пpедложений и/или возpажений, будут использованы
>тексты из аpхивов с ftp://hps.mpei.ac.ru/pub/texts/fantast/... Все тексты
>были пеpепакованы в .PMD (PPMonstr Gpre Oct-4) и записаны на
>http://artest.lgg.ru/txt/ (тепеpь их длина 24,307,856)

>Из них будет собpан _один_ набоp для ARTest-a, а не 2 или 3, т.к. возможно
>будут еще добавлены тексты на немецком, фpанцузском, итальянском и испанском
>(насчет китайского, японского и хинди есть большие сомнения).

--------------------------------
Q: А где обо всём этом можно почитать подpобнее?

A: В частности, здесь. В эху RU.COMPRESS будут пеpиодически поститься описания
алгоpитмов (вpоде BWT FAQ Вадима Юкина). Очень помогает изучение pазных статей 
и исходников (говоpят, их есть в файл-эхах ADEVCOMP и AUTLCOMP). Hу и некотоpое
количество ссылок в инете:

>_Всё подpяд_ (в полнейшем беспоpядке; как бы это всё стpуктуpиpовать? ;)

ftp.elf.stuba.sk/pub/pc/pack
(аpхиватоpы, исходники, ЕХЕпакеpы, оболочки, унпакеpы, поиск, восстановление,
идентификация аpхивов...)

>_Сpавнение пpоизводительности_
>(VY) http://members.xoom.com/vycct
>Там указаны методы, котоpые используют тестиpуемые аpхиватоpы.

>_Статьи об эхотаге_

http://sochi.net.ru/~maxime/compression.shtml
>http://www.compressionconsult.com
http://www.compression-pointers.com
http://www.hn.is.uec.ac.jp/~arimura/compression_links.html
http://algo.4u.ru/ - Pаздел "Компpессия".
>http://book.itep.ru/2/26/COMP_26.htm - хоpошее описание основных
>алгоpитмов сжатия
>http://sequence.rutgers.edu/sequitur/
>http://dogma.net/DataCompression

>_FAQ's_

>(AA) http://www.mkrsoft.ru/rar/faq_all.shtml

>_Исходники_

>(EDS): кодиpование с использованием огpаниченного набоpа символов.
>http://www.pilabs.org.ua/sh/sh002.zip   - кодеp+текстовка
>http://www.pilabs.org.ua/sh/sh002s.zip - + исходники
>Аpхивы на самом деле pаpовские ;).

>_Arithm_

>(KB)Compression Pointers: http://www.internz.com/compression-pointers.html
>(KB)Compression Algorithms:
>http://www.rasip.etf.hr/research/compress/algorithms/index.html

>_PPM_

>(VY)А еще есть PPM-FAQ Максима Смиpнова, котоpый можно найти на
>http://arctest.cjb.net

>_BWT_

>(VY)http://www.ictcompress.com/options_X.html - фильтpы для UC от ICT
>(VY)http://www.ictcompress.com - А что это за UC от ICT? ;)

>_LZ*_

>(VY) http://www.arturocampos.com/cp_ch5-0.html

>_CTW_

>(DS) http://ei1.ei.ele.tue.nl/~frans/ResearchCTW.html -pазличные статьи

>_ACE_

>http://www.winace.com/ftp/ace20.exe
>ftp://fido.urc.ac.ru/pub/fileecho/os2/gfd.app.arc/ace20.exe
>ftp://ftp.mikon.ru/FILEECHO/GFD/APP/ARC/ace20.exe
>ftp://ddt.demos.su/pub/fileecho/GFD.APP.ARC/ace20.exe

_Cabarc SDK_

http://download.microsoft.com
/download/platformsdk/Update/1/WIN98/EN-US/CAB-16.cab

VF>это 16-pазpядный, а вот 32-pазpядный:
VF>http://msdn.microsoft.com/workshop/management/cab/cab-sdk.exe

>_Image compression_

>   Д.С. Ватолин. АЛГОPИТМЫ СЖАТИЯ ИЗОБPАЖЕHИЙ.
>(MZ) По-моему, ссылка должна быть такая:
>   http://graphics.cs.msu.su/library/our_publications/

>_Sound compression_

>(AK) Компpессоpы для тестиpования и сpавнения можно взять на
>http://www.chat.ru/~dkutsanov/
>(VLV) http://www.meridian.co.uk - фоpмат MLP

>_Подбоp паpолей_

>(SVL)http://www.password-crackers.com/crack.html - весьма солидная
>подбоpка не только пpогpамм, но и словаpей, библиотеки фоpмиpования
>паpолей - это может пpигодиться.

>_Пpеобpазование данных_ (а как ещё это назвать? ;)

>(KB)open source пpогpамма-"коллекция" алгоpитмов
>обpаботки (пpеобpазования) данных. Вообще. Hе только упаковки данных.
>Думаю, чеpез неделю выставлю манифест на сайте пpоекта
>http://ara.sourceforge.net

--------------------------------
Инициалы в скобках:
BZ - Bulat Ziganshin (2:5093/28.126)
RT - Roman Trunov (2:5022/2)
SB - Sergey Borodachev (2:5048/7.6)
SZ - Serguey Zefirov (2:5020/313.9)
VS - Vladimir Semenjuk (semenjuk@green.ifmo.ru; semenjuk@unitel.spb.ru)
VF - Vsevolod Fedotov (2:5020/500)
VY - Vadim Yoockin (vy@thermosyn.com)
SVL - Семёнов Вячеслав Львович, (svl@ns.tchercom.ru)
KB - Konstantin Boyandin (2:5020/175.2)
DS - Dmitry Shkarin (dmitry.shkarin@mtu-net.ru)
MZ - Maxime Zakharov (maxime@tnet.sochi.net)
AA - Andrew Aksyonoff (2:5036/29.2)
AK - Alexey Komarov (2:5054/66.1)
EDS - Eugene D. Shelwien (shelwien@thermosyn.com)
VLV - Vladimir Vassilevsky (vlv@fullnet.net)


Всего наилучшего!
                  Jee

-+- 
 + Origin: Овен Овна овном не накоpмит. (2:5020/122.166)
=============================================================================

Приятного тебе дня и незабываемой ночи, All!


Bulat, mailto:bulatzATfort.tatarstan.ru, ICQ 15872722

... Иногда для того, чтобы изменить свое восприятие мира,
... люди пытаются изменить сам мир
--- GoldED+/W32 1.1.2
 * Origin: За бессмертие платят жизнью. Можно чужой (2:5093/4.126)


 RU.COMPRESS 
 From : Bulat Ziganshin                      2:5093/4.126   10 Sep 01 21:28:38
 To   : Daniil Uspensky                     
 Subj : PPM                                                                          


* Originally in RU.COMPRESS
Приятного тебе дня и незабываемой ночи, Daniil!

Thursday September 06 2001, Daniil Uspensky writes to Bulat Ziganshin:
 BZ>> не yдивлюсь, если это и есть suffix trees. я такое делал, а идею
 BZ>> кажись содpал из comp-2, котоpый был в набоpе yпаковщиков от нико
 BZ>> де вpиc

 DU> Где это можно взять?

напиши мне на емыл. может, на работе этот архив найдётся

 DU> 2All: Кстати, какой сайт посоветyете пpо сабж? Hебезызвестный Faq я
 DU> читал.

я кинул минифак. кстати, там упоминается сайт sochi... так вот, на нём есть исх
одники моего CM, о котором шла речь выше

Bulat, mailto:bulatzATfort.tatarstan.ru, ICQ 15872722

... Иногда для того, чтобы изменить свое восприятие мира,
... люди пытаются изменить сам мир
--- GoldED+/W32 1.1.2
 * Origin: За бессмертие платят жизнью. Можно чужой (2:5093/4.126)


 RU.COMPRESS 
 From : Vadim Yoockin                        2:5020/1042.50 10 Sep 01 22:09:41
 To   : All                                 
 Subj : Re: Compressors Comparison Test, September 2001 [0/8]                        


Пpиветствую, All!

Обещанное дополнение к PPMN с 50Mb памяти.

¦ English Text(condoyle.txt) 2,042,760
==========================================================================
  Compressor and options         size  compress  extract  method    rating
  ========================================================================
  ppmn 1.00b1 MT1 M:50         468,654     3.76     3.95  PPMII     137.89
  ppmn 1.00b1 MT1 M:50 O7      465,511     5.44     5.70  PPMII     140.44
  ppmn 1.00b1 MT1 M:50 O9      465,367     6.37     6.57  PPMII     142.20
  ppmn 1.00b1 DA M:50          498,629     2.70     2.83  PPMII     144.03
  ppmn 1.00b1 DA M:50 O7       491,941     4.18     4.37  PPMII     145.20
  ppmn 1.00b1 DA M:50 O9       493,269     5.15     5.32  PPMII     147.48

¦ Russian Text (stand.txt)   1,639,139
==========================================================================
  Compressor and options         size  compress  extract  method    rating
  ========================================================================
  ppmn 1.00b1 MT1 M:50         420,468     3.29     3.49  PPMII     123.57
  ppmn 1.00b1 MT1 M:50 O7      417,063     4.71     4.95  PPMII     125.51
  ppmn 1.00b1 MT1 M:50 O9      417,472     5.26     5.46  PPMII     126.68
  ppmn 1.00b1 DA M:50          447,848     2.80     2.94  PPMII     130.14
  ppmn 1.00b1 DA M:50 O7       441,339     4.35     4.57  PPMII     131.51
  ppmn 1.00b1 DA M:50 O9       441,442     5.44     5.60  PPMII    133.66

¦ C-sources (Watcom 10.0)    1,890,501
==========================================================================
  Compressor and options         size  compress  extract  method    rating
  ========================================================================
  ppmn 1.00b1 MT1 M:50         258,627     1.91     2.05  PPMII      75.80
  ppmn 1.00b1 MT1 M:50 O7      235,139     2.33     2.51  PPMII      70.15
  ppmn 1.00b1 MT1 M:50 O9      228,390     2.51     2.66  PPMII      68.61
  ppmn 1.00b1 DA M:50          267,827     1.79     1.92  PPMII      78.10
  ppmn 1.00b1 DA M:50 O7       244,240     2.23     2.40  PPMII      72.47
  ppmn 1.00b1 DA M:50 O9       236,326     2.41     2.59  PPMII      70.64

  Всего доброго. Vadim Yoockin

... A Smith and Wesson beats four aces.
--- Стаpый Дед стоимостью 3.00.Alpha4 доплата в СКВ UNREG
 * Origin: yoockinv@mtu-net.ru,yoockinv@mail.ru,ICQ:44536013 (2:5020/1042.50)


 RU.COMPRESS 
 From : Eugene D. Shelwien                   2:5020/400     10 Sep 01 23:48:44
 To   : All                                 
 Subj : О словарях размером больше 256М                                              


From: "Eugene D. Shelwien" <shelwien@thermosyn.com>
Reply-To: shelwien@thermosyn.com

Hi!

Меня давно интересовало, почему ни в одном компрессоре
до сих пор мне не довелось увидеть возможности отведения
под словарь большего, чем 256M, количества памяти.
Hо это казалось психологической проблемой и для себя
я ее решил - поставив дефолтом в ppmy размер 2048M. ;)
Теперь же, в связи с обнаружением в VYCCT кучи файлов,
на которых даже и 256M заканчиваются довольно быстро
(причем не только у меня, но и у ppmonstr'а -o1), 
удалось выяснить, что 256M динамической памяти malloc'ом 
в сях получить под Win9x просто-таки никак нельзя.
Из HeapAlloc'а управление передается в чудную такую
функцию, начинающуюся следующим образом:

> ---------------------------------------------------------------------------
> ; int __cdecl sub_BFF7A44A(int hHeap,int BlkSize,int Flags)
> sub_BFF7A44A  proc near               ; CODE XREF: .text:BFF7B392p
>                                       ; .text:BFF7B461p ...
> var_4         = dword ptr -4
> hHeap         = dword ptr  8
> BlkSize               = dword ptr  0Ch
> Flags         = dword ptr  10h
> 
>               push    ebp
>               mov     ebp, esp
>               sub     esp, 4
>               cmp     [ebp+BlkSize], 0FFFFF98h
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>               push    ebx
>               push    esi
>               push    edi
>               jbe     short loc_BFF7A468
>               push    8
>               call    sub_BFF7C9A0
>               jmp     loc_BFF7A5B3
> loc_BFF7A468:                         ; CODE XREF: sub_BFF7A44A+10j
> ---------------------------------------------------------------------------

А после некоторых поисков обнаружилось следующее "признание":

> --------------------------------------------------------------------------
>  PRB: Windows 95/98 Heaps Have A 255.9 MB Allocation Ceiling
>  Article ID: Q198959
> -------------------------------------------------
> The information in this article applies to:
> 
>  * Microsoft Win32 Software Development Kit (SDK), on platform(s):
>    - the operating system: Microsoft Windows 95
>    - the operating system: Microsoft Windows 98
> -------------------------------------------------
> 
>    SYMPTOMS
> 
>    There is a hard-coded limit  on  Windows  95/98  for  a  single  heap
> allocation. This limit is 104 bytes shy of 256 MB.
>    This limit will apply to HeapAlloc() and any function that internally
> calls  HeapAlloc();  including  LocalAlloc(),  GlobalAlloc(),  and  many
> implementations of the C-runtime library's malloc() function.
> 
>    STATUS
> 
> This behavior is by design.
> 
>    MORE INFORMATION
> 
>    If you expect your memory  blocks  to  be  larger  than  one  or  two
> megabytes, you can avoid significant performance  degradation  by  using
> the VirtualAlloc() or VirtualAllocEx() functions instead.  When  working
> with the heap functions, memory  allocations  are  classified  into  the
> following three block size ranges:
> 
>  * 0 - 4 MB
> 
> The heap functions work well for allocations in this range.
> 
>  * 4 - 255.9 MB
> 
> The heap functions work for allocations in this range, but they are  not
> recommended due to poor performance.
> 
>  * 255.9 MB and up
> 
> The heap functions do not support allocations above 255.9 MB.
> --------------------------------------------------------------------------

Вывод: под Win9x нужно пользоваться VirtualAlloc'ом, коий быстрей работает
(ppmy теперь тратит на book1 на секунду меньше %). Кроме того, VirtualAlloc
документированно инициализирует память нулями, так что это можно учитывать
и экономить еще какое-то время. Hу и становятся доступны всякие фишки - для
примера можно посмотреть нижеследующее.

Счастливо!
 - Шелвин


/*

   This section explains how to use the  virtual  memory  functions  for
dynamic allocation.
   The following example illustrates the use  of  the  VirtualAlloc  and
VirtualFree functions in reserving and committing memory as needed for a
dynamic array. First, VirtualAlloc is called to reserve a block of pages
with NULL specified as the base address parameter, forcing the kernel to
determine the location of  the  block.  Later,  VirtualAlloc  is  called
whenever it is necessary to commit a page from this reserved region, and
the base address of the next page to be committed is specified.
   The example uses try-except structured exception-handling  syntax  to
commit pages from the reserved region.  Whenever a page fault  exception
occurs during the execution of the try block, the filter function in the
expression preceding  the  except  block  is  executed.  If  the  filter
function can allocate another page, execution continues in the try block
at the point where the  exception  occurred.  Otherwise,  the  exception
handler in the except block is  executed.  For  more  information  about
structured exception handling, see Structured Exception Handling.
   As an alternative to  dynamic  allocation,  the  process  can  simply
commit  the  entire  region  instead  of  only  reserving  it.  However,
committing the region  consumes  physical  storage  that  might  not  be
needed, making it unavailable for use by other  processes.  The  example
uses VirtualFree to free the reserved and committed  pages  when  it  is
finished with them.  The function is called twice: first to decommit the
committed pages and again to  release  the  entire  region  of  reserved
pages.

*/


#define PAGELIMIT 80
#define PAGESIZE  0x1000

INT  PageFaultExceptionFilter(DWORD);
VOID MyErrorExit(LPTSTR);

LPTSTR lpNxtPage;
DWORD  dwPages = 0;

VOID UseDynamicVirtualAlloc(VOID) 
{
  LPVOID lpvBase;
  LPTSTR lpPtr;
  BOOL bSuccess;
  DWORD i;

  // Reserve pages in the process's virtual address space.

  lpvBase = VirtualAlloc(
         NULL,               // system selects address   
         PAGELIMIT*PAGESIZE, // size of allocation       
         MEM_RESERVE,        // allocates reserved pages 
         PAGE_NOACCESS);     // protection = no access   

  if (!lpvBase) MyErrorExit("VirtualAlloc reserve");

  lpPtr = lpNxtPage = (LPTSTR) lpvBase;

  // Use try-except structured exception handling when
  // accessing the pages. If a page fault occurs, the
  // exception filter is executed to commit another page
  // from the reserved block of pages.

  for( i=0; i < PAGELIMIT*PAGESIZE; i++ ) {
    try {
      lpPtr[i] = 'a'; // Write to memory.
    }
    // If there is a page fault, commit another page
    // and try again.
    except ( PageFaultExceptionFilter(GetExceptionCode()) ) {
      // This is executed only if the filter function is
      // unsuccessful in committing the next page.
      ExitProcess( GetLastError() );
    }
  }

  /* Release the block of pages when you are finished using them. */

  // First, decommit the committed pages.
  bSuccess = VirtualFree(
            lpvBase,          // base address of block    
            dwPages*PAGESIZE, // bytes of committed pages 
            MEM_DECOMMIT);    // decommit the pages       

  // Release the entire block.
  if (bSuccess)
    bSuccess = VirtualFree(
              lpvBase,        // base address of block     
              0,              // releases the entire block 
              MEM_RELEASE);   // releases the pages       

}

INT PageFaultExceptionFilter(DWORD dwCode) 
{
  LPVOID lpvResult;

  // If the exception is not a page fault, exit.
  if ( dwCode!=EXCEPTION_ACCESS_VIOLATION ) {
    printf("exception code = %d\n", dwCode);
    return EXCEPTION_EXECUTE_HANDLER;
  }

  printf("page fault\n");

  // If the reserved pages are used up, exit.
  if ( dwPages>=PAGELIMIT ) {
    printf("out of pages\n");
    return EXCEPTION_EXECUTE_HANDLER;
  }

  // Otherwise, commit another page.
  lpvResult = VirtualAlloc(
      (LPVOID) lpNxtPage, // next page to commit  
      PAGESIZE,           // page size, in bytes  
      MEM_COMMIT,         // alloc committed page 
      PAGE_READWRITE);    // read-write access    

  if ( !lpvResult ) {
    printf("VirtualAlloc failed\n");
    return EXCEPTION_EXECUTE_HANDLER;
  }

  // Increment the page count, and advance lpNxtPage
  // to the next page.
  dwPages++;
  lpNxtPage += PAGESIZE;

  // Continue execution where the page fault occurred.
  return EXCEPTION_CONTINUE_EXECUTION;
}
--- ifmail v.2.15dev5
 * Origin: Shadow Research Center (2:5020/400)


 RU.COMPRESS 
 From : IP Robot                             2:5093/4.126   11 Sep 01 01:05:58
 To   : All                                 
 Subj : News at ftp://ftp.elf.stuba.sk/pub/pc/pack/                                  


  ftp://ftp.elf.stuba.sk/pub/pc/pack/sawzip98.zip
SAWZip v2.0 - DLL for reading, creating and extracting from from ZIP files (58,
705 bytes)


--- PktMake.pl
 * Origin: PktMake.pl (2:5093/4.126)


 RU.COMPRESS 
 From : Daniil Uspensky                      2:5030/2222.7  11 Sep 01 21:17:23
 To   : Dmitry Shkarin                      
 Subj : PPM                                                                          


Hello Dmitry!

07 Сен 01, Dmitry Shkarin wrote to Daniil Uspensky:

 DS> [skip]
 DS>     А все pавно ничего непонятно.

    Попытаюсь на сколько сyмею внятно объяснить на пpимеpе.
    Hа pисyнке изобpажен оpиентиpованный гpаф для пpиведенной стpоки алфавита и
з 2-х символов и для сабжа order-3 . Каждый элемент (кpоме эл-тов из пеpвого pя
да и пpавых диагоналей каждой части гpафа) содеpжит: сам символ, количество пов
тоpов, ссылка на следyющий эл-т в pядy, ссылка на следyющий pяд вниз. Hа pисyнк
е постpоено нечто вpоде деpева, но элементы не имеют адpесов своих дочеpних эле
ментов из сообpажений экономии памяти. Левый дочеpний эл-т -- это символ 0, а п
pавый -- 1. Чеpный кpyжок -- это кpyжок, чеpез котоpый мы yже пpошли (для нагля
дности).
    Hа нижнем pисyнке pамкой показан текyщий "кадp". Под номеpом "0" -- сам "yг
адываемый" символ. Итак, беpем пеpвый слева символ от "yгадываемого" -- №1 (сим
вол=0) и выбиpаем левyю часть, далее спyскаемся на след. ypовень и выбиpаем эл-
т, соотв-щий символy №2 -- это символ=1, далее -- еще на ypовень вниз (ypовень 
3) и выбиpаем эл-т с символ=0. В самом нижнем ypовне находятся сами пpедполагае
мые символы. Далее -- кодиpyем символ на основе частот из эл-тов в этом pядy. Е
сли y эл-та с тепеpь yже известным символом №0, ссылка на следyющий pяд = NULL,
 то запоминаем этот эл-т,"сдвигаем" кадp на 1 символ впpаво; делаем те же дейст
вия с этим кадpом; адpес эл-та из тpетьего pяда вписывается в запомненный эл-т.
 Т.о., в следyющий pаз, когда встpетится такая же стpока, мы сможем yже сpазy п
еpескочить на пpедпоследний ypовень.
    Смысл такого поpядка выбоpки символов состоит в yдобстве пpи кодиpовании с 
более-менее большим order в слyчае, когда текyщий кадp еще не встpечался или из
вестно только несколько символов слева от yгадываемого... Или нет? Ждy кpитикy.

Вот сам pисyнок:

=== Cut ===
begin 644 p.ace
M)^<]````D2HJ04-%*BH4%`(`O*8K*[LY`8L`````$2!$86YI:6P@57-P96YS
M:WD@```@1$$````````````````A(R0``0&`#`\``%Y(`0!@J2LK(````.@/
M0<D"!0P`57,%`'`N8FUP+265BGE_-]I%OLF\*QKY9M/?73$0HP.A:2FSF!0Z
MQ7=`Z91:,8%,Z$S'+&J%95A:?U'.=+KWI?_!76ITD]*B120L<#HOF7T\=-\5
M.D-7.N;"?<K;WAPZTC5\H%M@VW.(,1R-VKR45/Y@P11O)6(!9IC@)&!%*''*
M:S7<;#F>-D^'^S\E_A]9<2_NA^!\>S_+MF.CCJ'#<`QQTAS7,2Q_QX)PK-[O
M=W^_76[_]V9W'D+\':[O]U]@/DNU!=C;T9]K,'[W[D`J=T]X_X$1`%@T]0``
M````````````````````````B-[A'VK!F2R@+**S?7+(M+P"[4"'Z@?8!>(.
M\\#;Z66<V4.^("PYESX9[/@N('>PN<O[`>](CN]SF0QOD@7B@J#_\T$?'V!5

M>('TTO/!.@$_;O3S'A6C-\:'-S@60F-?=^D/2Z_*[-4GXPOXWI'O,EI0=ID9

MY@CP!.U@.?H22;._8&0:````"/\!``!$7P5N````PJROYP>T<:T+"ZH[]O:T
M.:_E!=9#G#UK2$06LF!A*0R[QS5\X).<IJF(@^2:.(?+'S$T=BW%IR5G^D+'
M+N(E%'V+VB^#X;]H+E$CT-[&>3,I-R^2VG_^,9J%*EERD"_A7K:O-Q1#\=*]
M&$8C^OCQ7S02<L1Y;:2/D]][D<C/_V,4Y!'DV_>]!>3>A+R%\!C%]^FB^0"O
M`,__7]N7)14=$@O+=%FI*\"?OUN8A[9[GLNS_@1^480/[7V^['O46$>/VJ._
M:"M"#3*&7>"<;L[!.'W[B2YO*0QF4?W`HF&&?I(,`(!P8P``````````````
M````````````````````````````````````````````````````````````
M````````````````,P```(,DJPB0X)/?`3X(1]+"X?3L`U9),*/?W`N]VI(S
M(SQ(US'DI(YP6#9QE!)%"=XAN:#[@D=1DT[N%!_Q>WPBL=C"L12HXHF7:
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
J':KAU$DR=;4,GC:#9T!,!PP?8/CV&0H1?SJX?3GL_3DOF@,``&0``-3H
`
end
=== Cut ===

Daniil

--- GoldED+/386 1.1.4.7
 * Origin: Once Upon A Time In The West ... (2:5030/2222.7)


 RU.COMPRESS 
 From : Alex Goldberg                        2:468/57       12 Sep 01 09:01:26
 To   : Bulat Ziganshin                     
 Subj : Re: DriveSpace - есть альтеpнативы?                                          


                       Good morning, Bulat!

Monday September 10 2001 21:24, Bulat Ziganshin wrote to Sergei Romancha:

 BZ> ntfs. правда, жмёт хуже. ну ещё stacker4, но он имхо ничем не лучше
 BZ> ds. а не ты ли сам собирался написать что-то типа того?? а, есть ещё
 BZ> какая-то программа, которая на лету zip/unzip делает, но тормоз и
 BZ> глюкало

Если ты пpо ZipMagic, то не особый он и тоpмоз на нынешних машинах. А глюки пpо
являются пpи попытке сохpанять на его девайсах файлики pазмеpом под 100Мб.

    Good luck !                         Wednesday September 12 2001
    Alex Goldberg.

---
 * Origin:  (UA, Kherson FIDOnet 2:468/57)


 RU.COMPRESS 
 From : Bulat Ziganshin                      2:5093/4.126   12 Sep 01 21:19:35
 To   : Eugene D. Shelwien                  
 Subj : О словарях размером больше 256М                                              


* Originally in RU.COMPRESS
Приятного тебе дня и незабываемой ночи, Eugene!

Monday September 10 2001, Eugene D. Shelwien writes to All:
 ES> Меня давно интересовало, почему ни в одном компрессоре
 ES> до сих пор мне не довелось увидеть возможности отведения
 ES> под словарь большего, чем 256M, количества памяти.

плохо смотрел ;)

Bulat, mailto:bulatzATfort.tatarstan.ru, ICQ 15872722

... Иногда для того, чтобы изменить свое восприятие мира,
... люди пытаются изменить сам мир
--- GoldED+/W32 1.1.2
 * Origin: За бессмертие платят жизнью. Можно чужой (2:5093/4.126)


 RU.COMPRESS 
 From : IP Robot                             2:5093/4.126   13 Sep 01 01:06:12
 To   : All                                 
 Subj : News at ftp://ftp.elf.stuba.sk/pub/pc/pack/                                  


  ftp://ftp.elf.stuba.sk/pub/pc/pack/pecpt160.zip
PECompact v1.60 - Win9x/NT4/W2k Executables Packer (88,661 bytes)


--- PktMake.pl
 * Origin: PktMake.pl (2:5093/4.126)


 RU.COMPRESS 
 From : Paul Konev                           2:463/1124.977 13 Sep 01 13:18:10
 To   : Bulat Ziganshin                     
 Subj : DriveSpace - есть альтеpнативы?                                              


Привет Bulat!

10 Sep 01 21:24, Bulat Ziganshin -> Sergei Romancha:

 SR>>    subj? Главное чтобы под Win pаботало, под дос необязательно.

 BZ> ntfs. правда, жмёт хуже. ну ещё stacker4, но он имхо ничем не лучше ds.
 BZ> а не ты ли сам собирался написать что-то типа того?? а, есть ещё
 BZ> какая-то программа, которая на лету zip/unzip делает, но тормоз и глюкало

ZipMagic называется, но не является тормозом и глюкалом.
Пользуюсь уже не один год. Очень удобно. Доволен.

Paul

--- Fregate 1.44/W32
 * Origin: no origin (2:463/1124.977)


 RU.COMPRESS 
 From : Maxim Smirnov                        2:5020/400     13 Sep 01 23:35:02
 To   : All                                 
 Subj : wanted                                                                       


From: "Maxim Smirnov" <model@iac.spb.ru>

Hi All,

А какие есть в природе свободно распространяемые
диссеры, имеющие отношение к эхотагу? Беглый
поиск по винту доказал наличие нижеприведенных.
Что еще есть?
Inferring Sequential Structure
        by Craig G. Nevill-Manning
Lossless Document Image Compression
        by Stuart J. Inglis
Off-Line Data Compression By Textual Substitution
        by Stefano Lonardi
On-Line Stochastic Processes in Data Compression
        by Suzanne Bunton
Structures of String Matching and Data Compression
        by N. Jesper Larsson
The Design and Analysis of Efficient Lossless 
        Data Compression Systems
        by Paul Glor Howard

И еще вопрос. Ведет ли кто исследования по оценке
вероятностей появления символов на основании несмежных,
т.е. не контекста в его классическом понимании?
Если не изменяет склероз, то единственная известная 
мне статья называется Lexical Attraction for Text 
Compression. By J.Bach, I.Witten.

Maxim

--- ifmail v.2.15dev5
 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)


 RU.COMPRESS 
 From : IP Robot                             2:5093/4.126   14 Sep 01 01:04:28
 To   : All                                 
 Subj : News at ftp://ftp.elf.stuba.sk/pub/pc/pack/                                  


  ftp://ftp.elf.stuba.sk/pub/pc/pack/7z230b3.exe
7-ZIP Archiver v2.30 beta 3 - Command line file archiver (581,392 bytes)


--- PktMake.pl
 * Origin: PktMake.pl (2:5093/4.126)


 RU.COMPRESS 
 From : Vadim Goncharov                      2:5091/9.17    14 Sep 01 23:21:43
 To   : Bulat Ziganshin                     
 Subj : Re: DriveSpace - есть альтеpнативы?                                          


Как поживаете, Bulat ?

 -=> Как-то pаз я слyчайно заметил, что в 10 Сен 01 21:24, Bulat Ziganshin
 -=> писал Sergei Romancha насчет DriveSpace - есть альтеpнативы?:

 SR>>   subj? Главное чтобы под Win pаботало, под дос необязательно.
 BZ> ntfs. пpавда, жмёт хyже.
Разве??? Зато надежно и yдобно, не то что всякие там дpайвспейсы и т.д.

 BZ>  нy ещё stacker4, но он имхо ничем не лyчше ds. а не ты ли сам
 BZ> собиpался написать что-то типа того??
Ой, нафиг надо...

 BZ>  а, есть ещё какая-то пpогpамма, котоpая на летy zip/unzip делает, но
 BZ> тоpмоз и глюкало
Вот это более интеpесно. Есть всякие ZipFolders & ZipMagic. Пеpвый y меня стоит
, глюков не замечено. ВОт бы для pаp такое было...

                C yважением, Vadim Goncharov.
... В чyжyю сеть со своим пpотоколом не лезь!
--- Золотобоpодый дЕД-pедактоp, возpастом 3.00.Beta5+ лет
 * Origin: The Nuclear Lightning Systems (2:5091/9.17)


 RU.COMPRESS 
 From : Dmitry Shkarin                       2:5020/400     15 Sep 01 00:59:52
 To   : Maxim Smirnov                       
 Subj : Re: wanted                                                                   


From: "Dmitry Shkarin" <dmitry.shkarin@mtu-net.ru>

                    Hi, Maxim!
> А какие есть в природе свободно распространяемые
> диссеры, имеющие отношение к эхотагу? Беглый
    Еще про Ekstrand & Teahan забыл.

> И еще вопрос. Ведет ли кто исследования по оценке
> вероятностей появления символов на основании несмежных,
> т.е. не контекста в его классическом понимании?
    Hу если формально, то в image compression контексты строятся из
пикселов, строчные расстояния между которыми велики.


--- ifmail v.2.15dev5
 * Origin: home (2:5020/400)


 RU.COMPRESS 
 From : Dmitry Shkarin                       2:5020/400     15 Sep 01 01:16:12
 To   : Dmitry Shkarin                      
 Subj : Re: wanted                                                                   


From: "Dmitry Shkarin" <dmitry.shkarin@mtu-net.ru>

                    Hi, я!
>     Еще про Ekstrand & Teahan забыл.
    А еще Кадач.


--- ifmail v.2.15dev5
 * Origin: home (2:5020/400)


 RU.COMPRESS 
 From : IP Robot                             2:5093/4.126   18 Sep 01 01:04:41
 To   : All                                 
 Subj : News at ftp://ftp.elf.stuba.sk/pub/pc/pack/                                  


  ftp://ftp.elf.stuba.sk/pub/pc/pack/cmdzip.zip
AD Command Zip - Simple zipping utility (508,961 bytes)


--- PktMake.pl
 * Origin: PktMake.pl (2:5093/4.126)


 RU.COMPRESS 
 From : Anton V Zhbankov                     2:5015/160.555 18 Sep 01 20:51:39
 To   : Vadim Goncharov                     
 Subj : DriveSpace - есть альтеpнативы?                                              



  Greetings, Vadim.

14 Sep 01 22:21, Vadim Goncharov -> Bulat Ziganshin

 BZ>>  а, есть ещё какая-то пpогpамма, котоpая на летy zip/unzip
 BZ>> делает, но тоpмоз и глюкало
 VG> Вот это более интеpесно. Есть всякие ZipFolders & ZipMagic. Пеpвый y
 VG> меня стоит, глюков не замечено. ВОт бы для pаp такое было...

 Для рара такое не получится :(((

 А вот ZipFolders для NT - ХОЧУ!!!!

 Может кто знает нечто подобное??? ZipMagic не предлагать!!!

Ariokh, _Lord of Chaos_.
_/DMCA - наглая попытка подчинить свободных людей корпорациям./_

... В Помпеях царил такой разврат, что даже Везувий кончил.
--- [ANTI-DMCA][Pascal][Open source][Политех][Team Hell][Progressive]
 * Origin: < Yards of Chaos > (2:5015/160.555)


 RU.COMPRESS 
 From : Roman Pshenichny                     2:5025/38.82   19 Sep 01 01:02:43
 To   : All                                 
 Subj : Fastest RangeCoder                                                           


Hi All!

Hужно быстpо сжимать без потеpь поток данных имеющих малую избыточность.
Что посоветуете?

Я думаю, что range coder. Вот только в последнее вpемя их столько pазвелось, та
к что если кто знает самую быстpую pеализацию -- поделитесь исходниками или url
-ами.

После пеpевода в asm -- покажу в эхе.


--- Best regards.
 * Origin: Roman Pshenichny was here. (2:5025/38.82)


 RU.COMPRESS 
 From : Константин Васин                     2:5020/400     19 Sep 01 22:15:26
 To   : All                                 
 Subj : Есть задачка...                                                              


From: Константин Васин <ringo1999@mailru.com>
Reply-To: Константин Васин <ringo1999@mailru.com>

Доброго времени суток!

Вот такая хитрая задачка. Помогите кто-нибудь.

Есть  arj-архив  в  имени  которого  дата  MDD.  Причём  месяц в 16-ом
формате.
Hадо.
Распаковать.  Так 3 файла. Один из файлов переименовать. Да так что бы
в  имени  файла  была дата. А потом обратно запаковать. Правда в любой
архив, но в имени опять д.б. та же дата что и в начальном архиве.

Что посоветуете?
Возможно ли сделать какой-нибудь БАТ-ничек или простенькую программку?
Помогите!!!
-- 
Best regards,
 Константин                   Пишите: ringo1999@mailru.com



Отправлено через сервер Talk.Ru - http://www.talk.ru
--- ifmail v.2.15dev5
 * Origin: 2000 (2:5020/400)


 RU.COMPRESS 
 From : Bulat Ziganshin                      2:5093/4.126   20 Sep 01 23:59:15
 To   : Anton V Zhbankov                    
 Subj : DriveSpace - есть альтеpнативы?                                              


* Originally in RU.COMPRESS
Приятного тебе дня и незабываемой ночи, Anton!

Tuesday September 18 2001, Anton V Zhbankov writes to Vadim Goncharov:
 AZ>  А вот ZipFolders для NT - ХОЧУ!!!!

а я диск на 60 гиг покупаю. сорока не хватает, всё музыкой да фильмами забито

Bulat, mailto:bulatzATfort.tatarstan.ru, ICQ 15872722

... Иногда для того, чтобы изменить свое восприятие мира,
... люди пытаются изменить сам мир
--- GoldED+/W32 1.1.2
 * Origin: За бессмертие платят жизнью. Можно чужой (2:5093/4.126)


 RU.COMPRESS 
 From : Sergei Bakanov                       2:5051/36.9    21 Sep 01 07:32:00
 To   : All                                 
 Subj : арифметическое кодирование                                                   


·  ••      [      День добрый  , All ?    ]     ••   ·
    All, у тебя есть последние доки по subj для мыла?

·  ••      [ Да прибудет с тобой сила, джедай All. ]     ••   ·

--- - ---  --   -    ·
 * Origin: @ORIGIN.TXT.TXT.TXT.TXT (2:5051/36.9)


 RU.COMPRESS 
 From : Anton V Zhbankov                     2:5015/160.555 22 Sep 01 19:14:07
 To   : Bulat Ziganshin                     
 Subj : DriveSpace - есть альтеpнативы?                                              



  Greetings, Bulat.

20 Sep 01 22:59, Bulat Ziganshin -> Anton V Zhbankov

 AZ>>  А вот ZipFolders для NT - ХОЧУ!!!!
 BZ> а я диск на 60 гиг покупаю. сорока не хватает, всё музыкой да
 BZ> фильмами забито

 Дык режь болванки... или вообще на DVD переходи :)

 ну на крайняк Raid ;)

Ariokh, _Lord of Chaos_.
_/DMCA - наглая попытка подчинить свободных людей корпорациям./_

... Работа не волк, в лес не убежит, а жаль!
--- [ANTI-DMCA][Pascal][Open source][Политех][Team Hell][Progressive]
 * Origin: < Yards of Chaos > (2:5015/160.555)


 RU.COMPRESS 
 From : Daniil Uspensky                      2:5030/1551.7  23 Sep 01 17:42:32
 To   : All                                 
 Subj : Шальная мысль...                                                             


Hello All!

А что, если в PPM юзать интеpполяционные полиномы для "пpедсказания" символов?

Daniil

--- GoldED+/386 1.1.4.7
 * Origin: Once Upon A Time In The West ... (2:5030/1551.7)


 RU.COMPRESS 
 From : Alex Baskakov                        2:5025/3.55    23 Sep 01 20:02:38
 To   : All                                 
 Subj : странный zip                                                                 


                How а ю, All?

Есть странный zip архив, некоторые файлы из которого стандартным zip'ом не разв
орачиваются (bad table выдает). В архиве есть файлы _hash*, что наводит на мысл
ь о каком-то клоне... Чем бы его развернуть?


                                                                   Пр. ещё, Л.
--- GoldED/386 3.0.1
 * Origin: Wanna be MCSD? (2:5025/3.55)


 RU.COMPRESS 
 From : Max Vasilyev                         2:5057/33.36   24 Sep 01 19:12:34
 To   : Alex Baskakov                       
 Subj : странный zip                                                                 


Hello Alex!

Replying to a message of Alex Baskakov to All:

 AB> Есть странный zip архив, некоторые файлы из которого стандартным zip'ом не
 AB> разворачиваются (bad table выдает). В архиве есть файлы _hash*, что
 AB> наводит на мысль о каком-то клоне... Чем бы его развернуть?
возможно PkZip 4.0 или 4.5 for Win32
www.pkware.com

WBR, Max. *piwamoto!chat.ru*
--- FleetStreet 1.27.3.7
 * Origin: Personal Reality (2:5057/33.36)


 RU.COMPRESS 
 From : Maxim Smirnov                        2:5020/400     25 Sep 01 00:44:21
 To   : Daniil Uspensky                     
 Subj : Шальная мысль...                                                             


From: "Maxim Smirnov" <model@iac.spb.ru>

Sun Sep 23 2001 17:42, Daniil Uspensky wrote to All:

 DU> Hello All!

 DU> А что, если в PPM юзать интеpполяционные полиномы для "пpедсказания"
 DU> символов?
Лажа в общем случае, если только не повезет.
Кроме того, для предсказания интерполяционные полиномы
могут применять разве что только неудавшиеся к.ф-м.н,
не решившиеся ни одной реальной прогнозной задачи.

Maxim

--- ifmail v.2.15dev5
 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)


 RU.COMPRESS 
 From : Dima Kirnocenskij                    2:5020/701.111 25 Sep 01 11:15:29
 To   : Daniil Uspensky                     
 Subj : Re: Шальная мысль...                                                         


Привет, Daniil!

23 Sep 01 17:42, Daniil Uspensky wrote to All:

 DU> А что, если в PPM юзать интеpполяционные полиномы для "пpедсказания"
 DU> символов?

Т.е. ты надеешься на более или менее "гладкое" распределение КОДОВ символов?
А почему?

Всего наилyчшего.
Dima Kirnocenskij

---
 * Origin: Why not? (FIDO 2:5020/701.111)


 RU.COMPRESS 
 From : Bulat Ziganshin                      2:5093/4.126   26 Sep 01 10:37:49
 To   : Max Vasilyev                        
 Subj : странный zip                                                                 


* Originally in RU.COMPRESS
Приятного тебе дня и незабываемой ночи, Max!

Monday September 24 2001, Max Vasilyev writes to Alex Baskakov:
 AB>> Есть странный zip архив, некоторые файлы из которого стандартным
 AB>> zip'ом не разворачиваются (bad table выдает). В архиве есть файлы
 AB>> _hash*, что наводит на мысль о каком-то клоне... Чем бы его
 AB>> развернуть?
 MV> возможно PkZip 4.0 или 4.5 for Win32
 MV> www.pkware.com

вряд ли. defalte64 - отдельный метод сжатия со своим номером

Bulat, mailto:bulatzATfort.tatarstan.ru, ICQ 15872722

... Иногда для того, чтобы изменить свое восприятие мира,
... люди пытаются изменить сам мир
--- GoldED+/W32 1.1.2
 * Origin: За бессмертие платят жизнью. Можно чужой (2:5093/4.126)


 RU.COMPRESS 
 From : Daniil Uspensky                      2:5030/1551.7  26 Sep 01 17:12:29
 To   : Maxim Smirnov                       
 Subj : Шальная мысль...                                                             


Hello Maxim!

25 Сен 01, Maxim Smirnov wrote to Daniil Uspensky:

 DU>> А что, если в PPM юзать интеpполяционные полиномы для
 DU>> "пpедсказания" символов?
 MS> Лажа в общем слyчае, если только не повезет.
 MS> Кpоме того, для пpедсказания интеpполяционные полиномы
 MS> могyт пpименять pазве что только неyдавшиеся к.ф-м.н,
 MS> не pешившиеся ни одной pеальной пpогнозной задачи.

Я тоже к такомy выводy пpишел. К томy же их использовать не yдобно, т.к. вне вз
ятого пpомежyтка они ведyт себя сквеpно...

Daniil

--- GoldED+/386 1.1.4.7
 * Origin: Once Upon A Time In The West ... (2:5030/1551.7)


 RU.COMPRESS 
 From : Andrew Ezhguroff                     2:5020/400     26 Sep 01 18:11:48
 To   : Alex Baskakov                       
 Subj : Re: странный zip                                                             


From: "Andrew Ezhguroff" <eandr@com2com.ru>

Привет! "Alex Baskakov" <Alex.Baskakov@p55.f3.n5025.z2.fidonet.org>
сообщил(а) нам:

> Есть странный zip архив, некоторые файлы из которого стандартным zip'ом не
> разворачиваются (bad table выдает). В архиве есть файлы _hash*, что
наводит на
> мысль о каком-то клоне... Чем бы его развернуть?

Скорее всего это вообще не ZIP, а какой-то посторонний формат (в интернете
любят любому архиву давать расширение ZIP). Попробуй посмотреть его
программой, которая несколько форматов понимает: WinRar 2.8 - 9 форматов,
DosNavigator (не распакуешь, но хотя бы поймешь, какой архиватор
требуется) - 25 форматов.

С уважением, Андрей.


--- ifmail v.2.15dev5
 * Origin: COMSTAR Telecommunications (2:5020/400)
 Предыдущий блок Следующий блок Вернуться в индекс