1 / 24

Käyttöjärjestelmät

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.

viola
Download Presentation

Käyttöjärjestelmät

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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. Käyttöjärjestelmät Juhani Heikkinen Kymenlaakson ammattikorkeakou Käyttöjärjestelmät

  2. 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) Käyttöjärjestelmät

  3. …ops jatkuu Suoritustapa • Teoriakoe (Haikala) • Linux-koe • Esitys • 1-2 henkilöä • Aihe-ehdotukset annetaan melko pian kurssin alettua • Laajuus noin 15 min Käyttöjärjestelmät

  4. 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. Käyttöjärjestelmät

  5. Tietokonejärjestelmienarkkitehtuuri Käyttöjärjestelmät

  6. ..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 Käyttöjärjestelmät

  7. KJ:n kehittyminen: Sukupolvi 0: Ei KJ:ää • Von Neumann -arkkitehtuuri: • Laitteisto koostuu muistista ja suorittimesta Käyttöjärjestelmät

  8. Käyttöjärjestelmät

  9. Sukupolvi 1: Yksiajokäyttöjärjestelmät • Eräajokäyttöjärjestelmä Käyttöjärjestelmät

  10. 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) Käyttöjärjestelmät

  11. …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) Käyttöjärjestelmät

  12. 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) Käyttöjärjestelmät

  13. Kehitystarpeita • Kiireellinentyö 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) Käyttöjärjestelmät

  14. 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 Käyttöjärjestelmät

  15. 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ä Käyttöjärjestelmät

  16. Ohjelmakontrollin siirtymistä prosessista toiseen kutsutaan ympäristön vaihdoksi (context switch) Käyttöjärjestelmät

  17. 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 Käyttöjärjestelmät

  18. 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 Käyttöjärjestelmät

  19. 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 Käyttöjärjestelmät

  20. 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) Käyttöjärjestelmät

  21. Yleistä KJ:n rakenteesta • KJ voidaan esittää myös esittää hierarkkisena koneena SOVELLUKSET SWAPPER ERÄAJOSKEDULERI VERKKO-OHJELMISTOT KOMENTOTULKKI TIEDOSTOJÄRJESTELMÄ MUISTINHALLINTA YDIN Käyttöjärjestelmät

  22. 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ä Käyttöjärjestelmät

  23. 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 Käyttöjärjestelmät

  24. 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 Käyttöjärjestelmät

More Related