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

Samankaltaiset tiedostot
Stallings, Luku

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ä

Sisältö SIIRRÄNTÄ. I/O-laitteiden luokittelua. Yleistä siirrännästä. Siirrännän perustekniikat. Siirtonopeuksia (teoreettisia) Kuva 11.

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

u saantimenetelmät u kirjanpito vapaista lohkoista (taltiolla!) u hierarkkinen hakemistorakenne: kirjanpito tdstoista u tdstojen käyttö

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

RJESTELMÄ OSA 2 Stallings, Luku PALVELUPYYNNÖT. KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH

u saantimenetelmät Kenttä (field) u bittien / tavujen muodostama looginen kokonaisuus u yksi arvo, jolla tyyppi ja pituus Tietue (record)

RJESTELMÄ Stallings, Luku KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH

Luento 2: LAITTEISTOSTA

Jakso 8 Ohjelman suoritus järjestelmässä

Jakso 8 Ohjelman suoritus järjestelmässä

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

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

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

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

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

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

Luento 6: VIRTUAALIMUISTI

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

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

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

Käyttöjärjestelmät TIEDOSTOJÄRJESTELMÄ. Stallings, Luku KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-1

Käyttöjärjestelmät II

Osio 2: Luennot 5-8 Muistinhallinta

TIEDOSTOJÄRJESTELMÄ. Sisältöä. Stallings, Luku Peruskäsitteistöä, tehtäviä ja tavoitteita Järjestelmän rakenne Tiedostojen organisointi

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

Käyttöjärjestelmät II

Luento 3: PROSESSIT JA NIIDEN HALLINTA

Sisältöä TIEDOSTOJÄRJESTELMÄ. Perustermit. Peruskäsitteistöä. Perustermit. KJ:n tiedostojärjestelmä. Käyttöjärjestelmät

TIEDOSTOJÄRJESTELMÄ. Sisältöä. Stallings, Luku Peruskäsitteistöä, tehtäviä ja tavoitteita Järjestelmän rakenne Tiedostojen organisointi

Sisältöä TIEDOSTOJÄRJESTELMÄ. Perustermit. Peruskäsitteistöä. Perustermit. KJ:n tiedostojärjestelmä. Käyttöjärjestelmät, Luento 16

Luento 9 Järjestelmän ulkoinen muisti

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

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

Luento 9 Järjestelmän ulkoinen muisti

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

Luento 9 Järjestelmän ulkoinen muisti

Järjestelmän ulkoinen muisti I/O

Luento 9 Järjestelmän ulkoinen muisti. Muistihierarkia Kiintolevyt Muut pyörivät levyt I/O:n toteutus

Luento 9 Järjestelmän ulkoinen muisti

Muistihierarkia Kiintolevyt I/O:n toteutus

Muistihierarkia Kiintolevyt I/O:n toteutus

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

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

Luento 9 Järjestelmän ulkoinen muisti

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

Luento 9 Järjestelmän ulkoinen muisti. Muistihierarkia Kiintolevyt Muut pyörivät levyt I/O:n toteutus

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti

Osio 2: Luennot 4-7 Muistinhallinta

VIRTUAALIMUISTI. Stallings, Luku 8.1

Prosessi perinteisesti

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

Luento 9 Järjestelmän ulkoinen muisti

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

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

Väylät. Prosessorin tie ulkomaailmaan Pienissä järjestelmissä vain yksi väylä. Osoite, data ja ohjaussignaalit Prosessori ainoa herra (master)

Tietokoneen toiminta, K Tavoitteet (4)

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

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

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

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

PROSESSIT JA NIIDEN HALLINTA

Prosessi virtuaalimuistissa PROSESSIT JA NIIDEN HALLINTA. Sisältöä. Prosessi virtuaalimuistissa. Prosessi. Prosessi. Käyttöjärjestelmät, Luento 4

VIRTUAALIMUISTI. Stallings, Luku 8.1

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

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

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

Jakso 8 Ohjelman toteutus järjestelmässä

Jakso 8 Ohjelman toteutus järjestelmässä

Jakso 8 Ohjelman toteutus järjestelmässä. Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit

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

Tervetuloa! (2 ov,, 4 op) KJ on tärkein tietokoneessa pörräävistä ohjelmista

Sisältöä PROSESSIT JA NIIDEN HALLINTA. Prosessi. Prosessi virtuaalimuistissa. Prosessi. Prosessi virtuaalimuistissa. Käyttöjärjestelmät

Osio 2: Luennot 4-7 Muistinhallinta YKSINKERTAINEN MUISTINHALLINTA. ltöä YLEISTÄ MUISTINHALLINNASTA. Looginen muisti.

Käyttöjärjestelmät: prosessit

1. Keskusyksikön rakenne

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

u Tietokone ilman käyttöjärjestelmää on kuin

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

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

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti

Käyttöjärjestelmän rakenne

Luento 8 Ohjelman toteutus järjestelmässä

Luento 8 Ohjelman toteutus järjestelmässä. Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti

Sisältö. Levy I/O Linux ja W2000 levy I/O. Ch [Stal 05] Ch 20.8 [DDC 04] RAID Lohkopuskurit (disk cache) Esimerkit: Linux, W2K

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

KJ-I I S2004 / Auvo Häkkinen & Tiina Niklander 4-1. Stallings, Lukua 2

Transkriptio:

"!# $%!#& ' (& )+*,.- Stallings, Luku 11.1-11.4 /10 ' )2( 3 465 798 :<>= I/O-laitteiden luokittelua, siirtonopeuksia Siirrännän perustekniikat Siirrännän kehittyminen 3 @ ACBED :F8 8 G>>H 3 IKJH9LM8 H98 >NO:F8 8 G>GP=9QRQ=F:F>= mm. hierarkia 3 SJ<:FTRJRGPH98 QRU8 Lohkopuskurit KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 7-1 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-2 "!# $%!#& ' (& )+*, -- VW)X& 0 ' ( ' 0+0 $$9 Y Y ' ( -[Z%\ )X^ 00 & 0X_ &`Y,)+a b c 00 & )+a ^ 3 de8 7R>HM7F:F8 >7R>>=Fe<= 8 frlm8 :<79Q"gFTH9Q7R79Q 5 J7RU>NFe<NF:h:<N LMJHRiRHj:h:<N 3 kl<mru>mrdonpnmujr5 HF:<UJF: näyttö, näppäimistö, hiiri, kirjoitin,... sensori, skanneri, kamera, mikrofoni... 3 Sjlh:lhe<=M>N95 5 79QRQRJ<: levy, nauha, CD-ROM... 3 de8 7RiRH9Q<:F8 8 G>>H modeemi, verkkokortit,... 3 qgphonpn QH9r79JiR7F::<N9sH9f%npN9J<:<>N9G>r7R7j:h:<N9s :F8 8 GP>HFlFT<:F8 Tm98 :h:<=9su8 7RiRH9Qt7j:F8 >>=9LM8 :<7j:h:<=unpN ef8 G>f7RU8 5 N9Q>798 ir79qmfn95 5 8 QRQNF::<N KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-3 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-4 /10+0 $R(b`Y b`v &`ac ' 00 ^^ (teoreettisia) Kuva 11.1 /10+0 $$9`YY Y,v& $a ' & cy 0+0 c^ 3 kejh9gpn w g xzypsgphr{9gpn9lmlt7ri w g x} CPU tutkii toistuvasti ohjaimen statusrekisteristä onko siirto valmis (busy-wait) 3 qr=f:fjh9gpn w g xzypwpq>79gug>jrr>d i9g>8 e<79qmw g x} CPU antaa siirtotehtävän ohjaimelle ja jatkaa suorittamalla muita prosesseja ohjain keskeyttää, kun siirto valmis CPU siirtää ohjaimen ja muistin välillä 3 @ ACBED :F8 8 G>>H yp@(8 GP7R~RKA79LtH9G l BE~R~R7j:h:F DMA-ohjain osaa siirtää muistin ja laitteen välillä keskeytys vasta, kun koko siirto valmis KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-5 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-6 KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-1

/10+0 $$9`YY Y,c& 00 # ** 00 Y &`Y!! "#%$ &('))')! * qg>8 5 5 8 Q79QMw g xkd H9f%npN98 QtH9f%npNRN lffr>=m>n98 J<:<7RN9LMrNRN 5 N98 >7R>>N9s<:FJHGPN w g x CPU (=KJ) tarkkailee koko ajan statusrekisteriä Laitteen yksityiskohdat eivät enää KJ:n murheena + x}f%npn98 QtH9rRrR8 8RT=FlF>>=9Lt=R=9QMT7F:FT7FlFplh:F>= CPU (=KJ) ei odottele aktivisesti siirron valmistumista, x}f%npn98 QtH9rRrR8 8<:F8 8 GP>=9Lt=R=9QMr79G>8 5 5 7 :<NRN9TRTN.- @(ACB CPU (=KJ) vain käynnistää siirron J<e<N ja tarkistaa onnistumisen Lue KJ = laiteajuri KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-8 /10+0 $$9`YY Y,c& 00 # ** 00 Y &`Y / qg>8 5 5 8 Q79QMw g xkd rrgphj:<7f:h:<h9g>8 0 @(ACB oma käskykanta suorittaa keskusmuistissa olevaa I/O-ohjelmaa CPU (=KJ) voi määritellä siirräntätehtävät monipuolisesti keskeytys, kun kaikki tehty 1 qg>8 5 5 8 Q79QMw g xkd rrgphj:<7f:h:<h9g>8 0MH9LtN LMJR8 :<U8 0 @(AuB ei käytä CPU-väylää I/O-ohjelmansa suorittamiseen esim. näytönohjaimella oma prosessori ja muistia 3 46TF:F8 plf8 :FTH9fiRN9 :F8 8 GUGP7R>pl23 5 >= 5 N98 >>798 :<>H95 5 7 tehokas toteutus "!# $%!#& ' (& )+*, -- 46587 4 0 $9& 9 :5 & *,b $F7<99& ' ' KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-9 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-10 46587 '' 0+0 $R(b 3 x}f%npn98 QtHF:<NRNO:F8 8 GP>=R= 8 :<H9QMLt=R=GP=9QtU8 7R>HRN :FJHGPNRN9QM5 N98 >>7R79QCnpN T7F:FTRJF:FLMJR8 :<U8 Q e<=95 8 5 5 = Keskeytys vasta, kun koko siirto valmis 3 =FlF>>=R= LMJR8 :<U8 8 Q ef8 8 >NR>7j:h:<N rrgphf:<7j:h:<h9g>8 e<=flf5 =R= 3 8 5 rn98 5 J"e<=jlF5 =9Q"e<N9GPNRN9LM8 :<7j:<>N ajoitus s.e. ei häiritse CPU => MEM siirtoja @ CPU tarvitsee väylää käskynoudossa, 46587CB+Y ^"!#b 00 Ka ' Kuva 11.3 operandien noudossa ja tuloksen talletuksessa välimuistin käyttö vähentää väylän käyttöä 3 IKJH9LA<e<=jlF5 =9Q"e<N9GPN9J<: 5 N98 >7R>H98 LM8 Q>H9s 798N98 f79j>n T7j:FT7Fl<pl:<>= KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-11 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-12 KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-2

46587 b b u!#^ 00 ** & Y,$^ c& YY& Kuva 11.1 46587 3 =FlFQRQR8 :<plh: 3A2 y Non JRG>8 T79G>>HRH @(AuBED H9f%npN98 Lt795 5 7 suunta: read vai write mitä I/O-laitetta siirto koskee (jos useita) laiteosoite: esim. levypinta, ura, sektori montako tavua siirretään keskusmuistialueen alkuosoite 3 JRQ":F8 8 GP>H e<n95 LM8 :Fs2 y Non JRG>8 9>NG>TNF:<>NRN :F>NRUJRT<:<79Q 3 SGPHF:<7j:h:<H9G>8 e<=jlf5 =9Q"e<N9GPNRN9LM8 :F8 N e<h98<e<=9f79q>=r= integroimalla DMA-ohjaimen suoraan laiteohjaimeen kytkemällä I/O-laitteet omaan väyläänsä, jolloin niiden välinen siirto ilman CPU-väylän käyttöä KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-13 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-14 `$ 00 )+) 00 Y & Y 46587 b b u!#^ 00 YY 46587!#^ )X^ 00 (&b u!#^ 00 YY & ' ' 3 N98 TRTR8%npN9TNFe<N9 lff>798 :<79Q e<=flf5 =9Q 3 @ ACBED H9f%npN98 QMT7F:FTRJ<:F>795 7R7 L"l<mF: 5 N98 >7RH9f%npN98 Lt79Q TN9Q<::<N T=Fl<>>=R79QMr9GPHF:<7F::<H9G>8 e<=flf5 =R= 3 @ ACB 798>N9GpeF8 p:<7 r9gphf:<7f:h:<hg>8 e<=flf5 =R= T7F:FTRJF:<>795 5 7F:h:<NRN9QM5 N98 >7RH9f%npN98 Lt79QMTN9Q<:h:<N 3 @ ACBED H9f%npN98 QtH9f%npNRN lff>= >N98RJ<:<7RN9LMrNRN 5 N98 >79>>N KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-15 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-16 46587!#^,& $ 00 )+) 00 Y & Y -[Z%\ )X "!# $%!#& ' (& )+*, -- ab * 0 b 0 (^ ' 0+0 $$9 Y Y ' ( 3 kejh9gpn :F8 8 GP>H 5 N98 >>7R795 >NM>H98 :<795 5 7 T=jl<>>=9Lt=RU>= rrgphj:<7f:h:<h9g>8 e<=flf5 =R= ei häiritse CPU:ta 3 I 795 rrrh 5 NRNonp79Q>NRN 0 & $9^ $(c 0 ^ KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-17 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-18 KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-3

ab * 00 bb 00 (^ '' 0+0 $$9 Y Y ' ( 3 ke8 8 G>GP=9QR>=unp=9G np7f:<>795 Lt=9Q :FJRJRG>8 QMrRJR5 5 H9QRTN9JR5 N 3 ke8 8 G>GP=9QR>=MH9f798 :F5 N98 >>798 5 5 7M7G>8 >>=98 QMfR8 irnj:<>n e<7g>gpnr>ujrqn S 3 QCnpN T7F:FTRJ<:FLMJR8 :FU8 Q"e<=95 8 :F8 8 Q :F8 8 GP>H98 fr8 QMy 7F:F8 LAR5 7Fehl 3 9 3 ke8 8 G>GP=9QR>=M798Rr<lh:hl THj:FTNRN9Q S 3 Q"e<N9JRfi98 ::<N prosessin odoteltava siirräntää 3 AH9QR8 NonpH9QtN9QF:F8 HF:<>N S e<h98f:fjh9g>8 U>NRN HRiRHRUJF:<N98 TN9QN LMJR8 >N rrgphf:<7j:h:<7onpn 3 Aul<mF:23 Qt>79T79Lt= :F8 efjuj<:}npn f798 >>HFe<N98 f>h N98 f79ju>nrn :F8 8 G>GP=9QR>=R= ab * 00 bb 00 (^ '' 0+0 $$9 Y Y ' ( 3 7Felh:F8 8 GP>H >=9G>T798 Qt>79fHj:<>7R>>Nje<N TH9fiR7 puskurointi siirrä kerralla enemmän (levylohko) lohkopuskurit (block cache) eli levyvälimuisti (disk cache) ennaltanouto tdsto käsitellään yleensä peräkkäisjärjestyksessä pyyntöjen uudelleenjärjestely minimoi hakuvarren siirrot pyynnöt jonottavat ajurin jonossa KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-19 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-20!!"" # $&% % '('*) + +,) + -(. -(/ 0,-1032 465,7 / + 8 0 9,: % 23/626-1% kaikille laitteille samanlainen liitäntä prosessien sekä KJ:n ylimpien tasojen suuntaan myös laitteita käsitellään tdstojärjestelmän kautta (laitetdstot) # $<.6=3/ > > 0 9323/ + 9,)43-(-(@ @ + 465,7 / + 8 0 9,: % 23/ -. A,/ '*: : -1%. -B9,: % 9 % > > / > : % -(-(/ % > > / open(), close(), read(), write(), lock(), unlock()... kaikki eivät mielekkäitä kaikille laitteille # C'*. :6=3: -<469326% -D46% 269,. 5,7 : -: > / 8 8 % > > / -(:623. % > > / loogisen nimen liittäminen fyysiseen laitteeseen E tdsto vs. kirjoitin välitasoilla esim. puskurointi ja tiedonsiirron protokollat alimpana varsinaiset laiteajurit E ohjaavat laiteohjaimen avulla laitetta KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-21 FF G!!!HIG J # K,.. L % +,/ + M N OQP*> : % -(/ '(% % A A 0 8 : -(. + M N OSR prosessi käyttää esim. tdston loogista nimeä tdston rakenne = jono peräkkäisiä tavuja operaatiot: open(), close(), read(), write(), # T&) > % -(:623. % > > : 8 8 U A 03269 0 '*. % + -1%3468 26U loogisen I/O:n ja fyysisen I/O:n yksiköt erilaisia lue tavu vs. siirrä levylohko tarkista käyttöoikeudet lohkonumero V levypinta, ura, sektori pyyntöjen järjestely (hakuvarren siirtojen minimointi) # W34,4X26% +,/ + M N O siirrä hakuvartta, DMA... KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-22 Palvelupyynnöt FF G!!!HIG J Tan01 Kuva 5-16 Laiteriippumaton taso - tdstojärjestelmä - puskurointi Laiteriippuva taso - laiteajurit - jonotus, järjestys - keskeytyskäsittely Laitteisto - siirto, DMA - keskeytys YXZD[\B^^1_ ` KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-24 KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-4

"I < # C'(% -D4X46A A % 26% > > / > : % -1-(/ % > > /. 8 : -: D0 '(% +623: # C - 26%,: D0 '(% > : % -(/ + 0 8 / '*. + A,/ '(0623-(/ / > > : > : % -(/ 9 06=3: : : > % 23-(:626-(: siirtoa käynnistettäessä siirron päättyessä (keskeytys!) laitteen tunnistus, device id tilatietoa, kenelle laite varattu mitä ajuria käyttää mitä ajurin funktiota (handler) kutsuttava missäkin tilanteessa open(), read(), write(), close(), keskeytys jono pyynnöistä parametreineen # K,: % -(/ 9 06=3: : : mm. linkki pyynnön tehneen prosessin PCB:hen I" I" Q J! B KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-25 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-26 FF G!!! J! B # <: ' =3/ Prosessi odottaa Blocked-tilassa siirron valmistumista Alue, jonne siirretään oltava silti muistissa # K,. 5 9,. A,/ '(0623-(: % +,/ + Levyt, nauhat kirjanpito vapaasta / varatusta tilasta lohkoittain siirto laitteen ja muistin välillä lohko kerrallaan hajakäsittely mahdollista (nauha) # <:6=60 A,/ '(0623-(: % +,/ + pääteyhteys, kirjoitin, hiiri, tiedonsiirtolinja,... tiedon käsittely tavu kerrallaan vain peräkkäiskäsittely G J! B # $&% % '*-(. 260,. '*: : + A '*.623/2X26% + : > 0,/ / > > / Prosessin muistialuetta ei voi heittovaihtaa (lukittava!) # &% / -(. 9,)626% -(/ > -()6=3) 23: 8 : + 9,. 9,. % 26% +,: 469326% 9 9,@ % +,) A '*.23/62X26% 2,23: : > : % -(-(/ / > > : # B)646-(-(@ ) /626% 8 U '*/ : : > % : % 9,: )' /623-(/ > 8 % 2X23) KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-27 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-28 J J # OS5 : % + 26% % '*-() ) -1% / 7. + + A 03269 0 '(% % + # 26% % '*-() ). 5 / > 8 : + : > 0,/ / > > / P 8 0 0,-(-10 : : + R J J # C+ +,: > -(: +,. 0,-(. P*'*/ : 7 : 5,/ : 7 R KJ voi täyttää puskurin etukäteen koska peräkkäiskäsittely yleisintä #T % % =3)623-(/ -1-4 9 % '. % -1032 P 7 / > :643/ 7! '(% -(/ R prosessin kirjoittama data kootaan puskuriin laitteelle vasta, kun puskuri täysi, tai kun prosessi sulkee laitteen (viim. lohko voi olla vajaa) # "'*.623/2X26% + =3. % 5,/ % -1-(.6=3: % 5,-(: : 9,. 9,. +,: : + siirräntä käyttää aina KJ:n aluetta # $<. A % %323/ 9,) >. 5 9,. / -1-() -(:6=60 A,/ '(0623-(: % 23/ / + 9,)646-(-(@ -(: A,: : + KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-29 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-30 KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-5

GJ " J! B Q JIG!J" IG!J! # 0 + A '*.23/62X26% 9,)626% -(-(/ > / / -(. % 23/62X23: A 03269 0 '(% 2X23:. > /6=3: : -1% / -(. :. 5 : % + > 0 9,/ / -(. % 23/ / + # 0 +. 5 : % + 9 % '. % -(-(: : A 03269 0 '(% 23-(: > : % -1-(/ / > > / A '*.23/62X26%3=3. % -()643-1-() ) -(. % 23-(: A 06269 0 '(% : # &0,. -(-(: : A 06269 0 '(% 9 0 > 0,-(-(: : 2X46+ 9 '*. +,. % +,-1% #.62-10,. -(-(: : + : 9 0 > 0,-1-(: : + +,. A,/ 0,7 /62X23: 23: -10 + +,: % 26% : / '*. : 0323/ : 8 8 : + 9 0 % + 9,: 5,7 / + A 03269 0 '(% + 9,)643-(@626-() =3. %,. > > : 5343@ - 43) # /626% 8 U6=3/ '(9 9,.6465,-(/437 / - KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-31 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-32 HJ" J # 8 43@2 + % 8 / > > ) > /6=X4X=3) > % 8 0 % 23-1% (disk cache) # + 46> > ) A % -() 8 ) -BA 03269 0 '(% -B> /6=X46>. 5 9,. : =3: '*-(/ + (block cache) GHJ J Tan01 6-27 jos viitattu lohko muistissa, ei noutoa levyltä jokainen prosessin I/O-pyyntö ei aiheuta levytoimintoa ohjelma lukee / kirjoittaa tavuja ajuri lukee / kirjoittaa lohkoja (esim. 1024 B) # <:623: : / '*. -B9,)626% -(/ > -()=3) + 469326% 9,@ + 9,..2X23: KJ ylläpitää luku / kirjoituspositiota # " : % 9,: > > % 260 032 tdstoa käydään läpi yl. peräkkäisjärjestyksessä, joten seuraava viite tulee tn. samaan lohkoon kun tdsto avataan, ens. lohko heti lohkopuskuriin # C+ +,: > -(: +,. 0,-(. seuraavan nouto, kun edellinen käsitelty (tai ennakoiden) KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-33 laite#, lohko#, linkkejä, Modified, Free! tunnussolmussa viite varsinaiseen puskuriin "#%$!&' & avaimena laite#, lohko# KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-34 (*),+-/.0)21,3&4,),56+.879+ : 6<=>#<#A@CB =D=EGFHB I E#E/AEKJLECI I B =@=FHB : M<#NO@CBP@CNPQ#QGFHB I E#E/<#<=B I I @CR#SPTCB =FU@#FHFUEVEWJLTC>#< : XYECZOE#F0TCNP[#@CI ZOE#F8>PECB >P@\=D=E/S#<=>#<#ATCB N#N#B =D=E TLB: mikä alkio korvataan Välimuisti: mikä muistilohko korvataan Virtuaalimuisti: mikä sivutila / segmentti korvataan Levypuskuri: mikä levylohko korvataan : ^#T=_SPTCB =FU@#FUFUE\VE/ZG<#<PFUFH<#N#<#FHR =@/FUQ`FL`P`_>#B JLTCB FHFUE#EGFUEC>PECB =B N ECI >#<#SP@CAQCB =@#@CNGSPECB >#>PE#ECN=E acb,5c.01,d/-2egfh-gfi7jfie/-2+&k : lmb FU@CNn=B B UAQCN#FUQCI ECB FUFU@#@CF0TCNOFUECSPECNPE/I <PTC>#B FU@CI I E#o : XY@CI B FUQ_=B B UAQCN#NPQCNGSP@CU<=FU@C>#N#B B >PTCB p#@cno@catkjlecq : XY@CI B FUQ_=B B UAQCN#NPQCNOFUT#FU@C<#FH<#>=@CN r B @CAE6U>#B =FUE/AEC>P@CN#NP@CFUFUECq : lmb FUQ r `s#fl`q r B @6AECU>#B E=FUE#o : lmb >=B#M8^Ct NG>PECN#NPE#FUFUE#E/S#<=>#<CATCB p#e =B B UA@#FUFUQ\VB QGFHB @#FUTKJLECo : lmb >=B#I T r >PTCS#<=>#<#A@CB FUECo KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-35 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-36 KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 10-6