Ero sivun ”Kurssikuvauksia” versioiden välillä

p
(lol joku rio)
Rivi 162: Rivi 162:
Laskuharjoituksiin tulee varata kohtuullisesti aikaa, sillä vastaukset harvemmin löytyvät suoraan lähdekirjallisuudesta. Ne on itse löydettävä soveltamalla opittua asiaa. TTK91-symbolinen konekieli vaikuttanee hieman kankealta, mutta ajaa tehtävänsä. Moni on ihmetellyt, miksei opetuskielenä käytetä jotain oikeaa assemblyä. Vastaus on melko yksinkertainen: Kurssilla on tarkoitus oppia tietokoneen toimintaa eikä nykyisten assemblerien ominaisuuksia makroineen ja muine asioineen, joilla toimintaan liittyvät yksityiskohdat voisi sivuuttaa. Tietokoneen toimintaankin kurssi on loppujen lopuksi melko pintaraapaisu.
Laskuharjoituksiin tulee varata kohtuullisesti aikaa, sillä vastaukset harvemmin löytyvät suoraan lähdekirjallisuudesta. Ne on itse löydettävä soveltamalla opittua asiaa. TTK91-symbolinen konekieli vaikuttanee hieman kankealta, mutta ajaa tehtävänsä. Moni on ihmetellyt, miksei opetuskielenä käytetä jotain oikeaa assemblyä. Vastaus on melko yksinkertainen: Kurssilla on tarkoitus oppia tietokoneen toimintaa eikä nykyisten assemblerien ominaisuuksia makroineen ja muine asioineen, joilla toimintaan liittyvät yksityiskohdat voisi sivuuttaa. Tietokoneen toimintaankin kurssi on loppujen lopuksi melko pintaraapaisu.


=== Rinnakkaisohjelmointi (6 op) ===
=== Rinnakkaisohjelmointi (4-6 op) ===


* Tunnetaan myös nimellä RiO
* Tunnetaan myös nimellä RiO
* Periodit 3-4
* Periodit 3-4
* 4-6 opintopistettä


Kurssilla tutustutaan rinnakkaisuuden ja hajautettujen järjestelmien algoritmeihin, niitten suunnitteluun ja toteutukseen. Näiden perustehtäviin kuuluu esimerkiksi varmistaa että useamman rinnakkaisen toiminnon jakama tieto pysyy korrektina päästämällä vain yhden prosessin kerrallaan muuttamaan kyseistä tietoa. Lisäksi käydään läpi rinnakkaisuuden formaalia esitystä sekä ohjelmien rinnakkaistamista ja sen mukanaan tuomia hyötyjä ja haittoja.
Kurssilla tutustutaan rinnakkaisuuden ja hajautettujen järjestelmien algoritmeihin, niitten suunnitteluun ja toteutukseen. Näiden perustehtäviin kuuluu esimerkiksi varmistaa että useamman rinnakkaisen toiminnon jakama tieto pysyy korrektina päästämällä vain yhden prosessin kerrallaan muuttamaan kyseistä tietoa. Lisäksi käydään läpi rinnakkaisuuden formaalia esitystä sekä ohjelmien rinnakkaistamista ja sen mukanaan tuomia hyötyjä ja haittoja.