ZADANIE 3 ****************************** termin rozliczenia: na zajeciach 17/18 maja (za zgoda prowadzacego lab. mozna termin przedluzyc do konca tygodnia, tzn. do 19 maja) ****************************** #define IDENTSIZE 10 #define SETSIZE 30 Proces Hash (server) zarzadza tablica mieszajaca zawierajaca klucze i napisy (rozmiar tablicy wynosi SETSIZE, napis ma co najwyzej IDENTSIZE znakow). Hash po uruchomieniu czyta z wejscia klucze i napisy (az do napotkania znaku konca pliku, jesli na wejsciu zostanie podanych wiecej par niz wynosi rozmiar tablicy, to nadmiarowe sa ignorowane). Nastepnie Hash czeka na zlecenia klientow. Kazdy proces klient czyta z wejscia pare klucz i napis, po czym wysyla ja do servera. Server odbiera pare i jesli znajdzie w swojej tablicy pare o tym samym kluczu, to przekazuje klientowi poprzedni napis, a w jego miejscu zapamietuje nowy. Jesli pary o takim kluczu nie ma, to: -- jesli w tablicy jest miejsce, to wprowadza pare,a klientowi przekazuje komunikat "Inserted!", -- jesli w tablicy nie ma miejsca, to ignoruje pare, a klientowi przekazuje komunikat "Ignored!". Klient po odebraniu komunikatu wysyla go na standardowe wyjscie. Klient konczy dzialanie po napotkaniu na wejsciu sytuacji konca pliku. Zapisac dzialanie procesow klienta i servera implementujac komunikacje miedzy nimi za pomoca RPC. Mozna uzyc najprostszej mozliwej funkcji mieszajacej (klucz mod rozmiar_tablicy) i funkcji do rozstrzygania konfliktow (rehash liniowy). Powodzenia, Janina Mincer (3.02.1995)