Навигација

13С113КДП - Конкурентно и дистрибуирано програмирање

Спецификација предмета
НазивКонкурентно и дистрибуирано програмирање
Акроним13С113КДП
Студијски програмСофтверско инжењерство
Модул
Тип студијаосновне академске студије
Наставник (предавач)
Наставник/сарадник (вежбе)
Наставник/сарадник (ДОН)
Број ЕСПБ6.0Статус предметаобавезан
Условљност другим предметимаОбјектно оријентисано програмирање 2
Циљеви изучавања предметаУпознавање студената са основним концептима конкурентног и дистрибуираног програмирања. Увођење појма различитих нивоа апстракције у конкурентном и дистрибуираном програмирању. Оспособљавање студената за писање конкурентних и дистрибуираних програма за најчешће проблеме у различитим програмским језицима.
Исходи учења (стечена знања)Поседовање основних знања о концептима, алгоритмима, принципима, проблемима и решењима везаним за конкурентно и дистрибуирано програмирања. Препознавање различитих нивоа апстракције у конкурентном и дистрибуираном програмирању. Оспособљеност студената да у језику Јава самостално пишу једноставне конкурентне и дистрибуиране апликације и да самостално решавају најчешће проблеме синхронизације.
Садржај предмета
Линк ка страници предметаhttps://rti.etf.bg.ac.rs/rti/ir3kdp/index.html
Линк ка предавањимаhttps://teams.microsoft.com/l/team/19%3a_iAFxut2Yo_jMhspRU1jwImn3k6rYnUs9uGMG4SocZA1%40thread.tacv2/conversations?groupId=11278807-cc07-44ca-9648-55a459b55a89&tenantId=1774ef2e-9c62-478a-8d3a-fd2a495547ba
Садржај теоријске наставеКонцепти процеса и синхронизације. Синхронизациони алгоритми. Баријере. Семафори. Расподељени бинарни семафори, технике прослеђивања штафете. Монитори, дисциплине, условне променљиве, стања. Региони. Прослеђивање порука. Асинхроно и синхроно прослеђивање порука. Директни и индиректно именовање. Удаљени позиви процедура. Рандеву.
Садржај практичне наставеКоришћење семафора, монитора, региона и порука за решавање проблема: Читаоци и писци, Произвођачи и потрошачи, Мост са једном коловозном траком, Филозофи за ручком, Берберин који спава, Вожња тобоганом и других. Дистрибуирано програмирање (CSP и Linda). Реализација семафора, условних региона, монитора, прослеђивања порука и удаљеног позива метода у Јави. Програмски језик Go.
Литература
  1. Захарије Радивојевић, Игор Икодиновић, Зоран Јовановић, Конкурентно и дистрибуирано програмирање, друго издање, Академска мисао, 2018.
  2. Gregory Andrews, Foundation of Multithreaded, Parallel and Distributed Programming, Addison Wesley, 2000
  3. Allen B. Downey, The Little Book of Semaphores, Green Tea Press, 2016
  4. Зоран Јовановић, Фолије за предавања, http://rti.etf.bg.ac.rs/rti/ri4drs/literatura/
  5. Захарије Радивојевић, Задаци за вежбу, http://rti.etf.bg.ac.rs/rti/ri4drs/literatura/
Број часова активне наставе недељно током семестра/триместра/године
ПредавањаВежбеДОНСтудијски и истраживачки радОстали часови
221
Методе извођења наставеПредавања, аудиторне вежбе, лабораторијске вежбе, пројекти
Оцена знања (максимални број поена 100)
Предиспитне обавезеПоенаЗавршни испитПоена
Активности у току предавања0Писмени испит40
Практична настава20Усмени испит0
Пројекти0
Колоквијуми40
Семинари0