Stallings, Luku 1. KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-2. KJ-I S2003 / Auvo Häkkinen 2-1

Samankaltaiset tiedostot
ltöä rjestelmä Luento 2: LAITTEISTOSTA Tietokonejärjestelm KESKUSYKSIKKÖ Keskusyksikkö Kuva 1.1 KJ-I S2005 / Tiina Niklander & Auvo Häkkinen 2-1

Käyttöjärjestelmän rakenne

Käyttöjärjestelmät. Tietokoneen rakenne. Stallings, Luku 1. KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 1-1

Luento 2: LAITTEISTOSTA

Käyttöjärjestelmät, 8 op

Kurssin asema Käyttöjärjestelmät, 8 op. Kurssikirja. Kurssin tavoite. Kurssin rakenne: Kurssin suorittaminen. Käyttöjärjestelmät - Luento 1

Ongelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön?

Sisältöä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista. Tietokonejärjestelmä

Tietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949.

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä

1. Keskusyksikön rakenne

Käyttöjärjestelmät II

Luento 5 (verkkoluento 5) Suoritin ja väylä

Käyttöjärjestelmät, 8 op

Kurssin asema Käyttöjärjestelmät, 8 op. Siirtymävaiheen vastaavuudet. Kurssin tavoite. Kurssikirja. Kurssin rakenne:

Käyttöjärjestelmät II

ltö Luento 6: VIRTUAALIMUISTI Luento 7: Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä Suoritus virtuaalimuistissa

Yleiskuva. Käyttöjärjestelmät II. Tietokonejärjestelm. rjestelmä. KJ ja laitteistopiirteet. KJ ja laitteistopiirteitä.

Luento 6: VIRTUAALIMUISTI

Luento 2 (verkkoluento 2) Ttk-91 järjestelmä

NTÄ. Luento 8: SIIRRÄNT. Osio 3: Siirräntä ja tiedostojärjestelmä. ltö. Yleistä siirrännästä. Siirtonopeuksia (teoreettisia) Kuva 11.1.

Osio 3: Siirräntä ja tiedostojärjestelmä

Suoritin. Jakso 5 Suoritin ja väylä. TTK-91 muistin rakenne. TTK-91 suorittimen rakenne

Suoritin. Luento 5 Suoritin ja väylä. TTK-91 muistin rakenne. TTK-91 suorittimen rakenne

Jakso 5 Suoritin ja väylä

Suoritin. Luento 5 Suoritin ja väylä. TTK-91 suorittimen rakenne (1) TTK-91 muistin rakenne

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

Stallings, Luku 8.1. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 8-1

Luento 5 Suoritin ja väylä

Stallings, Luku

Luento 5 Suoritin ja väylä

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

Jakso 5 Suoritin ja väylä

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Tietokoneen toiminta, K Tavoitteet (4)

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

Jakso 5 Suoritin ja väylä. Suorittimen rakenne Väylän rakenne Käskyjen suoritussykli Poikkeukset ja keskeytykset TTK-91:n ja KOKSI:n rakenne

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori. Miksi konekieltä? Tietokone TTK-91. Miksi ei oikeaa konekieltä?

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

Luento 5 (verkkoluento 5) Suoritin ja väylä

Luento 2 TTK-91 tietokone ja sen simulaattori. Miksi konekieltä? Tietokone TTK-91. Miksi ei oikeaa konekieltä? TTK-91 (1) TTK-91 laitteisto

Suoritin. Luento 5 Suoritin ja väylä. TTK-91 suorittimen rakenne (1) TTK-91 muistin rakenne. Käskyjen nouto- ja suoritussykli (5)

Käyttöjärjestelmän rajapinnat

Käyttöjärjestelmän rajapinnat. Siirräntä: Laiteajurit ja keskeytys. I/O-ohjain. I/O-ohjain. Siirtomenetelmät. Käyttöjärjestelmän rakenne

Luento 5 Suoritin ja väylä

Luento 5 Suoritin ja väylä

Jakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori

Jakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori

Stallings, Luku 4.1. KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 4-1. KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 12-1

KJ-I S2003 / Auvo Häkkinen 2-1

Stallings, Luku 7. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 6-1

Kuva 8.7. u Muunnos prosessin sivunumerosta sivutilanumeroksi u Kussakin alkiossa: u Katenoimalla. u MMU:ssa; juuri äsken käytettyjä muunnoksia

Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI

Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori

Miksi konekieltä? Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori. Tietokone TTK-91. Miksi ei oikeaa konekieltä?

Järjestelmän ulkoinen muisti I/O

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

Muistihierarkia Kiintolevyt I/O:n toteutus

Ttk-91 esimerkkitietokone ja sen simulaattori

Miksi konekieltä? Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori. Tietokone TTK-91. Miksi ei oikeaa konekieltä? TTK-91: rekisterit

Jakso 8 Ohjelman suoritus järjestelmässä

Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori

Jakso 8 Ohjelman suoritus järjestelmässä

Osio 3: Prosessit, siirräntä ja tiedostojärjestelmä

Osio 2: Luennot 5-8 Muistinhallinta

Miksi konekieltä? Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori. Tietokone TTK-91. Miksi ei oikeaa konekieltä? TTK-91: tietotyypit (2)

u vapaakäyntisyys (reentrancy) u Yhteinen koodialue u kullakin oma data-alue, pino, PCB u osoitteet suhteellisia prosessin alun suhteen

Luento 2 (verkkoluento 2) Ttk-91 järjestelmä

ltöä (Luennot 5&6) Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Pikakertaus: : a) b) c) Dyn.. part.: sijoitus Kuva Buddy System: esimerkki

Stallings, Luku 8.1. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 7-1

Luento 3: PROSESSIT JA NIIDEN HALLINTA

Stallings, Luku I/O-laitteiden luokittelua, siirtonopeuksia Siirrännän perustekniikat Siirrännän kehittyminen

Stallings, Lukua 2. KJ-I S2004 / Tiina Niklander, kalvot: Auvo Häkkinen 3-2. KJ-I I S2004 / Tiina Niklander, kalvot: Auvo Häkkinen 3-1

Osio 2: Luennot 4-7 Muistinhallinta

Prosessi perinteisesti

KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen Stallings, Luku

VIRTUAALIMUISTI. Stallings, Luku 8.1

Sisältö VIRTUAALIMUISTI. Stallings, Luku 8.1. Suoritus virtuaalimuistissa. Suoritus virtuaalimuistissa. Puutoskeskeytys. Suoritus virtuaalimuistissa

Stallings, Luku 4.1. KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH

Prosessi (4) Suorituksessa olevan ohjelman esitysmuoto järjestelmässä. Jakso 8 Ohjelman suoritus järjestelmässä. Prosessin elinkaari (9)

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

Muistihierarkia Kiintolevyt I/O:n toteutus

Operating Systems, 8 op

Käyttöjärjestelmät. Teemu Saarelainen Tietotekniikka

Käyttöjärjestelmät: prosessit

Luento 9 Järjestelmän ulkoinen muisti

Luento 7: Käskykannat Tietokoneen rakenne / 2006 / Teemu Kerola 9/25/2006

Luento 9 Järjestelmän ulkoinen muisti

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100

Tietokoneen rakenne Käskysykli CPU suorittaa ohjelmaa konekielinen käsky kerrallaan

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus.

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

VIRTUAALIMUISTI. Stallings, Luku 8.1

Sisältö VIRTUAALIMUISTI. Stallings, Luku 8.1. Suoritus virtuaalimuistissa. Suoritus virtuaalimuistissa. Puutoskeskeytys. Suoritus virtuaalimuistissa

Sisältöä SÄIKEET, SMP

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus (2)

Käskykannat. Tietokoneen rakenne. Ch [Sta06] Operaatioista Operandeista Osoitustavoista Pentium / PowerPC. Luento 7-1

Käyttöjärjestelmät: Virtuaalimuisti

Transkriptio:

!!#&%')(*%,+ -.!+ /0!21 Stallings, Luku 1 KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-1 354 - /6!#7 8 9;:=<?>?@A<CBD>A<?EF>?>=G 8 9;H=<?>CBI<JBD>?KFE 8 9;:=<?>=:IBILMBI<ONMP<=:SRT>=H=<?EULVLW:SKXB 8 YEFEFZVZ[HSR=LWH 8 \]@?EU<AL6EF^?E_:SZ[PSZW>?E_P `a E_:=LWbc>=bSR?:?:SR a bsefdtefralwp.>?@?ze<a<?efrt>=:szelwpc@a<alwp KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-2 KJ-I S2003 / Auvo Häkkinen 2-1

1 44 +! +&%')(*%'+ -.!+ /0 ` 8 Yb :SKFKF@ <<=P?P.K_PSEULVLW:SE <ALWbSRT>=HIBILVL6G?GSRA<=H 9!#FRP D@A<AL6@?>A<=:SKFK_P CPU ja muisti oheislaitteet 8 &(' 9!TLWPSZ NMbSP?P.K_PSEULVLW:SEU<ALWbSRT>=HIBILWG=<A<=HLWPSZ%DEUL[LWP P=L PSK) :SKF@?RA<=P+* <=b :SK_KF@?>A<=:SKFK_: prosessien hallinta muistinhallinta siirräntäjärjestelmä tiedostojärjestelmä 8 9!.bSRLWHcZV>=:SEFRTK_PSEULVLW:SEU<ALWbSR <?@=bszveulvl6psdteu<alwptbs^*nm:skfdte <ALWbSEU<ALWP KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-3!!#&%')(*%,+ -.!+ /0! 1 -, 3 -. 3/ 3 1=10 KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-4 KJ-I S2003 / Auvo Häkkinen 2-2

+ - - - 44 # Kuva 1.1 Muista tärkeä tilarekisteri PSW! KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-5 + - - - 44 # ks. Tietokoneen Toiminta -kurssi KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-6 KJ-I S2003 / Auvo Häkkinen 2-3

+ - - - 44 # TLB PTR PSW KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-7 + - - - 44 # KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-8 KJ-I S2003 / Auvo Häkkinen 2-4

+ - - - 44 # -! 8 czvb=<=:=< <=bszve käskyjen suoritus 8 e9 :=<?>?@A<[dT@?EU<AL6E tilaa ohjelmille ja niiden datalle (myös KJ on ohjelma!) 8 bs^*nmpsefd:=l >=PSR?P P=L ' Z[b=<=:=< <AbSZVEUL laitteistoa, joka siirtää tietoa muistin ja oheislaitteiden välillä syöttö- ja tulostuslaitteet tallennuslaitteet tietoliikennelaitteet kommunikointi rekistereitä (I/O portteja) käyttäen voivat sisältää omaa muistia (puskureita) 8 HIBDK_H=L tiedonsiirto eri osien välillä KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-9 44 -.! 44 // 44! - 44 #.. \ :SdTbSZ B \ PSR=P!?:Sd:cRAL R?EUL 8 \]@S@ALVLWPSPTbS^*NM:SKFdPSR<?EU<=HSE <=:SRb=<=bSEULVLW:?:cR BABI<?E <=:S>A<?ESdT@?E <AL6E_b=<=bSEULVLW:?:S>A<?E ohjelma käyttää siirtymiä alkunsa suhteen laitteisto käyttää fyysisiä osoitteita 8 \#&% c\ :SdbSZ B'#)(*(SZ[:=<A<+%:*!SEU<ALW:SZ muistiosoitetta varten 8 \-,% c\ :SdbSZ B.,@ :SZ %:*!SEU<ALW:SZ Muistista noudettavan muistipaikan sisältö Muistiin kirjoitettava arvo KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-10 KJ-I S2003 / Auvo Häkkinen 2-5

44 -.! 44 // 44! - 44 #.. 8 9;PSRAL6P CNMP.Z[P NMPSZ[:S>?EU<ALW:SZVE_H.>=HIBILVLWH H NMHSZ N :=<ALW:SKFdH Base Register: ohjelman fyysinen alkuosoite Limit Register: viimeinen kelvollinen fyysinen osoite tai viitattavissa olevan alueen pituus 8 EFZeL6@=PSPSKFEFdT@?EU<ALWE NMHSZ NM:=<ALW:SKFdH :=<?EFd+ PTR, Page Table Register Suoritettavan prosessin sivutaulun fyys. alkuosoite TLB, Translation Lookaside Buffer Viimeisimmissä osoitemuunnoksissa käytettyjä tietoja KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-11 ( - + -.- )( 44 (( + 44 -.!+)( + + 44! 8 ^*NMPS@A< CNMPL6E_K_PSZ[:S>?EU<ALW:SZVEUL! osa vain CPU:n sisäiseen käyttöön osa vain KJ:n käyttöön osa epäsuorasti ohjelmien viitattavissa # hyppykäsky muuttaa PC:n arvoa # vertailu asettaa tilarekisterin # ehdollinen hyppykäsky tutkii tilarekisteriä %'&()*,+ -/./001)* ( 032(+,)* 0(2)0 45 6 7! ohjelmien käytettävissä (myös KJ:n!) viitattavissa nimellä konekielen tasolla datan ja osoitteiden tallettamiseen KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-12 KJ-I S2003 / Auvo Häkkinen 2-6

- *,+.! *)0)#%&'(% 2) +*2-,/.0& /1+# 0( 2(2 seuraavaksi suoritettavan käskyn virtuaaliosoite - *,+. 2(+,)* 0(2)3546'(35# * 02-17 0)8 /#4 (/*)* 0(2)2 suoritettavaksi noudettu käsky 9 ) &8,2( +,)* 0(2)%/:<;='(% 2) +*2-,/.>: 0?, 01 *@;A2-B2 Tietoa laitteiston tilasta ja toiminnan siihen aiheuttamista muutoksista lipukkeet (flags) C vertailujen tuloksille, virhetilanteille C keskeytyksille, keskeytyksien esto / salliminen C etuoikeutettu tila / käyttäjätila KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-13 D D 6FE GH I I 32 bittiä (kunkin arvo 0 tai 1) GEL OZUM IS P D... D = Interrupts Disabled (kesk. esto) P = Privileged mode (etuoik. tila) S = SVC (supervisor call) palvelupyyntö I = device Interrupt (laitekeskeytys) M = forbidden Memory address U = Unknown instruction Z = divide by Zero O = arithmetic Overflow GEL = comparison indicators: Greater, Equal, Less KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-14 KJ-I S2003 / Auvo Häkkinen 2-7

6 6 I 9. 12( +,)* 0(2)0', 0?,4 (+*)* 0(2 * 2 prosessin suoritusaikaisen datan tallettamiseksi käyttötarkoitus ohjelman (ohjelmoijan) tarpeiden ja mieltymysten mukaan *)0(2(+,)* 0(2)0' B/B2( * * 2(+*)* 0(2 * 2 datan ja käskyjen osoitteiden hallintaan voi sisältää esim. osoitteen osan, jota käytetään muistiosoitteen laskennassa Esim: C Indeksirekisteri (index register) C Segmenttirekisteri (segment pointer) C Pino-osoitin (stack pointer) KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-15 @ I FE D D G KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-16 KJ-I S2003 / Auvo Häkkinen 2-8

6 Kuva 1.2 & % noutaa käskyn PC:n osoittamasta paikasta kasvattaa PC:n arvoa noutaa operandit rekistereistä tai muistista suorittaa käskyn yleensä ALU:ssa tallettaa tuloksen rekisteriin tai muistiin KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-17 6 / 6F I Kuva 1.5a Palvelupyyntö antaa kontrollin laiteajurille CPU suorittaa KJ:n koodia Ajuri alustaa ohjaimen sekä antaa tarvittavat käskyt, jolloin siirräntä käynnistyy (4) Ajuri odottaa (pollaa), että siirräntä valmistuu Ajuri tekee lopputoimet, ja palauttaa sovellukselle statustietoa (5) & % +B+ 00(&(,( /1 0(/#! KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-18 KJ-I S2003 / Auvo Häkkinen 2-9

6 :,& & ))/& % #,,). )(/#. 0-+,) +,)* (/# 0?). )#+#+,/# & %!,)# + -/. #+#,)* 0-,- * ) ) 22-/#+#,-/#,!), 0+,+,. 1,)8B,(# + - *,+. (/# *+12)01 * 0?, 1+# *,) ) 2 0?!,&. )* +,)# + ( *,+ (/./00-- & % # & % * ) ) 2 0.. *+12)00,/.,+,#,)# +1+1,&1!,+, +,( *,+ (/./0. *,+ - *,)00(&. - 1+# + - *,)0(& &./00) &8,/# 0(,(# *,) ) 22) /#!,&. )* 01+. )* 0?, +B+ 00?,#+1 0 2- * ( * * )!) -,- * 0-0?,+, * *+12)0( 00,!,,+ *,) KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-19!# %'&)(*,+-*,./&)01-2 3 4/5567698 :;<8>= 5,? @AB;<@ C D 5E8FAGHID JJKBALHIG 5@ 5,: @ M @;1Ë @ @ND : :D : Ë K 5:OÄ 556P;<GHI@ JN5RA S esim. prosessi lukee tietoa oheislaitteelta T U VXW G? G;<;<@ @F;<G 5FD ;7;<G F@:@>EDÄ EDY;ZYAB;<8 [? D @ \]^>G;7;<@ @FÄ KG 675 ;1K EBAD D:NKBAD 5 ;<@>_ 69GADABAD M @ 3 ]K :Y EBÄ 5 G? G;7;<@ @ CBÄ KG 675 ;<@F;<G 5 AB;<@ 3 `X:B;<8 C M GAF_ 69GADABÄ 5D 5;<D DFÄ 5,567698 :B;18 8 a S Ei palvelupyyntöjä, ei keskeytyksiä S Muut prosessit nälkiintyvät 3 b@ 6cH 5 ;<@ @ :NED JJ,G C M G E@>EDÄ EDY;7;<8 8 KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-20 KJ-I S2003 / Auvo Häkkinen 2-10

G M H Kuva 1.7 Start Interrupt Handler!#&%'#%'()*(#+#,-.-./0)1)124357698:)12)1%4/./ );/.-0,<'%4/=#)'</.>&'4>4>'>+#'424<,4,?,>&%@#%(>A>!2)!,!#&%'#%'()*(#3#2!</0),B%'#%'()*(#%@#/0))'-C(4> %@#%() KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-21 D D: EF GH (1.# &)*JILK K#)!(ONON07%*P KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-22 KJ-I S2003 / Auvo Häkkinen 2-11

S :E D D: EF (kuva 1.5b) Palvelupyyntö siirtää kontrollin KJ:n laiteajurille Ajuri alustaa ohjaimen ja antaa siirtokäskyn (4) Kontrolli takaisin sovellukseen CPU voi suorittaa sovelluksen käskyjä samaan aikaan siirron kanssa (2a) Kun siirto valmis, ohjain keskeyttää (x) Kontrolli keskeytyskäsittelylle, josta edelleen ajurille Ajuri tarkastaa miten siirrossa kävi, ja tekee tarvittavat lopputoimet (5) Kun keskeytys käsitelty, sovelluksen suoritus jatkuu (2b) KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-23 D D: EF LE EE DD (Interrupt handler) 3 ]^\:NEG G? 5,@ C M G : E@>J,@ 5 ;7;<D 5 AB;<G>E8Y : : 5 AB;<8 8 Ë DÄ EDY;ZY EBAD : A@;7;1K DABA@ 3 4/D J HI5 ;7;<8 8>Ë DÄ EDY;ZY EBAD : AY Y : 3 ] 8Y : : 5 AB;<8 8F;<G 5FD;;15J,@ :B;1D D :N= G 5 ;<@ N5 ABDEBÄ 5 S Siirtyminen sopivaan käsittelyrutiiniin 3 ] DÄ EDY;ZY :Y;7;<8>_ 69GADABA5,@ HIG 5 ;<@HI@ M @;1EB@ @ Y =D NN5:OÄ 55 ;<8>N5= 5: AD M 8 5 EDÄ EDY;ZY EBAD : A@;7;1K DABA@ CPU:n rekistereiden arvot talletettava muistiin PC, PSW, muut ohjelman käyttämät rekisterit KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-24 KJ-I S2003 / Auvo Häkkinen 2-12

D D: EF LE EE DD ; (kuva 1.10) Kirja s. 21-25 * Etuoikeutettu tila vs. käyttäjätila * Keskeytysten esto vs. salliminen Start Interrupt Handler KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-25 Kuva 1.11 KJ-I S2003 / Auvo Häkkinen 2-13

X -/.10/- 32 PSW:n keskeytykset estetty lipuke! #&%% ' () * *,+ KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-27 4 536 576 98 : Kirjoitin -/.10/- 32 Tietoliikenne ; <>=@?BA5AC3DEBFHG@I3FHG JK?B?JKG*D5L?MBL?NJONPMBLMBG JOJK?B= NSRTBL?MBLP?3DBU RTIM JWV=@?B?LG*G@FH?B?3=@=*G M?BA5EBGBL?MBL?NPJONM Myös keskeytyskäsittely voi keskeytyä! ; YMBG*AZ[G@?PJKI3=@G*G*L?3DBD?BI3\]RTC3G@A?3D5L?MBL?NJONPM5LPMBG JK?B=*=@BBD ^ 3=*G JHJK_3AMJWG@Ù RTIJOJKC MCBCBaBCBC3D5VBVJOJKC JWG@=@CBC MCBC3EBV ^ C3=@=@?aBCJKC3=*=@? KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-28 KJ-I S2003 / Auvo Häkkinen 2-14

7: KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-29 6 KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-30 KJ-I S2003 / Auvo Häkkinen 2-15

& + + + P P P P 6! #% '( ) ) ( * ( sisäisen ja ulkoisen väylän nopeusero,! (!-% *.*/ statustietoa ohjaimen / siirron tilasta siirtokäskyt, osoitteet (lähde/kohde), tavumäärä 0 1 2 43658769((( ' %4(* : * & 4 *(( * & ( ' KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-31 &6 ; & 4( & ((! &, ( =<>#? A@CBDCE*FDCGHH(I*J'K L MON ei keskeytyksiä P R8S(T(UV(W XY Z [(\(U[\]^*^T_Ta`>b?c @CKedfIDDg*hfi JDj kid K LeMONCl ohjain keskeyttää monqpsruttxu^w @Cvwj DCI*x*fzy{IH(ED} ~zx*x*iun ohjain keskeyttää ohjain siirtää suoraan keskusmuistiin Älykäs laiteohjain KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-32 KJ-I S2003 / Auvo Häkkinen 2-16

Ei keskeytystä, CPU tutkii toistuvasti statusrekisteriä (busy waiting, pollaus) Kun siirto valmis, CPU kopioi sanan ohjaimen datarekisteristä muistiin CPU varattuna siirron ajan Vain yksinkertaisissa laitteistoissa Sykli toistettava kunnes kaikki siirretty P Ajurilla iso rooli KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-33 Ohjain keskeyttää, kun siirrettävä sana datarekisterissä CPU siirtää datan muistiin CPU:n ei tarvitse pollata, kun ohjain siirtää laitteelta Sykli toistettava erikseen jokaiselle sanalle Siirto kuormittaa edelleen CPU:ta KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-34 KJ-I S2003 / Auvo Häkkinen 2-17

CPU ohjaimelle: mistä, minne, paljonko, suunta (R / W) Ohjain siirtää laitteen ja muistiin välillä Keskeytys vasta, kun koko data siirretty CPU:ta vain alussa siirron käynnistykseen ja lopussa statuksen tutkimiseen CPU voi suorittaa siirron aikana muita prosesseja KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-35 KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-36 KJ-I S2003 / Auvo Häkkinen 2-18

Tan01 1.14 Pentium 4 cache: 8 KB datalle, 12 KB koodille, ulkoinen 256 KB nano = 10-9, mikro = 10-6, milli = 10-3 KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-37 Pieni, nopea muisti / rekisterijoukko CPU:n ja keskusmuistin välissä CPU:n osana ja / tai ulkopuolella Laitetasolla, ei näy ohjelmissa / KJ:ssä CPU tutkii ensin löytyykö viitatun fyys. muistipaikan sisältö välimuistista Jos ei löydy, CPU tuo välimuistiin lohkon, joka sisältää myös viitatun muistipaikan KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-38 KJ-I S2003 / Auvo Häkkinen 2-19

@ @ @ @ Kuva 1.18! #%%&('%'*)(+*,%-/.10 02.%3*& 445) 6 --/47*484:9<;<9*-/. 4:-=*7(-+%+ 7 #(' 6 )(>-?;<9%-. 4:-..*7!BA<.*7%7%' 4:-?7%-+*7 6 )(>-;<9*-/. 4:-/. 457! CD.*7%7%' 4:-?7%-+*7 +*&*.%+%9.%;<9%-. 4:-. 457! C<E%EF!BA G 9%'F#*.*9%;F7 45#%%&('%'%H >?)(I*&(>>?)<7%J 6 #%7DA%3 +*&*.%+%-;FH.*7*7(' 4:-/7(-+*7 >?)(I*&(>>?)F!BA%K 45) KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-40 KJ-I S2003 / Auvo Häkkinen 2-20

A A A A A o (locality of references) p Y t (\ YY V(\\ t (\ S(Y t[y tcuvvu RUt Ut V[(Y(UU(Y UV(W X*t^\(^Y Y ^W tu^!v%_y(u^!t U(Y YY4[T(U[%] W V[[(W Y t\(^ ]UU(TW(U(YUU(Y4[(WW ty4[(t]^\^tt ^ ]]1St tu(\u^!t%_y t ^!t\(^*^ ] TVV^*^!V tyy(^!y!# %&('*) ),+-+.& &+/)+-+#0102% ),31+.) 4& ) 5 5 & & 6 573 580(+.& ) 9 &+.& :<; =+/ > ; +-+.73?'2) ),+-+.&&4 )& 3& %& & 4& ) 5 5 & & 9 =+.& )3,7 7 @'2) ) % ),31+.) 4& ) 5 5 ) ) B 3 %&+. 9 > 431+/) 7 7& CD'* &FEG!# 4 ) 7('*7 ) % ),31+/) & KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-41 HJILKNMOIPNRFSTMNRTUWV/X Y,Z/[]\_^a`b^_c_^ad/e_f_g_h i_`b^_c_^ad/eaj k3 5 13 % ),31+/)& ;l!# 4 13 5 C- )9 & & @'102,+.7(m*@'n023 )) C-C<+-+.7@'*7 79 &+.& & ei siis erillinen laitteiston osa =+/)+-+#02) ) =+.&@'2 ) )?'2) ),+.&+-+/ ; '2) ),+.&+.& & 4 )&% 5('*& C-%&31+/) ) ),+.73 C<& &@'2) ) =+.&8'2 ) ) p 3& +-+.&@'*&+q+.&@'21+k )r'*7+s@0*9@0t4 13 5 C-),31+.& ; 3 ) ) Cu+.7 7F p 5 5 & ),3 @'n02 5 @'102,+.7 4 13 5 C-) ) o Ennaltanouto v & ) 5& )w3 13 x KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-42 KJ-I S2003 / Auvo Häkkinen 2-21

U X LRFSOM OS MFSTV A ),+.780*s+#0*7 5 3 5@0@+#083 % 5& ),3 %)w31+.& ) 5+/)+/ 5+. ) %)&) %& 53 5@0@+#02513 )7 A ),+.53 5@0@+#0@3 % 5& ),3 %)1+. ) %) ) A ) 513 ) 53 5@0@+#02513)75& &+-+/& ),3) 4 C-) C-)w3 )9 & A ),+. v 3& & 9 & & =3 C-),+-+.& %& & p +.7(m +.&@'*& ),31+.&4 C<33n3 )& A ),+. v )),+.7573 580!#7=3 C-),+-+/& & A ) 57 ) C<=3 C<& & m B &!#& 473 C-& & m B & A ) 513 ) 3) ) Cu+.!#7 C-5 @'*7 7@'n0@3) ) C-Cu ),313& A ),+.4& ) 5& ),3 1+-+.&('* )9 & & 80*s 9@021+.7 7 KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-43 KJ-I S2003 / Auvo Häkkinen 2-22