Laskuharjoitus [
Page in English]
Tietokoneen rakenne, S2001, LH 1
Käsitellään laskuharjoituksissa viikolla 38 (18-21.9.2001)
- I/O.
- Mitä tarkoittaa muistiinkuvattu (memory-mapped) I/O?
- Mitä muita vaihtoehtoja I/O:n toteutukseen on kuin muistiinkuvattu
I/O?
- Miksi muistiinkuvattu I/O olisi parempi kuin sen vaihtoehdot?
- Miten voidaan toteuttaa systeemi, jossa käyttäjätason prosessit
eivät voi sotkea muistiinkuvatun I/O:n rakenteita vahingossa tai
tahallaan? Anna ainakin kaksi vaihtoehtoa.
- Käyttäjätila vs. etuoikeutettu suoritustila.
- Anna kolme erityyppistä tilannetta, jossa prosessorin suoritustila
vaihtuu käyttäjätilasta (user) etuoikeutettuun (kerner, supervisor)
tilaan.
- Anna kolme eri tyyppistä tilannetta, jossa prosessorin suoritustila
vaihtuu etuoikeutetusta (kerner, supervisor) tilasta käyttäjätilaan
(user).
- Mitä hyötyä etuoikeutetusta tilasta on? Mitä haittaa?
- Olisiko järkevää tarjota useampitasoisia etuoikeutettuja tiloja?
Miksi?
- Tehtävät 3.7 ja 3.8 kirjasta (s. 91). Jälkimmäinen vaatinee vähän
ajattelua.
- Kuvassa 3.19 esitetään CPU:n suorittama muistin READ-operaation ajoitus
sekä synkroonista että epäsynkroonista ajoitusta käyttäen. Anna
vastaavat kaaviot CPU:n WRITE-operaatiolle. Voit olettaa, että väylällä
on myös Write-signaali, jonka käyttö on analoginen Read-signaalin
käytön kanssa. Anna perustelut kullekin signaalitason muutokselle.
- PCI-väylä.
- Oletetaan, että muistipiiri voi löytää haetun datan joko yhden,
kahden tai kolmen kellojakson aikana. Miten muistipiiri kertoo tästä
CPU:lle? (ks. kuva 3.22)
- Oletetaan, että viimeisessä datajaksossa onkin vain yksi tavu dataa,
vaikka dataväylän leveys on 32 bittiä. Kuka päättää, missä
8-bitin osassa tuo tavu siirretään sekä miten ja milloin tämä tieto
välitetään toiselle osapuolelle?
- Mitä tapahtuu, jos kolme laitetta haluaa yhtäaikaa käyttää
väylää? Kuka päättää? Mikä tai mitkä laitteet saavan vuoron?
Millä tavoin laite tietää saaneensa vuoron?
">Teemu Kerola