MUISTINHALLINTA. Stallings, Luku 7

Koko: px
Aloita esitys sivulta:

Download "MUISTINHALLINTA. Stallings, Luku 7"

Transkriptio

1 LUENTO 7 MUISTINHALLINTA Stallings, Luku 7 1 Sisältöä Yleistä muistinhallinnasta (luku 7.1) Yksinkertainen muistinhallinta a) kiinteät partitiokoot (luku 7.2) b) dynaamiset partitiokoot (luku 7.2) c) Buddy System (luku 7.2) d) yksinkertainen sivutus (luku 7.3) e) yksinkertainen segmentointi (luku 7.4) Yksinkertainen = prosessi aina kokonaan muistissa tai kokonaan levyllä 2 Syksy 2007, Tiina Niklander 7-1

2 YLEISTÄ MUISTINHALLINNASTA 3 Fyysinen muisti Fyysinen muisti, sitä voi potkaista muistiavaruus laitteisto (MMU, väylät) käyttää fyysisiä osoitteita Keskusmuisti koodin + käsiteltävän datan suoritusaik. tallennus joukko peräkkäisiä tavuja Tukimuisti tiedon (ohjelmat, data) pysyvä tallennus joukko peräkkäisiä lohkoja Siirto näiden välillä muistinhallinnan ja tiedostojärjestelmän leipätyötä mahd. automaattisesti KJ:n toimesta 4 Syksy 2007, Tiina Niklander 7-2

3 Looginen muisti prosessin osoiteavaruus loogiset osoitteet eli virtuaaliosoitteet voi olla suurempi kuin fyysinen muisti kullakin prosessilla oma osoiteavaruus osoitteet suhteellisia alun suhteen (0..MAX) sovellus jakaantuu loogisesti moduuleihin ne voidaan tehdä eri aikoina, osoitteiden paikkaus linkityksessä erilaisia käyttöoikeuksia koodi R (vapaakäyntisyys) data R / W / RW osa moduuleista tarkoitettu yhteiskäyttöön 5 Prosessin rakenne PCB Ohjelma-alue Data-alue Pino alueen lopussa Suhteellisia viittauksia prosessin omalla muistialueella 6 Syksy 2007, Tiina Niklander 7-3

4 Yleistä muistinhallinnasta Ytimelle voidaan sallia kiinteä paikka muistissa voi käyttää suoraan fyysisiä osoitteita Loppu KJ:n muille osille ja sovelluksille KJ huolehtii siitä, että muistiin mahtuu mahd. monta prosessia vapaan / varatun tilan hallinta Laitteisto huolehtii siitä, etteivät prosessit sotke toisiaan MMU 7 Muistinhallinta: vaatimuksia Vapaa sijoitettavuus Heittovaihto KJ voi siirtää prosesseja välillä levylle KJ voi ottaa suoritettavaksi useampia prosesseja prosessin paikka voi vaihdella suorituksen aikana Ohjelmoija ei voi tietää minnepäin muistia sovellus sijoittuu suoritusaikana suhteelliset osoitteet Viittaukset fyysiksi osoitteiksi viimeistään ennen muistinoutoa/talletusta ŁAjonaikainen osoitemuunnos MMU:ssa 8 Syksy 2007, Tiina Niklander 7-4

5 Muistinhallinta: vaatimuksia Suojaus Luvatta ei saa käyttää toisen muistialueita Osoitetarkistus käännösaikana mahdotonta sovelluksen moduulit voidaan kääntää eri aikoina prosessien sijainti voi vaihtua suoritusaikana käskykanta voi sallia osoitustapoja, joissa osoite lasketaan suoritusaikana KJ ei voi sitä tehdä! ŁAjonaikainen laillisuustarkistus osittain MMU:ssa ja osittain KJ:ssa 9 Muistinhallinta: vaatimuksia Yhteiskäyttö Sallittava yhteisen koodin / datan käyttö suojauksista tinkimättä! Koodi ei muutu suorituksen kuluessa vapaakäyntisyys (reentrancy) järkevämpää sallia koodin yhteiskäyttö kuin pitää muistissa useita kopioita Monet prosessit tekevät yhteistyötä muiden kanssa, joten niillä yhteisiä tietorakenteita Esim. tuottajalla ja kuluttaja yhteinen puskuri Łkäytä säikeitä, palvelupyyntöjä 10 Syksy 2007, Tiina Niklander 7-5

6 YKSINKERTAINEN MUISTINHALLINTA 11 Yksink. muistinhallinta = Prosessi kokonaan muistiin / levylle Jos ohjelma > fyysisen muistin koko, sitä ei välttämättä pystytä suorittamaan Menetelmät: a) kiinteä partitiointi b) dynaaminen partitiointi c) Buddy System d) yksinkertainen segmentointi e) yksinkertainen sivutus Katso ns. katoava kansanperinne ei paljon käyttöä nykyisissä järjestelmissä kuuluu kuitenkin KJ:n peruskäsitteistöön 12 Syksy 2007, Tiina Niklander 7-6

7 a) Kiinteät partitiot 13 Kiinteät partitiot KJ (operaattori) jakoi muistin kiinteänkokoisiin partitioihin Varausalueet olivat kaikki yhtäsuuria tai niiden koot saattoivat vaihdella Ohjelma, joka oli pienempi tai yhtäsuuri kuin partitio, voitiin ladata ja ajaa ko. partitiossa 14 Syksy 2007, Tiina Niklander 7-7

8 Kiinteät partitiot Jos ei riittävän suurta vapaata partitiota, KJ teki tilaa heittovaihdolla joku prosessi levylle PCB jäi muistiin Jos ohjelma niin iso, ettei sopinut mihinkään partitioon, piti ohjelmoijan ratkaista tilanne kerrostus (overlaying) ohjelmoijan hoitama segmentointi vain osa ohjelmasta muistissa piti koodata mitä osia (aliohjelmia, segmenttejä ) kullakin hetkellä muistissa ja missä kohdassa 15 Kiinteät partitiot Muistin käyttö melko tehotonta varattiin aina kokonainen partitio, vaikka vähempikin olisi riittänyt Sisäinen pirstoutuminen (internal fragmentation) partitioiden sisälle jäi tyhjää tilaa vapaa tila yhdessä olisi saattanut riittää uudelle prosessille, mutta se ei ollut yhtenäisellä alueella 16 Syksy 2007, Tiina Niklander 7-8

9 Kiinteät partitiot: Sijoitus Jos kaikki partitiot samankokoisia jos vapaita, valitse joku niistä jos kaikki varattuja, heittovaihda joku Blocked-prosessi levylle tilaa vapautuu aina saman verran Jos partitiot eri kokoisia valitse pienin partitio, johon prosessi sopii yritti minimoida sisäistä pirstoutumista a) erikokoisille partitioille omat prosessijononsa partitiokoko yksi työn parametreista b) yksi jono, josta valittiin johonkin vapaaseen partitioon 17 Kiinteät partitiot: Sijoitus Kuva Syksy 2007, Tiina Niklander 7-9

10 b) Dynaaminen partitiointi 19 Dynaaminen partitiointi Ei etukäteen partitiointia Varausten koot ja lukumäärä vaihtelivat dynaamisesti prosessien tarpeiden mukaan Prosessille muistia vain sen verran kuin tarvitsi Ulkoinen pirstoutuminen (external fragmentation) varausten / vapautusten tuloksena väleihin jäi pieniä vapaita alueita KJ tiivisti muistia välillä (compaction) prosesseja siirreltiin, jotta vapaa tila yhteen kohtaan yleisrasite 20 Syksy 2007, Tiina Niklander 7-10

11 Dynaaminen partitiointi Kuva 7.4 Vaiheessa (d) ei enää tilaa prosessille 4, koko 8 M Jos kaikki 3 prosessia joutuivat Blocked-tilaan, KJ otti uuden P4:n suoritettavaksi 21 Dynaaminen partitiointi Niinpä KJ heitti P2:n ulos (e) ja P4 sai sen paikan (f) Aikanaan P2 pääsi taas Ready-tilaan Kun muistissa ei Ready-prosesseja, KJ vaihtoi P2:n muistiin Ł Tuloksena 3 pirstaletta: 6M + 6M + 4M = 14M 22 Syksy 2007, Tiina Niklander 7-11

12 Sijoitus Kuva 7.5 Mistä kohtaa varataan? Tavoitteena vähäinen tiivistämistarve Best-fit kooltaan sopivin First-fit ens. kooltaan riittävän suuri Next-fit jatka etsintää edellisestä kohdasta 23 Paras sijoitusalgoritmi? First fit yksinkertainen helpoin toteuttaa tehokkaasti (paras) isosta aukosta jää jäljelle isohko aukko Best fit hyvä nimi, mutta tuloksena mahd. pieniä aukkoja tuloksena nopeimmin pirstoutuminen Next fit varaukset / aukot muistin loppuosaan Toteutus: linkitetty lista, jossa vapaat alueet koon tai osoitteen mukaisessa järjestyksessä kumpi parempi? (osoite,pituus) (osoite,pituus) 24 Syksy 2007, Tiina Niklander 7-12

13 Poistoalgoritmi Kun muistissa vain Blocked-prosesseja, kannatti ottaa uusi prosessi suoritukseen ettei CPU jouten heittovaihda joku levylle poistettava prosessi Blocked-Suspend-tilaan uusi prosessi tilaan Ready-Suspend tai Ready Mikä pois, jotta saatiin sopivasti vapaata? iso vs. pieni sellainen, jonka vieressä iso tyhjä alue pieni vs. suuri prioriteetti 25 c) Buddy System 26 Syksy 2007, Tiina Niklander 7-13

14 Buddy System Kompromissi kahdesta em. menetelmästä kiinteät partitiokoot, mutta dynaaminen jako partitioihin ei haluta jättää pieniä tyhjiä tiloja varaa pikkuisen enemmänkin kuin tarve vaatii Varausyksikön koko ilmaistavissa 2:n potenssissa suurin mahdollinen yleensä koko muisti pienimmälle varausyksikölle joku minimikoko yksinkertaistaa vapaiden alueiden kirjanpitoa Varaukset ja vapaiden alueiden yhdistely toteutettavissa tehokkaasti 27 Buddy System KJ ylläpitää kustakin koosta omaa listaa lista osoitteiden mukaisessa järjestyksessä aluksi vain yksi suuri varausyksikkö Varaus jos oikean kokoluokan listassa ei vapaata alkiota, jaa luokkaa suurempi alue kahdeksi pienemmäksi toista tarvittaessa Vapautus kun listassa kaksi fyysisesti vierekkäistä aluetta, yhdistä ne kokoluokkaa suuremmaksi alueeksi toista tarvittaessa 28 Syksy 2007, Tiina Niklander 7-14

15 Buddy System: esimerkki Puu Kuva Buddy: varaukset puuna 30 Syksy 2007, Tiina Niklander 7-15

16 a) b) c) Osoitemuunnos Ohjelmassa loogiset osoitteet kaikki suhteellisia sen alun suhteen Historia Lataaja (KJ:n osa) muutti loogiset osoitteet fyysisiksi osoitteiksi samalla, kun latasi ohjelmakoodin muistiin Nykyaika osoitemuunnos vasta käskyjä suoritettaessa KJ:n ydin voi käyttää fyysisiä osoitteita, joten kun CPU suorittaa KJ:tä, osoitemuunnosta ei tarvitse tehdä 31 a) b) c) Osoitemuunnos Kuva Syksy 2007, Tiina Niklander 7-16

17 Laitteistotuki MMU:hun muunnosta ja suojaustarkistusta varten kaksi rekisteriä ns. kanta- ja rajarekisteri Base prosessin fyysinen alkuosoite Limit prosessin loppuosoite (tai pituus) Kun prosessi suoritukseen, kopioidaan näille arvot PCB:stä Fyys.osoite = loog.osoite + Base jos fyysinen osoite > Limit aiheuta poikkeus virh. muistiosoite muuten MAR <-- fyysinen osoite 33 d) Yksinkertainen sivutus 34 Syksy 2007, Tiina Niklander 7-17

18 Yksinkertainen sivutus KJ varaa muistia sivutila kerrallaan (page frame) kaikki samankokoisia suhteellisen pieniä, esim. 1KiB tai 4 KiB koko aina joku 2:sen potenssi käsittely helppoa laitetasolla KJ käsittelee ohjelmaa sivuina (page) sivu ja sivutila samankokoisia KJ sijoittaa prosessin sivut vapaisiin sivutiloihin Kun käytössä yksinkertainen muistinhallinta, KJ tuo kaikki sivut kerralla muistiin / vapauttaa 35 Sivutus Kuva Syksy 2007, Tiina Niklander 7-18

19 Yksinkertainen sivutus KJ pitää prosessikohtaista sivutaulua (page table) PCB:ssä sivutaulun fyysinen alkuosoite osoite MMU:hun, kun prosessi suoritukseen alkiossa tieto sivutilasta, jossa ko. sivu majailee Looginen osoite muodostuu nyt parista (sivunumero, siirtymä) bittijonon alkupään bitit kertoo sivunumeron bittijonon loppupään bitit siirtymän sivun sisällä Vain viimeinen sivu voi aih. pirstoutumista 37 Esimerkki muistin käytöstä (d) Prosessi D (5 sivua) ei sovi muistiin 38 Syksy 2007, Tiina Niklander 7-19

20 Esimerkki (jatkuu) Kuva 7.9 (e) KJ heittovaihtaa prosessin B levylle (f) KJ lataa prosessin D muistiin (5 sivua) Prosessin D sivut eivät sijaitse peräkkäin Ei ulk. pirstoutumista Sis. pirstoutumista keskim. 1/2 sivutilaa per prosessi 39 Esimerkin prosessien sivutaulut Jokaisella prosessilla ikioma sivutaulu Sivutaulun alkiossa sen sivutilan numero, jossa sivu sijaitsee KJ:llä sivutilataulu (tai linkitetty lista), josta käy ilmi mitkä sivutilat vapaita 40 Syksy 2007, Tiina Niklander 7-20

21 Osoitemuunnos (siv.) Kuva Looginen vs Fyysinen osoite Kuva 7.12 = HUOM: katenointi 6* = Syksy 2007, Tiina Niklander 7-21

22 e) Yksinkertainen segmentointi 43 Yksinkertainen segmentointi Ohjelmoija tai kääntäjä jakaa ohjelman kooltaan erilaisiin loogisiin kokonaisuuksiin, segmentteihin segmentti = esim. data-alue tai muutama aliohjelma Kääntäjä tuottaa koodia, jossa segmentin sisäiset loogiset osoitteet osoite tavallaan muotoa (segmentti,siirtymä) alkupään bitit kertoo segmenttinumeron loppupään bitit kertoo siirtymän segm. sisällä Järjestelmässä yleensä segmentin maksimikoko 44 Syksy 2007, Tiina Niklander 7-22

23 Segmentointi Kuva Yksinkertainen segmentointi Kun KJ lataa prosessin muistiin, se voi sijoitella segmentit vapaasti muistiin kun käytössä yksinkertainen muistinhallinta, KJ tuo kaikki segmentit kerralla muistiin muistia varataan aiemmin esitetyillä menetelmillä segmenttikohtaisesti KJ ylläpitää prosessin segmenttitaulua PCB:ssä segmenttitaulun fyysinen alkuosoite osoite MMU:hun, kun prosessi suoritukseen alkioissa kunkin segmentin fyysinen alkuosoite (Base) ja pituus (Length) 46 Syksy 2007, Tiina Niklander 7-23

24 Osoitemuunnos (segm.).) Kuva Looginen vs Fyysinen osoite = HUOM: 8224 aito yhteenlasku 8976 = 48 Syksy 2007, Tiina Niklander 7-24

25 Arviointia Segmenttitaulun alkiossa alkuosoite ja pituus segmentin kokoa helppo kasvattaa/pienentää dynaamisesti saattaa vaatia segmentin uudelleensijoittamista osoitteen oikeellisuus tarkistettavissa MMU:ssa Segmentti sopiva suojauksen yksikkö ohjelmoija määrittelee segmentit ja käyttöoikeudet käyttötapa kopioitu segmenttitaulun alkioon Ongelmana muistin pirstoutuminen segmentit eri kokoisia muistin tiivistämistarve 49 Segmentointi vai Sivutus Pirstoutuminen segmentointi aiheuttaa ulkoista, sivutus sisäistä segmentoinnin yhteydessä muistin tiivistämistä Osoitemuunnos MMU:ssa rekisteri, jossa segmentti-/sivutaulun fyys. osoite segmentoinnissa yhteenlaskua (yht.laskulaitteistoa) sivutuksessa katenointia (helppoa) 50 Syksy 2007, Tiina Niklander 7-25

26 Segmentointi vai Sivutus Sivutus ohjelmoijalle näkymätöntä, segmentointi ei Segmentti suojauksen kannalta loogisempi yksikkö kuin sivu Segmentointi sopii hyvin rutiinien dynaamiseen linkitykseen (yhteiskäyttö helpompi järjestää) Miksei molemmat: Yhdistettävissä! 51 Yhteenveto Menetelmä Kiinteä partitio Dynaaminen partitio Buddy System Yks. segmentointi Yks. sivutus kuvaus Muisti jaettu etukäteen osiin. Prosessi vain yhdessä osassa. Muistia varataan tarpeen mukaan. Prosessi vain yhdessä osassa. Muistinvar. dyn., mutta kiinteänkokoisina osina. Prosessi vain yhdessä osassa. Prosessi jaettu segmentteihin. Segm. sijoitettavissa vapaasti. Prosessi ja muisti jaettu sivuihin. Sij. vapaasti vahvuudet helppo toteutus ei sis. pirst. par. muistin käyttöaste ei juurikaan ulkoista pirstoutumista ei sis. pirst. par. muistin käyttöaste ei ulk. pirst. heikkoudet sisäinen pirstoutuminen maksimi prosessimäärä rajoitettu ulkoinen pirstoutuminen, tiivistämistarve vähäinen sisäinen pirstoutuminen ulkoinen pirstoutuminen hyvin vähän sis. pirst. (vain viimeinen sivu) 52 Syksy 2007, Tiina Niklander 7-26

27 Binääriset etuliitteet Factor Name Symbol Origin SI derivation 2 10 kibi Ki kilobinary (2 10 ) 1 kilo (10 3 ) mebi Mi megabinary (2 10 ) 2 mega (10 3 ) gibi Gi gigabinary (2 10 ) 3 giga (10 3 ) tebi Ti terabinary (2 10 ) 4 tera (10 3 ) pebi Pi petabinary (2 10 ) 5 peta (10 3 ) exbi Ei exabinary (2 10 ) 6 exa (10 3 ) zebi Zi zettabinary (2 10 ) 7 zetta (10 3 ) yobi Yi yottabinary (2 10 ) 8 yotta (10 3 ) 8 Tarve: Koon mukana kasvava virhe vastaaviin desim. esityksiin: k ~ 2,5%, M ~ 5%, G ~7,5% 53 Syksy 2007, Tiina Niklander 7-27

Osio 2: Luennot 4-7 Muistinhallinta

Osio 2: Luennot 4-7 Muistinhallinta Käyttöjärjestelmät I Osio 2: Luennot 4-7 Muistinhallinta Tiina Niklander; kalvot Auvo Häkkinen Tietojenkäsittelytieteen laitos Helsingin yliopisto Käyttöjärjestelmät t I YKSINKERTAINEN MUISTINHALLINTA

Lisätiedot

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

Osio 2: Luennot 4-7 Muistinhallinta YKSINKERTAINEN MUISTINHALLINTA. ltöä YLEISTÄ MUISTINHALLINNASTA. Looginen muisti. Käyttöjärjestelmät t I Osio 2: Luennot 4-7 Muistinhallinta Tiina Niklander; kalvot Auvo Häkkinen YKSINKERTAINEN MUISTINHALLINTA Stallings, Luku 7 Tietojenkäsittelytieteen laitos Helsingin yliopisto KJ-I

Lisätiedot

Sisältöä MUISTINHALLINTA. Stallings, Luku 7. Fyysinen muisti YLEISTÄ MUISTINHALLINNASTA. Looginen muisti. Prosessin rakenne

Sisältöä MUISTINHALLINTA. Stallings, Luku 7. Fyysinen muisti YLEISTÄ MUISTINHALLINNASTA. Looginen muisti. Prosessin rakenne LUENTO 7 Sisältöä MUISTINHALLINTA Stallings, Luku 7 Yleistä muistinhallinnasta (luku 7.1) Yksinkertainen muistinhallinta a) kiinteät partitiokoot (luku 7.2) b) dynaamiset partitiokoot (luku 7.2) c) Buddy

Lisätiedot

MUISTINHALLINTA. Stallings, Luku 7

MUISTINHALLINTA. Stallings, Luku 7 LUENTO 7 MUISTINHALLINTA Stallings, Luku 7 1 Sisältöä Yleistä muistinhallinnasta (luku 7.1) Yksinkertainen muistinhallinta a) kiinteät partitiokoot (luku 7.2) b) dynaamiset partitiokoot (luku 7.2) c) Buddy

Lisätiedot

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

ltöä (Luennot 5&6) Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Pikakertaus: : a) b) c) Dyn.. part.: sijoitus Kuva Buddy System: esimerkki Käyttöjärjestelmät t I Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Stallings, Luku 7 Sisält ltöä (Luennot 5&6) Yleistä muistinhallinnasta (luku 7.1) Yksinkertainen muistinhallinta a) kiinteät partitiokoot

Lisätiedot

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Käyttöjärjestelmät t I Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Stallings, Luku 7 KJ-I S2005 / Tiina Niklander; kalvot Auvo Häkkinen 5-1 Sisält ltöä (Luennot 5&6) Yleistä muistinhallinnasta (luku

Lisätiedot

Osio 2: Luennot 5-8 Muistinhallinta

Osio 2: Luennot 5-8 Muistinhallinta Käyttöjärjestelmät I Osio 2: Luennot 5-8 Muistinhallinta Tiina Niklander; kalvot Auvo Häkkinen Tietojenkäsittelytieteen laitos Helsinin yliopisto "!$#%#'&)(*+,(.-0/1#'-243 0# 5 Stallins, Luku 7 KJ-I S2004

Lisätiedot

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

Stallings, Luku 7. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 6-1 +-,. /0/21435,67398 :/28 ;=! " #$ %"& % ' )(*%* Stallings, Luku 7 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 6-1?"@ :, ;A/1B, CEDGF 8HBH I /JLKM N OQPSRUTWV!XZY[]\ETWV!XZT_^E`aUP_P_T_^E^aV!XZacbed

Lisätiedot

Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI

Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI Käyttöjärjestelmät t I Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI Stallings, Luku 8.1 KJ-I S2005 / Tiina Niklander; kalvot Auvo Häkkinen 7-1 Sisält ltö Käänteinen sivutaulu Segmentointi Segmentointi

Lisätiedot

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

Kuva 8.7. u Muunnos prosessin sivunumerosta sivutilanumeroksi u Kussakin alkiossa: u Katenoimalla. u MMU:ssa; juuri äsken käytettyjä muunnoksia Käyttöjärjestelmät t I Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI Stallings, Luku 8.1 Sisält ltö Käänteinen sivutaulu Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä KJ-I S2005

Lisätiedot

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

Stallings, Luku 8.1. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 8-1 B *,+ -./.10324+562879.17 :=!" #! $ % & %'"!)(" Stallings, Luku 8.1 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 8-1?@ 9+ :A.0 CEDFDHGIKJMLNGJHGPOFLRQTSIKUMSFVNS B W/JFXMYZJHGIK[MLNGIAL B W/JFXMYZJHGIK[MLNGIAL]\^UZOL_QTSIASOa`TbcMLdOIKJIeI^`TGD

Lisätiedot

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

ltö Luento 6: VIRTUAALIMUISTI Luento 7: Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä Suoritus virtuaalimuistissa Käyttöjärjestelmät t I Luento 6: VIRTUAALIMUISTI Stallings, Luku 8.1 Sisält ltö Ohjelman suoritus virtuaalimuistissa Sivutus Osoitemuunnospuskuri TLB Lisää sivutauluista Luento 7: Segmentointi Segmentointi

Lisätiedot

Luento 6: VIRTUAALIMUISTI

Luento 6: VIRTUAALIMUISTI Käyttöjärjestelmät t I Luento 6: VIRTUAALIMUISTI Stallings, Luku 8.1 KJ-I S2005 / Tiina Niklander; kalvot Auvo Häkkinen 6-1 Sisält ltö Ohjelman suoritus virtuaalimuistissa Sivutus Osoitemuunnospuskuri

Lisätiedot

Käyttöjärjestelmät: Virtuaalimuisti

Käyttöjärjestelmät: Virtuaalimuisti Käyttöjärjestelmät: Virtuaalimuisti Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi Lähteet Stallings, W. Operating Systems Haikala, Järvinen, Käyttöjärjestelmät Eri Web-lähteet Muistinhallinta

Lisätiedot

VIRTUAALIMUISTI. Stallings, Luku 8.1

VIRTUAALIMUISTI. Stallings, Luku 8.1 LUENTO 8 VIRTUAALIMUISTI Stallings, Luku 8.1 1 Sisältö Ohjelman suoritus virtuaalimuistissa Sivutus ja sivutaulut Osoitemuunnospuskuri TLB Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä

Lisätiedot

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

Sisältö VIRTUAALIMUISTI. Stallings, Luku 8.1. Suoritus virtuaalimuistissa. Suoritus virtuaalimuistissa. Puutoskeskeytys. Suoritus virtuaalimuistissa LUENTO 8 Sisältö VIRTUAALIMUISTI Stallings, Luku 8.1 Ohjelman suoritus virtuaalimuistissa Sivutus ja sivutaulut Osoitemuunnospuskuri TLB Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä

Lisätiedot

VIRTUAALIMUISTI. Stallings, Luku 8.1

VIRTUAALIMUISTI. Stallings, Luku 8.1 LUENTO 8 VIRTUAALIMUISTI Stallings, Luku 8.1 1 Sisältö Ohjelman suoritus virtuaalimuistissa Sivutus ja sivutaulut Osoitemuunnospuskuri TLB Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä

Lisätiedot

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

Sisältö VIRTUAALIMUISTI. Stallings, Luku 8.1. Suoritus virtuaalimuistissa. Suoritus virtuaalimuistissa. Puutoskeskeytys. Suoritus virtuaalimuistissa LUENTO 8 Sisältö VIRTUAALIMUISTI Stallings, Luku 8.1 Ohjelman suoritus virtuaalimuistissa Sivutus ja sivutaulut Osoitemuunnospuskuri TLB Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä

Lisätiedot

Osio 2: Luennot 5-8 Muistinhallinta

Osio 2: Luennot 5-8 Muistinhallinta &'()*),+.-/' 01-/2 ) 2 4!56' )7 Käyttöjärjestelmät I Osio 2: Luennot 5-8 Muistinhallinta Tiina Niklander; kalvot Auvo Häkkinen!"#$% # Stallings, Luku 7 Tietojenkäsittelytieteen laitos Helsingin yliopisto

Lisätiedot

Käyttöjärjestelmän rakenne

Käyttöjärjestelmän rakenne Käyttöjärjestelmän rakenne Tietokonejärjestelmä = Laitteisto + ohjelmisto Sovellus saa laitteiston käyttöönsä kj:n avustuksella CPU ja muisti Oheislaitteet KJ tarjoaa laitteiston käytössä tarvittavat palvelunsa

Lisätiedot

Käyttöjärjestelmät II

Käyttöjärjestelmät II LUENTO 1 Käyttöjärjestelmät II Kertaus: KJ-I ja RIO (KJ2 n osalta) Ch 1-8, 11-12 [Stal05] Kustakin luvusta enemmän tai vähemmän alkuosa Jos jokin asiat tässä tuntuvat hatarilta, niin (a) kysykää ja/tai

Lisätiedot

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

Stallings, Luku 8.1. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 7-1 "$# % &'&)(+*,#.-/*10 2&)0 354 # &76! Stallings, Luku 8.1 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 7-1 89 2 # 3:&( ; =/?A@CBEDGFCHJILKMCNORQ:KI+STOENUQ:KFLFCBEOEDVKLORIQ:OWIXIF ; Y'OZSTKQ:KI

Lisätiedot

Käyttöjärjestelmät II

Käyttöjärjestelmät II LUENTO 1 Käyttöjärjestelmät II Kertaus: : KJ-I ja RIO (KJ2 n osalta) Ch 1-8, 11-12 12 [Stal05] Kustakin luvusta enemmän n tai vähemmv hemmän n alkuosa Jos jokin asiat tässt ssä tuntuvat hatarilta, niin

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) ks. Fig. 2-18 [Tane99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen

Lisätiedot

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

Yleiskuva. Käyttöjärjestelmät II. Tietokonejärjestelm. rjestelmä. KJ ja laitteistopiirteet. KJ ja laitteistopiirteitä. Kertaus: : KJ-I ja RIO (KJ2 n osalta) Ch 1-8, 11-12 12 [Stal05] Kustakin luvusta enemmän n tai vähemmv hemmän n alkuosa Jos jokin asiat tässt ssä tuntuvat hatarilta, niin (a) kysykää ja/tai (b) kerratkaa

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen muisti on hyvin paljon

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) ks. Fig. 4-1 [Stal99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen muisti on hyvin paljon

Lisätiedot

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

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus. Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt Muistihierarkia (4) ks. Fig. 2-18 [Tane99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen

Lisätiedot

Käyttöjärjestelmät: prosessit

Käyttöjärjestelmät: prosessit Käyttöjärjestelmät: prosessit Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi Lähteet Stallings, W. Operating Systems Haikala, Järvinen, Käyttöjärjestelmät Eri Web-lähteet Käyttöjärjestelmä

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) ks. Fig. 4-1 [Stal99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen

Lisätiedot

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

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus (2) Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintot Muut pyörivät t Muistihierarkia (4) ks. Fig. 4-1 [Stal99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen muisti on

Lisätiedot

käännösprosessi Kääntäjä Konekielikääntäjä (Assembler) Yhdistelijä (linker) Lataaja (loader)

käännösprosessi Kääntäjä Konekielikääntäjä (Assembler) Yhdistelijä (linker) Lataaja (loader) käännösprosessi Kääntäjä Konekielikääntäjä (Assembler) Yhdistelijä (linker) Lataaja (loader) Kääntäjä Kääntäjän rakenne Perinteinen yksivaiheinen Kääntää suoraan konekoodiksi Käännöksen jälkeen peephole-optimointi

Lisätiedot

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

Osio 3: Prosessit, siirräntä ja tiedostojärjestelmä Käyttöjärjestelmät I Osio 3: Prosessit, siirräntä ja tiedostojärjestelmä Tiina Niklander, kalvot Auvo Häkkinen Tietojenkäsittelytieteen laitos Helsingin yliopisto! " $#&%' (%+*,- $*./ 0 Stallings, Luku

Lisätiedot

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

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 "! $# Stallings, Luku 4.1 KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 4-1 %& ()* +,.-0/212321416587912: 12;?5A@ 165 12;

Lisätiedot

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

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 t I Luento 3: PROSESSIT JA NIIDEN HALLINTA Stallings, Luku 3.1-3.4 Sisält ltöä Prosessi, prosessin kuvaaja Prosessien hallinta Prosessin tilat KJ:n perustietorakenteita KJ:n suorittamisesta

Lisätiedot

MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit. Stallings, Luku 8.2

MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit. Stallings, Luku 8.2 LUENTO 9 MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit Stallings, Luku 8.2 1 Perusvalinnat Virtuaalimuistia vai ei? originaali UNIX ja MS-DOS eivät käyttäneet ei tarvittavaa laitteistotukea (MMU,

Lisätiedot

Ongelma(t): Jotta tietokone olisi mahdollisimman yleiskäyttöinen ja suorituskykyinen, niin miten tietokoneen resurssit tulisi tarjota ohjelmoijalle,

Ongelma(t): Jotta tietokone olisi mahdollisimman yleiskäyttöinen ja suorituskykyinen, niin miten tietokoneen resurssit tulisi tarjota ohjelmoijalle, Ongelma(t): Jotta tietokone olisi mahdollisimman yleiskäyttöinen ja suorituskykyinen, niin miten tietokoneen resurssit tulisi tarjota ohjelmoijalle, sovellusohjelmille ja käyttäjille? 2012-2013 Lasse Lensu

Lisätiedot

Muistinhallinta. Tietokoneen rakenne. Stallings: Ch Heittovaihto vs. Virtuaalimuisti Esim: Pentium. Luento 5-1

Muistinhallinta. Tietokoneen rakenne. Stallings: Ch Heittovaihto vs. Virtuaalimuisti Esim: Pentium. Luento 5-1 Tietokoneen rakenne Luento 5 Muistinhallinta Stallings: Ch 8.3-8.6 Heittovaihto vs. Virtuaalimuisti Esim: Pentium Luento 5-1 Teemu s Cheesecake hand table Register, on-chip cache, memory, disk, and tape

Lisätiedot

Sivun koko. Perusvalinnat. Sopiva sivukoko? Sivun koko? MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit. Käyttöjärjestelmät, Luento 9

Sivun koko. Perusvalinnat. Sopiva sivukoko? Sivun koko? MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit. Käyttöjärjestelmät, Luento 9 LUENTO 9 Sivun koko MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit Stallings, Luku 8.2 Optimoi sisäistä pirstoutumista pieni Optimoi sivutaulun (taulujen) kokoa iso Monikerta (1x, 2x, ) levylohkon

Lisätiedot

Perusvalinnat. Sivun koko. Sivun koko? Sopiva sivukoko? MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit. Käyttöjärjestelmät

Perusvalinnat. Sivun koko. Sivun koko? Sopiva sivukoko? MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit. Käyttöjärjestelmät LUENTO 9 Perusvalinnat MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit Stallings, Luku 8.2 1 Virtuaalimuistia vai ei? originaali UNIX ja MS-DOS eivät käyttäneet ei tarvittavaa laitteistotukea (MMU,

Lisätiedot

Muistihierarkia Kiintolevyt I/O:n toteutus

Muistihierarkia Kiintolevyt I/O:n toteutus Luento 8 (verkkoluento 9) Järjestelmän ulkoinen muisti I/O Muistihierarkia Kiintolevyt I/O:n toteutus 1 Muistihierarkia Ulkoinen muisti (levymuisti) on halvempaa toteuttaa per tavu Ulkoinen muisti on paljon

Lisätiedot

Luento 5: Muistin hallinta 13.9.2006. Luento 5. Luento 5-1. Luento 5-3. u Continuous memory allocation for partition. Luento 5-5

Luento 5: Muistin hallinta 13.9.2006. Luento 5. Luento 5-1. Luento 5-3. u Continuous memory allocation for partition. Luento 5-5 Tietokoneen rakenne Luento 5 Teemu s Cheesecake hand table Muistinhallinta Register, on-chip cache, memory, disk, and tape speeds relative to times locating cheese for the cheese cake you are baking...

Lisätiedot

MUISTINHALLINNAN OHJELMISTO

MUISTINHALLINNAN OHJELMISTO LUENTO 5 Käyttöjärjestelmät II MUISTINHALLINNAN OHJELMISTO Ch 7-8 [Stal 05] 1 Lähtötiedot / seuraavaksi? Yksinkertainen muistinhallinta (Ch 7) Tehtävät, staattinen vs. dynaaminen partitiointi, Buddy System

Lisätiedot

Lähtötiedot tiedot / seuraavaksi? Käyttöjärjestelmät II MUISTINHALLINNAN OHJELMISTO. Looginen vs. fyysinen osoite Perusvalinnat.

Lähtötiedot tiedot / seuraavaksi? Käyttöjärjestelmät II MUISTINHALLINNAN OHJELMISTO. Looginen vs. fyysinen osoite Perusvalinnat. LUENTO 5 Lähtötiedot tiedot / seuraavaksi? MUISTINHALLINNAN OHJELMISTO Ch 7-87 8 [Stal[ 05] Yksinkertainen muistinhallinta (Ch 7) Tehtävät, staattinen vs. dynaaminen partitiointi, Buddy System sivutus,

Lisätiedot

KJ-II K2006 / Auvo Häkkinen - Teemu Kerola Tehtävät, staattinen vs. dynaaminen partitiointi, Buddy System sivutus, segmentointi

KJ-II K2006 / Auvo Häkkinen - Teemu Kerola Tehtävät, staattinen vs. dynaaminen partitiointi, Buddy System sivutus, segmentointi LUENTO 5 Käyttöjärjestelmät II MUISTINHALLINNAN OHJELMISTO Ch 7-87 8 [Stal[ 05] 1 Lähtötiedot tiedot / seuraavaksi? Yksinkertainen muistinhallinta (Ch 7) Tehtävät, staattinen vs. dynaaminen partitiointi,

Lisätiedot

Luento 3: PROSESSIT JA NIIDEN HALLINTA

Luento 3: PROSESSIT JA NIIDEN HALLINTA Käyttöjärjestelmät t I Luento 3: PROSESSIT JA NIIDEN HALLINTA Stallings, Luku 3.1-3.4 KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 3-1 Sisält ltöä Prosessi, prosessin kuvaaja Prosessien hallinta

Lisätiedot

Muistinhallinta. Teemu s Cheesecake. Tietokoneen rakenne

Muistinhallinta. Teemu s Cheesecake. Tietokoneen rakenne Tietokoneen rakenne Luento 5 (Memory Management) Stallings: Ch 8.3-8.6 Muistinhallintaongelma Heittovaihto vs. virtuaalimuisti Ohjelmisto- ja laitteistotuki Esim: Pentium Luento 5-1 Teemu s Cheesecake

Lisätiedot

Prosessi perinteisesti

Prosessi perinteisesti Käyttöjärjestelmät t I Luento 11: SÄIKEETS Stallings, Luku 4.1 Sisält ltöä Prosessi vs. säie Miksi säikeitä? ULT: Käyttäjätason säikeet KLT: Säikeiden toteutus ytimessä Säikeen tilat Käyttöjärjestelmän

Lisätiedot

Rakenteiset tietotyypit Moniulotteiset taulukot

Rakenteiset tietotyypit Moniulotteiset taulukot C! Rakenteiset tietotyypit Moniulotteiset taulukot 22.2.2018 Agenda Rakenteiset tietotyypit Vilkaisu 6. kierroksen tehtäviin Moniulotteiset taulukot Esimerkki Seuraava luento to 8.3. Ilmoittautuminen ohjelmointikokeeseen

Lisätiedot

PROSESSIT JA NIIDEN HALLINTA

PROSESSIT JA NIIDEN HALLINTA LUENTO 4 PROSESSIT JA NIIDEN HALLINTA Stallings, Luku 3 1 Sisältöä Prosessi, prosessin kuvaaja Prosessien hallinta Prosessin tilat KJ:n perustietorakenteita KJ:n suorittamisesta 2 Syksy 2007, Tiina Niklander

Lisätiedot

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

Stallings, Luku 4.1. KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH Käyttöjärjestelmät t I Luento 11: SÄIKEETS Stallings, Luku 4.1 KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 11-1 Sisält ltöä Prosessi vs. säie Miksi säikeitä? ULT: Käyttäjätason säikeet KLT: Säikeiden

Lisätiedot

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

Prosessi virtuaalimuistissa PROSESSIT JA NIIDEN HALLINTA. Sisältöä. Prosessi virtuaalimuistissa. Prosessi. Prosessi. Käyttöjärjestelmät, Luento 4 LUENTO 4 Prosessi virtuaalimuistissa PROSESSIT JA NIIDEN HALLINTA Stallings, Luku 3 1 Kuva 3.12 4 Sisältöä Prosessi virtuaalimuistissa Prosessi, prosessin kuvaaja Prosessien hallinta Prosessin tilat Kukin

Lisätiedot

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

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä Tietojenkäsittelyn perusteet 2 Lisää käyttöjärjestelmistä 2011-02-09 Leena Ikonen 1 Systeemiohjelmat Systeemiohjelmiin kuuluvat Kääntäjät ja tulkit (+debuggerit) Käyttöjärjestelmä Linkittäjät Lataajat

Lisätiedot

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

Sisältöä PROSESSIT JA NIIDEN HALLINTA. Prosessi. Prosessi virtuaalimuistissa. Prosessi. Prosessi virtuaalimuistissa. Käyttöjärjestelmät LUENTO 4 Sisältöä PROSESSIT JA NIIDEN HALLINTA Stallings, Luku 3 Prosessi, prosessin kuvaaja Prosessien hallinta Prosessin tilat KJ:n suorittamisesta 1 2 Prosessi Prosessi virtuaalimuistissa Moniajo perustuu

Lisätiedot

Tavoite. Monitorit. Monitori Hoare 1974. Monitori. Minimoi virhemahdollisuuksia. Monitori Synkronointimenetelmiä Esimerkkejä

Tavoite. Monitorit. Monitori Hoare 1974. Monitori. Minimoi virhemahdollisuuksia. Monitori Synkronointimenetelmiä Esimerkkejä Tavoite Monitorit Andrews 5.1-5.2, Stallings 5.5 Monitori Synkronointimenetelmiä Esimerkkejä Minimoi virhemahdollisuuksia poissulkeminen ohjelmoijan vastuulla P():t ja V():t siellä, täällä ja tuolla -

Lisätiedot

Algoritmit 1. Luento 4 Ke Timo Männikkö

Algoritmit 1. Luento 4 Ke Timo Männikkö Algoritmit 1 Luento 4 Ke 18.1.2017 Timo Männikkö Luento 4 Tietorakenteet Pino Pinon toteutus Jono Jonon toteutus Lista Listaoperaatiot Algoritmit 1 Kevät 2017 Luento 4 Ke 18.1.2017 2/29 Pino Pino, stack,

Lisätiedot

MAA10 HARJOITUSTEHTÄVIÄ

MAA10 HARJOITUSTEHTÄVIÄ MAA0 Määritä se funktion f: f() = + integraalifunktio, jolle F() = Määritä se funktion f : f() = integraalifunktio, jonka kuvaaja sivuaa suoraa y = d Integroi: a) d b) c) d d) Määritä ( + + 8 + a) d 5

Lisätiedot

Dynaaminen optimointi

Dynaaminen optimointi Dynaaminen optimointi Tapa ratkaista optimointitehtävä Tehtävä ratkaistaan vaiheittain ja vaiheet yhdistetään rekursiivisesti Perustuu optimaalisuusperiaatteeseen: Optimaalisen ratkaisupolun loppuosa on

Lisätiedot

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

u saantimenetelmät u kirjanpito vapaista lohkoista (taltiolla!) u hierarkkinen hakemistorakenne: kirjanpito tdstoista u tdstojen käyttö Käyttöjärjestelmät t I Luento 10: TIEDOSTOJÄRJESTELM RJESTELMÄ OSA 2 Stallings, Luku 12.1-12.7 + PALVELUPYYNNÖT Sisält ltöä Peruskäsitteistöä, tehtäviä ja tavoitteita Järjestelmän rakenne Tiedostojen organisointi

Lisätiedot

4. Luento: Prosessit ja säikeets. Tommi Mikkonen, tommi.mikkonen@tut.fi

4. Luento: Prosessit ja säikeets. Tommi Mikkonen, tommi.mikkonen@tut.fi 4. Luento: Prosessit ja säikeets Tommi Mikkonen, tommi.mikkonen@tut.fi Agenda Prosessi Säikeet Keskeytykset Keskeytyskäsittely Käyttöjärjestelmäkutsut Prosessielementti Prosessin hallinta Suunnittelunäkökohtia

Lisätiedot

Käännös, linkitys ja lataus

Käännös, linkitys ja lataus Luento 10 (verkkoluento 10) Käännös, linkitys ja lataus Ohjelmasta prosessiin Käännösyksikkö Kääntämisen vaiheet Makrot, literaalit Staattinen ja dynaaminen linkitys Nimien sidonta Lausekielestä suoritukseen

Lisätiedot

Järjestelmän ulkoinen muisti I/O

Järjestelmän ulkoinen muisti I/O Luento 9 (verkkoluento 9) Järjestelmän ulkoinen muisti I/O Muistihierarkia Kiintolevyt I/O:n toteutus 1 Muistihierarkia Ulkoinen muisti (levymuisti) on halvempaa toteuttaa per tavu Ulkoinen muisti on paljon

Lisätiedot

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

Käyttöjärjestelmät. Tietokoneen rakenne. Stallings, Luku 1. KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 1-1 Käyttöjärjestelmät Tietokoneen rakenne Stallings, Luku 1 KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 1-1 Sisältöä Keskusyksikkö Käskysykli Keskeytys ja sen käsittely Siirräntä Muistihierarkia

Lisätiedot

Stallings, Luku

Stallings, Luku "!$#%&'#)( *"( +, /. Stallings, Luku 11.111.4 KJI S2004 / Tiina Niklander, kalvot uvo Häkkinen 7 1 021 * +3! 4 57698;:=@? I/Olaitteiden luokittelua, siirtonopeuksia Siirrännän perustekniikat Siirrännän

Lisätiedot

UNIX / Solaris (SVR4)

UNIX / Solaris (SVR4) LUENTO 10 Muistinhallinnan esimerkit UNIX, Solaris, Linux, W2000 UNIX / Solaris (+4BSD) MUISTINHALLINTA Ch 8.3-8.6 [Stal 05] Ch 10-11 [Tane 01] 1 2 UNIX / Solaris (SVR4) Vanhoissa UNIXeissa ei virtuaalimuistia

Lisätiedot

Niemenkulman vanha koulu. Yhdistysten talot ja tilat ilta 3.5. Vartsala Terhi Ajosenpää

Niemenkulman vanha koulu. Yhdistysten talot ja tilat ilta 3.5. Vartsala Terhi Ajosenpää Niemenkulman vanha koulu Yhdistysten talot ja tilat ilta 3.5. Vartsala Terhi Ajosenpää Niemenkulman koulu yi Koulun käyttötarkoitus muotoutunut vuosien saatossa tilanteiden mukaan o Rakennettu kansakouluksi

Lisätiedot

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

Sisältöä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista. Tietokonejärjestelmä Tietokoneen rakenne Luento 1 Tietokonejärjestelmä Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista John von Neumann ja EDVAC, 1949 Luento 1-1 Sisältöä Tietokonejärjestelmä KJ:n näkökulma laitteistoon

Lisätiedot

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

Tietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949. Tietokoneen rakenne Luento 1 Tietokonejärjestelmä Ch 1 - Ch 8 [Sta06] Valikoituja paloja John von Neumann ja EDVAC, 1949 TITO-kurssista Luento 1-1 Sisältöä Tietokonejärjestelmä KJ:n näkökulma laitteistoon

Lisätiedot

Muistinhallinnan esimerkit UNIX, Solaris, Linux, W2000

Muistinhallinnan esimerkit UNIX, Solaris, Linux, W2000 LUENTO 10 Muistinhallinnan esimerkit UNIX, Solaris, Linux, W2000 Ch 8.3-8.6 [Stal 05] Ch 10-11 [Tane 01] 1 UNIX / Solaris (+4BSD) MUISTINHALLINTA 2 Syksy 2007, Tiina Niklander 10-1 UNIX / Solaris (SVR4)

Lisätiedot

Sisältöä SÄIKEET, SMP

Sisältöä SÄIKEET, SMP LUENTO 5 Sisältöä SÄIKEET, SMP Stallings, Luku 4 Prosessi vs. säie Miksi säikeitä? ULT: Käyttäjätason säikeet KLT: Säikeiden toteutus ytimessä SMP Windowsin säikeet 1 2 Säikeet (multithreading) Prosessi

Lisätiedot

UNIX / Solaris (SVR4)

UNIX / Solaris (SVR4) LUENTO 10 Muistinhallinnan esimerkit UNIX, Solaris, Linux, W2000 UNIX / Solaris (+4BSD) MUISTINHALLINTA Ch 8.3-8.6 [Stal 05] Ch 10-11 [Tane 01] 1 2 UNIX / Solaris (SVR4) Vanhoissa UNIXeissa ei virtuaalimuistia

Lisätiedot

Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen

Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari 1 1. JOHDANTO 1.1 Määritelmiä 1.2 Tietorakenteen ja algoritmin valinta 1.3 Algoritmit ja tiedon määrä 1.4 Tietorakenteet ja toiminnot 1.5 Esimerkki:

Lisätiedot

Aliohjelmatyypit (2) Jakso 4 Aliohjelmien toteutus

Aliohjelmatyypit (2) Jakso 4 Aliohjelmien toteutus Jakso 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,

Lisätiedot

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

NTÄ. Luento 8: SIIRRÄNT. Osio 3: Siirräntä ja tiedostojärjestelmä. ltö. Yleistä siirrännästä. Siirtonopeuksia (teoreettisia) Kuva 11.1. Käyttöjärjestelmät t I Osio 3: Siirräntä ja tiedostojärjestelmä Luento 8: SIIRRÄNT NTÄ Stallings, Luku 11.1-11.4 Tiina Niklander, kalvot Auvo Häkkinen Tietojenkäsittelytieteen laitos Helsingin yliopisto

Lisätiedot

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

Osio 3: Siirräntä ja tiedostojärjestelmä Käyttöjärjestelmät I Osio 3: Siirräntä ja tiedostojärjestelmä Tiina Niklander, kalvot Auvo Häkkinen Tietojenkäsittelytieteen laitos Helsingin yliopisto KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen

Lisätiedot

UNIX / Solaris MUISTINHALLINTA

UNIX / Solaris MUISTINHALLINTA LUENTO 6 Käyttöjärjestelmät II Muistinhallinnan esimerkit UNIX, Solaris, Linux W2000 Ch 8.3-6 6 [Stal[ 05] 1 Käyttöjärjestelmät II UNIX / Solaris MUISTINHALLINTA 2 KJ-II K2006 / Teemu Kerola (lu 6) 1 UNIX

Lisätiedot

Käyttöjärjestelmät II. Muistinhallinnan esimerkit. UNIX / Solaris MUISTINHALLINTA. UNIX / Solaris (SVR4) UNIX/Solaris: Tietorakenteita

Käyttöjärjestelmät II. Muistinhallinnan esimerkit. UNIX / Solaris MUISTINHALLINTA. UNIX / Solaris (SVR4) UNIX/Solaris: Tietorakenteita Käyttöjärjestelmät II LUENTO 6 Käyttöjärjestelmät II Muistinhallinnan esimerkit UNIX, Solaris, Linux W2000 UNIX / Solaris MUISTINHALLINTA Ch 8.3-6 6 [Stal[ 05] 1 2 UNIX / Solaris (SVR4) Vanhoissa UNIXeissa

Lisätiedot

Luento 2: LAITTEISTOSTA

Luento 2: LAITTEISTOSTA Käyttöjärjestelmät t I Luento 2: LAITTEISTOSTA Stallings, Luku 1 KJ-I S2005 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-1 Sisält ltöä Keskusyksikkö Käskysykli Keskeytys ja sen käsittely Siirräntä

Lisätiedot

Dynaaminen muisti Rakenteiset tietotyypit

Dynaaminen muisti Rakenteiset tietotyypit C! Dynaaminen muisti Rakenteiset tietotyypit 1.3.2016 Agenda Kertausta Dynaaminen muisti Valgrind-perusteet ja esimerkkejä Yhteenveto tietorakenteista Vilkaisu 3. kierroksen tehtäviin Esim: miten linkitetty

Lisätiedot

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu HELIA 1 (16) Luento 3.2 Suorituskyvyn optimointi jatkuu...... 2 Tietojen tallennusratkaisut... 2 Tiedon tallennuksen yksiköitä... 3 Loogiset... 3 Fyysiset... 3 Tallennusmäärittelyt Oraclessa... 5 Loogiset

Lisätiedot

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

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ät t I Luento 2: LAITTEISTOSTA Stallings, Luku 1 Sisält ltöä Keskusyksikkö Käskysykli Keskeytys ja sen käsittely Siirräntä Muistihierarkia = Tietokoneen Toiminta kurssin kertausta KJ-I

Lisätiedot

Tietokoneen toiminta, K Tavoitteet (4)

Tietokoneen toiminta, K Tavoitteet (4) Jakso 12 Yhteenveto Keskeiset asiat 1 Tavoitteet (4) Ymmärtää tietokonejärjestelmän keskeiset piirteet sillä suoritettavan ohjelman näkökulmasta Miten tietokonejärjestelmä suorittaa sille annettua ohjelmaa?

Lisätiedot

A274101 TIETORAKENTEET JA ALGORITMIT

A274101 TIETORAKENTEET JA ALGORITMIT A274101 TIETORAKENTEET JA ALGORITMIT PERUSTIETORAKENTEET LISTA, PINO, JONO, PAKKA ABSTRAKTI TIETOTYYPPI Tietotyyppi on abstrakti, kun se on määritelty (esim. matemaattisesti) ottamatta kantaa varsinaiseen

Lisätiedot

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

RJESTELMÄ OSA 2 Stallings, Luku PALVELUPYYNNÖT. KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH Käyttöjärjestelmät t I Luento 10: TIEDOSTOJÄRJESTELM RJESTELMÄ OSA 2 Stallings, Luku 12.1-12.7 + PALVELUPYYNNÖT KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 10-1 Sisält ltöä Peruskäsitteistöä, tehtäviä

Lisätiedot

Tieto- ja tallennusrakenteet

Tieto- ja tallennusrakenteet Tieto- ja tallennusrakenteet Sisältö Tyyppi, abstrakti tietotyyppi, abstraktin tietotyypin toteutus Tallennusrakenteet Taulukko Linkitetty rakenne Abstraktit tietotyypit Lista (Puu) (Viimeisellä viikolla)

Lisätiedot

Muistihierarkia Kiintolevyt I/O:n toteutus

Muistihierarkia Kiintolevyt I/O:n toteutus Luento 9 (verkkoluento 9) Järjestelmän ulkoinen muisti I/O Muistihierarkia Kiintolevyt I/O:n toteutus 1 Muistihierarkia Fig 4.1 [Sta16] Ulkoinen muisti (levymuisti) on halvempaa toteuttaa per tavu Ulkoinen

Lisätiedot

Luento 6. June 1, 2015. Luento 6

Luento 6. June 1, 2015. Luento 6 June 1, 2015 Normaalimuodon pelissä on luontevaa ajatella, että pelaajat tekevät valintansa samanaikaisesti. Ekstensiivisen muodon peleissä pelin jonottaisella rakenteella on keskeinen merkitys. Aluksi

Lisätiedot

Jakso 4 Aliohjelmien toteutus

Jakso 4 Aliohjelmien toteutus Jakso 4 Aliohjelmien toteutus Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio 1 Aliohjelmatyypit (2) Korkean tason ohjelmointikielen käsitteet: aliohjelma, proseduuri parametrit funktio parametrit,

Lisätiedot

monissa laskimissa luvun x käänteisluku saadaan näyttöön painamalla x - näppäintä.

monissa laskimissa luvun x käänteisluku saadaan näyttöön painamalla x - näppäintä. .. Käänteisunktio.. Käänteisunktio Mikäli unktio : A B on bijektio, niin joukkojen A ja B alkioiden välillä vallitsee kääntäen yksikäsitteinen vastaavuus eli A vastaa täsmälleen yksi y B, joten myös se

Lisätiedot

Ongelma(t): Jotta tietokonetta voitaisiin käyttää monipuolisesti ja mahdollisimman yksinkertaisesti kaikkiin sille soveltuviin käyttötarkoituksiin,

Ongelma(t): Jotta tietokonetta voitaisiin käyttää monipuolisesti ja mahdollisimman yksinkertaisesti kaikkiin sille soveltuviin käyttötarkoituksiin, Ongelma(t): Jotta tietokonetta voitaisiin käyttää monipuolisesti ja mahdollisimman yksinkertaisesti kaikkiin sille soveltuviin käyttötarkoituksiin, niin miten tietokoneen resurssit tulisi antaa käyttöön

Lisätiedot

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000 Jakso 12 Yhteenveto Keskeiset asiat 1 Tavoitteet (4) Ymmärtää tietokonejärjestelmän keskeiset piirteet sillä suoritettavan ohjelman näkökulmasta Miten tietokonejärjestelmä suorittaa sille annettua ohjelmaa?

Lisätiedot

Tutkimusaineistojen tekijänoikeus. TTA, Tekijänoikeus ja tutkimusetiikka, Helsinki 14.11.2013 OTT Pirjo Kontkanen

Tutkimusaineistojen tekijänoikeus. TTA, Tekijänoikeus ja tutkimusetiikka, Helsinki 14.11.2013 OTT Pirjo Kontkanen Tutkimusaineistojen tekijänoikeus TTA, Tekijänoikeus ja tutkimusetiikka, Helsinki 14.11.2013 OTT Pirjo Kontkanen Tutkimusaineistojen tekijänoikeus Tekijänoikeus / tutkimusaineistojen säilytys ja saatavuus

Lisätiedot

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

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

Lisätiedot

Algoritmit 1. Luento 13 Ti 23.2.2016. Timo Männikkö

Algoritmit 1. Luento 13 Ti 23.2.2016. Timo Männikkö Algoritmit 1 Luento 13 Ti 23.2.2016 Timo Männikkö Luento 13 Suunnittelumenetelmät Taulukointi Kapsäkkiongelma Ahne menetelmä Verkon lyhimmät polut Dijkstran menetelmä Verkon lyhin virittävä puu Kruskalin

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Kiintolevyt Muut pyörivät levyt I/O:n toteutus 1 Muistihierarkia (4) ks. Fig 4.1 [Stal03] (ks. Fig 4.1 [Stal99]) Ulkoinen muisti on halvempaa toteuttaa

Lisätiedot

Raportointi hankkeen tulosten kuvaajana ja toteutuksen tukena

Raportointi hankkeen tulosten kuvaajana ja toteutuksen tukena Raportointi hankkeen tulosten kuvaajana ja toteutuksen tukena Tiivistelmät, väli- ja loppuraportit Auli Vuorela ESR-koordinaattori Uudenmaan ELY-keskus 6.5.2013 Raportteja, raportteja, raportteja Loppuraportti

Lisätiedot

Arto Salminen, arto.salminen@tut.fi

Arto Salminen, arto.salminen@tut.fi 3. Luento: Muistin hallinta Arto Salminen, arto.salminen@tut.fi Agenda Mitä väliä? Erityyppiset muistit Ohjelman sijoittelu muistiin Ohjelman sisäinen muistinhallinta Muistinhallintayksikkö Välimuisti

Lisätiedot

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

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100 Tiedonsiirtokäskyt LOAD LOAD-käsky toimii jälkimmäisestä operandista ensimmäiseen. Ensimmäisen operandin pitää olla rekisteri, toinen voi olla rekisteri, vakio tai muistiosoite (myös muuttujat ovat muistiosoitteita).

Lisätiedot

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

IT K 1 45 K ä yt t öj ä rj estelmät IT K 1 45 K ä yt t öj ä rj estelmät Tenttikysymyksiä ja vastauksia Aliohjelman suoritusperiaate, ts. selvitä pinon käyttö ja paluuarvon välittäminen (3p) 1. Ennen aliohjelman aloittamista kutsuja tallettaa

Lisätiedot