Mis on jälgede teooria?

Jäljeteooria on seotud sellega, kuidas arvuti riist- ja tarkvara töötlevad käske üheaegselt. Seda nimetatakse mõnikord samaaegseks andmetöötluseks ja seda võib võrrelda paralleelse andmetöötluse ideega. Samaaegse andmetöötluse põhiidee seisneb selles, et mitu protsessi kasutavad sama ressurssi ja on üksteisest sõltuvad. Jäljeteoorias on kesksel kohal idee, et protsessid võivad moodustada lõpmatu arvu võimalikke mustreid ja seoseid.

Enamik arvutiriistvara ja programmeerimiskeeli on loodud jälgimisteooria järgi. Samaaegne andmetöötlus uurib, mida töödeldakse ja kuidas töötlemistegevus toimub. Kuigi samaaegsed protsessid, mis kasutavad samu ressursse, on tavaliselt üksteisest sõltumatud, võivad need ka omavahel suhelda. Vastastikku sõltuvate protsesside idee moodustab samaaegse andmetöötluse ja sõltuvusgraafikute tuumiku.

Kuigi iga andmetöötlusprotsess võib toimuda eraldi, näitavad sõltuvusgraafikud, millised protsessid võivad kasutada sama riist- või tarkvara. Nendel graafikutel ja arvutustes võib sõltuv tegur olla märgistatud tähega “C” või “D”. Sõltuvusgraafikud näitavad, et kui kaks protsessi kasutavad teatud tegurit, sõltuvad ka teised identseid identifikaatoreid sisaldavad protsessid samast tegurist.

Kuna jälgimisteooria püüab selgitada, kuidas erinevad arvutusprotsessid ja -käsud toimuvad, ei tuvasta sõltuvusgraafikud mitte ainult kasutatavaid ressursse, vaid ka protsesside kasutatavaid teid ja marsruute. Oluline on arvestada, et teooria väidab, et ühe teguriga võib esineda vaid teatud arv sõltuvusi või seoseid. Kuigi samaaegses arvutamises on mustrite arv lõpmatu, moodustab vaid valitud arv protsesse sama sõltuvuse või kasutab sama ressurssi.

Jäljeteooria illustreerib, et paralleelsed protsessid on matemaatiliselt üksteisega võrdsed. See sarnaneb ideega võtta kaks paralleelset sirget, tõmmata läbi nende ristuv joon ja mõõta iga ristumispunkti vastasküljel olevaid nurki. Kuigi paralleelsed sirged ise ei ristu, on need üksteisega identsed ja neil on sama väärtus. Samaaegse arvutuse korral oleks ristumisjoon samaväärne sõltuvusega.

Erinevate protsesside, mis kasutavad samu sõltuvusi, esitamiseks kasutatav keel on binaarne. Näiteks võib üht protsessi tähistada tähtedega “AC”, teist protsessi aga tähtedega “AB”. Binaarne väärtus “0” võib olla määratud protsessile “AC” ja binaarne väärtus 1 määratakse protsessile, mille nimi on “AB”.