6533b837fe1ef96bd12a2ba1

RESEARCH PRODUCT

Laiksakritības vadības modeļi JVM platformas programmēšanas valodās

Mārtiņš Mieriņš

subject

laiksakritībaScalaDatorzinātneClojureJVMJava

description

Programmētājam izstrādājot lietotnes dažkārt nākas tajās realizēt skaitļošanas procesus, kuri notiek vienlaicīgi, t.i., laiksakritīgi. Šāda nepieciešamība kļuvusi vēl aktuālāka līdz ar daudzkodolu centrālo procesoru izplatību. Lai varētu pilnā apjomā izmantot daudzos kodolus uz tiem vienlaicīgi jādarbina kādas lietotnes daļas. Lai to sasniegtu jāizmanto tāda vai citāda veida laiksakritīgas programmēšanas veids, jo programmējot standarta paņēmieniem sasniedzama tikai laiksecīga programmas izpilde. Rodas jautājums par tāda vai citāda veida laiksakritības vadības modeļa izmantošanu, kas ļauj kontrolēt, kādā veidā laiksakritīgas lietotnes daļas izmanto datora resursus un mijiedarbojas savā starpā. Bakalaura darbā pētīti laiksakritības vadības modeļi, kas sastopami dažās programmēšanas valodās, kuras darbojas uz Java virtuālās mašīnās, JVM platformas. Tiek apskatīts slēdzenes tipa modelis Java valodā, aktieru modelis valodā Scala un transakcionālās atmiņas vadības modelis valodā Clojure. Tāpat pētījuma ietvaros izveidotas divas dažādas viena uzdevuma versijas, izmantojot divus atšķirīgus laiksakritības modeļus. Autors pētījuma rezultātā nonāk pie secinājuma, ka lēmums par izmantojamo laiksakritības vadības modeli drīzāk jāizdara balstoties nevis uz paša vadības modeļa pozitīvajām un negatīvajām īpašībām, bet gan balstoties uz konkrētā pielietojuma apgabala un konkrētajā programmatūras izstrādes projektā izvirzītajām prioritātēm.

https://dspace.lu.lv/dspace/handle/7/29532