581332 Rinnakkaisohjelmistot (2 ov) / Kurssikuvaus 581332 Parallelprogramvara (2 cu) 581332 Concurrent Systems (2 cu) |
Asema opetuksessa
Tietojenkäsittelytieteen cum laude approbatur-oppimäärän pakollinen kurssi.
Kurssi vastaa ennen lukuvuotta 2000-2002 luennoidun kurssin Rinnakkaisohjelmistot (4 ov) jälkimmäistä osaa, eikä näitä kahta kurssia voi sisällyttää samaan tutkintoon
Tavoitteet
Kurssin tavoitteena on ymmärtää rinnakkaisten ja hajautettujen järjestelmien ohjelmoinnin peruskäsitteet, tuntea keskeinen ongelmanasettelu sekä osata soveltaa tavallisimpia ratkaisumenetelmiä.
Esitiedot
Esitietoina edellytetään kurssien Tietokoneen toiminta (2 ov) ja Käyttöjärjestelmät I (2 ov) sisällön hallinta eli muodollisesti ottaen ko. kurssien suoritus.
Tämän kurssin jälkeen sopii suoritettavaksi esimerkiksi kurssit Verkkosovellusten toteuttaminen (2 ov) sekä Hajautetut järjestelmät (3 ov).
Suoritustavat
Kurssin voi suorittaa
- luentokurssina osallistumalla aktiivisesti kurssin harjoituksiin ja välittömästi kurssia seuraavaan kurssikuulusteluun
- tai osallistumalla kurssin erilliskokeeseen.
Syksystä 2002 alkaen voi TKTL:n cum laude approbatur -kurssien suoritusta yrittää luentokurssina harjoituspaikan varaamalla vain kahdesti. Yrityskerraksi tulkitaan ilmoittautuminen, jota ei ole peruttu määräaikaan mennessä, yleensä ensimmäisen harjoitusviikon loppuun mennessä. Ennen syksyä 2002 tehtyjä yrityksiä ei lasketa sääntöä sovellettaessa. Erilliskokeilla suorittamiseen ei liity rajoituksia.
Kurssi luennoidaan joka vuosi syyslukukaudella. Poikkeuksellisesti nyt myös keväällä 2004. Luentokurssiin sisältyy
- luentoja 24 tuntia (4h/vko)
- harjoituksia 6 * 2 tuntia sekä
- kurssikuulustelu 3,5 tuntia.
Arvosana määräytyy kurssikuulustelusta ja harjoituksista tai erilliskokeesta saatujen pisteiden perusteella (yleensä) seuraavasti
pisteitä 30 33 36 39 42 45 48 51 arvosana 1- 1 1+ 2- 2 2+ 3- 3
Erilliskokeita on lukuvuoden aikana 4 kertaa: kaksi kevätlukukaudella (tammikuu ja maaliskuu), yksi kesällä (elokuu) sekä yksi syyslukukaudella (syys/lokakuun vaihde). Erilliskokeen perusteella arvosanaa määrättäessä ei huomioida kurssin yhteydessä saatuja harjoituspisteitä.
Ilmoittautuminen
Kurssille ilmoittaudutaan Tietojenkäsittelytieteen ILMO-järjestelmän avulla kirjoittautumalla johonkin kurssin harjoitusryhmään. Ilmoittautumisohjelma käynnistyy, kun avaat Internet selaimessa sivun
ilmo.cs.helsinki.fi
Kurssikuulusteluun ei tarvitse erikseen ilmoittautua. Erilliskokeeseen tulee ilmoittautua viimeistään koetta edeltävän viikon maanantaina.
Klikkaa tähän, jos haluat ilmoittautua kurssille nyt.
Kurssimateriaali
Kurssi perustuu lähinnä oppikirjaan G.R. Andrews: Foundations of Multithreaded, Parallel, and Distributed Programming. Addison-Wesley, 2000. Lukkiutumista ja etäproseduureja käsittelevät osat löytyvät esimerkiksi Stallingsin kirjasta.
Kurssilla suositellaan Andrewsin kirjan hankintaa. Hinta 15.10.2002 oli Akateemisessa kirjakaupassa 59,50 euroa ja Yliopistonkirjakaupassa 58 euroa. Dataclub ilmoitti 11.11.2002 hinnaksi 56,50 euroa (jäsenille 5% alennus).
Kurssin kotisivuihin pääset käsiksi URL:lla http://www.cs.helsinki.fi/kurssit/cum_laude/581332-8/.
Kurssin uutis- ja keskusteluryhmä on hy.opiskelu.tktl.rio.
Sisältö
Sisältö jakaantuu karkeasti ottaen kolmeen osaan:
- Johdanto: Rinnakkaisuus ja samanaikaisuus
- Kommunikointi yhteisen muistin avulla
Prosessien kommunikointitavat
Semaforien käyttö rinnakkaisuuden valvonnassa
Lukkiutuminen
Monitorit - Kommunikointi ilman yhteistä muistia
Sanomanvälitys
Etäproseduurit
Rendezvous
Kurssi perustuu pääosin oppikirjaan
G. R. Andrews, Foundations of Multithreaded, Parallel, and Distributed Programming; Addison Wesley Longman, 2000. Kurssiin liittyvät luvut 1, 2.1-2.5, 3.1-3.2, 4 (4.6 tutustu, ei kokeessa), 5.1-5.2 (5.3-5.5, tutustu, ei kokeessa), 6.3-6.5 (6.1-6.2 tutustu, ei kokeessa), 7.1-7.5, 8.1-8.2 ja 10.3.
Lukkiutumista ja etäproseduureja koskevat osat löytyvät kirjasta
W. Stallings: Operating Systems; Prentice Hall, 2001, 4th ed. (myös 3rd ed. OK). Kurssiin liittyvät luvut 5, 6.1-6.6 ja 13.3 (13.1-13.2 tutustu)
Luentokalvot ja laskuharjoitukset muodostavat tarkimman määrittelyn kurssin alueesta. Huomattakoon kuitenkin, että kalvokopiot eivät ole oppikirja vaan paremminkin laajennettu sisällysluettelo.
Timo Alanko, Auvo Häkkinen, Liisa Marttinen