ITKA203 Käyttöjärjestelmät (5 op)

Opinnon taso:
Aineopinnot
Arviointiasteikko:
0-5
Suorituskieli:
suomi
Vastuuorganisaatio:
Informaatioteknologian tiedekunta
Opetussuunnitelmakaudet:
2020-2021, 2021-2022, 2022-2023

Kuvaus

Sisältö

Käyttöjärjestelmän rakenne ja periaatteet, rinnakkaisuus, ajoitus, muistin hallinta, oheislaitteiden hallinta, tiedostojärjestelmä. Konekielisen ohjelmoinnin perusteita. Unix-tyyppisen kuoren käyttöä.

Suoritustavat

Harjoitustehtävät ja tentti.

Arviointiperusteet

Kurssin läpäisemiseksi on tehtävä hyväksytysti pakolliset harjoitukset ja tentti. Arvosana perustuu tenttiin, jossa on saatava vähintään puolet pisteistä. Opettaja voi määritellä kunkin luentokurssin aikana vapaaehtoisia lisätehtäviä, joilla voi korottaa tenttiarvosanaa. Nämä mahdolliset lisäpistetehtävät eivät ole käytettävissä luentokurssin aikaikkunan ulkopuolella.

Osaamistavoitteet

Kurssin asiat omaksuttuaan opiskelija tuntee käyttöjärjestelmän tarkoituksen ja perustoiminnot (mm. prosessien hallinta, resurssien ja ajastuksen koordinointi, muistinhallinta, oheislaitteiden ohjaus, keskeytysten ja käyttöjärjestelmäkutsujen käsittely, tiedostojärjestelmä, kuori). Hän ymmärtää prosessorin suoritussyklin, konekielisen ohjelman perusohjausrakenteet, käyttöjärjestelmän kutsurajapinnan periaatteen, keskeytyskäsittelyn sekä pinomuistia käyttävän aliohjelma-aktivaation tapahtumisen natiivissa ohjelmassa prosessorin toimenpiteenä. Hän osaa kirjoittaa yksinkertaisen sovellusohjelman symbolisella konekielellä, lukea käskyn dokumentaation prosessorimanuaalista ja tulkita debuggerin disassembly-tulosteita. Hän tunnistaa tarpeen ja hyödyt prosessien ja säikeiden samanaikaisesta (concurrent) suorittamisesta sekä osaa varautua tähän liittyviin synkronointitarpeisiin käyttämällä poissulkua ja semaforia. Yksityiskohtaisemmat osaamistavoitteet, reaaliaikaisesti päivitetty: https://yousource.it.jyu.fi/itka203-kurssimateriaalikehitys/itka203-kurssimateriaali-avoin/blobs/master/osaamistavoitteet.txt

Esitietojen kuvaus

Ohjelmointi 1 -kurssin hyvä hallinta on välttämätön esitieto. Tietokoneen rakenne ja arkkitehtuuri, Algoritmit 1, Ohjelmointi 2 C/C++ -lisäosineen auttavat, vaikka tarvittavat osat mainituista voidaan hahmottaa kurssilla myös ensimmäistä kertaa. Esitietojen puuttuessa opiskelijan tulee varautua käyttämään aikaa niiden opiskeluun varsinaisen sisällön lisäksi. Kurssi on ohjeellisesti toisen lukuvuoden kurssi.

Pakolliset esitiedot

Oppimateriaalit

Reaaliaikaisesti päivittyvä avoin kurssimateriaali: https://yousource.it.jyu.fi/itka203-kurssimateriaalikehitys/itka203-kurssimateriaali-avoin/ Lisäksi reaalimaailman dokumentaatiota, esim. POSIX-standardi, C99-kielen standardi, AMD64-prosessorimanuaali, tieteelliset artikkelit.

Suoritustavat

Tapa 1

Valitaan kaikki merkityt osat
Suoritustapojen osat
x

Osallistuminen opetukseen (5 op)

Tyyppi:
Osallistuminen opetukseen
Arviointiasteikko:
0-5
Suorituskieli:
suomi

Opetus