KJ:N KEHITTYMINEN JA YLLÄPITO

Samankaltaiset tiedostot
KJ:N KEHITTYMINEN JA YLLÄPITO

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

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

Käyttöjärjestelmän rajapinnat

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

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

Keskeiset KJ:n osa-alueet

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

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

Käyttöjärjestelmät II

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

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

Käyttöjärjestelmät II

Prosessi perinteisesti

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

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

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.

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

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. Teemu Saarelainen Tietotekniikka

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

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

Luento 3: PROSESSIT JA NIIDEN HALLINTA

Luento 2: LAITTEISTOSTA

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

Luento 6: VIRTUAALIMUISTI

Sisältöä SÄIKEET, SMP

Käyttöjärjestelmät: prosessit

Käyttöjärjestelmän rakenne

Osio 2: Luennot 4-7 Muistinhallinta

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

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

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

Jakso 8 Ohjelman toteutus järjestelmässä

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

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

Käyttöjärjestelmät. Tietokoneen rakenne. Stallings, Luku 1. KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 1-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

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

Linux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat

Luento 8 Ohjelman toteutus järjestelmässä

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

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

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ä

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

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

Osio 2: Luennot 5-8 Muistinhallinta

Sisältöä SÄIKEET, SMP

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

Tietokoneen toiminta, K Tavoitteet (4)

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

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

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

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

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

Stallings, Luku

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

2 Konekieli, aliohjelmat, keskeytykset

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

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

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

Jakso 5 Suoritin ja väylä

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

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

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

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

Pikaintro käyttöjärjestelmiin

OHJ-4301 Sulautettu Ohjelmointi

VIRTUAALIMUISTI. Stallings, Luku 8.1

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

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

Käyttöjärjestelmät: poissulkeminen ja synkronointi

Jakso 5 Suoritin ja väylä

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

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

VIRTUAALIMUISTI. Stallings, Luku 8.1

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

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

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

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

Jakso 8 Ohjelman suoritus järjestelmässä

Jakso 8 Ohjelman suoritus järjestelmässä

Luento 5 Suoritin ja väylä

Luento 5 Suoritin ja väylä

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

MUISTINHALLINTA. Stallings, Luku 7

OHJ-1010 Tietotekniikan perusteet 4 op Syksy 2012

Luento 1 Tietokonejärjestelmän rakenne

Luento 5 Suoritin ja väylä

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

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

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

Transkriptio:

Käyttöjärjestelmät t I Luento 12: KÄYTTÖJÄRJESTELMIEN KEHITYS JA PIIRTEITÄ Stallings, Lukua 2 KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-1 Käyttöjärjestelmät I KJ:N KEHITTYMINEN JA YLLÄPITO KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-2 12-1

KJ:n kehittäminen ja ylläpito Laitteistot muuttuvat / uusia kehitetään u kytkimet, kortit, nauhat, levyt u merkkipohjaiset / graafiset päätteet u tuki virtuaalimuistille u muistin määrä kasvanut, väylät parantuneet, moniprosessorijärjestelmät, jne. Tietojenkäsittelytavat muuttuvat u interaktiiviset reaaliaikaiset järjestelmät u ikkunointiympäristöt u paikallisverkot ja Internet u kuvankäsittely u... KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-3 KJ:n kehittäminen ja ylläpito Jatkuvan kehitystarpeen vuoksi u modulaarinen rakenne u selkeät liittymät eri osien välillä u mahd. oliopohjainen toteutus Fprivate vs. public data Myös KJ:ssä puutteita ja virheitä u paikkopaketit (patches, service packages) u uudet KJ-versiot Milloin aika tehdä KJ uudelleen alusta? KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-4 12-2

KJ:n historia lyhyesti Perusmallit: Eräajojärjestelmä, yksiajo (Batch System) Eräajojärjestelmä, moniajo (Multiprogramming, multitasking) Osituskäyttöjärjestelmä (Time-Sharing) Nykyaikaistetut mallit: Moniprosessorijärjestelmä (Multiprocessor) Verkkokäyttöjärjestelmä (Networked systems) Hajautettu järjestelmä (Distributed system) Asiakas-palvelija malli (Client-Server) KAIKKI TARJOAVAT NE SAMAT PERUSPALVELUT Mitkä? KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-5 Käyttöjärjestelmät I Eräajo Yksiajojärjestelmä KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-6 12-3

Eräajo & yksiajo Ensimmäiset KJ:t 50-luvun puolivälissä Koneen muistissa yksink. monitoriohjelma Käyttäjä määritteli työnsä reikäkorteilla tai nauhalla (ns. kortinkuvat) erätyö = ohjauskortit + ohjelma + data Operaattori työnsi kortit lukijaan ja käänsi vipua Ohjauskortit kertoivat milloin monitorin piti ladata muita palveluohjelmia (esim. kääntäjä) Vain yksi työ kerrallaan suoritettavana, uusi työ ajoon vasta kun edellinen valmis KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-7 Työnohjauskieli (Job Control Language, JCL) Monitorille tarkoitettuja kortinkuvia u mikä ohjelma käynnistettiin u mitä tdstoja se käytti u minne tulosteet ohjattiin Esimerkkejä: $JOB uuden työn alkukortti $FTN lataa Fortran-kääntäjä ja anna kontrolli sille $LOAD lataa käännös muistiin $RUN aja juuri ladattu ohjelma $JOB parametrit $FTN Ohjelmakortit... $LOAD $RUN Datakortit... $END Seuraava erätyö... KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-8 12-4

Monitori Jatkuvasti muistissa Luki kortinkuva kerrallaan erätyötä suoritettavakseen Kun sovellus ladattu muistiin, suoritus hyppäsi sen alkuun Sovellusta suoritettiin kunnes u valmistui tai virhe u aika loppui Kontrolli jälleen monitorille Monitori luki seuraavan kortinkuvan Kuva 2.3 KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-9 Monitori ja siirränt ntä Monitori huolehti siirrännästä u siirrännän yksityiskohdat ei sovelluksen murheena I/O-käsky oli itseasiassa aliohjelmakutsu monitorin alueella olevaan koodiin u oma käsky, 'palvelupyyntö' Monitorin tarjoama palvelu u tarkasti, että sovellus ei vahingossa lukenut ohjauskorttia datakseen (-> liian vähän dataa?) u ohitti tarvittaessa kortteja, kunnes taas järkevä ohjauskortti (-> liikaa dataa?) KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-10 12-5

Monitori ja laitteistopiirteitä (1) Muistinsuojaus u Monitori suojattava sovellukselta u CPU:n tarkistettava muistiosoitteet Flaitteistossa kantarekisteri BASE Keskeytysmekanismi u hallittu kontrollin siirto monitorin ja sovelluksen välillä u bitti PSW:ssä, keskeytyskäsittelyn alku laitetoiminto Kellokeskeytys u ettei yksi sovellus valloittanut koko laitteistoa u viimeistään kello aiheutti keskeytyksen Fkontrolli taas monitorille KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-11 Monitori ja laitteistopiirteitä (2) Etuoikeutetut käskyt (Priviledged Instructions) u siirräntäkäskyt u muistin rajarekisterin asettaminen u keskeytysten esto ja salliminen u jos sovellus yrittää käyttää näitä käskyjä, tuloksena poikkeus tuntematon käskykoodi Etuoikeutettu vs. käyttäjätila (Supervisor/User mode) u vain laitteisto ja monitori voi asettaa (bitti PSW:ssä) u CPU suorittaa etuoikeutetun käskyn vain, jos on etuoikeutetussa tilassa KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-12 12-6

Yksiajojärjestelm rjestelmän heikkous Siirräntä erittäin hidasta verrattuna CPU:n nopeuteen CPU odottelee usein siirron valmistumista ennenkuin voi jatkaa sovelluksessa eteenpäin Ł Huono CPU:n käyttöaste KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-13 Käyttöjärjestelmät I Moniajojärjestelmä KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-14 12-7

Moniajojärjestelm rjestelmä Suoritettavaksi useita sovelluksia u kun yksi odottaa esim. siirrännän valmistumista, CPU suorittaa toista KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-15 Lisää laitteistovaatimuksia I/O-ohjain keskeyttää, kun siirräntä valmis u CPU voi suorittaa muuta siirron aikana MMU: suojaus ja ajonaik. osoitemuunnos u muistissa yhtäaikaa useita sovelluksia ja sovelluksen sijainti vaihtelee eri suor.kerroilla u Jos ei virtuaalimuistia Frajarekisteri LIMIT, kantarekisteri BASE u Jos virtuaalimuisti Fsivutaulurekisteri PTR Fosoitemuunnospuskuri TLB F sivunpuutoskeskeytys (page fault) KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-16 12-8

Lisävaatimuksia KJ:lle Prosessien hallinta u kirjanpitoa prosesseista = PCB:t Vuorottaminen u CPU toiselle prosessille, jos yksi jää odottamaan u tapahtumaohjattu tai aikaviipaletekniikka u prosessin tila: READY vs. BLOCKED Muistinhallinta u sovelluksille löydettävä tilaa muistista u kirjanpito vapaista ja varatuista alueista KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-17 Yksiajon ja moniajon vertailu Muistia 256 K Tässä ei kilpailua oheislaitteistosta Taulukko 2.1 KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-18 12-9

Yksiajon ja moniajon vertailu Taulukko 2.2. KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-19 Osituskäytt yttö Eräajossa käyttäjä ei voinut vaikuttaa sovelluksen suoritukseen sen käynnistyttyä Osituskäyttö huomioi muuttuneet käyttötavat: interaktiivinen päätetyöskentely u käyttäjä voi käynnistää sovelluksen itse u syötteet näppäimistöltä u tulostus näytölle Ihminen koneeseen verrattuna hidas u tyypillinen käyttäjä tarvitsee CPU-aikaa vain 2s/min u järjestelmässä voi olla esim. 30 yhtäaikaista käyttäjää, eikä yksi edes huomaa muiden läsnäoloa KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-20 12-10

Osituskäytt yttö Aikaviipalekello u vuorottelu ei pelkästään siirrännän odottelun perusteella u kullekin vuorotellen aikaviipale (esim. 50-100 ms), jotta voidaan taata kaikille siedettävät vasteajat Prioriteetit u osituskäytölle suurempi prioriteetti kuin erätöille tai taustalla ajettaviin töille Fettei käyttäjä hermostuisi päätteensä ääressä... KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-21 Käyttöjärjestelmät I NYKYAIKAISEN KJ:N PIIRTEITÄ KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-22 12-11

Uutuuksia Laitteistokehitys u moniprosessorijärjestelmät u nopeat verkot u nopeammat prosessorit u suurempi muisti, uudet talletusmediat Ohjelmistojen / käyttötapojen muutos u Asiakas/palvelija -malli u Internet ja WWW u Multimedia KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-23 Mikrokernel Vain välttämättömät laitetoiminnot ytimeen, joka suoritetaan etuoikeutetussa tilassa keskeytyskäsittelyn alkutoimet u mikä / kuka aiheutti? vuorottamisen laitetoiminnot u rekistereiden kopiointia muistinhallinnan laitetoiminnot u MMU:n asetukset, suojaus siirrännän laitetoiminnot u ohjaimien käyttö, suojaus prosessien välinen sanomanvälitys u pyyntöjen välitys, kopiointia prosessien muistialueille KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-24 12-12

Mikrokernel Muut KJ:n palvelut tavallisina prosesseina, jotka suoritetaan käyttäjätilassa u laiteajurit, tiedostojärjestelmä, virtuaalimuisti u odottavat vuorottamista Ready-jonossa u eivät pääse suoraan käsiksi laitteistoon Toteutus perustuu sanomanvälitykseen u IPC, inter process communication Joustavuus, laajennettavuus, siirrettävyys... Vrt. Monoliittinen ydin u KJ:n keskeiset toiminnot yhdessä ajomoduulissa u yleisempää, nopeampaa KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-25 KJ:n ydin Kuva 4.10 Monoliittinen ydin KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-26 12-13

Moniprosessorijärjestelm rjestelmä KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-27 SMP Koneessa useita CPU:ita u kaikki rakenteeltaan ja tehtäviltään samanlaisia FSMP, Symmetric Multiprocessing u aidosti rinnakkainen suoritus u kukin voi suorittaa KJ:tä tai sovellusta Muu laitteisto yhteiskäytössä u muisti, väylät, I/O-laitteet Useamman CPU:n mukanaolo ei vaikuta normaaliin ohjelmointiin u KJ:ssä sensijaan paljonkin uutta mietittävää Tehokkuus, vikasietoisuus, laajennettavuus KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-28 12-14

3 prosessia ja SMP (2 CPU:ta) Not Running KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-29 Verkkojärjestelm rjestelmä Useita erillisiä (mahd. erilaisia) solmukoneita Kullakin koneella oma KJ ja omat prosessit Mahd. yhteiskäytössä oleva tdstojärjestelmä Globaali käyttäjien tunnistus Verkkojärjestelmä Käyttäjä tuntee ja käyttää koneita nimeltä Toisella koneella olevien tiedostojen käyttö KJ:t voivat olla erilaisia eri koneissa KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-30 12-15

Hajautettu järjestelmä Useita erillisiä koneita Kullakin koneella oma KJ ja omat prosessit Mahd. yhteiskäytössä oleva tdstojärjestelmä Globaali käyttäjien tunnistus Hajautettu järjestelmä Käyttäjän ei tarvitse tuntea koneita nimeltä KJ hoitaa mm. kuormantasauksen Globaali KJ (kaikissa samanlainen) Esim. PlanetLab KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-31 Asiakas-palvelija -malli Sovellus jaettu useampaan osaan u esim. WWW-palvelija ja selain (käyttöliittymä) Asiakas ja palvelija voivat sijaita eri koneissa u WWW-palvelija konehuoneen palvelimella, selainohjelma työhuoneen koneella tai samassa koneessa u ikkunamanageri ja sovellusohjelma Palvelija palvelee useita asiakkaita Sanomanvälitys u TCP/IP-protokolla, etäproseduurikutsu KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-32 12-16

Sulautetut järjestelmj rjestelmät: t: Käyttöjärjestelmiä kaikkialla? VxWorks (Windriver) u JPL: Pathfinder ja Rover QNX u Potilasmonitori LynxOS (LynuxWorks) u HP:n kirjoittimissa u PhatNoise jukeboxi autoon KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-33 Käyttöjärjestelmät t I Järjestelmän käynnistäminen ja sammuttaminen KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-34 12-17

Järjestelmän n käynnistk ynnistäminen Miten käyttöjärjestelmä pääsee koneeseen? Kuka sen lataa? Mistä? BOOTSTRAP, boot loader Vastaus: Sovitaan mistä kohtaa levyä aloitetaan latausohjelman suoritus Laitteistovalmistaja toteuttaa sopimuksen Latausohjelma huolehtii varsinaisen käyttöjärjestelmän lataamisesta KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-35 Käynnistysprosessi (1/2) Laitteisto: u Sähköt päälle u BIOS (Basic Input/Output System) FKiinteästi laitteistossa FNykyisin aina ohjelmoitava (ns Flash BIOS) u Laitteisto osaa aloittaa BIOSin ohjelmalla FSuoritin aloittaa käskystä FFFF0h, jossa yleensä vain hyppykäsky varsinaiseen BIOSin koodiin u BIOSin ohjelma FHakee omista tiedoistaan levyn, jolta käynnistetään FKovalevyn alussa on aina Master Boot Record (MBR), jonka BIOS siis lataa KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-36 12-18

Käynnistysprosessi (2/2) u MBR (laitoksen luokkakoneet) FErillinen latausohjelma, joka kysyy kumpi KJ valitaan FMBR tietää levyn osituksen / partitioinnin FMBR lataa valitun partition alusta (tai muusta tiedetystä paikasta) KJ:n oman lataajan, joka siis onkin sijoitettu vasta sinne (eikä MBR:lle) u KJ:n oma lataaja FAloittaa käyttöjärjestelmän ohjelmistojen lataamisen FJossain vaiheessa suoritustaan, se siirtää kontrollin jo ladatuille osille, jotka jatkavat puuttuvien osien lataamista u Kun KJ:stä on ladattu riittävästi, niin käyttäjä voi aloittaa komentojen antamisen KJ:lle KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-37 Järjestelmän n sammuttaminen Miksi pitää sammuttaa hallitusti? Miksei saa vain katkaista virtanapista? Vastauksia: u Osa tiedoista vasta tiedostopuskureissa, ei vielä levyllä u Tiedostojärjestelmän kirjanpito on muistissa, se pitää saada levylle talteen seuraavaa käyttöä varten u Muiden oheislaitteiden sammuttaminen hallitusti u Uudet lokia käyttävät tiedostojärjestelmät eivät sekoita omaa kirjaanpitoaan vaikka yhteys katkeaakin. Tiedostojen sisältö saattaa jäädä johonkin aiempaan tilaan (vrt. transaktiot). KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-38 12-19

Kertauskysymyksiä Mitä moderni käyttöjärjestelmä vaatii alla olevalta laitteistolta? Mistä käytännön tarpeista/ongelmista nykyisten käyttöjärjestelmien peruspiirteet (keskeytysmekanismi, moniajo, osituskäyttö, virtuaalimuisti jne.) ovat saaneet alkunsa? Mitä yksiajon ongelmia/puutteita moniajo ratkaisee? Mitä parannuksia/lisäyksiä on pitänyt tehdä a) laitteistoon ja b) käyttöjärjestelmään siirryttäessä yksiajosta moniajoon? Käyttöjärjestelmän ja sovellusten välinen kommunikointi, milloin, miten? Miksi käyttöjärjestelmä toisinaan estää käyttäjää (sovellusta) tekemästä suoraan itse haluamiaan asioita? KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-39 END JOB EXIT Käyttöjärjestelmät t I KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-40 12-20

Kertausta Käyttöjärjestelmän palvelut Prosessi (ja säie) Muistinhallinta Oheislaitteiden käyttö Tiedostojärjestelmät Paikallisuus Moniajon piirteet Keskeytys ja palvelupyyntö KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-41 Vanha kurssikoe 1. Pikkujuttuja u Mitä laitteistopiirteitä tarvitaan moniajojärjestelmän toteuttamiseksi u Mitä tietoja on tapana tallettaa tiedostoattribuutteihin u Mitä tietoja on tapana tallettaa prosessin kuvaajaan 2. Keskeytysmekanismia u 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). u Miten ja milloin prosessori huomaa keskeytyksen u 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 S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-42 12-21

Vanha kurssikoe 3. Muistinhallintaa u Selitä MMU:n rakenneosat sekä kuinka MMU tekee osoitemuunnoksen, kun Fei käytetä virtuaalimuistia ja prosessille on varattu yksi yhteinäinen muistialue Fmuistinhallinta perustuu sivuttavaan virtuaalimuistiin 4. Tiedoston käsittelyä u 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 S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-43 Muita mahdollisia teemoja Prosessit u tilakaavio u prosessin kuvaaja Levykirjanpitoa Siirräntää Muistinvarausta (Termejä): paikallisuus, etuoikeutettu tila,...... KJ-I S2005 / Tiina Niklander, kalvot: Auvo Häkkinen 12-44 12-22