1 / 93

Operatsioonisüsteemid

4. Operatsioonisüsteemid. TÄHELEPANU!. Järgmiseks kolmapäevaks ( 17.03.10 18.00 ) peab kõiki ülesandeid olema alustatud Ülejärgmiseks reedeks ( 26.03.10 18.00 ) seisuga võetakse harjutusväljakult ja koduülesannete pealt teie hinne

mary
Download Presentation

Operatsioonisüsteemid

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. 4 Operatsioonisüsteemid

  2. TÄHELEPANU! • Järgmiseks kolmapäevaks (17.03.10 18.00) peab kõiki ülesandeid olema alustatud • Ülejärgmiseks reedeks (26.03.10 18.00) seisuga võetakse harjutusväljakult ja koduülesannete pealt teie hinne • Kui pole alustatud kõiki ülesandeid tolleks ajaks, siis on võimalik saada hinne ikkagi, aga hiljem

  3. Sisukord • Tagasivaade • Failisüsteem • Hashing

  4. Tagasivaade • Mäluaadress - sõnade või baitide massiiv, kus igal ühikul oma aadress • Suhtelist aadressi peab saama teisendada absoluutaadressiks hiljemalt ajaks, kui käsku täidetakse. Seda nim aadressi sidumiseks (address binding) • Aadresside sidumist teostatakse erinevatest etappides: kompileerimise, laadimise, täitmise ajal

  5. Tagasivaade • Loogiline (virtuaalne) aadress – CPU poolt genereeritud • Füüsiline aadress – mälukontrolleri poolt nähtav aadressiregistrisse laetud aadress • Dünaamiline laadimine - meetod, kus alamprogramm laetakse mällu alles siis, kui tema poole pöördutakse

  6. Tagasivaade • Swampping - protsesside ajutine mälust välja laadimine, vabastades piirkonna teise protsessi tööks • Dünaamiline mälujaotus – erinev pikkus. Protsessile antakse plokk, pärast plokk vabastatakse. Tabel, kus märgitud mis plokid vabad, mis mitte

  7. Tagasivaade • Mäluleheküljed: fragmenteerumise vastu. Antakse freime, mis ei pea asetsema järjest • Virtuaalmälu - meetod, mis lubab protsessi täita ka siis kui see ei asu täielikult põhimälus • Olukord: lk jaoks ei ole vaba freimi • Tuleb vabastada varem hõivatud lk ning vajalik lk selle asemele paigutada • Page fault

  8. Tagasivaade • Lehekülgede asendamine: • FIFO • LRU • Second Change • Freimide jaotus: • Võrdne arv, kuid mitte efektiivne • Protsessi suurusest • Muud prioriteedid

  9. Väike enesekontroll

  10. Küsimus nr 1 • Millised väited on tõesed? • Fragmenteerimine tähendab, et vaba mälu kokku on vähem kui soovitavat mälu • Sisemise frag. korral vaba mälu on aga see ei ole pidev • Sisemine frag. esineb blokkide kasutamisel • Lisaks sisemisele frag. on ka väline frag.

  11. Küsimus nr 2 • Loogiline aadress: • On alati sama mis füüsiline aadress • Toetab vaadet mälule programmi käivitaja seisukohalt • Virtuaalmälu korral ei pruugi omadagi füüsilist aadressi • On sama mis virtuaalne aadress

  12. Küsimus nr 3 • Lk asendamise algoritm, mille korral teatakse, millal viimati lk poole pöörduti ning asendatakse leht, mille poole pöördumisest on kõige kauem möödas • FIFO • LRU • Second-Chance

  13. Küsimus nr 4 • Page fault • Tekib siis kui lk jaoks ei ole enam mälus vaba ruumi • Ei esine virtuaalmälu korral • Tekib kui programm pöördub mälublokki poole, mis on loogilises mälus aga mitte füüsilises • Ei halda OS

  14. Küsimus nr 5 • Mälu aadress: • On mälu reaalse asukoha indifikaator • Hoiab mingisugust kahendnumbrite kombinatsiooni • Võib programmis esitada sõna kujul • Võib olla kujul: baas+nihe

  15. Küsimus nr 6 • Dünaamiline linkimine: • Tekitab fragmenteerumist • Linkimisstaadiumis lisatakse alamprogrammi teksti asemel viit alamprogrammile • Sarnaselt dünaamilisele laadimisele ei vaja OS-i toetust • On mälu kokkuhoiu meetod

  16. Küsimus nr 7 • Mäluleheküljed • Loogiline mälu jagatakse lehekülgedeks • Füüsiline mälu jagatakse lehekülgedeks • Freimid ei pea asuma kõrvuti • Nii freimid kui leheküljed on 2 astmed • Vabastavad sisemisest frag.t, kuid tekitavad välimist

  17. Vastused • C,D • B,C,D • B • A,C • A,B,C,D • B,D • A,C,D

  18. Fail • Fail – universaalne loogiline salvestusühik • Seotud infokogum, mis on salvestatud välismällu • Kasutaja seisukohast: väiksem välismällu salvestatav ühik ja infot on võimalik salvestada ainult tema koosseisu. • Programmi seisukohast: info, mida on võimalik kasutada programmide poolt ka peale antud programmi lõppu • Low-level: 0 ja 1 jada • High-level: numbrid, tähemärgid

  19. Faili atribuudid • Nimi • Tüüp – süsteemides, mis toetavad erinevat tüüpi failide kasutamist • Asukoht – viit asukohale füüsilisel seadmel • Suurus • Kaitse – info õiguste kontrolliks • Kellaaeg, kuupäev, kasutajainfo

  20. Failidega seotud operatsioonid • Faili loomine – tuleb leida failisüsteemis vaba ruum, luua uus kirje kataloogi • Kirjutamine faili – vaja süsteemne käsk, millele edastatakse faili nimi ja kirjutav info. Süsteem otsib nime järgi faili ja peab teadma positsiooni, kust kirjutamist alustatakse

  21. Failidega seotud operatsioonid • Failist lugemine – vaja faili nimi ja mäluaadress, kuhu järgmine plokk lugeda. Samuti positsioon, kust lugemist alustada. Üldiselt: üks viit lugemisele ja kirjutamisele • Faili jooksva positsiooni muutmine • Faili kustutamine – kirje eemaldatakse kataloogist ja vabastatakse tema poolt hõivatud mälu • Faili kärpimine

  22. Failidega seotud operatsioonid • Lisaks põhi op-idele: ümbernimetamine ja lõppu lisamine (append) • Põhioperatsioonidest saadakse vajalikud op-id: nagu kopeerimine ja ümbertõstmine • Avatud failide tabel

  23. Failide tüübid • Moodus liigendada faile kategooriatesse lähtudes sellest, mis moodi neid on võimalik kasutada • Windows: Kasutatakse nimelõppu (nt .exe). Tabel: seob laiendi ja programmi • Mac OS-is: faili sees info programmi kohta millega loodi • Unix: otseselt tüüpidega ei arvastata, kaudselt lubade tunnus käivitatava faili märkimiseks

  24. Faili struktuur • Miks ei peaks struktuur OS-i poolt määratud olema • Õige tüüp? • Palju koodi • Faili struktuur sõltub programmist, mis loeb ja kasutab. Elementaarühikuks on kirje • Fikseeritud pikkusega kirjed: kõik faili kirjed ühesuguse pikkusega. Kõige lihtsam: vajalik kirje teades pikkus ja järjekorra numbrid korrutamise tulemusena • Muutuva pikkusega kirjed: pikkus märgitakse kirje algusesse. Kompaktne, kuid optimeerimine keerukas. Leidmiseks vaja eelmised läbi vaadata

  25. Faili struktuur • Määramata pikkusega kirje: kokkulepitud koodiga kirje lõpp. Samuti kompaktne, kuid keeruline. • MS-DOS ja Unixi OS-id ei arvesta sisemise struktuuriga. Nende jaoks väikseim ühik bait. Sisuga opereerimine rakendusprogrammidele. • Ketta süsteemis on aga määratud ploki suurus, mida loetakse või kirjutatakse kettale. • Seega võib fail vaadelda kui plokkide jada

  26. Pöördumise meetodid • Jadapöördus: • Infot failist töödeldakse järjest, üks kirje teise järel. • Nt tekstiredaktor ja kompilaatorid • Jooksev positsioon meeles • ReadNext, WriteNext, rewind • Aluseks magnetlindi mudel

  27. Pöördumise meetodid • Otsepöördus • Põhineb ketta mudelil • Fail koosneb fikseeritud pikkusega nummerdatud kirjetest • Lugemine ja kirjutamine suvalises järjekorras • Read n, Write n

  28. Kataloogid

  29. Kataloogi struktuur • Paljude failide hoidmine kettal vajab organiseerimist • Tehakse kahel tasemel: failisüsteemi jagamine partitsioonideks/ kataloogid • Partitsioonid: • Ühel kettal (MS-DOS) • Läbi mitme keta (Unix)

  30. Partitsioonid • Ühel ketal mitu • Üks üle mitme ketta kataloog kataloog Partitsioon A disk2 Partitsioon C disk1 kataloog Partitsioon B disk3

  31. Kataloog • Kataloogis salvestatakse failide atribuudid: nimi, tüüp, asukoht, pikkus jne.. • Kataloogide funktsioonid: • Faili otsimine • Faili loomine • Faili kustutamine • Kataloogi kuvamine • Faili ümbernimetamine

  32. Kataloogide ajalugu • Vanemates süsteemides: ühetasemeline. Kataloog koosneb failiatribuutide kirjetest Kataloog cat test tere lugu data …. failid

  33. Kataloogide ajalugu • Järgmine etapp: kahetasemeline Peakataloog kasutajanimedele ja igal kasutajal oma kataloog • Kasutajad eraladatud Peakataloog Kasutaja 1 Kasutaja 2 Kasutaja 3 Kasutaja kataloog data test data lugu data failid

  34. Kataloogide ajalugu • Tänapäev: keeruline struktuur. Peab olema mugav ja samas efektiivne

  35. Failide paigutus • Windows • Ketta nimed A:, B:, C: jne • programmid ja konfiguratsioon samades kataloogides • UNIX OS-id: • Järgivad FHS failisüsteemi paigutamise standardit • Failid eri kataloogides otstarbe järgi • Eri failisüsteemide ühendamiseks mountimine

  36. Kataloogipuu Unixis

  37. Mis on kasutades Unix-is? • /boot laetava tuuma asukoht • /mnt ühenduspunktid kettaseadmetele (floppy, cdrom) • /bin käivitamiseks vajalikud programmid • /sbin käivitamiseks vajalikud süsteemprogrammid • /lib baasteegid • /usr programmid, teegid • /etc konf failid • /home kodukataloogid • /dev seadmefailid • /var muutuvad ja ajutised andmed • /tmp ajutised failid • /proc liides operatsioonisüsteemi tuumaga • /lost+found leitud andmeblokid, mis ei kuulu ühelegi failile

  38. Mis on kaust Unix-is? • Eritüüpi fail • Sisaldab failinime – inode’i paari • Moodustavad hierarhilise struktuuri • Igas kataloogis peab olema 2 faili: • . Kausta enda inode’i number • .. Vanema kausta inode’i number

  39. Inode • Andmestruktuur Unixi-laadsetes failisüsteemides • Hoiavad baasinformatsiooni failide, kataloogide ja failisüsteemide kohta • UID, GID, faili tüüp, viimase pöördumise aeg, muutmiseaeg, sõlme muutmise aeg, suurus, juurdepääsuõigused,viidad andmeosale

  40. Inode Kaust Inode tabel Andmeplokid fail1 2231 fail2 4571 2231 fail3 33312 4571 33312

  41. Puukujuline kataloogistruktuur • Peakataloogiks sektsiooni tase • Iga puu tasemel kirjed, mis viitavad failidele ja alamkataloogidele • Alamkataloog on samuti fail, millel on eritunnus ja mida käsitletakse erinevalt. • Faili kättesaamiseks: teekond puu tippust faili • Absoluutne vs relatiivne teekond

  42. Kataloog atsüklilise graafina • Laiendab puukujulist. • Lubab viidata failile või kataloogile mitmest kohast • Nt: windows: shortcut, Unix: hard ja soft links • Keerulisem • Millal fail kustutada? • Tsüklite tekkimise oht: atsükliline graaf, lingi ainult alamkataloogidele dict count abc test data data word all list lugu data

  43. Hard vs soft link • Hard link: • Samale inode-le viitab mitu kataloogi kirjet • Inode-s peetakse arvet viitade üle • Failisüsteemi piires • Ei saa teha kataloogidega • Fail kustutakse, kui viimane viit kustutakse • Soft link (Symbolic link) • Seob failinime olemasoleva failinimega • Originaal “ei tea” viida olemasolust • Saab teha kataloogidesse ja teistesse failisüsteemidesse

  44. Failisüsteemi tasemed • Realiseeritud kihtidena, kus iga kiht kasutab oma ja alumise kihi vahendeid • Kihid (ülevalt alla) • Rakendusprogrammid – tase, kus on märgitud faili sisu ning antakse korraldused faili avamiseks, sulgemiseks... • Loogiline failisüsteem – teab kataloogi struktuuri. Nt: käsk uue faili loomiseks: loeb kataloogi mällu, lisab uue kirje ja kirjutab kataloogi tagasi ketale ning pöördub failikorraldusmooduli poole

  45. Failisüsteemi tasemed • Failikorraldusmoodul – töötab failide loogilise ja füüsilise plokkide tasemel. Tegeleb ka vaba kettaruumi arvestusega • Baasfailisüsteem – genereeib üldiseid kettalt plokkide lugemise ja kirjutamise käske, teab kettaplokkide aadresse nt(driver 1, silinder 23, rada4, sektor 299) • Sisend-väljundi juhtimine – on madalaim tase, koosneb seadme draiveritest ja katkestuste töötlejast. Nt (otsi välja blokk nr 123)

  46. Failide paigutus kettal

  47. Failide paigutus kettal • Iga failiga salvestatakse välismällu ka tema juhtplokk, mis sisaldab tema atribuutide väärtusi. • Eesmärk: kiire kättesaamine • Pidev paigutus • Lingitud paigutus • Indekseeritud paigutus

  48. Pidev paigutus • Fail hõivab kettal plokkide järjestikuse jada. • Positsiooni nihutamine failis nõuab minimaalset ketapea liigutamist • Faili kättesaamine kiire • Kataloogis märgitakse algusaadress ja pikkus • Probleem: vajaliku mälu leidmine vabade plokkide nimekirjast • Välimine fragmentnatsioon • Pakkimine: nihutatakse nii, et järjestiku hõivatakse plokke - > aega nõudev • Fail ei saa kasvada kui tema taga ei ole vabu plokke - > ennetamiseks reserveerida suurema plokkide arvu. Sisemine fragmentnatsioon

  49. Pideva paigutuse nt kataloog Nimi algus pikkus Esimene 0 3 Teine 9 6 Kolmas 25 2 esimene 0 4 8 12 16 20 24 teine kolmas

More Related