Show simple item record

dc.contributor.advisorStraujums, Uldisen_US
dc.contributor.authorMieriņš, Mārtiņšen_US
dc.contributor.otherLatvijas Universitāte. Datorikas fakultāteen_US
dc.date.accessioned2015-07-06T01:08:22Z
dc.date.available2015-07-06T01:08:22Z
dc.date.issued2015en_US
dc.identifier.other49027en_US
dc.identifier.urihttps://dspace.lu.lv/dspace/handle/7/29532
dc.description.abstractProgrammē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.en_US
dc.description.abstractProgrammers now and then are required to develop software that operate on multiple things at the same time, i..e., concurrently. The need for concurrent software has recently become even more important due to widespread availability of multicore central processors. To make full use of the many CPU cores, one has to run on them application code concurrently. To make this happen, concurrent programming has to be employed because by using standard programming approach only sequential execution of a program can be achieved. Concurrent programming drives the question of concurrency control which is required to control use of hardware resources and interaction between concurrent parts of application. This bachelor paper investigates concurrency control models in scope of some languages to be found running on Java virtual machine, JVM platform. In detail lock based model in Java, actor model in Scala and software transactional model in Clojure are investigated. Also during the research two practical applications showcasing two different concurrency control models are developed. Author comes to conlcusion that choice of concurrency control model has to based rather on properties and priorities of software development project instead of merely judging positive and negatives aspects of a specific concurrency control model itself.en_US
dc.language.isoN/Aen_US
dc.publisherLatvijas Universitāteen_US
dc.rightsinfo:eu-repo/semantics/openAccessen_US
dc.subjectDatorzinātneen_US
dc.subjectJVMen_US
dc.subjectJavaen_US
dc.subjectScalaen_US
dc.subjectClojureen_US
dc.subjectlaiksakritībaen_US
dc.titleLaiksakritības vadības modeļi JVM platformas programmēšanas valodāsen_US
dc.title.alternativeConcurrency control models in JVM programming languagesen_US
dc.typeinfo:eu-repo/semantics/bachelorThesisen_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record