Lataa esitys
Esittely latautuu. Ole hyvä ja odota
JulkaistuMikko Manninen Muutettu yli 9 vuotta sitten
1
Käyttöjärjestelmät1 Käyttöjärjestelmät Juhani Heikkinen Kymenlaakson ammattikorkeakou Voit lisätä yrityksen logon tähän diaan. •Valitse Lisää. •Valitse Kuva. •Etsi yhtiön logon sisältävä tiedosto. •Valitse OK. Voit muuttaa logon kokoa •Napsauta logon sisäpuolella. Logon ulkopuolelle tulevat ruudut ovat koonmuuttokahvoja. •Voit muuttaa objektien kokoa näiden avulla. •Jos pidät VAIHTONÄPPÄINTÄ alhaalla samalla, kun vedät koonmuuttokahvasta, objektin mittasuhteet säilyvät samoina, vaikka objektin koko muuttuu.
2
Käyttöjärjestelmät2 Opetussuunnitelma Tavoitteet –Käyttöjärjestelmien toiminnan ymmärtäminen –Linux-ympäristön tuntemus Toteutus –Luennot 2h/vko + harjoittelu(Linux) 2h/vko + seminaarityöt Materiaali - Ilkka Haikala: TTKK:n pruju -(Stallings: Operating Systems)
3
Käyttöjärjestelmät3 …ops jatkuu Suoritustapa –Teoriakoe (Haikala) –Linux-koe –Esitys •1-2 henkilöä •Aihe-ehdotukset annetaan melko pian kurssin alettua •Laajuus noin 15 min
4
Käyttöjärjestelmät4 Johdanto –Käyttöjärjestelmän päätehtävänä on toimia liitäntänä sovellusohjelman ja laitteiston välillä –Käyttöjärjestelmän tarjoamia palveluja: •ohjelmien suoritus, oheislaitteiden ohjaus, muistinhallinta, resurssien jakaminen, ohjelmien suojaus jne.
5
Käyttöjärjestelmät5 Tietokonejärjestelmien arkkitehtuuri
6
Käyttöjärjestelmät6..Arkkitehtuuriratkaisuja •CISC (Complicated Instruction Set Computers) –Merkittävä osa käyttöjärjestelmän toiminnoista laitteistotasolle •RISC (Reduced Instruction Set Computer) –Suoritin yksinkertainen ja tehokas, monimutkaiset asiat käyttöjärjestelmätasolla
7
Käyttöjärjestelmät7 KJ:n kehittyminen: Sukupolvi 0: Ei KJ:ää –Von Neumann -arkkitehtuuri: •Laitteisto koostuu muistista ja suorittimesta
8
Käyttöjärjestelmät8
9
9 Sukupolvi 1: Yksiajokäyttöjärjestelmät –Eräajokäyttöjärjestelmä
10
Käyttöjärjestelmät10 Yksiajo-KJ:n tarpeita •KJ halutaan levylle => tarvitaan tiedostojärjestelmä •Suojaus virhetilanteilta -Esim. Yritys viitata käyttöjärjestelmän alueelle (ratkaisu: FENCE-rekisteri KJ:n ja käyttäjän muistialueiden välille) •Jotta käyttäjä ei pääse muuttamaan FENCE-rekisterin arvoa, tarvitaan yhden bitin rekisteri USER_MODE(Kun True, SET_FENCE-käsky ei ole sallittu)
11
Käyttöjärjestelmät11 …tarpeita •Sovellus voi käyttää oheislaitteita vain kutsumalla käyttöjärjestelmän aliohjelmia => Määritellään käskyt SVC (Supervisor Call) ja RETI (Return from Interrupt) •Suoritinajan valvontaa varten liitetään järjestelmään kello, jonka sisällöstä vähennetään yksi tasaisin aikavälein. Kellon nollautuessa suoritus pakotetaan siirtymään käyttöjärjestelmään (kellokeskeytys)
12
Käyttöjärjestelmät12 Kohti 2. sukupolvea •Otetaan käyttöön Spooling-järjestelmä (Simultaneous Peripheral Operation On Line) => sisäänluku ja tulostaminen puskuroidaan => töiden lomittuminen •Lisäksi tarvitaan I/O-keskeytys: kun luku tai kirjoitus on seuraavassa vaiheessa, jossa tarvitaan KJ:ää, KJ tallettaa suorittimen rekisterien sisällöt muistiin (ympäristön talletus, context save), suorittaa pyydetyn tehtävän ja palaa talletetun ympäristön mukaiseen suoritukseen •Myös muiden siirtymisten KJ:ään (SVC, virheet ja kello) voidaan sopia aiheuttavan ympäristön talletuksen –SVC-käskyillä aiheutetut keskeytykset = ohjelmoidut keskeytykset (programmed interrupts) –SVC- ja ohjelmavirheistä aiheutuvat keskeytykset = ohjelmistokeskeytykset (software interrupts) –I/O- ja kellokeskeytyksiä kutsutaan ulkoisiksi keskeytyksiksi (external interrupts)
13
Käyttöjärjestelmät13 Kehitystarpeita •Kiireellinen työ halutaan suoritukseen ennen kuin edellinen työ on päättynyt –Suoritettava työ keskeytetään, sen ympäristö talletetaan ja keskusmuistialue kopioidaan levylle. Kiireellinen työ otetaan suoritukseen (=irrottava skedulointi, pre-emptive scheduling) => Irrottavan skeduloinnin avulla voitaisiin toteuttaa myös yksinkertainen osituskäyttöjärjestelmä (monta päätekäyttäjää käyttää keskuskonetta yhtä aikaa) => toimintaa, jossa koko suoritettava ohjelma siirretään levylle, kutsutaan heittovaihdoksi (swapping)
14
Käyttöjärjestelmät14 Sukupolvi 2: Moniajokäyttöjärjestelmät •Vapaat resurssit otetaan käyttöön suorittamalla monta ohjelmaa samanaikaisesti. Suorituksessa oleva ohjelmaa kutsutaan prosessiksi •Keskusmuistissa voi olla yhtä aikaa monta prosessia = moniajokäyttöjärjestelmä (multiprogramming) •Lisätään ympäristön talletukseen USER_MODE ym suorittimen tilaa kuvaavat bitit (tilasanarekisteri, PSW processor status word) keskeytyneen käyttöjärjestelmärutiinin hallintaan
15
Käyttöjärjestelmät15 Lisätehtäviä... •Muistinhallinta vapaiden muistialueiden kirjanpitoon •Seuraavaksi suoritettavan prosessin valinta (prosessin skedulointi). Tehtävää suorittava käyttöjärjestelmän osaa kutsutaan vuorontajaksi •Prosesseille asetetaan prioriteetti, joka kuvaa prosessin kiireellisyyttä
16
Käyttöjärjestelmät16 •Ohjelmakontrollin siirtymistä prosessista toiseen kutsutaan ympäristön vaihdoksi (context switch)
17
Käyttöjärjestelmät17 Sukupolvi 3 •Virtuaalimuisti: –Prosessin osoiteavaruus jaetaan osiin ja osat voivat sijaita eri puolilla keskusmuistia tai levyillä •Osituskäyttö mahdollista •Nykyiset suuret ja keskisuuret keskuskoneympäristöt
18
Käyttöjärjestelmät18 Sukupolvi 4 •Verkkokäyttöjärjestelmiä –pystyvät jakamaan resursseja (levyt, kirjoittimet, tiedonsiirtolinjat, päätteet jne.) dynaamisesti suuressakin tietokoneverkosa •Nykyiset käyttöjärjestelmät sisältävät piirteitä neljännestä sukupolvesta, mutta harvoin täyttävät kaikki em. ominaisuudet
19
Käyttöjärjestelmät19 Täydentäviä huomautuksia •Variointimahdollisuuksia –Rekisterirakenne esimerkissä (ARM suoritin): •15 32 bitin yleisrekisteriä •Rekisteri 15 on ohjelmalaskuri (PC) •Suorittimen tilarekisteri –Vaihtoehto: ns. pinoarkkitehtuuri •Kaikilla rekistereillä oma käyttötarkoitus
20
Käyttöjärjestelmät20 •Keskeytysjärjestelmä –Keskeytysten estäminen voi olla monitasoista. Esim. kullakin laitteella on oma keskeytysnumero •Muita laitteistopiirteitä –Etuoikeutettu vs. käyttäjän moodi •Etuoikeutettuja tiloja monentasoisia •Monisuoritinjärjestelmä (multiprocessing)
21
Käyttöjärjestelmät21 Yleistä KJ:n rakenteesta •KJ voidaan esittää myös esittää hierarkkisena koneena SOVELLUKSET ERÄAJOSKEDULERI KOMENTOTULKKI SWAPPER VERKKO-OHJELMISTOT TIEDOSTOJÄRJESTELMÄ MUISTINHALLINTA YDIN
22
Käyttöjärjestelmät22 •Osa käyttöjärjestelmän tehtävistä voidaan myös korvata prosesseilla, joilla on erityisoikeuksia (erimerkiksi spooling, heittovaihtaminen, jne. Unixissa tällaisiä prosesseja kutsutaan demoneiksi=työhullu) •Proseduuriorientoitunut KJ: –palvelut suoritetaan kutsumalla ytimen palvelurutiineja aliohjelmakutsujen tapaan •Prosessiorientoinut KJ: –KJ koostuu joukosta palveluprosesseja, joilta KJ:n palveluja pyydetään sanomia välittämällä
23
Käyttöjärjestelmät23 •Prosessiorientoituneen järjestelmän etuja: –prosessirakenne antaa KJ:lle selkeän modulaarisen rakenteen => muutokset helppoja –palveluprosessin virheiden vaikutuksia voidaan vähentää palveluprosessien oikeuksia rajoittamalla –priorisointi yksinkertaistuu -> prosessin prioriteettia ei tarvitse muuttaa käyttöjärjestelmäpalvelun ajaksi –prosessiorientuneita KJ:iä sanotaan mikroydin-KJ:ksi
24
Käyttöjärjestelmät24 •Suurin osa nykyisistä KJ:stä proseduuriorientoituneita, koska sanomanvälitykseen liittyvä yleisrasite (overhead) on nykylaitteistoissa yleensä KJ-kutsun aiheuttamaa yleisrasitetta suurempi –proseduuriorientoituneita: Unix, Linux –prosessiorientoituneita: NT, uudemmat Unixit •Nykyinen suuntaus on, että ytimeen sijoitetaan mahdollisimman vähän operaatioita => luotettavuus, muunnettavuus
Samankaltaiset esitykset
© 2023 SlidePlayer.fi Inc.
All rights reserved.