./mks_d 
	  |________mks32 (proces skanera)
	  |________mks_d (obsuga klienw)
			  	|________mks_d (obsuga klienta #1)
		  		|________mks_d (obsuga klienta #2)
			  [...]
	  			|________mks_d (obsuga klienta #MAX_CLIENTS)

1. mks_d zaczyna od zforkowania si i uruchomienia mks32 w trybie nasuchiwania 
	na polecenia na stdin (std_in, std_out i std_err zostay podmienione na 
	rurki do procesu macierzystego)
2. proces macierzysty czyta to co ma do powiedzenia mks32 (po rurkach) [funkcja 
	init_mks() ], zakada gniazdko do komunikacji z klientami [init_socket] i
	czeka na poczenia, jeli wyczyta z mks32 'ja si dobrze uruchomiem'
	to robi fork() i dalej nasuchuje w nowym procesie, tato zwraca 0 inaczej
	zwraca 1.

3. kade poczenie to fork() i oddzielny proces zajmujcy si klientem.
	{ nowy proces czyta z gniazdka dlugosc pliku i znak '\n', potem tyle 
	 bajtw ile wynosi dugo zrzuca go do pliku tymczasowego, 
	 przejmuje komunikacj z mks32 [lock_mks] i wysya mu nazw pliku, 
	 wyjcie z mks_err przesyane jest po gniazdku do klienta, po czym plik
	 tymczasowy jest kasowany, a gniazdko zamykane.
	 }

4. tatu czeka i utrzymuje statystyk aktualnie podpitych klientw (w int 
 child_count) jeli jest ich za duo ( > MAX_CLIENTS) wykonuje usleep(100)
 
 5. Co 5 minut demon loguje przez syslog ilo aktualnie obsugiwanych klientw
 oraz czas (procesora w s) powiencony na operacje wejcia/wyjcia w synkach 
 (komunikacj z klientami). Po zakoczeniu zaloguje sumaryczny czas (cpu) 
 powicony na skanowanie.
 Liczby w komunikacie "ch s/n :200/0 t u/s: 0.01/:0.03 ch u/s:  2.29/ 1.20"
 oznaczaj: ilo klientw obsuonych, obsugiwanych, czasy uytkownika i
 systemu dla demona oraz dla procesw potomnych. [tak wic ostatnia liczba 
 to rzeczywisty czas powicony skanowaniu oraz komunikacji z klientami].
$Id: JAK_TO_DZIALA,v 1.1.1.1 2002/08/04 18:49:46 hunter Exp $
