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

  1. /* jak na snoopdos 3.0 to troszke chyba za dlugie... mozna uciac
  2. sporo lania wody, nawet ja bym sie zmiescil w 5kb -> jarek */
  3.  
  4. SNOOPDOS 3.0
  5.  
  6. <a>Kamil Iskra
  7.  
  8. <txt>SnoopDOS jest programem, sîuûâcym do "podglâdania".
  9. Umoûliwia on monitorowanie niektórych czynnoôci, wykonywanych
  10. przez inne programy.
  11.  
  12. Zacznijmy moûe jednak od krótkiego "rysu historycznego".
  13.  
  14. Na poczâtku byî Chaos. Programy, aby sië uruchomiê, potrzebowaîy
  15. przeróûnych zewnëtrznych plików. Gdy tych plików nie znajdowaîy,
  16. po prostu sië nie uruchamiaîy, nie informujâc uûytkownika, czego
  17. im brak, czasami na dodatek zawieszajâc komputer. Uûytkownicy
  18. klëli, na czym ôwiat stoi... Aû znalazî sië w koïcu Jeden
  19. Sprawiedliwy. Wpadî on na tyleû genialny, co banalny pomysî. Jak
  20. chyba wszyscy wiedzâ, system Amigi to przede wszystkim
  21. biblioteki, zawierajâce funkcje. Dostëp do tych funkcji jest
  22. rozwiâzany za pomocâ tzw. tablic skoków. Sprytny program moûe
  23. "wskoczyê" we fragment takiej tablicy, odpowiedzialny za
  24. wywoîywanie pewnej funkcji systemu operacyjnego, i wykrywaê próby
  25. uûycia tej funkcji przez inne programy. Tym sprytnym programem
  26. byî wîaônie SnoopDOS, a "Sprawiedliwym" -- jego autor, Eddy
  27. Carroll z Irlandii.
  28.  
  29. SnoopDOS w wersjach 1.x byî programem bardzo prostym: wyôwietlaî
  30. w oknie typu CON: informacje o wîaônie wykonywanych funkcjach
  31. biblioteki dos.library, która jest odpowiedzialna za wszelkie
  32. operacje na plikach, katalogach itp. Program byî prymitywny, miaî
  33. znikome moûliwoôci konfiguracyjne. Zaczëîy wiëc powstawaê pisane
  34. przez Naôladowców programy-monitory, podobne do SnoopDOS-a, ale
  35. bardziej rozbudowane i wygodniejsze w obsîudze. Bardzo popularny
  36. staî sië np. DOSTrace, napisany przez Petera Stuera. Program ten
  37. miaî okno z gadûetem przewijania, dziëki któremu moûna byîo
  38. sië cofnâê do wczeôniej wykonywanych funkcji. Konkurencja byîa
  39. wiëc dla uûytkowników, jak to zwykle bywa, korzystna. Oprócz
  40. Naôladowców pojawili sië jednak równieû Podszywacze. Ûycie
  41. uîatwiaî im fakt, ûe SnoopDOS byî rozpowszechniany wraz z kodem
  42. úródîowym -- wystarczyîo wiëc zmieniê numer wersji, dopisaê
  43. w dokumentacji jakieô bzdury o tym, co sië w programie zmieniîo,
  44. i "wypuôciê" go w ôwiat jako najnowszâ wersjë. Co gorsza, te
  45. "nowe wersje" czësto byîy "wyposaûone" w róûne zîoôliwe wirusy.
  46. To spowodowaîo, ûe nigdy nie pojawiîa sië wersja oznaczona
  47. symbolem "2" -- po 1.7 nastâpiîa od razu 3.0. No, nie tak
  48. od razu, bo prace nad niâ trwaîy niemal rok (a prace nad wersjâ
  49. 1.0 -- niecaîy tydzieï).
  50.  
  51. Wersjë 3.0 znalazîem w Aminecie, w katalogu "util/moni". Archiwum
  52. o nazwie "snoopdos30.lha" zajmuje 128 KB. Pomimo niemiîych
  53. doôwiadczeï z przeszîoôci, autor postanowiî opublikowaê równieû
  54. kod úródîowy -- znajduje sië on w archiwum "snoopdos30_src.lha" o
  55. dîugoôci 228 KB. Program ten nie jest juû wîaôciwie nowoôciâ --
  56. liczy sobie ponad rok -- nie widziaîem jednak dotychczas ûadnej
  57. wzmianki na jego temat...
  58.  
  59. Muszë przyznaê, ûe po rozpakowaniu archiwum byîem przeraûony --
  60. dokumentacja programu liczy bowiem 238 KB! Po pierwszym
  61. uruchomieniu programu zrozumiaîem jednak, dlaczego.  Jego
  62. moûliwoôci sâ olbrzymie!
  63.  
  64. SnoopDOS 3.0 zostaî napisany zgodnie z obecnie panujâcymi w
  65. ôrodowisku Amigi trendami -- program wymaga OS 2.0, ma GUI
  66. przystosowujâce sië do uûywanej na ekranie czcionki, dokumentacjë
  67. w standardzie AmigaGuide, jest zlokalizowany jëzykowo (w pakiecie
  68. "WFMH Locale PL" znalazîem wykonany przez Konrada Dubiela polski
  69. "catalog").
  70.  
  71. Po uruchomieniu otwiera sië okno, jak na rysunku 1. Przewaûajâca
  72. jego czëôê jest zapeîniona informacjami o wykonanych bâdú wîaônie
  73. wykonywanych funkcjach systemowych. W tym wypadku wyôwietlane
  74. byîy nastëpujâce informacje: liczba porzâdkowa, nazwa procesu
  75. wywoîujâcego funkcjë, nazwa funkcji, nazwa obiektu, dla jakiego
  76. funkcja zostaîa wywoîana (np. nazwa pliku do skasowania), opcje
  77. (np. czy plik ma byê otwarty do odczytu, czy do zapisu) oraz
  78. rezultat wykonania funkcji.
  79.  
  80. Przeznaczenie wiëkszoôci gadûetów, znajdujâcych sië poniûej, jest
  81. chyba oczywiste -- nie jest zresztâ moim celem opisanie obsîugi
  82. programu, a raczej wskazanie cech wyróûniajâcych go spoôród
  83. innych tego tupu. Warto wiëc zwróciê uwagë na gadûet Pauza. Jego
  84. uûycie pozwala monitorowaê programy krok po kroku. Program
  85. wywoîujâcy którâô z monitorowanych przez SnoopDOS funkcji jest
  86. zatrzymywany, w oknie jest wypisywane, co program usiîuje zrobiê.
  87. Dopiero po naciôniëciu spacji SnoopDOS wykonuje danâ czynnoôê --
  88. bywa to bardzo przydatne, gdy chcemy spokojnie przeôledziê, co
  89. program "kombinuje", albo gdy np. program jest tak úle napisany,
  90. ûe przy braku jakiegoô pliku natychmiast resetuje komputer -- bez
  91. Pauzy nie zobaczylibyômy, jakiego pliku mu brak... Interesujâcâ
  92. moûliwoôciâ jest równieû tworzenie tzw. logu -- bieûâcego raportu
  93. z pracy. Moûna go skierowaê zarówno do pliku, jak i na drukarkë
  94. bâdú do portu szeregowego.
  95.  
  96. SnoopDOS jest w bardzo szerokim stopniu konfigurowalny, co
  97. przedstawia rysunek 2. Aby zmieôciê wszystkie okna naraz,
  98. musiaîem zwiëkszyê rozdzielczoôê ekranu, zmniejszajâc
  99. równoczeônie czcionkë. Konfiguracja dzieli sië na dwie czëôci:
  100. Ustawienia i Funkcje. Pierwsza czëôê umoûliwia skonfigurowanie
  101. ôrodowiska pracy. Szczególnie interesujâce wydajâ sië byê tu dwie
  102. opcje: moûliwoôê wybrania czcionki dla tekstów wyôwietlanych w
  103. gîównym oknie (opîaca sië wybraê czcionkë maîâ, aby jak najwiëcej
  104. informacji na raz w oknie sië zmieôciîo) oraz moûliwoôê
  105. ustawienia formatu wyôwietlanych informacji. Dla komfortowego
  106. przeprowadzenia tej drugiej czynnoôci mamy zresztâ specjalne okno
  107. -- Edytor formatu. Umoûliwia ono ustalenie, jakie informacje
  108. chcemy mieê wyôwietlane (szerokâ gamë moûliwoôci widaê na
  109. rysunku, niektóre z nich mogâ byê przydatne przede wszystkim
  110. programistom) i jakâ szerokoôê majâ mieê poszczególne pola. Ja
  111. zdecydowaîem sië usunâê liczbë porzâdkowâ, gdyû mnie przynajmniej
  112. wydaîa sië ona zbëdna. Dziëki temu mogîem jeszcze trochë
  113. poszerzyê pole Nazwa obiektu.
  114.  
  115. Okno Funkcje uîatwia ustalenie, co ma byê monitorowane.  Wersja
  116. 3.0 SnoopDOS umoûliwia nie tylko monitorowanie funkcji z
  117. biblioteki dos.library, ale równieû kilku funkcji z innych
  118. bibliotek (exec.library, intuition.library, icon.library i
  119. rexxsyslib.library). Szczególnie monitorowanie icon.library bywa
  120. przydatne -- umoûliwia wykrycie, jakich to tooltype'ów poszukujâ
  121. programy... Na ustaleniu, które funkcje majâ byê monitorowane,
  122. rola okna Funkcje sië nie koïczy. Gadûet Filtr programów
  123. umoûliwia ustalenie nazw procesów, które majâ byê monitorowane --
  124. program akceptuje standardowy pattern AmigaDOS-u, umoûliwiajâc
  125. tym samym monitorowanie kilku wybranych procesów naraz:
  126. "(proces1|proces2|proces3)" bâdú niemonitorowanie jakiegoô
  127. procesu: "~(proces)". Bardzo przydatne jest równieû to, ûe
  128. standardowo wyîâczone jest monitorowanie ROM-u i
  129. Workbencha/Shella -- zmniejsza to znacznie liczbë informacji,
  130. wyôwietlanych przez program. Jeôli komuô jednak na tym
  131. szczególnie zaleûy, moûe to, oczywiôcie, wîâczyê.
  132.  
  133. Dla ludzi czësto uûywajâcych programów, które korzystajâ z
  134. ixemul.library (a wiëc zwykle róûnych programów przeniesionych z
  135. Unixa, jak np. kompilatora GNU C), przydatna moûe byê takûe
  136. moûliwoôê monitorowania pakietów. ixemul.library komunikuje sië z
  137. systemem zapisu bez poôrednictwa dos.library, bezpoôrednio za
  138. pomocâ tzw. pakietów. Powoduje to, ûe inne programy monitorujâce
  139. "nie widzâ", co robiâ programy korzystajâce z IXEmul -- w
  140. SnoopDOS wystarczy zaznaczyê jeden gadûet, aby problem zniknâî.
  141. Dla tych, którym monitorowanie trzynastu funkcji dos.library nie
  142. wystarcza, autor dodaî równieû tzw. debugger pakietów --
  143. umoûliwia on podglâdanie wszelkiego rodzaju aktywnoôci, zwiâzanej
  144. z systemami zapisu. Trzeba jednak byê niezîym guru, aby coô z
  145. tego zrozumieê, gdyû program wyôwietla informacje w formie
  146. niewiele mówiâcych liczb bâdú adresów pamiëci.
  147.  
  148. Ciekawe moûliwoôci konfiguracyjne moûna znaleúê równieû w górnym
  149. menu. Szczególnie cenna wydaje sië moûliwoôê wyrównywania nazw
  150. obiektów do lewej bâdú do prawej krawëdzi. Choêbyômy nie wiem ile
  151. miejsca przeznaczyli na pole Nazwa obiektu, to i tak znajdâ sië
  152. nazwy dîuûsze -- zwykle zaleûy nam na zobaczeniu koïca ôcieûki
  153. dostëpu, wiëc ustawiamy wyrównywanie do prawej krawëdzi. Gdy
  154. chcemy jednak zobaczyê poczâtek ôcieûki dostëpu do jakiegoô
  155. "tasiemca", to wystarczy przeîâczenie jednej opcji w górnym menu
  156. i juû widzimy to, co chcemy widzieê. Moûna równieû, co zresztâ
  157. widaê na rysunku 2., wyîâczyê pokazywanie tzw. linii stanu i
  158. gadûetów -- wtedy caîa przestrzeï gîównego okna jest przeznaczona
  159. na cenne informacje o monitorowanych programach... Osobne menu
  160. Bufor umoûliwia równieû zapisanie zawartoôci bufora z
  161. informacjami o monitorowanych funkcjach bâdú tylko widocznego w
  162. danym momencie jego fragmentu do pliku lub do clipboardu, jak
  163. równieû wyczyszczenie bufora.
  164.  
  165. SnoopDOS ma równieû rozbudowany interfejs ARexxa z ponad 100
  166. komendami.
  167.  
  168. Z tego artykuîu nietrudno sië chyba zorientowaê, ûe uwaûam
  169. SnoopDOS za wspaniaîy program. Bardzo cennâ jego cechâ jest
  170. pewnoôê dziaîania. Podczas kilkugodzinnych eksperymentów, które z
  171. nim przeprowadzaîem, czytajâc równoczeônie instrukcjë i robiâc
  172. piëê innych rzeczy, jak to mam w zwyczaju, system operacyjny
  173. pozostawaî w doskonaîej stabilnoôci, a SnoopDOS ani razu nie
  174. zachowaî sië niezgodnie z oczekiwaniami. Jest to po prostu
  175. doskonale przetestowany program. Jedynâ, moim zdaniem, jego wadâ
  176. jest wielkoôê -- program zajmuje niemal 100 KB. Nie jest to duûo,
  177. zwaûywszy na jego moûliwoôci, ale trudno nie oprzeê sië wraûeniu,
  178. ûe mógîby byê znacznie krótszy, gdyby nie miaî interfejsu
  179. ARexxa (którego przydatnoôê w tego typu programie jest bardzo
  180. dyskusyjna), nie zaszkodziîoby teû, gdyby caîa czëôê
  181. konfigurujâca byîa wydzielona w osobnym programie. SnoopDOS jest
  182. (IMHO) rolls-roycem wôród programów monitorujâcych, tak samo
  183. jak Directory Opus wôród manipulatorów plikowo-katalogowych i
  184. MUI wôród interfejsów uûytkownika. Takie programy majâ to do
  185. siebie, ûe polaryzujâ opinie: zwykle albo sië je uwielbia, albo
  186. sië ich nie cierpi. Ja zaliczyîbym siebie do mniej radykalnego
  187. skrzydîa tej pierwszej grupy.
  188.  
  189.