............................. 6 8. Overlay................................................................................................................................ 6 Kokkuvõte............................................................................................................................... 7 Kasutatud kirjandus:................................................................................................................ 8 Sissejuhatus Miks ma valisin sellise teema nagu mäluhaldus? Ma tundsin huvi , kuidas mälu haldamine töötab ja tahtsin analüüsida ning rohkem teada saada millest see siiski oleneb ning milleks seda on tõesti vaja. On juttu ka kuidas töötab operatsioonisüsteemides. Kindlasti juba varem on tekkinud huvi sellekohta, et kuidas arvuti läheb kiiremaks mälu lisamisel. Mäluhaldus töötabki mälu jagamisel protsesside vahel. 1.Mis on mälu haldamine? Kui lühidalt öelda siis mälu haldus on operatiivmälu jagamine protsesside vahel. Mälu
kasutajarakendusi ja aidates lahendada veaolukordi. OS mõiste (1) •on arvuti süsteemitarkvara, mis käivitatakse arvutis alglaadimisprogrammi poolt ning mis juhib arvutisüsteemi tööd ja teenindab rakendusprogramme. OS mõiste (2) •programm või programmide kogumik, mille ülesandeks on olla vahendajaks arvuti ning seda kasutava inimese vahel ning tagada arvuti töö. OP süsteemi ülesanded • Protsesside haldus (Protsess – täitmisel olev programm) • Mäluhaldus (RAM,SWAP) • Failisüsteem • IO süsteem ( Kuvarid, klaviatuurid printerid jne) • Turvalisus (ligipääsud, õigused jne.)
Copy-on-Write Vanem- ja lapsprotsess jagavad esialgu leheküljetabeleid Leheküljed on mõlema jaoks readonly, esimesel kirjutamisel tehakse mõlemale koopia Efektiivsem protsesside loomine Aadressiruumi kaudu nähtavad failid (Memory-mapped files) mmap() primitiiviga seatakse faili sisu kättesaadavaks mingis aadressivahemikus Esimene pöördumine loeb andmeid mällu, faili sulgeminekirjutab kettale read()/write() vs mmap() 4. Mälu haldus Mäluhaldus on tehtud nii, et mälu saaks rahuldada järgnevaid mehaanisme: Relocation – mälus ümberpaigutamine – swapi liigutamine ehk saalimine Protection – mälu kaitsmine Sharing – mälu jagamine 5 Õppeasutus Nimi
Tallinn 2012 Sisukord 1. Sissejuhatus ..................................................................................................................................... 3 2. Kerneli põhilised rajatised ............................................................................................................... 5 2.1. Protsessihaldus ........................................................................................................................ 5 2.2. Mäluhaldus .............................................................................................................................. 6 2.3. Monoliitne kernel .................................................................................................................... 8 2.4. Mikrokernel ............................................................................................................................. 9 3. Kasutatud kirjandus ......................................
OS tegeleb kogu riistvara ja tarkvaraga suhtlemisega. Lisaks annab see programmile kõrgetasemelise liidese riistvara ja teiste programmidega suhtlemiseks Iga operatsioonisüsteemi madalaim tase on kernel. See tarkvara esimene kiht, mis laetakse mällu kohe pärast arvuti käivitamist. Kernel tagab juurdepääsu erinevatele tuuma teenustele kõigi teiste süsteemi ja rakendusprogrammide jaoks. Tuumateenusteks on: Toimingute ajastamine Mäluhaldus Kettajuurdepääs Juurdepääs riistvaraseadmetele Ja teised. Lisaks kernelile hõlmamb operatsioonisüsteem sageli ka süsteemitarkvara, mis haldab graafilist kasutajaliidest (Windows, Mac), utiliite, millede abil saab operatsioonisüsteemi seadistada ja faile hallata. Sageli on operatsioonisüsteemiga kaasas ka rakendustarkvara, mis ei ole otseselt seotud operatsioonisüsteemi tööga, aga os-i levitaja on pidanud vajalikuks.
OS tegeleb kogu riistvara ja tarkvaraga suhtlemisega. Lisaks annab see programmile kõrgetasemelise liidese riistvara ja teiste programmidega suhtlemiseks Iga operatsioonisüsteemi madalaim tase on kernel. See tarkvara esimene kiht, mis laetakse mällu kohe pärast arvuti käivitamist. Kernel tagab juurdepääsu erinevatele tuuma teenustele kõigi teiste süsteemi ja rakendusprogrammide jaoks. Tuumateenusteks on: Toimingute ajastamine Mäluhaldus Kettajuurdepääs Juurdepääs riistvaraseadmetele Ja teised. Lisaks kernelile hõlmamb operatsioonisüsteem sageli ka süsteemitarkvara, mis haldab graafilist kasutajaliidest (Windows, Mac), utiliite, millede abil saab operatsioonisüsteemi seadistada ja faile hallata. Sageli on operatsioonisüsteemiga kaasas ka rakendustarkvara, mis ei ole otseselt seotud operatsioonisüsteemi tööga, aga os-i levitaja on pidanud vajalikuks.
Viimane pakub rakendustele kõiki OS'i teenuseid ja igale OS'i teenusele vastab üks API protseduur. Joonis 3. OS'i Rakendusliides Paikneb Rakenduste Ja Kerneli Vahel(Allikas: Learning Materials For Information Technology Professionals (EUCIP-Mat)) 7 Erinevad teenused, mis läbi Windows API rakendusliidese kättesaadavaks tehakse on järgmised: Baasteenused (Base Services), mille hulka kuuluvad protsessihaldus, mäluhaldus, S/Vfunktsioonid ja turvalisus. komponenditeenused (component services) - rakenduste omavaheliseks suhtlemiseks Kasutajaliidese teenused (user interface services) - erinevate menüüde ja akendega suhtlemiseks Graafika ja multimeedia teenused (Multimedia and Graphics Services) Sõnumivahetus ja koostöö (Messaging and Collaboration) Võrgundus (Networking)
protseduuride väljatöötamisel. Kvaliteedikindlustuse osas on loodud omaette institutsioone (näiteks www.sqi.gu.edu.au, Software Quality Institute), aga samuti terve rida veebilinkide kogusid, nagu (näiteks www.cs.umu.se/~jubo/Projects/QMSE, Quality Management for Small Enterprices). 1.3. Tarkvaraarhitektuur Tarkvaraarhitektuur hõlmab tarkvara üldist disaini: alamsüsteemide ja nendevahelise interaktsiooni määratlemine, vigade töötlemise põhimõtted, mäluhaldus jne. Arhitektuur peab olema võimalikult lihtne ja kontseptuaalselt terviklik. Üldjuhul peaks põhiliste alamsüsteemide arv olema alla kümne, näiteks: 1) kasutajaliides, 2) funktsionaalsed alampro- grammid, 3) andmete salvestamine, 4) väljastamine, 5) kasutaja abivahendid, 6) alamtaseme vahendid (näiteks mäluhaldus). Ka ei tohiks alamsüsteemidevaheline interaktsioon olla liiga keerukas. Eraldi peaks olema kirjeldatud iga alamsüsteemi funktsioonid ja esialgne
Programm sisaldab muutujaid ja lauseid. Laused annavad arvutile teada, mida muutujatega tuleb teha. Muutujad võivad esitada numbrilisi andmeid, teksti või graafilisi kujutisi. Protsessihaldus Operatsioonisüsteem vastutab protsessihaldusel järgmiste tegevusti eest: *Protsesside loomine ja hävitamine. *Protsesside peatamine ja jätkamine. *Protsesside sünkroniseerimise mehhanismid. *Protsessidevahelise side mehhanismid *Tupikute haldamise mehhanismid Mäluhaldus Mälu- koht, kus arvuti hoiab informatsiooni, mida kasutatakse või millega hetkel töötatakse. Programmid tuleb enne käivitamist mälusse laadida. Operatsioonisüsteem vastutab mäluhalduse järgmiste tegevuste eest: *Mälu hõivamine ja vabastamine, kui protsessid seda küsivad. *Arve pidamine selle üle, millised mälualad on hetkel kasutuses ja kelle poolt. *Otsustamine, missuguseid protsesse mälu vabanedes mällu laadida. Arvuti mälu struktuur Wikipilt Failisüsteemid
SISUKORD C.2 OPERATSIOONISÜSTEEMID .........................................................................................2 C.2.1 PÕHIMÕTTED .........................................................................................................................2 C2.1.1 Protsessihaldus ..............................................................................................................3 C2.1.2 Mäluhaldus ................................................................................................................... 4 C2.1.3 Failihaldus.......................................................................................................................5 C2.1.4 Sisend- ja väljundseadmete haldus .................................................................................5 C2.1.5 Arvutivõrgu tugi..............................................................................
Utiliidid, Kompilaatorid, Redaktorid, Käsu interpretaatortid1 2 OPS väljatöötaja Operatsioonisüsteem2 Masinkeel Mikroarhitektuur (protsessori registrid, ALU) Füüsilised seadmed (kontrollerid, siinid, monitor jne) Operatsioonisüsteemide komponendid ja funktsioonid 1. Tuum 2. Protsessihaldus 3. Mäluhaldus 4. Failihaldus 5. Välisseadmete haldus 6. Andmete kaitse 7. Administreerimine 8. Rakendusprogrammeerimise liides 9. Kasutajaliides Tuumade tüübid · Monoliittuum · Moodultuum · Mikrotuum · Eksotuum · Nanotuum · Hübriidtuum Monoliitne tuum · Klassikaline tuum · Kõige rohkem kasutust leidnud · Kõik monoliittuuma osad töötavad ühes aadressruumis · Unix · BSD
49. modem- seade või programm, mis võimaldab digitaalse informatsiooni edastamiseks kasutada tavalisi vasktraadist telefoniliine. 50. multitasking- multitegumtöötlus, multitegumtöö on arvuti selline töö, kus kaht või enamat tegumit (programmi) täidetakse samaaegselt või vaheldumisi. 51. muutmälu- ehk operatiivmälu ehk primaarmälu ehk põhimälu ehk suvapöördusmälu ehk RAM on arvuti keskne mäluseade, kuhu saab andmeid kirjutada ja kust neid saab lugeda. 52. mäluhaldus- mitmesugused meetodid andmete ja programmide salvestamiseks mällu, nende asukoha meelespidamiseks ja mäluruumi tühjendamiseks, kui neid enam vaja pole. Mäluhalduse hulka kuuluvad ka virtuaalmälu, plokikommutatsiooni ja mälukaitse meetodid. 53. nuhkvara- nuhkvaraks nimetatakse faile, mis installeeritakse teie arvutisse ilma teie teadmata ja mis võimaldavad salaja jälgida teie arvutikasutamist. 54
() ; - (videokokkuvõtte loomine); : , Mäluhaldus suurte andmehulkade puhverdamine vahemälus - : - . . jõudluse suurendamiseks
NT-põhiste versioonide Windows kasutab CPU planeerijat, mis põhineb mitmetasandilise tagasiside järjekordal, 32 prioriteeti on ära määratletud tasemel. Kernel võib muuta prioriteedi taset seostes sõltuvalt selle I / O ja CPU st ja kas see on interaktiivne (st võtab vastu ja vastab sisendeid kasutajalt), tõstes prioriteeti interaktiivseks ja I / O piirata protsesse ja alanda neid, et CPU ga seotud protsessides suurendada interaktiivseid rakendustel reageerimisvõimet. B. Mäluhaldus disk Peamised Linuxi kõvakettale installatsioon kasutab ,,SWAP,, vaheseina. Vahesein on erandlikult pühendatud kutsungi toimingutele. See vähendab üldist aeglustumist diski killustumise korral. Windows NT7 perekond (win2000 kaasaarvatud, XP, Vista, Win7) töötab enamasti kõige sagedamini spetsiaalse lehefaili dünaamilise mälu haldamist kasutades. Lehefail on eraldatud kettal, harvemini külastatavad objektid mälus, jättes rohkem RAM ile ruumi aktiivselt kasutatavatele objektidele. c
Rakenduste tase (rakendused -> (käsundid, kompilaatorid, interpredaatorid, süsteemiteek)) -> OS-i tase: (mäluhaldur, failisüsteemi haldur, süsteemi haldur, võrguhaldur, S/V-süsteemi haldur) -> OS tuum (protsessori haldur, protsessi haldur) -> Riistvara tase: Erinevad kontrollerid (seadmete kontroller, mälukontroller terminalseadmete kontroller)/süsteemi riistvara. Operatsioonisüsteemi põhifunktsioonideks on tegumite (protsesside) 2 ajaline planeerimine ja mäluhaldus. Operatsioonisüsteem määrab milline protsess (protsessid) kuulub antud hetkel riistvaras töötlusele. 12. Operatsioonisüsteemi põhikomponendid. Mäluhaldur (memory manager), protsessori haldur (processor manager), S/V- seadmehaldur (device manager), failihaldur (file manager), võrguhaldur (network manager). 13. Protsessid, lõimed, tegevuste järjestamine arvutis. Protsess – töödeldav programm või selle osa (järjestatav üksus). Lõim –
C++ class library including required functions. Sisaldab Rakenduste juhtimine sündmustele võib võtta kaua aega Concurrency: via processes, controlled by programmi initsialiseerimine & sisu mäluhaldus sensivity lists* algväärtustatud andmed (muutujad & rakendustele tööaja eraldamine and calls to wait primitives. konstandid) planeerimine, ajajaotus, saalimine (swap), ... Dünaamiline/online planeerimine:
EUCIP kordamiseks Küsimused ja vastused (kohati kokku pandud variandid ehk õige vastus peitub lauses) EUCIP Core Level sertifikaadi saamiseks. Standardiorganisatsiooni roll hõlmab standartsete protokollide loomist, nii et nende spetsifikatsiooniga kooskõlas olevad seadmed saavad koos töötada. OS-i tegevusi kirjeldavad välisseadmete haldus, mäluhaldus, katkestuste haldus. Millist eesmärki omab konveieri kasutamine (pipelining) kärbitud käsustikuga arvuti (RISC) protsessori arhitektuuris? Konveieriga protsessor täidab mitut operatsiooni korraga. Samal ajal kui operatsiooni i täidetakse loetakse operatsiooni i+1 mälust sisse. Kuidas programmeerijad kasutavad mälu hierarhilist ülesehitust? Muutujaid tuleb hoida võimalikult protsessori tuumale lähedal ja vähem kasutatavad andmed tuleb salvestada alama taseme mälus.
algoritmikeeles koostatud programmi tõlgendamisel masinakeelde. 11. Operatsioonisüsteemi üldistatud arhitektuurne mudel. Operatsioonisüsteem (OS) – arvutisüsteemi osa, mis ohjab süsteemi riist- ja tarkvara (liides riist- ja tarkvara vahel). (Interaktiivne-, reaalaja-, hübriid-, sardoperatsioonisüsteem) Operatsioonisüsteemi põhifunktsioonideks on tegumite (protsesside) ajaline planeerimine ja mäluhaldus. Operatsioonisüsteem määrab milline protsess (protsessid) kuulub antud hetkel riistvaras töötlusele. Operatsioonisüsteemi koosseisus on kogumik programme – superviisor – mille ülesandeks on pakkuda teenuseid ja jälgida rakendusprogrammide talitlust. Näiteks iga kord, kui protsessoris esineb katkestuse nõue, suunatakse juhtimine superviisorile, st minnakse superviisorrežiimi. Tüüpiliselt on suprviisori kutsed seotud sisend-väljundoperatsioonidega