next up previous contents
Next: B.1.1 Glavni program Up: B Algoritem distribuiranega programa Previous: B Algoritem distribuiranega programa Vsebina: contents

B.1 Upravitelj

Racunski moduli v sistemu PVM so izvrsni programi, ki jih je potrebno prevesti iz izvorne kode za vsako arhitekturo. V ta namen je razvit program aimk (Achitecture Indenpendent MaKe), ki olajsa izgradnjo programov za razlicne platforme. Za razliko od delavcev, pa nadzornik tece le na eni platformi, kar nekoliko zmanjsa skrb za prenosljivost in olajsa razvoj programa upravitelja. V nadaljevanju so predstavljeni bistveni deli programa nadzornika distribuiranega sistema, napisanega v jeziku C.

Osnovne globalne spremenljivke hranijo kazalce na dinamicno dodeljena spominska polja, katerih velikost se doloci pri zagonu programa, ko je znana zeljena velikost slike in vhodna datoteka.

static int verbose = 1; /* Nivo sporocil upravitelja */
* static int mytid; /* ID stevilka upravitelja */
* static int nserv; /* stevilo delavcev */
* static int nhost; /* stevilo streznikov hosts >= nserv */
* static int *servtids = 0; /* seznam ID streznikov */
* static int *servtiles = 0; /* polje statistike pasov */
* static int *servflist = 0; /* seznam prostih delavcev */
* static int *servjobs = 0; /* dodeljene naloge */
* static int servfree = -1; /* prvi prosti delavec */
* static int njobs; /* skupno stevilo nalog */
* static char **image; /* rezultat (slika) iz pasov */
* static int jobstogo; /* preostalo stevilo nalog */
* static int jobnext; /* naslednja naloga, ki bo dodeljena */
* static int height = 100; /* visina slike */
* static int width = 100; /* sirina slike */
* static struct pvmhostinfo *hostp; /* informacije o streznikih */

Ce imena vhodne in izhodne datoteke niso podane se privzameta podani vrednosti. Vhodna datoteka je v formatu POV, izhodna v formatu PPM (P6 raw).

static char inputFileName[MAXFILENAME] = "scene.pov";
* static char outputFileName[MAXFILENAME] = "scene.ppm";




Copyright © 1995 Leon Kos, Univerza v Ljubljani