Kas yra pėdsakų teorija?

Trace teorija susijusi su tuo, kaip kompiuterio aparatinė ir programinė įranga vienu metu apdoroja komandas. Jis kartais vadinamas lygiagrečiu skaičiavimu ir gali būti lyginamas su lygiagrečiojo skaičiavimo idėja. Pagrindinė lygiagrečio skaičiavimo idėja yra ta, kad keli procesai naudoja tuos pačius išteklius ir yra priklausomi vienas nuo kito. Svarbiausia pėdsakų teorijoje yra mintis, kad procesai gali susiformuoti be galo daug galimų modelių ir ryšių.

Dauguma kompiuterių aparatinės įrangos ir programavimo kalbų yra sukurtos remiantis pėdsakų teorija. Lygiagretusis kompiuteris tiria, kas yra apdorojama ir kaip vyksta apdorojimo veikla. Nors tuo pačiu metu vykstantys procesai, naudojantys tuos pačius išteklius, paprastai yra nepriklausomi vienas nuo kito, jie taip pat gali sąveikauti. Tarpusavio priklausomų procesų idėja sudaro lygiagrečio skaičiavimo ir priklausomybės grafikų esmę.

Nors kiekvienas skaičiavimo procesas gali vykti atskirai, priklausomybės diagramos rodo, kurie procesai gali naudoti tą pačią aparatinę ar programinę įrangą. Šiuose grafikuose ir skaičiavimuose priklausomasis veiksnys gali būti pažymėtas raide „C“ arba „D“. Priklausomybės grafikai iliustruoja, kad jei du procesai naudoja tam tikrą veiksnį, tai kiti procesai, kuriuose yra identiški identifikatoriai, taip pat priklausys nuo to paties veiksnio.

Kadangi pėdsakų teorija bando paaiškinti, kaip vyksta įvairūs skaičiavimo procesai ir komandos, priklausomybės grafikai ne tik nustato, kokie ištekliai naudojami, bet ir procesų kelius bei maršrutus. Svarbu atsižvelgti į tai, kad teorija teigia, kad su vienu veiksniu gali atsirasti tik tam tikras priklausomybių ar ryšių skaičius. Nors modelių skaičius vienu metu skaičiuojant yra begalinis, tik tam tikras skaičius procesų sudarys tą pačią priklausomybę arba naudos tuos pačius išteklius.

Pėdsakų teorija iliustruoja, kad lygiagrečiai procesai matematiškai yra lygūs vienas kitam. Tai panašu į idėją paimti dvi lygiagrečias linijas, nubrėžti per jas susikertančią liniją ir išmatuoti kampus priešingoje kiekvieno susikertančio taško pusėje. Nors pačios lygiagrečios linijos nesikerta, jos yra identiškos viena kitai ir turi tą pačią reikšmę. Tuo pačiu metu atliekamo skaičiavimo atveju susikertanti linija būtų lygi priklausomybei.

Kalba, naudojama įvairiems procesams, naudojantiems tas pačias priklausomybes, vaizduoti yra dvejetainė. Pavyzdžiui, vienas procesas gali būti vaizduojamas raidėmis „AC“, o kitas – raidėmis „AB“. Dvejetainė reikšmė „0“ gali būti priskirta procesui „AC“, o dvejetainė reikšmė 1 būtų priskirta procesui, pažymėtam „AB“.