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

Samankaltaiset tiedostot
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

Prosessi perinteisesti

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

Sisältöä SÄIKEET, SMP

SÄIKEET, SMP. Sisältöä. Stallings, Luku 4. Prosessi vs. säie Miksi säikeitä? ULT: Käyttäjätason säikeet KLT: Säikeiden toteutus ytimessä

Sisältöä SÄIKEET, SMP

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

Luento 3: PROSESSIT JA NIIDEN HALLINTA

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

4. Luento: Prosessit ja säikeets. Tommi Mikkonen,

Käyttöjärjestelmät II

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

Käyttöjärjestelmät II

PROSESSIT JA NIIDEN HALLINTA

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

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

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

Luento 6: VIRTUAALIMUISTI

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

Käyttöjärjestelmät: prosessit

KJ:N KEHITTYMINEN JA YLLÄPITO

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

Processes and threads

KJ:N KEHITTYMINEN JA YLLÄPITO

Arto Salminen,

Osio 2: Luennot 4-7 Muistinhallinta

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

Osio 2: Luennot 5-8 Muistinhallinta

Käyttöjärjestelmän rakenne

Käyttöjärjestelmän rajapinnat

Jakso 8 Ohjelman toteutus järjestelmässä

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 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

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, Luku 1. KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-2. KJ-I S2003 / Auvo Häkkinen 2-1

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

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

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

Luento 2: LAITTEISTOSTA

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

Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI

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

PUTKIKAKSOISNIPPA MUSTA

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Tietokoneen toiminta, K Tavoitteet (4)

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

Prosessi (4) Jakso 8 Ohjelman toteutus järjestelmässä. Prosessi. Prosessin vaihto (4) Prosessin elinkaari (9)

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

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

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

Keskeiset KJ:n osa-alueet

Keskeiset KJ:n osa-alueet. Keskeiset KJ:n osa-alueet. 1) Prosessi. 2) Muistinhallinta. Käyttöjärjestelmän rakenne. Eräs toteutus

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

YLEISTÄ KÄYTTÖJÄRJESTELMÄSTÄ

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

Palvelut. Sulautetut järjestelmät Luku 2 Sivu 1 (??) Sulautetut käyttöjärjestelmät

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

Prosessi (4) Luento 8 Ohjelman toteutus järjestelmässä. Prosessi. Prosessin vaihto (4)

Prosessit ja säikeet SMP, Mikroytimet W2K säikeet

KJ-II K2006 / Auvo Häkkinen - Teemu Kerola

Käyttöjärjestelmät II. SMP, Mikroytimet. Prosessit yleensä. UNIX prosessit. UNIX SVR4 Prosessit. UNIX prosessin kuvaaja

2 Konekieli, aliohjelmat, keskeytykset

Luento 8 Ohjelman toteutus järjestelmässä

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

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

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

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

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

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

VIRTUAALIMUISTI. Stallings, Luku 8.1

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

Jakso 5 Suoritin ja väylä

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

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

Jakso 5 Suoritin ja väylä

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

Luento 8 Ohjelman toteutus järjestelmässä. Tietokonejärjestelmä. Prosessi (4) Prosessi. Prosessin elinkaari (11) Prosessin vaihto (3)

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

Jakso 8 Ohjelman suoritus järjestelmässä

Jakso 8 Ohjelman suoritus järjestelmässä

VUOROTTAMINEN YKSI CPU

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

Luento 5 Suoritin ja väylä

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

VUOROTTAMINEN SMP JA REAALIAIKAJÄRJESTELMÄT Linux, W2000

Luento 5 Suoritin ja väylä

Nokkavipuliittimet NOKKAVIPUL. UROS SK DN25 HST NOKKAVIPUL. UROS SK DN32 HST NOKKAVIPUL. UROS SK DN40 HST NOKKAVIPUL.

Prosessi (4) Luento 8 Ohjelman toteutus järjestelmässä. Prosessin elinkaari (10) Prosessin vaihto (4) Prosessin esitysmuoto järjestelmässä (4)

IT K 1 45 K ä yt t öj ä rj estelmät

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

Aliohjelmatyypit (2) Jakso 4 Aliohjelmien toteutus

Jakso 4 Aliohjelmien toteutus

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo

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

LUENTO 8. u erillisten koneiden ryväs (cluster) u hajautettu järjestelmä (distributed system) u erilliset I/O-prosessorit

Transkriptio:

# $ %'& ( *+-/23/453/6/784 9:4 ;//4784 ; 84 <=7?> @BACED?F7/G<H<=7JIK7?<=L/8M784 ;?8< FBACEDNO784 ; 84 P?8MQ<=?<=8R <HR/:G<H4 SQ/ 7 NO784 ;?8MQ<H4 T L?< Stallings Luku 4 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 4 - KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-2 # $ $ U VXW %XY% % $ Z % [ $ Y U\] && ^^ \ &_ && && `2/R?+ 3/4 8MQ8Sa4 <=LJIKL8bIK8T T al8t T 8; 84 <HR virtuaaliosoiteavaruus eli suoritusympäristö d prosessin kuva (image: PCB koodi data pino resursseja d muistia tiedostoja I/O-laitteita efr +-?<=<=LJIKL8Mag L8T T 4 M?M 84 SQL; 8; 8M L84 /R?R/h i +-2/3/4 8MQ8gIK8T SQL8M/R +=4 <HRj; 8M?23L suoritus limittäin muiden prosessien kanssa prosessiin liittyy tila (Running sekä prioriteetti Proess task KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-3 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-4 U\] && lkmon && kn && && `2/R?+ 3/4 8Ma;?4 + IKL8M i 4 P?8MG/;/4 ;?; p8b 8Sa4 <=LJIKL virtuaaliosoiteavaruus jossa prosessin kuva laitteiden varaus NER JIKL8R?;8MG/;//4 ;?; p muistinsuojaus prosessien välinen kommunikointi tdstot ja niiden pääsyoikeudet SaR <H<=L efr 8+-?<H<=L8Sa4 8MG/;//4 ;?; pqno784 CPU suorittaa säikeitä ei prosesseja rf;//4?;??p84 s+-//r?+k3/4 <Hb?SQ8M <=Lm/R 8+=4 <HR/<=L Thread Lightweight proess U\] && nt && Yksiajo Moniajo ~2 ƒ uwv(x(y(vz { } H H J ( v( ˆ Š?Œ Ž KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-5 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-6 KJ-I I S24 / Tiina Niklander kalvot Auvo Häkkinen 2 -

' $% & ' ( (( IK/jF8D 37a<=?<=8R?<=?<=<HRj784 ;??<<=L84 qafbac IK/j; 72G<=?<=7?78M784 8;?4 + IKL/<=?L qa@bac NO784 ;?8T T 7a8SQLa<H4 T L-`R?M?M?4 M 8b?`?L?P2G/6 6 6 NO784 ;?8T T 7a8SQLa<=L8T T?L8T R +-8;?4 <=8+-84 T T mm omat PC:n ja PSW:n arvot NO784 ;?8T T 7a8SQL i 4 M aliohjelmakutsuja ja paikallisia muuttujia varten # NO784 ;?8T T 7a8SQL;?R5L?LJIKL TCB Thread Control Blok KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-7 Säikeen kuvaaja TCB tallealue rekistereille prioriteetti tila KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-8 $% ( * ((+ -/232465798:57; <2=;9>@?A 2 *+-/23/4 M784 ;??<; 72G<=<=7257?<OG/g <=84 <=7;??P84 h IKLaP?L?<=L?h L8T R 8<=<=L viite sivutauluun vain PCB:ssä mutta jokaisella oma suoritusaikainen pino FBR?M784 SaR?R?<=<=L?LaP?L?<=L?h L8T R?<H<=L-SaR?R <=<HRI 4 L-b SaR?R <=2jM 78;G3Gj; L84 ;?4 T T i +-2/3/4 Mj784 ; 84 T T NO784 ;?8MQL/5L?L8SQLa<=P2<=aL/584 M?M LSGp2jSaR?4 T T i +-2/3/4 M784 ; 84 T T tiedostokuvaajataulu vain PCB:ssä yhteinen luku/kirjoituspositio? C B -/D B DFE B -HG BJI ELK KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-9 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2 - CNM@O<PM < 9M@O ;9M2= KK QFRTSU V W(WX Y Z [X \U(]_^`ba d3x [e W(fg e f(fv(z(u X V [V [X f(fx Z(Z h(wx e(i_[kjlwjbju X Y Z [X \U mn3i_[jlwj ju X6jlSU V WU h(wx6oz [i_[\p\pfg U X WX X [e W(fg e f(fv(z(u X e(i_[kjlwjbju WX6oZ [3i_[(\p\pfg U X WX qrsz(x6jlsu W [(h([(\\pf(ftlol[u h(f(fx6jz [ipu \p\pf(fvuw[(\pfu X g Z(Z \pfxjlfg fx e(i_[jlwj ju X6jlSU W(\\pS yfrtsu V W(WX Y [e W(\p\pfg U X WX X [e W(fg e f(fv(z(u X e(i_[kjlwjbju X Y [e W(\\pfg U X WX CNM@O<PM < 9M@O ;9M2= KK z{3wjzi jbju WX uwfv fg U X WX6jlSU V WU h(wx}olsy U Y Y S \pw~ [V fkjl\pf oletus: yhteiskäyttöisiä FRTfg fx e(i_[jlwj ju X6jlSU V WU h(wx6olsy U X WX V [g g Z(X(U V [U X \U(~ WY e(e [(fvuwfx [e W(f(f yhteiskäyttöinen data-alue kaikilla pääsy globaaleihin muuttujiin säie hoitaa itse tiedon sovittuun paikkaan toinen noutaa itse ei tarvita ytimen apua ei siirtymisiä etuoik tilaan Fƒ [U(~ WY e [(\\pf(f [~:uwwy g [U X \U \w l \ps KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2 - KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-2 KJ-I I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-2

CNM@O<PM < 9M@O ;9M2= KK Z(\p\pf j X(V(i_[X [U X \U:uwfe [U j jz(y V Wg U X WX V [V [X f(fx [~:uwwy g [U uwfx6olfkjl\z(z(y Y f esim Yhteisen tietorakenteen muuttaminen jos yksi muuttamassa muut eivät saa käyttää jos väh yksi käyttää kukaan ei saa muuttaa esim Tuottaja ja kuluttaja kuluttaja ei saa edetä ennenkuin tuottaja edennyt tiettyyn vaiheeseen { V(Z(i j ju - 9Ox 4 27 KK RT[olWY Y Zljt:uw[kjbjlf}jlWY V W(Sj\U(ipU U e(e(z(g f(\\p[g U f V [V [X fu jz(z(vju f ts suoritusjärjestyksellä ei väliä ts säikeillä ei synkronointitarvetta kukin osa toteutettavissa omana säikeenä KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-3 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-4 - 9Ox 4 27 KK kju g(y S~(U olw3ipv [X \phjl\p[e fy olwy U uwf rsju \pwy \psolszljlwu \pfel b X(\p uwsy ~l lwj jls f uwfjbjlf fy olwg e f(fy Z [(h(f \pfe(e f(fv(z \pfv(u X el X \p (S V [~ h(wx [g f}jlsu WV(Z(U X [g fei_[jlwjbju R n (e(i_[jlwkjbju X6jlSU V W(W(\ ol[u h(f(fx6jz [ipu \p\pf(f fu h([j\ul ~ \ps(fu V f(f WipU(ei_[jlWj jl[i_wu Y Y f kju g V [g WX(X [(\ olfy U V [U jl\pf VjUljlSU WX S l\\ps(s}olfy U V [X uwfy Z(V W(W}j l (\p\pw(wx [U X WX6jlSU W}jZ [3ipU \p\pf(f W(h(WY Y U j\psv [g WX \p[(f WY e [g e(u [~:uwwy g [U h(f GP<PM@? ;98=OPOPM#P; 2= O$ 23<$ %% KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-5 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-6 -/232465798:57; <2=;9>@?A 2 - E'& II E( E I+* D-/ DFE B -HGG I ULT User Level Threads -/232657 2 <2 hu X WU(\U W(h(S}jlSU V WU jl\ps vuorottaa vain prosesseja RT[olWY Y Zlj}V Sk l\p\ps(s}jlsu V WU h(wx ~ fy Y U X \pf(fx jlsu WV(U i uwfjl\p[(f kirjanpito TCB:t RT[olWY Y Zlj}~(Z [Y W~(\U U(U \wjlw jlsu V WU h(wxjls oz [3i_[(\p\pfg U jlwx ohjelmoijan vastuulla ei käytä ytimen koodia ei keskeytysohjattua < 9M@O ;9; 2 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-7 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-8 KJ-I I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-3

; < 2 2 D D 9MJ;9OPM@8:5 <2 2 ;; 88 <P8 2M@MPM2 rfipv W(fvuwfV [ RTSU V W(WX Y Z [g U X WX kirjanpito säikeestä ja sen tilasta RTSU V W(WX W(\pWX Wg U jlwx Wkjl\pSg U X WX rekistereiden tallettaminen RTSU V W(WX W(\pWX Wg U jlwx}jlfy Y U g U X WX rekistereiden palauttaminen RTSU V W(WX Y [e W(\p\pfg U X WX r[~ h(f(\ vuwf 6j X(V(i_[X [U X \U KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-9 2 DD B 2 P8; < 22 P83;$ < e \~i_w(f(h V(U i uwfjl\p[kjbjlf} Y U(a Z(X(V \U [\pf e \~i_w(f(hi_w(f(\pw]_d parametrina funktio josta suoritus alkaa e \~i_w(f(h W(U \]_d lopeta säikeen suoritus e \~i_w(f(hpuw[u X(]_d odota parametrina annetun säikeen loppumista R3 X(V(i_[X [U X(\U t(e [U jbjz(y V Wg U X WX ] jlwg fw[ipu \d pthread_mutex_init( / _destroy( pthread_mutex_lok( / _trylok( / _unlok( X(X Sg Z(U \pf Z(X(V \U [U \pf shed_yield(: luovu vapaaehtoisesti CPU:sta KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-2 GP<PM@? ;98=OPOPM void main( { pthread_t thr thr2; har *msg = Hello; har *msg2 = World; pthread_reate(&thr pthread_attr_default (void*&print_message_funtion(void*msg; pthread_reate(&thr2 pthread_attr_default (void*&print_message_funtion(void*msg2; exit(; } void print_message_funtion(void *ptr{ har *message; message = (har * ptr; printf(%s message; } -/232657 2 <2 ##$ #%'##('(##*+ ei KJ:n apua ei keskeytystä ei prosessinvaihtoa -/ # %'#& #&# & #*#& #( ##$ #%'& #( KJ ei tunne sovelluksen tarpeita # 3 & & $ $ & # *# + & %'* $ & & #4 #& 5 #% & #6#& $ < 9M@O ;9; 2 #& #( & 6###( *# # #* 5 ( #& '#7+ #4 6#& 6#6#&+% #% #( *#$ 5 & 6## #7# #% #('*#$ 5 & 6## #& #&+# ##$ & #6 5 # *#$ 5 #$ & #& 6 Ydin vuorottaa vain prosesseja KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-2 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-22 -/232465798:57; <2=;9>@?A 2 & I/B C G DFE B -HGG I KLT Kernel Level Threads D D 9M@O ;9M+9; 22 2=;2 2 < 2M@? ; << 2 & 6##& 7##( # 6##6##( #( 8:9 ( 5 & %' 5 #&+6 5 6#& $ ohjelmoijalle näkyvä rajapinta voi olla silti sama kuin edellä palvelupyynnöt 7= & # & 6##& prosesseista PCB:t niiden säikeistä TCB:t ##$ #%'##( 8:9 ( aikaviipale säikeelle ##& KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-23 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-24 KJ-I I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-4

& D D 9M@O ;9M+9; 22 2=;2 2 < 2M@? ; << $ + & 6##& #& #& # #& 6 2 & 6###( #& & & #9 ##$ & #6 5 '#$ & *#$ 5 #$ #& 8: & = #6##7 & #(#4 % *#$ 5 & 6## #& & & 6 8 5 & %'#( #&#6 5 # & 6##& # #& keskeytys + siirtyminen KJ:hin (-> etuoik tila vuorottaminen (->kjätila =& & #%'* '6# 6#& $ '6 5 5 ks taulukko 4 -/232465798:57; <2=;9>@?A 2 - I+* B HG -HG9D%- BJI/B G K KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-25 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-26 D-9> 983M< 7#& < # %'# #%'*#& #( *#$ *#& & $ # ##( &+6 5 & 5 2 (#6#$ #(## & 6 5 & + # ##$ #%'& 6 5 & + -/ # %'#& #& 6 5 #( & 6## 5 & %'#( & 6##& 6 # #% # #( # D-9> 983M< KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-27 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-28 -/232465798:57; <2=;9>@?A 2 D D 9M@O ;9; 2M@> 2 DFE B -HGG I B * I # $ $ $&%' ( +*' # - /& kuten prosessilla 234&$& 5 6/&-+/& 7 $&6/&-/&-64 8-& liittyy heittovaihtoon osoiteavaruus prosessitason käsite mm koodialue + globaali data yhteiskäytössä 9 $74 8-+:<;=-& >234&$& 5 $ ' ;=-&? @/& / / $>A /& #- - BC $ 9 $74 8-+: -4& $ ' 4&- $>BC 6/& / / $DA /& KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-29 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-3 KJ-I I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-5

$# %&&('* +(- / & ' 23 94 $>* $C A/567 5 A /& A KJ vuorottaa prosessitasolla 8 Ready-jonossa prosesseja aikaviipale prosessille säiekirjasto huolehtii säikeiden vuorottamisesta prosessin aikaviipaleen sisällä 4-9567 5 A 7- - 64&? 4*&*$ $;::A' 4 8-+:<;=-& 6# - /& 5 $ B7&DA / ;=-$7/ ;=$ 4 -& A 7 $6# $ $ $&% 5 : < ULT- säikeen ja prosessin tila erillisiä KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-3 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-32 %&&('* +(- / & ' 23 %&&('* +(- / & ' 23 947 A ADA /& $C- BC: - -+ KJ ylläpitää säiekuvaajia KJ vuorottaa säietasolla 8 jos prosessin aikaviipaletta jäljellä vuorota saman prosessin säikeitä tai 8 koko aikaviipale säikeelle 4 -D967 5 A 7- - 64&? 4*&*$ $;::A' 4 8-+: $7B7 &3A /&?-? <;=/& Kuva 47 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-33 KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-34 = = 3>&?&-22 $ 3@ 23'A3 >/-CBD3 EF3G/ &%*H *HJIHJ%/ & K $74 8-&<;=DA 78- +? #- $;L K AD*NM& A6$ A7-$;L K A/M*: =*A A /& AL K $ 5677;=6967 8-? #- $;L K /O567 A /& $>?&-8- B7 $&$ $&-4& B74& 6/ $7967 A /& $;L K /O567 A /& $7# - /& 5 D? 648-& $ # - /& 5 $ ' B7&6967 A /& $C L KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-36 KJ-I I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-6

E H CBD BD /F2I I@JG - ' (' %&G&O / & % - Mitä laitteistopiirteitä tarvitaan moniajonjärjestelmän toteuttamiseksi Mitä tietoja on tapana tallettaa tiedostoattribuutteihin Mitä tietoja on tapana tallettaa prosessin kuvaajaan #$%& %$(' $(' Perustele keskeytysmekanismin tarve ja siitä saatavat hyödyt Kuvaa neljä (erilaista keskeytystilannetta ja kerro kuinka käyttöjärjestelmä käsittelee kunkin tilanteen (n yksi virke per tilanne Miten ja milloin prosessori huomaa keskeytyksen Selitä yksityiskohtaisesti keskeytyskäsittelyn vaiheet Aloita tilanteesta jossa keskeytys on juuri huomattu ja päätä tilanteeseen jossa KJ on käsitellyt keskeytyksen ja prosessori jatkaa joko keskeytyneen prosessin tai jonkun muun prosessin suoritusta (ts selitä myös mahdollinen prosessin vaihto Tuo vastauksessani selkeästi esiin mitkä toiminnoista ovat laitetoimintoja ja mitkä toiminnot KJ hoitaa ohjelmallisesti KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-38 I@JG - ' (' %&G&O / & % - *+OK $OM& $& Selitä MMU:n rakenneosat sekä kuinka MMU tekee osoitemuunnoksen kun 8 ei käytetä virtuaalimuistia ja prosessille on varattu yksi yhteinäinen muistialue 8 muistinhallinta perustuu sivuttavaan virtuaalimuistiin -+73 --$7/&A+ *A Sovellus avaa tiedoston palvelupyynnöllä OPEN( ja lukee sieltä sitten tietoa toistosilmukassa palvelupyynnöllä READ( Selitä KJ:n ja I/O-laitteiston toimitaa näiden kahden palvelupyynnön yhteydessä (mm mitä pitää tehdä millaisia tietorakenteita parametrien välitys jne KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-39 = = G& $F3I@3(>?&-22 $ & 3@F&I -CBD3 (8-+: tilakaavio prosessin kuvaaja 6&?&*/ ;=$ 4-23 8A$ A A K $?8 7 BC ;=A/8 4& /& '& &- /& C '#+ + + + + + KJ-I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-4 KJ-I I S24 / Tiina Niklander kalvot Auvo Häkkinen 2-7