Laskuharjoitus
[
Page in English]
Tietokoneen rakenne, S2003, LH 1
Käsitellään laskuharjoituksissa viikolla 39 (23-24.9.2003)
- 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.
- Milloin keskeytyskäsittelijästä paluun yhteydessä ei
siirrytä käyttäjätilaan?
- Mitä hyötyä etuoikeutetusta tilasta on? Mitä haittaa?
- Olisiko järkevää tarjota useampitasoisia etuoikeutettuja tiloja?
Miksi?
- Tehtävät 3.8 ja 3.10 kirjasta [Stal03, s. 92] (teht.
3.7 ja 3.9 [Stal99, s. 91]).
- Tehtävä 3.7 kirjasta [Stal03, s.
91]
(teht. 3.6 [Stal99, s. 91])
- Miten estetään kahden laitteen yhtäaikainen toiminta
Bus-Masterina, kun ne yrittävät yhtäaikaa käyttää väylää? Kuka
päättää? Mikä tai mitkä laitteet saavan vuoron? Millä tavoin
laite tietää saaneensa vuoron?
- Mikä määrää, montako laitetta väylään voi liittää?
- 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.23 [Stal03] tai kuva 3.22 [Stal99])
- 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