13S113KDP - Konkurentno i distribuirano programiranje
Specifikacija predmeta | ||||
---|---|---|---|---|
Naziv | Konkurentno i distribuirano programiranje | |||
Akronim | 13S113KDP | |||
Studijski program | Softversko inženjerstvo | |||
Modul | ||||
Tip studija | osnovne akademske studije | |||
Nastavnik (predavač) | ||||
Nastavnik/saradnik (vežbe) | ||||
Nastavnik/saradnik (DON) | ||||
Broj ESPB | 6.0 | Status predmeta | obavezan | |
Uslovljnost drugim predmetima | Programiranje 1, Objektno orijentisano programiranje 2 | |||
Ciljevi izučavanja predmeta | Upoznavanje studenata sa osnovnim konceptima konkurentnog i distribuiranog programiranja. Uvođenje pojma različitih nivoa apstrakcije u konkurentnom i distribuiranom programiranju. Osposobljavanje studenata za pisanje konkurentnih i distribuiranih programa za najčešće probleme u različitim programskim jezicima. | |||
Ishodi učenja (stečena znanja) | Posedovanje osnovnih znanja o konceptima, algoritmima, principima, problemima i rešenjima vezanim za konkurentno i distribuirano programiranja. Prepoznavanje različitih nivoa apstrakcije u konkurentnom i distribuiranom programiranju. Osposobljenost studenta da u jeziku Java samostalno pišu jednostavne konkurentne i distribuirane aplikacije i da samostalno rešava najčešće probleme sinhronizacije. | |||
Sadržaj predmeta | ||||
Link ka stranici predmeta | https://rti.etf.bg.edu.rs/rti/ir3kdp/index.html | |||
Link ka predavanjima | 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 | |||
Sadržaj teorijske nastave | Koncepti procesa i sinhronizacije. Locks i barijere, Tie Breaker, Ticket i Bakery algoritmi. Različiti načini implementacije barijera. Semafori. Raspodeljeni binarni semafori, tehnike prosleđivanja štafete, alokacija resursa. Monitori. Uslovne promenljive, discipline za signal, analiza dijagrama stanja monitora. Prosleđivanje poruka. Asinhrono i sinhrono prosleđivanje poruka. Udaljeni pozivi procedura. | |||
Sadržaj praktične nastave | Korišćenje semafora, monitora, regiona i prosleđivanja poruka za rešavanje tipskih problema: Čitaoci i pisci, Proizvođači i potrošači, Most sa jednom kolovoznom trakom, Filozofi za ručkom, Nervozni pušači, Berberin koji spava, Vožnja toboganom i drugi. Distribuirano programiranje (CSP i Linda). Realizacija semafora, uslovnih regiona, monitora, prosleđivanja poruka i udaljenog poziva metoda u Javi. | |||
Literatura | ||||
| ||||
Broj časova aktivne nastave nedeljno tokom semestra/trimestra/godine | ||||
Predavanja | Vežbe | DON | Studijski i istraživački rad | Ostali časovi |
2 | 2 | 1 | ||
Metode izvođenja nastave | Predavanja, auditorne vežbe, laboratorijske vežbe, projekti | |||
Ocena znanja (maksimalni broj poena 100) | ||||
Predispitne obaveze | Poena | Završni ispit | Poena | |
Aktivnosti u toku predavanja | 0 | Pismeni ispit | 30 | |
Praktična nastava | 20 | Usmeni ispit | 0 | |
Projekti | 0 | |||
Kolokvijumi | 50 | |||
Seminari | 0 |