13С113КДП - Конкурентно и дистрибуирано програмирање
| Спецификација предмета | ||||
|---|---|---|---|---|
| Назив | Конкурентно и дистрибуирано програмирање | |||
| Акроним | 13С113КДП | |||
| Студијски програм | Софтверско инжењерство | |||
| Модул | ||||
| Тип студија | основне академске студије | |||
| Наставник (предавач) | ||||
| Наставник/сарадник (вежбе) | ||||
| Наставник/сарадник (ДОН) | ||||
| Број ЕСПБ | 6.0 | Статус предмета | обавезан | |
| Условљност другим предметима | Програмирање 1, Објектно оријентисано програмирање 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 | |||
| Садржај теоријске наставе | Концепти процеса и синхронизације. Locks и баријере, Tie Breaker, Ticket и Bakery алгоритми. Различити начини имплементације баријера. Семафори. Расподељени бинарни семафори, технике прослеђивања штафете, алокација ресурса. Монитори. Условне променљиве, дисциплине за сигнал, анализа дијаграма стања монитора. Прослеђивање порука. Асинхроно и синхроно прослеђивање порука. Удаљени позиви процедура. | |||
| Садржај практичне наставе | Коришћење семафора, монитора, региона и прослеђивања порука за решавање типских проблема: Читаоци и писци, Произвођачи и потрошачи, Мост са једном коловозном траком, Филозофи за ручком, Нервозни пушачи, Берберин који спава, Вожња тобоганом и други. Дистрибуирано програмирање (CSP и Linda). Реализација семафора, условних региона, монитора, прослеђивања порука и удаљеног позива метода у Јави. | |||
| Литература | ||||
| ||||
| Број часова активне наставе недељно током семестра/триместра/године | ||||
| Предавања | Вежбе | ДОН | Студијски и истраживачки рад | Остали часови |
| 2 | 2 | 1 | ||
| Методе извођења наставе | Предавања, аудиторне вежбе, лабораторијске вежбе, пројекти | |||
| Оцена знања (максимални број поена 100) | ||||
| Предиспитне обавезе | Поена | Завршни испит | Поена | |
| Активности у току предавања | 0 | Писмени испит | 30 | |
| Практична настава | 20 | Усмени испит | 0 | |
| Пројекти | 0 | |||
| Колоквијуми | 50 | |||
| Семинари | 0 | |||

