Tietokoneen toiminta, 2
ov
Uusintakuulustelu 5.10.2002 (Avoin yo)
Tähän uusintakuulusteluun voivat osallistua vain kesällä 2002 Avoimen
yliopiston tietokoneen toiminta -kurssille aktiivisesti osallistuneet
(vähintään 10 harjoitustehtäväpistettä) opiskelijat. Arvosana määräytyy
tämän tentin ja tehtyjen harjoitustehtävien perusteella. Tentti arvostellaan
21.10.2002 mennessä.
Kirjoita jokaiseen vastauspaperiisi seuraavat tiedot: oma nimi,
opiskelijanumero (tai henkilötunnus),
kurssin nimi, nimikirjoitus ja sivunumero.
- [12 p] Prosessi (process).
- Mikä on prosessin esitysmuoto järjestelmässä?
- Mitkä ovat prosessin suoritusaikaiset tilat (state)?
- Miten prosessin tila näkyy käyttöjärjestelmälle (operating
system)?
- Miten prosessin tila näkyy prosessille itselleen?
- Miten ja milloin prosessin tila muuttuu? Käsittele kukin mahdollinen
tilasiirtymä erikseen. Kerro kustakin tilasiirtymästä
esimerkkitapahtuma, joka voisi aiheuttaa kyseisen tilasiirtymän.
- [12 p] Ohjelmien suoritus
- Miten suoritin suorittaa konekielisiä ohjelmia?
- Minkä tyyppiset tapahtumat aiheuttavat poikkeuksia käskyjen
normaaliin suoritusjärjestykseen? Anna mahdollisimman tyhjentävä
selitys eri poikkeustyypeistä.
- Miten nämä poikkeustilanteet käsitellään?
- Miten poikkeustilanteiden käsittely suhtautuu aliohjelmakutsuun ja
aliohjelmasta paluuseen? Erot/samankaltaisuudet?
- [12 p] Tiedon muuttumattomuuden valvonta.
- [4 p] Mitä tarkoittaa käsite pariteettibitti? Anna esimerkki, jossa
käytetään paritettibittiä tiedon muuttumattomuuden valvonnassa. Anna
myös esimerkki tiedon muuttumattomuuden valvontaan liittyvästä
tilanteesta, jossa pariteettibitin käyttö ei ole riittävä (mutta
Hamming-koodin käyttö olisi riittävä). Perustele molemmat
esimerkkisi.
- [4 p] Mitä tarkoittaa käsite Hamming-koodi? Anna esimerkki, jossa
käytetään Hamming-koodia tiedon muuttumattomuuden valvonnassa. Anna
myös esimerkki tiedon muuttumattomuuden valvontaan liittyvästä
tilanteesta, jossa Hamming-koodin käyttö ei ole riittävä (mutta
CRC:n käyttö olisi riittävä). Perustele molemmat esimerkkisi.
- [4 p] Mitä tarkoittaa käsite CRC (Cyclic Redundancy Code)? Anna
esimerkki, jossa käytetään CRC:tä tiedon muuttumattomuuden
valvonnassa. Anna myös esimerkki tiedon muuttumattomuuden valvontaan
liittyvästä tilanteesta, jossa CRC:n käyttö ei ole riittävä.
Perustele molemmat esimerkkisi.
- [12 p] Ttk-91 koneen (symbolinen) konekieli. Kokonaislukuarvoinen
funktio Help(A,B,C) palauttaa arvonaan lausekkeen A+2B+3C arvon. Esimerkiksi
kutsu Help(3,2,1) palauttaa siis arvon 10. Kaikki kolme parametria ovat
arvoparametreja.
- [4 p] Anna ttk-91 koneen symbolisen konekielen konekäskyt, joilla
k.o. funktiota käyttäen lasketaan ja tulostetaan arvo Help(321, 987,
1234567).
- [3 p] Anna ttk-91 koneen symbolisen konekielen konekäskyt, joilla
k.o. funktiota käyttäen (kolmella kutsukerralla) lasketaan ja
tulostetaan arvo Help(4, Help(5,6,7), Help(1,2,3)).
- [5 p] Anna funktion Help(A,B,C) ttk-91 koneen symbolisella
konekielellä tehty toteutus.
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