home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1997 #3 / amigamamagazinepolishissue03-1 / ma_1995 / 09 / ami928.txt < prev    next >
Text File  |  1997-04-07  |  10KB  |  214 lines

  1. PACKDISK & PACKDEV
  2.  
  3. <lead>Niedawno pisaîem o róûnego rodzaju archiwizerach dyskowych.
  4. Niestety, nie udaîo mi sië opisaê wszystkich programów, jakie
  5. wtedy odszukaîem na amigowskim rynku. Pozostaîy jeszcze dwa
  6. którym z pewnych wzglëdów warto sië dokîadniej przyjrzeê.
  7.  
  8. <a>Jarosîaw Horodecki
  9.  
  10. <txt>Te dwa wspomniane przeze mnie programiki to PackDev oraz
  11. PackDisk. Ich wspólnâ cechâ jest to, ûe w odróûnieniu od innych
  12. tego typu kompresorów, nie korzystajâ one z wîasnych procedur
  13. pakujâcych, ale z procedur zewnëtrznych. Oba wykorzystujâ po
  14. prostu bibliotekë XPKMaster.library oraz przeznaczone dla niej
  15. kompresory. Warto jednoczeônie nadmieniê, ûe robiâ to w róûny
  16. sposób.
  17.  
  18. Zacznijmy od programu PackDisk autorstwa Edgara Vigdala z
  19. Norwegii. Jest to program nieco mniej uniwersalny i dysponujâcy
  20. nieco mniejszymi moûliwoôciami niû PackDev, dlatego postanowiîem
  21. od niego zaczâê.
  22.  
  23. Autor PackDiska przede wszystkim podkreôla jego zalety w stosunku
  24. do powszechnie znanego DiskMashera. Najwaûniejszâ z nich jest
  25. moûliwoôê stopniowego odczytywania archiwum oraz nagrywania go na
  26. dysk docelowy, co jest szczególnie przydatne, gdy archiwum,
  27. odczytywane z tej samej stacji dysków, nagrywamy na inny dysk,
  28. wkîadany do tego samego urzâdzenia. W wypadku DiskMashera trzeba
  29. byîo wczeôniej archiwum przekopiowaê do RAM-u. W epoce twardego
  30. dysku cecha ta wydaje sië jednak maîo przydatna. Druga zaleta
  31. programu przedstawiana przez autora, czyli jego niewielka dîugoôê
  32. (5 KB), jest natomiast nieco problematyczna. Wszak potrzebne jest
  33. jeszcze w pamiëci miejsce na dwie biblioteki (XPKMaster oraz
  34. odpowiedni kompresor).
  35.  
  36. Mimo tych nieco moûe wâtpliwych zalet PackDisk z pewnoôciâ jest
  37. programem bardzo ciekawym. Jego omówienie rozpocznë moûe od
  38. prostego przykîadu. Na poczâtek wiëc czytanie zawartoôci dysku:
  39.  
  40. <l>packdisk -p -4 nazwa_pliku
  41.  
  42. <txt>Jak widaê, skîadnia odpowiedniego polecenia jest wyjâtkowo
  43. prosta. Opcja -p to oczywiôcie przestawienie programu w tryb
  44. pakowania dysku. Druga z opcji to z kolei wybór stopnia
  45. kompresji pliku. Im mniejsza liczba, tym gorsza kompresja. W
  46. jaki jednak sposób program ten korzysta z kompresorów XPK? Otóû
  47. kolejne stopnie kompresji to po prostu korzystanie z róûnych
  48. zewnëtrznych kompresorów. I tak:
  49.  
  50. 1 -- kompresor RLEN o bardzo sîabej efektywnoôci, ale za to
  51. bardzo szybkiej kompresji oraz dekompresji;
  52.  
  53. 2 -- NUKE to z kolei kompresor o szybkim algorytmie pakowania,
  54. zachowujâcym jednoczeônie stosunkowo niezîy stopieï kompresji,
  55. rozpakowanie pliku jest równieû bardzo szybkie;
  56.  
  57. 3 -- BLZW gwarantuje równieû bardzo szybkâ kompresjë oraz
  58. dekompresjë, nie najgorsze wyniki;
  59.  
  60. 4 -- HUFF to algorytm Huffmana, doôê sîaby stopieï kompresji przy
  61. bardzo duûej prëdkoôci;
  62.  
  63. 5 -- IMPL jest bardzo dobrym kompresorem o doskonaîym stopniu
  64. kompresji, jednakûe nie najwyûszej prëdkoôciâ pakowania, a bardzo
  65. duûej prëdkoôci rozpakowywania;
  66.  
  67. 6 -- SHRI to najlepszy z wymienionych kompresorów,
  68. charakteryzujâcy sië, niestety, bardzo maîâ szybkoôciâ zarówno
  69. przy kompresji, jak i dekompresji dysku;
  70.  
  71. Wiemy juû wiëc, jak dany dysk spakowaê do wskazanego pliku.
  72. Równie waûnâ czynnoôciâ jest oczywiôcie rozpakowanie wczeôniej
  73. przygotowanego archiwum. Oto skîadnia odpowiedniego rozkazu:
  74.  
  75. <l>packdisk -u nazwa_pliku
  76.  
  77. <txt>Tutaj chyba nie trzeba niczego wyjaôniaê. Opcja -u to po
  78. prostu wîâczenie trybu rozpakowywania dysku, znaczenie drugiego
  79. parametru jest natomiast oczywiste.
  80.  
  81. To wszystko, co potrafi PackDisk. Niewâtpliwie doôê istotnâ wadâ
  82. posiadanej przeze mnie wersji programu jest brak moûliwoôci
  83. pakowania danych z urzâdzeï innych niû DF0:. Przydaîaby sië
  84. choêby moûliwoôê skorzystania z RAD-u, zwîaszcza przy
  85. rozpakowywaniu.
  86.  
  87. Drugi program, czyli PackDev autorstwa Christiana Wasnera z
  88. Niemiec, to narzëdzie o wiele bardziej rozbudowane i znacznie
  89. bardziej uniwersalne. Wîaôciwie jedynâ wspólnâ cechâ tych dwóch
  90. programów jest, o czym juû wspomniaîem, korzystanie z bibliotek
  91. XPK przy pakowaniu danych.
  92.  
  93. Program PackDev nie jest jednak zwykîym kompresorem, przeznaczonym
  94. do pakowania tylko i wyîâcznie dyskietek, czy teû urzâdzeï o
  95. strukturze identycznej ze strukturâ dyskietki (jak RAM-dysk
  96. RAD:). Program ten potrafi odczytaê, skompresowaê oraz zapisaê do
  97. pliku dokîadnâ zawartoôê dowolnie wybranego urzâdzenia, poczâwszy
  98. wîaônie od zwykîej dyskietki, a skoïczywszy na choêby twardym
  99. dysku, czy teû pîycie kompaktowej. Moûliwoôci jest wiele. Jak
  100. wiëc widaê, PackDev jest programem îâczâcym pewne cechy zwykîego
  101. archiwizera dyskowego z programem przeznaczonym do wykonywania
  102. backupów zawartoôci róûnego typu urzâdzeï.
  103.  
  104. Autor programu, podobnie jak w poprzednim wypadku, na poczâtku
  105. dokumentacji wylicza wiele zalet swojego dzieîa w zestawieniu z
  106. DiskMasherem. Tu jednak z wiëkszoôciâ spoôród wymienionych
  107. pozycji muszë sië zgodziê. Gîównâ czëôciâ tej listy jest
  108. oczywiôcie moûliwoôê pakowania dowolnych urzâdzeï oraz
  109. korzystania z bibliotek XPK. Ostatniâ z przedstawionych zalet
  110. jest równieû niewielka dîugoôê programu.
  111.  
  112. Zasada dziaîania programu jest bardzo prosta. W pierwszym kroku
  113. odczytywane sâ dane o wskazanym urzâdzeniu. Jeûeli istnieje
  114. moûliwoôê odczytania mapy zajëtoôci dysku, a system zapisu danych
  115. jest znany, czytane sâ tylko wykorzystywane sektory, w przeciwnym
  116. wypadku natomiast odczytywana jest caîa zawartoôê pakowanego
  117. urzâdzenia.
  118.  
  119. Korzystanie z programu, na razie, nie naleûy natomiast do
  120. czynnoôci najprostszych. Wszystkie funkcje dostëpne sâ jedynie z
  121. poziomu CLI/Shella, naleûy sië wiëc zapoznaê z poszczególnymi
  122. opcjami, jakich uûycie dopuszcza PackDev.
  123.  
  124. Pierwszym i chyba najwaûniejszym parametrem, jaki musi byê
  125. podany, jest czynnoôê, jakâ PackDev ma wykonaê. Moûna tu wybraê
  126. spoôród czterech róûnych dziaîaï: READ (czytanie zawartoôci
  127. wskazanego urzâdzenia), WRITE (zapis wskazanego archiwum na dane
  128. urzâdzenie), VIEWFILE (wyôwietlenie zawartoôci pliku),
  129. VIEWFILESYS (podanie informacji o wskazanym urzâdzeniu).
  130.  
  131. Po wskazaniu czynnoôci naleûy okreôliê takûe nazwë urzâdzenia, z
  132. jakiego program ma odczytaê dane, bâdú na które dane te bëdâ
  133. zapisywane. Sîuûy do tego parametr FILESYS (lub FS), po którym
  134. wpisujemy po prostu nazwë czytanego urzâdzenia. Po podaniu nazwy
  135. urzâdzenia pozostaje jeszcze wskazanie odpowiedniego pliku. W
  136. zaleûnoôci od wybranego dziaîania programu bëdzie to oczywiôcie
  137. plik úródîowy lub docelowy. Do jego okreôlenia sîuûy opcja FILE
  138. (albo F).
  139.  
  140. Kolejne trzy opcje dotyczâ niejako technicznej strony czytania
  141. dysku i traktowania jego zawartoôci. Po pierwsze wiëc dostëpna
  142. jest opcja CLRUNUSED (lub CU). Skorzystaê z niej moûna tylko przy
  143. zapisie danych na dysk, a jak sama jej nazwa wskazuje, sîuûy ona
  144. do czyszczenia nie zajëtych sektorów. Gdy jest wyîâczona,
  145. zawartoôê tych sektorów pozostaje nie naruszona, co w niektórych
  146. wypadkach doprowadzi do pozostawienia na dyskietce niepotrzebnych
  147. danych. Warto wiëc z tej opcji korzystaê.
  148.  
  149. Druga z nich natomiast to ETDFORMAT (lub ETDF). Korzystaê z niej
  150. moûna równieû tylko podczas zapisywania danych. Podczas
  151. rozpakowywania pliku na nie sformatowanâ dyskietkë, zostanie ona
  152. przed zapisem kaûdej ôcieûki automatycznie sformatowana. Warto
  153. zwróciê uwagë, ûe opcja ta nie bëdzie dziaîaê z twardym dyskiem,
  154. poniewaû uûywana jest tutaj funkcja formatowania, przystosowana
  155. tylko do formatowania dyskietek.
  156.  
  157. Dziaîanie trzeciej z kolei opcji, czyli TDFORMAT (lub TDF) jest
  158. niemal identyczne z poprzednio omówionâ. Poza tym opcja bëdzie
  159. równieû dziaîaê z dowolnym innym urzâdzeniem, a nie tylko ze
  160. stacjâ dysków, jak to byîo w wypadku ETDF. Opcja ta korzysta ze
  161. standardowej systemowej procedury formatowania, przeznaczonej do
  162. przygotowywania wszystkich rodzajów noôników.
  163.  
  164. Ostatni z kolei zestaw opcji pozwala na odpowiednie ustawienie
  165. parametrów pakowania. Najwaûniejsza z nich to oczywiôcie opcja
  166. PACK (lub P). Sîuûy ona do okreôlenia rodzaju kompresora XPK,
  167. jaki ma zostaê uûyty, oraz ustawienia jego efektywnoôci. Warto
  168. tutaj wspomnieê, ûe czëôê kompresorów zgodnych z tym standardem
  169. pozwala na ustawienie efektywnoôci kompresji w zakresie od 0 do
  170. 100. W ten sposób moûna dodatkowo wpîywaê na stopieï kompresji
  171. oraz jej szybkoôê. Dostëpne sâ oczywiôcie wszystkie moûliwe
  172. kompresory XPK, a nie, tak jak w wypadku PackDiska, tylko kilka
  173. wybranych przez autora programu.
  174.  
  175. Za pomocâ dwóch dodatkowych opcji moûna natomiast wpîywaê na
  176. technicznâ stronë samego pakowania danych. Moûliwe jest wiëc
  177. wybranie rodzaju pamiëci, z jakiego korzystaê ma PackDev. Sîuûy
  178. do tego opcja MEMTYPE (lub M) wraz z odpowiednim parametrem,
  179. oznaczajâcym rodzaj pamiëci, jaka ma byê wykorzystana. Moûe to
  180. byê jeden z nastëpujâcych rodzajów: Chip, Fast lub Any (dowolny
  181. rodzaj pamiëci, w zaleûnoôci od potrzeb).
  182.  
  183. Z kolei opcja XPKBUFSIZE (lub XB) umoûliwia ustawienie wielkoôci
  184. bufora tworzonego w pamiëci, a przeznaczonego na potrzeby
  185. procedury kompresujâcej. W niektórych wypadkach skorzystanie z
  186. duûego bufora, umieszczonego w pamiëci Fast, moûe spowodowaê
  187. wyraúnie zauwaûalne zwiëkszenie prëdkoôci dziaîania programu.
  188.  
  189. Po omówieniu wszystkich opcji warto jeszcze podaê kilka
  190. podstawowych przykîadów, które moûe nieco uîatwiâ praktyczne
  191. wykorzystanie programu. Na poczâtek, jak zwykle, czytanie
  192. zawartoôci dysku:
  193.  
  194. <l>packdev read fs rad: f dh1:nazwa_pliku nuke.75 xb 200
  195.  
  196. <txt>Komenda ta powoduje oczywiôcie czytanie zawartoôci dysku
  197. wirtualnego, znajdujâcego sië w pamiëci RAM oraz nagranie na
  198. dysku dh1: jego zawartoôci, spakowanej za pomocâ kompresora nuke z
  199. 75-procentowâ efektywnoôciâ oraz przy uûyciu bufora o wielkoôci
  200. dwustu bloków, czyli normalnie 100 KB. I kolejny przykîad:
  201.  
  202. <l>packdev write fs df1: dh1:nazwa_pliku etdf
  203.  
  204. <txt>Tutaj szczegóîowe wyjaônienia wydajâ sië byê zbëdne. Po
  205. prostu rozpakowujemy dane, znajdujâce sië w pliku na partycji
  206. dh1: na nie sformatowanej dyskietce, znajdujâcej sië w napëdzie
  207. df1:.
  208.  
  209. Jak widaê, obsîuga programu nie jest aû tak strasznie trudna.
  210. Samâ ocenë programu oraz decyzjë, czy bëdziemy go uûywaê,
  211. pozostawiam juû jednak Czytelnikom. Warto moûe jeszcze dodaê, ûe
  212. mimo tak wielu interesujâcych moûliwoôci i w miarë prostej
  213. obsîugi program ten nie zyskaî zbytniej popularnoôci.
  214.