Käyttöjärjestelmät LUENTO 23. Kertaus

Samankaltaiset tiedostot
Sisältöä. Milloin? Vuorotus. Kiinteä ja vaihteleva prioriteetti. Kertaus. Käyttöjärjestelmät. Syksy 2006 / Luento

Sisältöä. Milloin? Vuorotus. Kiinteä ja vaihteleva prioriteetti. Käyttöjärjestelmät, Luento 24. Kertaus. Syksy 2007, Tiina Niklander 24-1

Sisältöä. Kertaus. Vuorotus I/O Tiedostojärjestelmä Hajautettu prosessi Tietoturva. Käyttöjärjestelmät, Luento 24. Syksy 2007, Tiina Niklander 24-1

Distribution issues, global state, clusters, CORBA, etc. Distributed objects

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

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

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

Stallings, Luku

Ch [Stal 05] Ch , [Tane 01] Ch 20.7 [DDC 04] Ch [Stal05]

Sisältöä. Linux. Tiedostojen yhteiskäyttö. TIEDOSTOJEN HALLINTA Käytännön esimerkit. LINUX Tiedostojärjestelmät. Käyttöjärjestelmät

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

TIEDOSTOJEN HALLINTA Käytännön esimerkit

TIEDOSTOJEN HALLINTA. II:ssa?

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

Booting. Booting, multimedia systems. Exam issues. Key problem: How do you initiate a system using only itself?

D B. Levykön rakenne. pyöriviä levyjä ura. lohko. Hakuvarsi. sektori. luku-/kirjoituspää

Käyttöjärjestelmät II

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

Sisältöä. TIEDOSTOJEN HALLINTA Käytännön esimerkit. Ch [Stal 05] Ch , [Tane 01] Ch 20.7 [DDC 04] Linux.

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

Käyttöjärjestelmät II

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.

LUENTO 9. u kannattaa minimoida siirrot. u huonoja, eivät huomioi hakuvarren nykyistä positiota. (Fig 11.6 [Stal05])

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

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

Levy I/O Linux ja W2000 levy I/O

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

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

Security. Ch 16 [Stal 05] Perinteinen, symmetrinen salaus. Käyttöjärjestelmät, Luento 21. Sama avain molemmilla! Syksy 2007, Tiina Niklander 21-1

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

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

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

Security server v6 installation requirements

Seuraavaksi KJ-II:ssa [Stal 05] [Tane 01] [DDS 04] Linux

Jakso 8 Ohjelman suoritus järjestelmässä

Stallings, Luvut Appendix B

Sisältöä luento 19. Stallings, Luvut Appendix B. Hajautettu olio. Parametrien välitys. Sidonta asiakkaan ja olion välillä

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

Jakso 8 Ohjelman suoritus järjestelmässä

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

Security server v6 installation requirements

Moniprosessorijärjestelmä

VUOROTTAMINEN: SMP ja Reaaliaikajärjestelmät Linux, W2000

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

VUOROTTAMINEN YKSI CPU

Käyttöjärjestelmät: prosessit

Stallings, Luvut Appendix B

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu

TK Palvelinympäristö

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat

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

Sisältöä luento 19. Stallings, Luvut Appendix B. Hajautettu olio. Parametrien välitys. Sidonta asiakkaan ja olion välillä

Backup Exec 3600 Appliance

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

Luento 9 Järjestelmän ulkoinen muisti

Sovellusarkkitehtuurit

Moniprosessorijärjestelmä

Luento 3. Timo Savola. 7. huhtikuuta 2006

Tietoturvan Perusteet Yksittäisen tietokoneen turva

Muistihierarkia Kiintolevyt I/O:n toteutus

Luento 9 Järjestelmän ulkoinen muisti

D B. Levytiedostojen käsittely. Levytiedostojen käsittely

Luento 9 Järjestelmän ulkoinen muisti

6. Luento: Skedulointi eli Vuoronnus. Tommi Mikkonen,

7.4 Variability management

HELIA 1 (15) Outi Virkki Tiedonhallinta

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

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

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

Jakso 8 Ohjelman toteutus järjestelmässä

VUOROTTAMINEN SMP JA REAALIAIKAJÄRJESTELMÄT Linux, W2000

Kernel (Fig 4.10 [Stal 05]) Operating Systems Examples and Process Management

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

2 Konekieli, aliohjelmat, keskeytykset

D B. Tiedostojen käsittely

Luento 9 Järjestelmän ulkoinen muisti

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

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

Luento 3: PROSESSIT JA NIIDEN HALLINTA

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

OSA II: Hajautettu ympäristö. Sisältö, osa II. Ei yhteistä muistia. Sanomanvälitys. Etäproseduurikutsu. Rendezvous. Rio 2004 / Auvo Häkkinen

Luento 9 Järjestelmän ulkoinen muisti

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

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

Järjestelmän ulkoinen muisti I/O

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

Tietokone. Tietokone ja ylläpito. Tietokone. Tietokone. Tietokone. Tietokone

SALAKIRJOITUKSEN VAIKUTUS SUORITUSKYKYYN UBUNTU käyttöjärjestelmässä -projekti

The administrative process of a cluster. Santtu Rantanen Valvoja: Prof. Jorma Jormakka

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

Transkriptio:

LUENTO 23 Kertaus Koealue: (Koe to 14.12 klo 9.00 A111) -Kirjan luvut 9-16 (ei 13) + Appendix B.4 -Luennot 11-23, harjoitukset 7-12 -Opintopiiritehtävä 3 1 Sisältöä Vuorotus I/O Tiedostojärjestelmä Hajautettu prosessi Tietoturva 2 Syksy 2006 / Luento 23 23-1

Vuorotus 3 Milloin? Long-term otetaanko uusi prosessi systeemiin? suoritettavaksi? mahtuuko muistiin? riittääkö swap-tila? Medium-term milloin (heittovaihdettu) muistiin? prosessi muistiin? vapaata muistia? moniajoaste? Short-term mille prosessille annetaan suorittimelle? CPU? I/O minkä prosessin I/O pyyntö I/O-laitteelle? palvellaan ensin? 4 Syksy 2006 / Luento 23 23-2

Vuorotuksen jonomalli 5 Kiinteä ja vaihteleva prioriteetti Reaaliaikaprosessit KJ-prosessit Tavalliset user-prosessit high pri 0 1 2 3 63 64 65 66 127 128 129 130 131 192 low pri missile avoidance process flight surface control kiinteä navigation pri load control swapper cleaner kiinteä pri odottanut kauan RR jonossa calculator (128-140) vaihteleva pri käyttänyt paljon CPU-aikaa (esim. koko aikaviipale) 6 Syksy 2006 / Luento 23 23-3

Algoritmit First-Come-First-Served Round Robin Virtual Round Robin Shortest Process Next Shortest Remaining Time Highest Response Ratio Next Multilevel Feedback FCFS RR VRR SPN SRT HRRN feedback Fair Share Scheduling FSS 7 EDF Earliest Deadline First Kaksi jaksollista (periodic) työtä: Fig 10.5 [Stal05] Saapumisajat A 20 ms, B 50 ms välein Suoritusajat A 10 ms, B 25 ms Vuorottaminen 10 ms:n välein Valm. takaraja A 20 ms, B 50 ms saapumisesta 8 Syksy 2006 / Luento 23 23-4

Rate Monotonic Scheduling Vain jaksollisille (periodisille) töille Sama työ tasaisella tahdilla käyttöaste yhden työn osalta on U = C/T Jakson loppu = Hard deadline Pienin jakso (T) = suurin prioriteetti Rate: määrä yksikköä kohden, taajuus (Fig 10.7 [Stal05]) 9 Ajoitettavuuden arviointi käyttöasteen avulla RMS: Selvästi U i = C 1 /T 1 + C 2 /T 2 +.. + C n /T n <= 1 Riittävä ehto sille, että työt voidaan ajoittaa RMSalgoritmilla on C 1 /T 1 + C 2 /T 2 +.. + C n /T n <= n(2 1/n - 1) Arvon n kasvaessa, RMS:lle yläraja lähenee Tbl 10.4 [Stal05] ln2 ~ 0.693 eli rajatapaus U i < 0.693 EDF: tehokkaampi, sille riittää (riittävä ja välttävä ehto) U i = C 1 /T 1 + C 2 /T 2 +.. + C n /T n <= 1 10 Syksy 2006 / Luento 23 23-5

Prioriteetin kääntyminen (Priority inversion) 11 Prioriteetin kääntymisen välttäminen Keskeytymättömät kriittiset alueet Luovat tarpeetonta odotusta. Käyttökelpoisia vain lyhyille kriittisille alueille. Sisääntuloprotokollia kriittiselle alueelle Prioriteetin perintä (Priority Inheritance Protocol). Prioriteetin kattomenetelmä (Priority Ceiling Protocol). 12 Syksy 2006 / Luento 23 23-6

I/O 13 Palvelupyynnöt Laiteriippumaton taso - tdstojärjestelmä - puskurointi Laiteriippuva taso - laiteajurit - jonotus, järjestys - keskeytyskäsittely Laitteisto - siirto, DMA - keskeytys 14 Kuva 11.4 Syksy 2006 / Luento 23 23-7

Laiteajurit Erityyppisille laitteille omat ajurinsa Etsi ajuri laitenumeron perusteella laitekuvaajalistasta siirtoa käynnistettäessä siirron päättyessä (keskeytys!) Laitekuvaaja 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 mm. linkki pyynnön tehneen prosessin PCB:hen 15 Siirrännän puskurointi Tarve Prosessi odottaa Blocked-tilassa siirron valmistumista Alue, jonne siirretään oltava silti muistissa Lohkoperustainen Levyt, nauhat kirjanpito vapaasta / varatusta tilasta lohkoittain siirto laitteen ja muistin välillä lohko kerrallaan hajakäsittely mahdollista (nauha?) Tavuperustainen pääteyhteys, kirjoitin, hiiri, tiedonsiirtolinja,... tiedon käsittely tavu kerrallaan vain peräkkäiskäsittely 16 Syksy 2006 / Luento 23 23-8

Levyhaku (Fig 11.6 [Stal05]) Laitteen vapautumisen odotus ohjain käsittelee yhden pyynnön kerrallaan Siirtokanavan odotus jos useita levyjä samassa väylässä Hakuvarren siirto-aika (seek time) hakuvarsi oikealle uralle Pyörähdysviive (rotational delay/latency) odota, että oikea sektori pyörähtää kohdalle Siirtoaika (transfer time) yhden lohkon kirjoittamiseen/lukemiseen kuluva aika? Näihin voi vaikuttaa saantiaika (access time) Tähän ei voi vaikuttaa 17 Algoritmeja Hakuvarren siirtoaika pisin kannattaa minimoida siirrot Random? FIFO? PRI? LIFO? huonoja, eivät huomioi hakuvarren nykyistä positiota Ota huomioon hakuvarren sijainti SSTF SCAN C-SCAN N-step-SCAN ja FSCAN 18 Syksy 2006 / Luento 23 23-9

Levyn vuorotusalgoritmeja 19 RAID - Redundant Array of Independent Disks RAID 0 (ei redundanssia, ei toisintoja) RAID 1 (mirror, kahdennettu) RAID 2 (Hamming) RAID 3 (pariteettibitti) RAID 4 (pariteettilohko) RAID 5 (hajautettu pariteettilohko) RAID 6 (2 haj. pariteettilohkoa) 20 Syksy 2006 / Luento 23 23-10

Lohkopuskurit Ch 11.7 [Stal 05] 21 Lohkopuskurit, levypuskurit KJ:n data-alueella oleva puskuri muistiinluettuja levylohkoja varten Paikallisuusperiaate Ennaltanouto / viivästetty kirjoitus Poistoalgoritmit LRU: Least Recently Used LFU: Least Frequently Used Most Recently Used MRU FIFO (Frequency Based Replacement) 22 Syksy 2006 / Luento 23 23-11

Most Recently Used MRU Three Sections Most Recently Used MRU Three Sections parannus: jaa jono kolmeen osaan poistot aina viimeisestä osasta etuosasta pudonneelle jää aikaa vanheta tulos: parempi algoritmi kuin LRU tai LFU Fig 11.9 (b) [Stal 05] 23 Tiedostojärjestelmä 24 Syksy 2006 / Luento 23 23-12

Hakemisto: Hierarkinen puurakenne Juurihsto, kotihakemistot, alihakemistot Myös prosessit voivat luoda alihakemistoja Juurihstolla kiinteä paikka levyllä 25 Koko tdsto yhdelle alueelle Hstoalkiossa vain ens. lohkon numero sekä tdston koko (pituus) Koon muuttaminen vaikeaa arvioitava varausta tehtäessä saatetaan joutua kopioimaan uudelle alueelle 26 Syksy 2006 / Luento 23 23-13

Lohkojen ketjutus Varaus lohko kerrallaan vasta tarvittaessa Hstoalkiossa viite tdston ensimm. lohkonumeroon sekä tdston koko Fig 12.9 [Stal05] 27 Lohkohakemisto Erillinen hakemisto tdstolle varatuista lohkoista Usein erillään omassa lohkossa hstoalkiossa vain hstolohkon numero 28 Syksy 2006 / Luento 23 23-14

Vapaan tilan hallinta Tan01 6-21 Lohkolista Bittikartta 29 UNIX Tan01 6-38 30 Syksy 2006 / Luento 23 23-15

UNIX Tan01 6-39 31 LINUX Tiedostojärjestelmät 32 Syksy 2006 / Luento 23 23-16

Tiedostojen yhteiskäyttö [Tane 01] 33 LINUX Virtual File System 34 Syksy 2006 / Luento 23 23-17

Linux tiedostojärjestelmät ext2fs (second extended file system) Linuxia varten kehitetty tiedostojärjestelmä esikuvana BSD Fast File System (FFS) lohkoryhmät tehokkuus, luotettavuus /proc erikoistiedostot, luodaan 'lennosta' esim. ytimen parametrien kysely/asettaminen KJ-palvelut piilotettu tiedostojärjestelmän käytöksi käytön valvonta tiedostojärjestelmän suojauksen avulla ext3fs journaling file system, log-structured file system (LFS) Red Hat Linux issa 35 [Tane01] 36 Syksy 2006 / Luento 23 23-18

Linux ext2fs levy Lohkoryhmät (block groups) yhtenäisesti levyltä allokoitu alue datalohkot ja i-nodet fyysisesti lähellä toisiaan säästä hakuvarren siirroissa Kaikki lohkot samankokoisia (1 KB) Kaikki i-nodet 128B (tavallinen UNIX 64B) 37 ext2fs superlohko (superblock) 1 lohko Kuvaa koko ext2fs-partition rakenteen Kopio jokaisen lohkoryhmän alussa luotettavuus, virheestä toipuminen Ydin operoi vain lohkoryhmän 0 superblokilla ja ryhmäkuvaajilla muille käyttöä, jos superblock 0 'rikki' /sbin/e2fsck kopioi aika-ajoin muualle 38 Syksy 2006 / Luento 23 23-19

ext2fs superlohko (superblock) 1 lohko Kuvaa koko ext2fs-partition rakenteen Kopio jokaisen lohkoryhmän alussa luotettavuus, virheestä toipuminen 0 8 16 24 32 40 48 56 64 72 80 0 1 Number of i-nodes Number of reserved blocks Number of free i-nodes Block size Blocks per group i-nodes per group Time of last write Ext2signat. Time of last test Operating system RESUID 2 Status 3 RESGID 4 Number of blocks Number of free blocks First data block Fragment size Fragments per group Time of mounting Status Error behav. 5 Max test interval File system revision Pad word 6 7 Max. mnt cnt Pad word blocksize Pad words 39 ext2fs i-node 0 8 16 24 0 1 2 3 4 5 6 Mode Uid File size Access time Time of creation Time of modification Time of deletion Gid Link counter No. of blocks 7 Access Control List 32 40 88 96 104 112 120 File attributes Reserved (OS-dependent) 12 direct blocks One-stage indirect block Two-stage indirect block Three-stage indirect block File version File ACL Directory ACL Fragment address Reserved (OS-dependent) Reserved (OS-dependent) 40 Syksy 2006 / Luento 23 23-20

Kirjaava tiedostojärjestelmä Kirjataan kaikki muutokset (journalointi?) Pitää tiedostojärjestelmän eheänä Kirjataan Vain metatieto muutoksista journal Sekä metatieto että itse data loki Tarve: Tiedostojärjestelmän tarkistus (check) kestää liian kauan, jos epänormaali kaatuminen Valtaosa levyoperaatioista on kirjoituksia, lukuoperaatiot tehdään puskureista Useimmat kirjoitukset pieniä päivityksiä levyn hakuvarsi liikkuu paljon, vähän dataa siirtyy 41 Perusidea Ongelma tavallisen tiedostojärjestelmän uuden tiedoston X luomisessa: kirjoita hakemiston i-node, hakemisto, tiedoston i-node ja lopulta tiedosto virta poikki (tms vika) kesken kaiken? Oooops. Ratkaisu: tapahtumaloki, joka takaa tiedostojärjestelmän eheyden - vrt tietokantojen loki Esim: Microsoft NTFS, Red Hat Linux ext3fs 42 Syksy 2006 / Luento 23 23-21

NTFS: Piirteitä Kaatumisista ja levyvirheistä toipuminen LFS lokitiedoston avulla Käyttöoikeudet pääsylistat (security descriptor) Sallii suuret levyt ja tiedostot FAT32 ssa vain 2 32 lohkoa, suuri allokointitaulu Tiedosto-oliot ovat (arvo, attribuutti) -pareja Mahdollisuus indeksointiin tiedoston käsittelyn nopeuttamiseksi Lohko, cluster yksi tai useampi peräkkäinen sektori (esim. 512 B - 4 KB) 32 GB levyllä 128 sektoria/lohko ( lohko 64-512 KB) varauksen ja kirjanpidon perusyksikkö Partitio, volume fyysinen levyn looginen osa, jolla oma tiedostojärjestelmä 43 NTFS-partitio (Fig. 12.17 [Stal 05]) Boottilohko partition ja tiedostojärj. rakenne, boottitietue ja -koodi MFT:n sijainti MFT tietoa tiedostoista, hakemistoista (folders) ja vapaasta tilasta System Files (~ 1MB) kopio MFT:n alkuosasta virheistätoipumisloki, bittikartta vapaat/varatut lohkot, attribuuttien kuvaustaulu File Area - tiedostojen lohkoille 44 Syksy 2006 / Luento 23 23-22

NTFS MFT (Master File Table) 1 KB:n kokoisia MFT-tietueita jokainen kuvaa yhden taltiolla olevan tiedoston myös hakemisto on tiedosto vaihtelevanmittainen osa käytössä (attribuutti, arvo) pareja (ei paikkasidonnainen!) data attribuutti, 'arvo' = lohkojen sijainti 16 ensimmäistä tietuetta varattu ns. metadatalle 16 $-alkuista tiedostoa Jos pieni tiedosto, tietue sisältää myös datan Jos iso tiedosto, data erillisellä tallealueella MFT-tietuessa lohkonumeroita kuvaus voi jatkua useampaan MFT-tietueseen 45 Hakemiston MFT-tietue (Fig. 11-38 [Tane01]) pieni hakemisto Pienissä hakemistoissa MFT-tietueet peräkkäisjärjestyksessä Isoissa hakemistoissa MFT-tietueessa B-puun (B-tree) indeksirakenne nimen etsintä ei ole peräkkäishakua 46 Syksy 2006 / Luento 23 23-23

Hajautettu prosessi 47 Asiakas-palvelija luokitteluja 1-29 Alternative client-server organizations. 48 Syksy 2006 / Luento 23 23-24

Prosessien välinen viestintä: sanomat Sanomien välitys on prosessien tapa kommunikoida toisten prosessien kanssa Sekä samassa että eri koneissa olevien prosessien välillä 49 Sanomanvälityksen ominaisuuksia Luotettavuus Luotettava takaa viestien kulun Epäluotettava ei takaa, mutta yksikertainen toteuttaa Synkronointi Asynkroninen lähettäjä voi jatkaa heti Synkroninen lähettäjä jää odottamaan Sanomien pysyvyys Pysyvä viestintä (Persistent communication) viesti odottaa järjestelmässä vastaanottajaa Välitön viestintä (Transient communication) lähettäjän ja vastaanottajan olta samanaikaan paikalla Sidonta Miten? Koska? 50 Syksy 2006 / Luento 23 23-25

Prosessien välinen viestintä: aliohjelmakutsut Aliohjelmakutsuilla (API) prosessit tyypillisesti haluavat jotain palvelua tehtäväksi Samassa koneessa: funktiokutsuna Eri koneissa: Remote procedure calls 51 RPC 52 Syksy 2006 / Luento 23 23-26

RPC: Asiakkaan ja palvelijan toteutuksen vaiheet DCE:n malli 53 Hajautettuja olioita (Distributed objects) client invokes a method client machine client proxy client OS same interface same method server machine server server OS object state method interface skeleton network marshalled invocation 54 Syksy 2006 / Luento 23 23-27

Väliohjelmistotasot sovellusalueen palveluja: lennon navigointialgoritmeja, potilastietokantamalleja yleispalveluja: ilmoitukset, turvallisuus, transaktiot, kuormantasaus, tietovirrat, vikasietoisuus objektien ja komponenttien välinen kommunikointi (RMI, CORBA) yhtenäinen näkemys käyttöjärjestelmä- ja kommunikointipalveluihin CACM 45, 6 pp 45 55 CORBA yleiskuva Interface Repository IDL Compiler Implementation Repository Client OBJ REF operation() out args + return in args Object (Servant) IDL SKEL DSI DII IDL STUBS ORB INTERFACE Object Adapter ORB CORE GIOP/IIOP/ESIOPS CORBA shields applications from heterogeneous platform dependencies e.g., languages, operating systems, networking protocols, hardware 56 Syksy 2006 / Luento 23 23-28

Clustering Method Passive Standby Active Secondary: - Separate Servers - Servers Connected to Disks - Servers Share Disks Klusterit: luokittelua Description A secondary server takes over in case of primary server failure. The secondary server is also used for processing tasks. Separate servers have their own disks. Data is continuously copied from primary to secondary server. Servers are cabled to the same disks, but each server owns its disks. If one server fails, its disks are taken over by the other server. Multiple servers simultaneously share access to disks. Benefits Easy to implement. Reduced cost because secondary servers can be used for processing. High availability. Reduced network and server overhead due to elimination of copying operations. Low network and server overhead. Reduced risk of downtime caused by disk failure. Limitations High cost because the secondary server is unavailable for other processing tasks. Increased complexity. High network and server overhead due to copying operations. Usually requires disk mirroring or RAID technology to compensate for risk of disk failure. Requires lock manager software. Usually used with disk mirroring or RAID technology. 57 Cluster Computer Architecture 58 Syksy 2006 / Luento 23 23-29

Prosessin siirto Prosessi 3 (solmu S) Prosessiksi 4 (solmu D) Suoritus keskeytetään siirron ajaksi Siirretään uuteen paikkaan riittävästi tietoa nykyisestä tilasta. Suoritus jatkuu uudessa paikassa 59 Siirtopolitiikkoja Eager (all): Siirrä kaikki (muistialueet+muut) Precopy: Prosessia vielä suoritetaan, kun muistialueita jo kopioidaan Eager (dirty): Siirrä vain se osa muistiavaruutta, joka on keskusmuistissa ja jota on muutettu Copy-on-reference: Siirrä sivua vain viittattaessa Flushing: Kopioi prosessin muuttuneet sivut levylle 60 Syksy 2006 / Luento 23 23-30

Tietoturva 61 Perinteinen, symmetrinen salaus Sama avain molemmilla! salainen avain salareitti salainen avain salakirjoitetun tekstin siirto selväkieli salakirjoitus salakirjoituksen purku selväkieli (Fig 16.14 [Stal 05]) 62 Syksy 2006 / Luento 23 23-31

Julkisen avaimen salakirjoitusmenetelmä Salaus kaksi eri avainta julkinen avain julkisen avaimen julkistus salainen avain salakirjoitetun tekstin siirto selväkieli salakirjoitus selväkieli salakirjoituksen purku (Fig 16.15 (a) [Stal 05]) 63 Tunnistus julkisen avaimen menetelmällä kaksi eri avainta julkisen avaimen julkistus salainen avain julkinen avain salakirjoitetun tekstin siirto selväkieli salakirjoitus selväkieli salakirjoituksen purku (Fig 16.15 (b) [Stal 05]) 64 Syksy 2006 / Luento 23 23-32

Passiiviset hyökkäykset (kuuntelu, nuuskinta) Luottamuksellisuus rikkoontuu, eheys ei rikkoudu Tietoliikenneyhteydet, -verkko salakuuntelu, tarkkailu, vuotaminen julkisuuteen (release of contents) puhelut, sähköposti, tiedostojensiirto salaus, salakirjoitus silti analysoitavissa (traffic analysis) Fig 16.3 [Stal 05] 65 Aktiiviset hyökkäykset Tiedon eheys rikkoontuu Tietoliikenneyhteydet, -verkko lähettäjä teeskentelee olevansa joku muu (masquerade) virheellinen toisto (replay) viivyttäminen, muuttaminen, uudelleenjärjestely (modification of msg contents) käytön esto (DoS = denial of service) ylikuormitus, yhteyksien sabotointi yritetään havaita ja toipua nopeasti 66 Syksy 2006 / Luento 23 23-33

Luokittelua (takaovi) (aikapommi) (valloittaja) (Fig 16.8 [Stal 05]) 67 Miten sisään yritetään? Arvaa / kokeile salasanoja standarditunnuksia + oletussalasana / ei salasanaa järjestelmällisesti lyhyitä salasanoja käytä apuna järjestelmän sanastoa tai jotain muuta valmista "top100"-listaa käytä käyttäjään liittyviä tietoja puh., nimet, seinällä olevat sanat,... Käytä Troijan hevosta hyötyohjelma, joka myös kokoaa käyttäjätietoa Salakuuntele verkkoa tunnus/salasana voi olla selväkielisenä 68 Syksy 2006 / Luento 23 23-34

Virustorjunta 69 Aiemmin kokeessa kysyttyä Vuorotus Yhden prosessorin: Multilevel feedback, Fair share, Moniprosessori: kimppavuorotus Reaaliaikajärj.: Rate monotonic I/O ja tiedostonhallinta Puskurointi, lohkopuskurien allokointi Levyhakuja: SCAN, FIFO, SSTF Ext2fs, NTFS, tiedostojen suojaus Tietoturva Hajautuksesta: Klusterit RPC, CORBA 70 Syksy 2006 / Luento 23 23-35

-- END -- Käyttöjärjestelmät 71 Syksy 2006 / Luento 23 23-36