Tietokoneen toiminta, 2 ov
(Other
side in English )
Kurssikuulustelu 6.9.2002 (Avoin yo)
Kirjoita jokaiseen vastauspaperiisi seuraavat tiedot: oma nimi,
opiskelijanumero (tai henkilötunnus),
kurssin nimi, nimikirjoitus ja sivunumero.
- [12 p] Prosessi (process).
- [2 p] Määrittele käsite prosessi. Miten se eroaa ohjelmasta?
- [2 p] Mikä on prosessin esitysmuoto järjestelmässä? Mitä tietoja
siinä on? Missä se sijaitsee?
- [2 p] Mikä on käyttöjärjestelmäprosessi? Miten se eroaa
tavallisesta prosessista?
- [2 p] Mitä järjestelmässä tapahtuu prosessin vaihdon yhteydessä?
Mitä aikaisemmalle prosessille tapahtuu?
- [2 p] Anna esimerkki tilanteesta, jossa suoritustilassa (running)
oleva prosessi siirtyy valmis suoritukseen -tilaan (ready-to-run).
- [2 p] Anna esimerkki tilanteesta, jossa odotustilassa (waiting)
oleva prosessi siirtyy ensin valmis suoritukseen -tilaan (ready-to-run)
ja sitten välittömästi suoritustilaan (running).
- [12 p] Konekäskyjen suoritus.
- [2 p] Miten ttk-91 konekäsky "ADD R2, VarX(R1)"
esitetään muistissa?
- [4 p] Miten suorittimella tapahtuu konekäskyä "ADD R2,
VarX(R1)" suoritettaessa käskyn suoritussyklin eri vaiheissa?
- [3 p] Määrittele käsite keskeytys (exception, interrupt).
Minkä tyyppisiä keskeytyksiä on olemassa? Miten keskeytykset
käsitellään suorittimella?
- [3 p] Mitä keskeytyksiä voi laitteistossa tapahtua konekäskyn "ADD
R2, VarX(R1)" suorituksen aikana?
- [12 p] Java
- [3 p] Mitä yhteistä Java-ohjelmien suorittamisella on ttk-91
ohjelmien suorittamisella Koksi simulaattorissa?
- [3 p] Mitä eroa Java-ohjelmien suorittamisella on ttk-91 ohjelmien
suorittamisella Koksi simulaattorissa?
- [3 p] Mikä on Java virtuaalikone (JVM, Java Virtual Machine)? Mikä
on sen merkitys?
- [3 p] Miten JVM eroaa tavallista suorittimista (esim, Intel Pentium,
IBM PowerPC, AMD Athlon)?
- [12 p] Aliohjelmien/funktioiden toteutus.
- [3 p] Miten aliohjelmat toteutetaan konekielitasolla? Mitkä asiat
ovat tärkeitä aliohjelmien toteutuksessa?
- [1 p] Mitä erityistä on rekursiivisten aliohjelmien toteutuksessa?
- [4 p] Funktio Aver(A, B, C, D) palauttaa arvonaan parametreina
annettujen neljän kokonaisluvun keskiarvon. Parametrit ovat kaikki
arvoparametreja. Anna ttk-91 symbolisella konekielellä ohjelma, joka
(i) lukee neljä kokonaislukua, (ii) funktiota Aver käyttäen laskee
k.o. lukujen keskiarvon ja (iii) lopulta tulostaa k.o. keskiarvon.
- [4 p] Toteuta ttl-91 symbolisella konekielellä edellisessä kohdassa
mainittu funktio Aver(A, B, C, D).
Noudata luennolla ja harjoituksissa esitettyjen suositusten mukaista
aliohjelmien (funktioiden) toteutustapaa ja kutsumekanismia.
TTK-91 konekielen käskyt ovat: NOP, STORE, LOAD, IN, OUT, ADD, SUB, MUL, DIV,
MOD, AND, OR, XOR, SHL, SHR, COMP, JUMP, JNEG, JZER, JPOS, JNNEG, JNZER, JNPOS,
JLES, JEQU, JGRE, JNLES, JNEQU, JNGRE, CALL, EXIT, PUSH, POP, PUSHR, POPR, SVC