Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

SZÁMALK SzakközépiskolaTantárgykód: 1 Operációs rendszerek I. (elmélet, 17 óra)

Hasonló előadás


Az előadások a következő témára: "SZÁMALK SzakközépiskolaTantárgykód: 1 Operációs rendszerek I. (elmélet, 17 óra)"— Előadás másolata:

1 SZÁMALK SzakközépiskolaTantárgykód: 1 Operációs rendszerek I. (elmélet, 17 óra)

2 SZÁMALK SzakközépiskolaTantárgykód: 2 Tartalomjegyzék - Témakörök: 1.Alapfogalmak, definíciók, az operációs rendszer 2.A számítógéprendszer hierarchikus rétegződése 3.Az operációs rendszer alapvető funkciói 4.Az operációs rendszerek osztályzása

3 SZÁMALK SzakközépiskolaTantárgykód: 3 1. Az operációs rendszer definíciója Olyan program (programrendszer), amely a számítógépen futó összes folyamat végrehajtását vezérli (ISO szabvány szerinti megfogalmazás)! sokan azt hiszik ez maga a „GÉP” a hardver és a felhasználó között van nagyméretű és bonyolult program a legjobb hardver is csak „vas” operációs rendszer nélkül

4 SZÁMALK SzakközépiskolaTantárgykód: A számítógépes rendszer hardver és szoftver rétegekből felépülő hierarchikusan strukturált rendszer Rétegek:hardver operációs rendszer fejlesztőeszközök (assembly, 3GL,4GL) alkalmazói programok Réteg:funkciók halmaza rétegszolgáltatások, interface-ek

5 SZÁMALK SzakközépiskolaTantárgykód: 5 Hierarchikusan rétegelt rendszer: Alkalmazók Alkalmazói prog. Fejlesztőeszközök Operációs rendszer Hardver - maga a gép

6 SZÁMALK SzakközépiskolaTantárgykód: 6 A hardver réteg elemei: CPU: processzor(ok), memória vezérlők, csatornák, perifériák (a gép) Az operációs rendszer réteg: kiterjesztett rendszerarchitektúrát szolgáltat használhatóvá teszi a gépet a fejlesztőeszközök és az alkalmazói rendszerek számára

7 SZÁMALK SzakközépiskolaTantárgykód: 7 Az operációs rendszer főbb részei: a) gépkezelői beavatkozást megvalósító rész - rendszerkonfigurálás - működési statisztikák lekérdezése - programok indítása, kilövése, állapotuk lekérdezése b) I/O műveletek komplett felügyelete - I/O sor kezelése, műveletek indítása - külső egységekről érkező megszakítások kezelése

8 SZÁMALK SzakközépiskolaTantárgykód: 8 c) a multiprogramozás vezérlését megvalósító rész - szétosztja az erőforrásokat - értelmezi a munkavezérlő nyelvet -fogadja, értelmezi az operátori parancsokat -futásra ütemezi a várakozó processzeket -működteti az adott parancsértelmezőt (akár többet is - legyen az karakteres vagy grafikus)

9 SZÁMALK SzakközépiskolaTantárgykód: 9 A fejlesztőeszköz réteg: minden, ami programfejlesztéshez szükséges fordítók, interpreterek, linkerek, 4GL eszközök, program generátorok (szintaktikai és szemantikai analízis, kódgenerálás és kódoptimalizálás,) fejlődése: gépi kód; assembly; 3GL: Fortran, ALGOL, COBOL, Pascal, C, stb.; 4GL eszközök, programgenerátorok, vizuális eszközök

10 SZÁMALK SzakközépiskolaTantárgykód: 10 Alkalmazói réteg: az alkalmazásfejlesztőket támogató alkalmazási szoftverekből áll össze, növeli a számítógép használati értékét alkalmazói programok belövését, tesztelését és indítását, futtatását segítő, támogató eszközök további programfejlesztést nem igénylő programok, amivel önálló alkalmazások hozhatók létre (beépített makró-futtató rendszerek)

11 SZÁMALK SzakközépiskolaTantárgykód: 11 Alkalmazók (emberek): az egyes felhasználói csoportok, akik különböző módokon igénylik a számítógépet a mindennapi életben, akik a legtöbbet akarják kapni a géptől, de a legkevesebbet akarják tudni róla - ezek köre állandóan bővül

12 SZÁMALK SzakközépiskolaTantárgykód: Az operációs rendszer fő feladatai: - taszkok ütemezése, összehangolása - erőforrások kezelése - I/O műveletek megszervezése - hibakezelés - a helyes és optimális működés biztosítása - program -és adatvédelem biztosítása - kapcsolattartás a felhasználókkal

13 SZÁMALK SzakközépiskolaTantárgykód: 13 - naplózás és számlázás - a hardver lehetőségeinek optimális és maximális kihasználása (a hardver pedig segíti a operációs rendszer működését) - megszakításkezelés - monitoring (felügyelő funkciók) - rendszeradminisztráció

14 SZÁMALK SzakközépiskolaTantárgykód: 14 Tipikus operációs rendszeri funkciók: operátori (felhasználói) interface biztosítása a gép és a külvilág kapcsolatát biztosító I/O műveletek támogatása multiprogramozást lehetővé tevő funkciók biztosítása Fontos: nem minden operációs rendszer valósít meg minden funkciót teljes körűen!

15 SZÁMALK SzakközépiskolaTantárgykód: 15 Az operációs rendszer, tehát egy olyan szoftver eszköz, amely - biztosítja a hardver kezelését, működtetését (rendszeroperátori tevékenységek) - elfedi a hardver speciális kötöttségeit - vezérli a programok működését, futását - szervezi a programok adatforgalmát - elosztja a közösen használt erőforrásokat

16 SZÁMALK SzakközépiskolaTantárgykód: 16 -optimálisan igyekszik kihasználni az erőforrásokat (multiprogramozás) -az egyes igényeket, kérelmeket fogadja és kiszolgálja -vezérli a hardver egységeket egy adott cél érdekében -naplózza, adminisztrálja a rendszer eseményeit

17 SZÁMALK SzakközépiskolaTantárgykód: A multiprogramozás: Ha az operációs rendszer egyidőben - látszólag - több programot is vezérel Megvalósításának feltételei (amikor egy folyamat nem használja a processzort): - I/O művelet esetén - szoftver/hardver hiba - a processz befejeződik - a processz önként lemond a CPU-ról - az op. rendszer időként visszaveszi a vezérlést

18 SZÁMALK SzakközépiskolaTantárgykód: 18 Folyamatok versengése: A folyamatok (processzek vagy taszkok) versengenek az erőforrások használatáért. Az operációs rendszer ütemezi és adminisztrálja az egyes erőforrásokat és a versengő folyamatokat Teljes körű ellenőrzés a operációs rendszer kezében van: azt lehet, amit megenged (várakozás + sorba állás + adminisztrálás = ütemezés)

19 SZÁMALK SzakközépiskolaTantárgykód: 19 Folyamatok (processzek) osztályzása időbeli lefutásuk szerint: soros- időben egymást követően párhuzamos - időben egymást átlapolva futnak szinkron - párhuzamosak, olyan kapcsolatban állnakegymással, hogy valamelyik kiváltja a másik működését pl. egy szinkronjel segítségével aszinkron - párhuzamos, de egymástól független folyamatok

20 SZÁMALK SzakközépiskolaTantárgykód: 20 izokron - egyidejűleg működő párhuzamos folyamatok ütemezett párhuzamos - szimultán konkurens folyamatok, párhuzamosak, de közülük csak egy- egy halad a többi vár - megfelelő ütemezési politika szerint haladnak (fontos: az operációs rendszer ütemező algoritmusa)

21 SZÁMALK SzakközépiskolaTantárgykód: 21 Összefoglalás: az 1. Fejezet anyaga 1. zárthelyi dolgozat megírása 1. zárthelyi dolgozat kiosztása,megbeszélése

22 SZÁMALK SzakközépiskolaTantárgykód: Zárthelyi dolgozat - minta 1.Definiálja az operációs rendszer fogalmát! 2.Ismertesse a számítógép rendszer rétegeit, régetinterface-eit! 3.Ismertesse az operációs rendszer fő feladatait! 4.Definiálja a tipikus operációs rendszeri feladatokat! 5.Ismertesse a multiprogramozás megvalósításának feltételeit! 6.Definiálja az ütemezett párhuzamos, az aszinkron és az izokron folyamat lefutást! 7.Jellemezze az alkalmazói réteget! 8.Jellemezze a fejlesztőeszközi réteget!

23 SZÁMALK SzakközépiskolaTantárgykód: A hierarchikus rétegek - az operációs rendszer szemszögéből 2.1. A hardver A processzor Főbb jellemzői:utasítás rendszer, utasításkészlet címzési rendszer, módszer megszakítás rendszer védelmi rendszer

24 SZÁMALK SzakközépiskolaTantárgykód: Utasítás rendszer Utasításkészlet: azon utasítások, melyeket a CPU végre tud hajtani 1,2,3 vagy esetleg 0 operandusú gépi utasítások, Felépítése: műveleti kód + operandusok (adatok, regiszterek, de el is maradhat) CISC: komplex utasításkészletű processzor RISC: szűkített utasításkészletű processzor

25 SZÁMALK SzakközépiskolaTantárgykód: 25 RISC: nagyságrenddel kevesebb utasítást tartalmaznak mint a CISC processzorok, viszont azokat sokkal gyorsabban sőt sok esetben párhuzamosan hajtják végre (superskalár processzorok). Speciális igényeknek jobban megfelel, hatékonyságuk nem minden területen megfelelő. Bővített utasításrendszer: meglévő utasítások felhasználásával mikroprogramokat lehet írni, s ezeket mint új utasításokat használhatjuk

26 SZÁMALK SzakközépiskolaTantárgykód: Címzési módszerek: - közvetlen (direkt vagy egyenes) címzés: közvetlen az operatív tár bájtjára mutat - indirekt címzés: index regiszteres (indexregiszter tartalmazza a megfelelő címet), bázisregiszteres címzés (bázisregiszter tartalma egy alapcím, ehhez adódik hozza az ún. eltolás = így kapjuk meg a a végleges címet) - virtuális címzés: amikor a tényleges cím nem az operatív tárban van, hanem egy közvetlen elérésű gyors háttértárolón (pl. mágneslemez).

27 SZÁMALK SzakközépiskolaTantárgykód: 27 Virtuális címzéshez szükség, hogy a processzor nagyobb területet tudjon címezni, mint a tényleges operatív tár mérete Társzervezés: akkor van rá szükség, ha processzor nem tudja címezni a teljes operatív tárat. Ilyenkor szegmensekre osztják a fizikai memóriát, s a processzor egyszerre egy szegmenst tud belátni

28 SZÁMALK SzakközépiskolaTantárgykód: Megszakítási rendszer A processzor valamilyen okból az éppen futó processz következő utasítása helyett egy teljesen más címen levő másik program utasításait hajtja végre Az operációs rendszer az előbb futó processzt valamilyen okból felfüggeszti egy megszakítással, majd később visszaadja a vezérlést, ha még az lehetséges Megszakítás: hardver vagy szoftver; külső vagy belső Adott esetben részleges vagy teljes tiltás is lehetséges

29 SZÁMALK SzakközépiskolaTantárgykód: 29 Miért kell a megszakítás? Bizonyos tevékenységeket csak az operációs rendszer végezhet el, alkalmazói program nem I/O művelet lebonyolítása hardver eszköz állapotváltozása hibák kiszűrése rendszeradminisztráció lebonyolítása ütemezése, szinkronizálások, rendszerhívás

30 SZÁMALK SzakközépiskolaTantárgykód: 30 Megszakítások okai: a) programhiba miatt - érvénytelen utasítás - címzési hiba - nullával való osztás - túlcsordulás, stb. b) géphiba miatt - hardver eszközök hibája

31 SZÁMALK SzakközépiskolaTantárgykód: 31 c) szoftverből generált megszakítás (SVC, INT) miatt d) külső megszakítás miatt - timer tick (időzítő) - interrupt billentyű - másik processzortól érkező kérelem e) I/O művelet miatt - I/O műveleti igény, kezdés vagy vég - esetleg I/O hiba

32 SZÁMALK SzakközépiskolaTantárgykód: 32 A megszakítás menete: - megszakítási kérelem érkezik a központi egységhez - az operációs rendszer átveszi a vezérlést - ha a megszakítás tiltott, akkor várakozni kell (ciklikusan vagy csak meghatározott ideig - time out) - amikor elfogadja, akkor kezdi a megszakítás-vezérlő a processz állapotvektorát (regiszterek) lementeni (operációs rendszer)

33 SZÁMALK SzakközépiskolaTantárgykód: 33 - elmentés után a megfelelő megszakítási vektorból előveszi a CPU a megszakítási rutin induló állapotvektorát, és átadja a vezérlést az rutin első utasítására - fut a megszakításvezérlő, felderíti a megszakításkérelem okát, és annak megfelelően elvégzi a dolgokat. Normál esetben eközben már újra engedi a megszakításkérelmeket, de lehet hogy az adott megszakítás vagy akár mindegyik tiltva (!) van

34 SZÁMALK SzakközépiskolaTantárgykód: 34 - a komplett lefutás után visszaadja a vezérlést az operációs rendszerek, aki dönt a további programfuttatásról (ütemezés) - futtatás: állapotvektor visszatöltése, CPU-ra kapcsolás (az operációs rendszer visszaadja a vezérlést valamely programnak) Fontos: egyáltalán nem biztos, hogy az operációs rendszer ütemezője annak a processznek adja vissza a vezérlést, aki az adott megszakítást kérte; ekkor a megszakítás eredménye rendszerterületen tárolódik

35 SZÁMALK SzakközépiskolaTantárgykód: 35 Fontos továbbá még az is, hogy a rendszer minél rövidebb ideig legyen megszakítás fogadására alkalmatlan (védtelen) állapotban CPU működési állapotok: - normál üzemmód: az utasításkészlet csak egy rész érhető el - privilegizált üzemmód: minden utasítás elérhető és végrehajtható

36 SZÁMALK SzakközépiskolaTantárgykód: 36 Operációs rendszer: mindig privilegizált módban működik - ezt nevezzük Supervisor vagy Master módnak Felhasználói programok: mindig normál módban használja a CPU-t I/O műveletek csak privilegizált állapotban hajthatók végre

37 SZÁMALK SzakközépiskolaTantárgykód: 37 Megszakításkezelést elősegítő eszközök: - CPU működési állapotok - több regiszterkészlet bevezetése - megszakítási maszk bevezetése - megszakítási osztályok - párhuzamosítás - megszakítási precedenciák, prioritások, sorrendek - gyors utasítások az állapotvektor mentésre/töltésre

38 SZÁMALK SzakközépiskolaTantárgykód: A védelmi rendszer Csak akkor lehet megvalósítani, ha van a CPU-nak normál és privilegizált üzemmódja is Célja: megakadályozni az illetéktelen hozzáféréseket (utasítások, memória terültet kezelése) hibás programműködés kiszűrése (regiszterkezelés, megszakításkérelem,stb.)

39 SZÁMALK SzakközépiskolaTantárgykód: 39 Védeni kell: a CPU-t az operatív tárat (tárvédelmi regiszterek) az I/O műveleteket a megszakításokat CPU-t elrontani nem lehet, de kerülni kell a végtelen ciklust, mert akkor állandón foglalt a CPU - ezért van az, hogy időönként visszaveszi a operációs rendszer a vezérlést; így kilőhető a végtelen ciklusba esett program

40 SZÁMALK SzakközépiskolaTantárgykód: 40 Központi tár védelme: - fontos, mert itt van az operációs rendszer is - több program van betöltve (multiprogramozás) - el kell érni, hogy a programok csak a saját területükre írhassanak, ha mégis máshova akarna, akkor le kell állítania az operációs rendszernek - tárvédelmi kulcsok (tárvédelmi regiszterek) tartalmazzák a programokhoz tartozó memória kezdetét és végét - esetenként közös tárterületről lehet olvasni (de csak azt, és azt is az operációs rendszer felügyelete alatt!)

41 SZÁMALK SzakközépiskolaTantárgykód: 41 I/O műveletek védelme: - védeni kell a perifériális programhibát (pl. nem figyeljük az EOF-et) - közösen használt perifériákat megfelelően ütemezni kell Megoldás: I/O műveletet csak privilegizált módban lehessen végrehajtani - csak az operációs rendszer teheti ezt meg - felhasználói program csak kérelmezheti az I/O lebonyolítását

42 SZÁMALK SzakközépiskolaTantárgykód: Tárak - operatív tár: maga a memória; lehet gyorstár vagy normál tár; fajtái: RAM (EDORAM, DRAM, SDRAM, FlashRAM, ROM, PROM, EPROM, EEPROM Gyorstár: nagyságrenddel gyorsabb innen az adat és utasítás elérés, mint a normál tárból, drágább is, kevesebb van belőle mint a normál tárból

43 SZÁMALK SzakközépiskolaTantárgykód: 43 A gyorstárat nem mindenki használhatja egyformán: - egyes esetekben csak az operációs rendszer használhatja - más esetekben, a felhasználói programok is használhatja a gyorstár egy részét, míg az operációs rendszer az egészet Régen, amikor a regiszterek nem a processzorban voltak, akkor a gyorstárban foglaltak helyet a számukra (regiszterkészletek!)

44 SZÁMALK SzakközépiskolaTantárgykód: 44 - háttértárak: adattárolásra: mágneses, optikai (CD, CD-RW, DVD), egyéb elektronikus háttértárak - virtuális tár: processzor által címezhető tár (mintha operatív tár lenne), amely közvetlen elérésű háttértáron helyezkedik el Virtuális tárkezelés esetén a valós operatív tárat meghaladó méretű programokat is lehet futtatni Programok, adatok az operatív tárban helyezkednek el, innen veszi elő a processzor őket végrehajtásra (lásd gépi kódú utasítás végrehajtási sémája)

45 SZÁMALK SzakközépiskolaTantárgykód: 45 Összefoglalás: az 2. Fejezet anyaga 2. zárthelyi dolgozat megírása 2. zárthelyi dolgozat kiosztása,megbeszélése

46 SZÁMALK SzakközépiskolaTantárgykód: Zárthelyi dolgozat - minta 1. Jellemezze a CISC és a RISC processzorokat! 2. Mi a társzervezés az operációs rendszer szintjén? 3. Jellemezze a megszakítás rendszert! 4. Ismertesse a megszakítás menetét! 5. Miért és mihez kell megszakítás? 6. Mi segíti a megszakítás-kezelő rendszert? 7. Jellemezze processzor védelmi rendszerét! 8. Jellemezze a normál tárat és a gyorstárat!

47 SZÁMALK SzakközépiskolaTantárgykód: Az operációs rendszer alapvető funkciói: a) rendszeradminisztráció: minden ami a gép, a hardver és a futó folyamatok vezérlése megkíván, szükségessé tesz a normális működés érdekében b) programfejlesztési támogatás: amit a szoftverfejlesztés megkíván az adott operációs rendszer keretein belül c) alkalmazói támogatás: alkalmazói programok indításához, kezeléséhez, használatához nyújtott op. rendszerbeli segítség

48 SZÁMALK SzakközépiskolaTantárgykód: Rendszeradminisztráció - processzor ütemezés - valós és virtuális tárkezelés - megszakításkezelés - folyamatvezérlés - szinkronizálás - hibakezelés - erőforrás-kezelés - adatállomány (file és katalógus) kezelés - perifériakezelés - naplózás, számlázás - operátori tevékenységek támogatása

49 SZÁMALK SzakközépiskolaTantárgykód: Programfejlesztési támogatás: - szövegszerkesztő (programers editor) biztosítása a forrásprogramok, scriptek elkészítéséhez - esetleg fordítók (compilerek), értelmezők (interpreterek), linkage editorok (linkerek), egyéb CASE eszközök biztosítása (ma már ez nem divat), ritkán bináris LIB-ek mellékelése - az operációs rendszer rutinjainak elérése, meghívása valamely megszakításon keresztül (TRAP, SVC, INT)

50 SZÁMALK SzakközépiskolaTantárgykód: A fordító (compiler) - a forráskód szintaktikai és szemantikai ellenőrzése - kódgenerálás, kódoptimalizálás Előnyei:bináris kódtárolást valósít meg a kód gyors futású, újrahasznosítható bináris könyvtárazási lehetőségek könnyű modularizálási lehetőségek

51 SZÁMALK SzakközépiskolaTantárgykód: 51 Hátrányai:nehézkes hibakeresés, javítás nem sok esetben hordozható inkompatibilitási problémák A fordító inputja:egy vagy több forrásállomány outputja: egy tárgykódú (OBJ) file

52 SZÁMALK SzakközépiskolaTantárgykód: A linker (linkage editor - programszerkesztő) A fordítás után létrejött tárgykód még nem betölthető és futtatható, ezért van szükség a linker-re A linker inputja és outputja inputja:egy vagy több tárgykódú file bináris könyvtár(ak) - LIB-ek output:a mindenkori operációs rendszer számára futtatható program, lehet több fajta is

53 SZÁMALK SzakközépiskolaTantárgykód: Az értelmező (interpreter) Menet közben utasításonként vagy soronként értelmezi a forráskódot. Értelmezés: szintaktikai ellenőrzés, gépi kódúvá alakítás, azonnali végrehajtás Előnyei: gyors, azonnali hibakezelés, hibakeresés és javítás, egyszerű tárolás, könnyű módosíthatóság, hordozhatóság Hátrányai: nincs bináris tárolás (talán a p-code?), lassú, helyenként körülményes (lásd ciklusok), interpreter szükségessége

54 SZÁMALK SzakközépiskolaTantárgykód: A betöltő (loader) A megszerkesztett programot betölti az operatív tárba, ha szükséges relokálja, bejegyzi az operációs rendszer processz-táblájába (PCB vagy TCB), előkészíti az állapotvektort, de sohasem futtat Vannak rendszerek ahol külön neve van a programnak, és külön kell aktiválni (meghívni), interaktív rendszerekben ez sokkal egyszerűbb dolog

55 SZÁMALK SzakközépiskolaTantárgykód: Az operációs rendszer rutinjainak hívása - hardver eszköz állapotváltozása generálhatja (külső interrupt hívás) - a védelmi rendszer aktiválhatja (pl. nullával osztunk) - szoftverből generált megszakítás segítségével (pl. SVC, INT, DOSCALL utasítások vagy magasszintű nyelvekből megfelelő függvényekkel: Intr, MsDos, Int86, Intdos, stb.)

56 SZÁMALK SzakközépiskolaTantárgykód: 56 Az operációs rendszer rutinjainak egy része rezidens vagy rezidensé tehető, a többi tranziens rutin A rezidens rutinok csak egy példányban vannak az operatív tárban, de mindig ott vannak Az operációs rendszer rutinjainak megvalósítása: - REENTERABLE - REUSABLE - REFRESHABLE

57 SZÁMALK SzakközépiskolaTantárgykód: 57 a) REENTERABLE (újra beléptethető) rutinok azok, melyek bármikor újra aktivizálhatók akár a befejeződésük előtt is (megszakítás útján, vagy multiprocesszoros környezetben normál módon) Feltételek:nem módosíthatja önmagát nem tartalmazhat módosítható adatokat a nem-konstans adatokat csak regiszteres címzéssel érheti el

58 SZÁMALK SzakközépiskolaTantárgykód: 58 b) REUSABLE (újra felhasználható) Ezek a rutinok azok, melyeket egy időben csak egy folyamat használhat, de a használat után újratöltés nélkül megkaphatja egy másik folyamat (processz) Feltételek: ha megváltoztatja magát vagy a benne levő adatokat, akkor kilépés előtt vissza kell mindent állítani még programhiba esetén sem fejeződhet be úgy, hogy a kiindulási állapot ne állna vissza

59 SZÁMALK SzakközépiskolaTantárgykód: 59 c) REFRESHABLE (frissíthető) Futásuk felfüggeszthető, a tárból kiírás nélkül kitörölhető, mert bármikor háttértárról újra betölthető Hasznosak lehetnek: - tárhiba esetén, virtuális tárkezelés esetén - tárhiány esetén, ha sürgősebb feladatot kell végrehajtani, s annak kell a hely, akkor őket fel lehet függeszteni, és helyük ideiglenesen felszabadítható

60 SZÁMALK SzakközépiskolaTantárgykód: A programtesztelés támogatása Forrásprogram szintjén: - nyomkövető utasítások a programon belül - beépített belső debug lehetőségek Fordítás, Interpretálás, Linkelés szintjén: - fordítást, értelmezést vezérlő utasítások - linker vezérlő utasítások

61 SZÁMALK SzakközépiskolaTantárgykód: 61 Operációs rendszer szintjén: - tárkivonat (core dump, főleg hexában) - interaktív debug programok (megszakítás: trace on/off, step) - szimbolikus dump (csak a változók nevét és tartalmát) - interaktív nyomkövető programok (AFD, TD, CodeView és egyéb rendszerutility-k

62 SZÁMALK SzakközépiskolaTantárgykód: 62 Nyomkövetés hardver támogatással: - speciális esetekben (pl. túlcsordulás, nullával osztás, privilegizált utasításhívás, stb.) a hardver megszakítja a programot és elérhetővé teszi a programállapot kiértékelését - bizonyos processzoroknak van „TEST” üzemmódja

63 SZÁMALK SzakközépiskolaTantárgykód: Alkalmazói támogatás - operátori parancsnyelvek az üzemeltetési funkciókhoz - munkavezérlő nyelvek (JOB control language) - segédprogramok, amelyekkel rendszerszolgáltatások elérhetőek (utilities)

64 SZÁMALK SzakközépiskolaTantárgykód: 64 - speciális programcsomagok egyedi felhasználási területekhez (grafikus interface-ek) - interaktivitás megvalósítás OS szinten - alkalmazói rendszerszolgáltatások - alkalmazói programkészlet (file-kezelők)

65 SZÁMALK SzakközépiskolaTantárgykód: 65 Összefoglalás: az 3. Fejezet anyaga 3. zárthelyi dolgozat megírása 3. zárthelyi dolgozat kiosztása,megbeszélése

66 SZÁMALK SzakközépiskolaTantárgykód: Zárthelyi dolgozat - minta 1.Ismertesse az operációs rendszer három alapvető funkcióját! 2.Mi a feladata rendszeradminisztrációnak? 3.Mi a feladata a fordítónak? 4.Mi a feladata az interpreternek? 5.Mi a feladata a linkernek? 6.Hogyan hívhatjuk meg az operációs rendszer rutinjait? 7.Jellemezze a reenterable, reusable, refreshable rutinokat! 8.Mi a feladata az operációs rendszer loader-jének?

67 SZÁMALK SzakközépiskolaTantárgykód: Az operációs rendszerek osztályzása Szempontok: a) személyi számítógép, munkaállomás, minigép, mainframe gépek - PC-k személyi számítógép op. rendszere: egyszerű, olcsó, egyfelhasználós, egytaszkos, adatvédelem szinte semmi (MS-DOS) - Mini gépes és munkaállomások: többtaszkos, esetenként többfelhasználós, otthon is használható, megfelelő adat -és programvédelemmel

68 SZÁMALK SzakközépiskolaTantárgykód: 68 Megbízható hardvert és szoftvert kíván, folyamatvezérlésre is alkalmas, sokszor a feladatok is párhuzamosíthatók, többprocesszoros változatok is léteznek (UNIX, WinXX, NT, Netware) - Nagyszámítógépek (mainframe OS) Drága, nagy teljesítmény, rendszerek integrálására szolgálnak, többfelhasználós (ezres nagyságrend), többtaszkos, nagyméretű adatfeldolgozás, folyamatirányítás, csak hálózatos implementációk, üzemeltetésük igen nagy szakértelmet és megfelelő környezetet kíván, kritikus adat -és programvédelem

69 SZÁMALK SzakközépiskolaTantárgykód: 69 Sok rendszerfunkció, sok-sok párhuzamosan működő processzor, real-time lehetőségek, több operációs rendszer párhuzamos futtatása (IBM mainframe OS: OS/VS1, OS/VS2, VM) b) egy vagy többfelhasználós OS (multiuser) c) egy vagy többtaszkos OS (multiprogramozott) d) utasításpárhuzamosításra alkalmas OS (multithread) e) kötegelt (BATCH) vagy interaktív f) hálózatos és elosztott OS

70 SZÁMALK SzakközépiskolaTantárgykód: Hagyományos felosztás: - egyfelhasználós (kötegelt vagy interaktív) - többfelhasználós (kötegelt vagy interaktív) - monoprogramozott vagy multiprogramozott, esetleg többszálú megvalósítást támogató - üzemmód: kötegelt, időosztásos, valós idejű, esetleg vegyíti ezeket - egy vagy többprocesszoros - elosztott és hálózati OS

71 SZÁMALK SzakközépiskolaTantárgykód: Felhasználás jellege szerint: - adatfeldolgozó rendszerek - tranzakció-orientált rendszerek - folyamatvezérlő, folyamatirányító rendszerek - műszaki problémamegoldó rendszerek - személyi felhasználásra készült rendszerek (GSM) - fejlesztő rendszerek

72 SZÁMALK SzakközépiskolaTantárgykód: Egyfelhasználós rendszerek - kezdeti megoldás volt - kötegelt eléréssel párosult - személyi számítógépeknél nem volt fontos a gép, a hardver kihasználtsága, így újra divatba jött

73 SZÁMALK SzakközépiskolaTantárgykód: Multiprogramozott rendszerek A programvégrehajtás közben a CPU sokszor várni kényszerül (pl. I/O műveletek, operátori közbeavatkozás, stb.), Ekkor át lehet kapcsolni a CPU- t más programra, amely persze a tárban van, vagy oda be lehet hozni Interaktív rendszerekben egyre nagyobb a jelentősége (pl. ablakok, virtuális terminálok, grafikus munkaállomások…) Vannak egyfelhasználós multiprogramozott rendszerek. A multiuser rendszerek szükségszerűen multiprogramozott is

74 SZÁMALK SzakközépiskolaTantárgykód: 74 Multitaszking: egy adott felhasználó több programja fut látszólag egyidőben - fontos: az operációs rendszer ütemező algoritmusa Multiprogramozást támogató eszközök: a) SPOOL - Simultan Peripherial Operating On-Line (nyomtatók kezelésére, levelezésre, egyéb lassú perifériák számára - első megvalósítása: HASP)

75 SZÁMALK SzakközépiskolaTantárgykód: 75 b) Swapping - program cserebere: Egy adott pillanatban az éppen futóprogram van a tárban, a többi mágneslemezen várakozik Csere: ha a futó programot az operációs rendszer felfüggeszti, akkor az kimegy lemezre, és a várakozók közül egy betöltődik Előny: maga a multiprogramozás Hátrány: lassúság a sok I/O művelet miatt

76 SZÁMALK SzakközépiskolaTantárgykód: 76 c) többpartíciós multiprogramozás: A memóriát különálló - egymástól független - partíciókra osztják, mindegyikben egy program lehet, s ezek közül egy fut a többi várakozik; később összeházasították ezt a a swapping-el d) lapozás - szegmentált lapozás A tárat és a programot is lapokra osztják (egy lap:0,5- 4K) - minden program annyi lapot kap amennyi neki kell, esetleg kevesebbet, a pedig többit virtuális tárra teszik

77 SZÁMALK SzakközépiskolaTantárgykód: 77 A multiprogramozás problémái: a) nem megosztható perifériák egyidejű kezelése (pl. printer, mágnesszalag, reusable rutinok)? - részben segít a SPOOLING technika, vagy a szemafor-technika (E.W. Dijkstra) b) a válaszidők csökkentése a hatásfok csökkenése nélkül? - időosztásos megoldások; interaktív programoknak nagyobb prioritást kell adni

78 SZÁMALK SzakközépiskolaTantárgykód: 78 c) hogyan védhetjük a programokat és az operációs rendszert egymástól? - a CPU privilegizált üzemmódja (csak ekkor lehet programot tölteni és memóriát foglalni), tárvédelmi kulcsokkal vagy regiszterekkel d) hogyan osszuk szét az operatív tárat a betöltött programok között? - partícionálás, swapping, lapozás, szegmentált lapozás (virtuális tárkezelés)

79 SZÁMALK SzakközépiskolaTantárgykód: 79 e) hogyan osszuk szét az erőforrásokat úgy, hogy ne alakuljon ki holtpont? - teljes körű erőforrás-kiosztás adminisztrálás, szinkronizálás, megfelelő erőforrás-ütemező algoritmusok, holtpont megelőzés vagy felismerés

80 SZÁMALK SzakközépiskolaTantárgykód: Többprocesszoros rendszerek Olyan rendszerek, melyben több processzor dolgozik, főleg RISC processzorokkal alkalmazzák ezt - egy közös tárban több processzor dolgozik - számítógép-hálózatok a) van egy kitüntetett processzor, amely vezérli a többi processzort, és elvégzi az alapfunkciókat (tárkezelés, I/O szervezés, taszk-ütemezés); adott esetben egy - a fő - processzort csak az operációs rendszer használja, a többi osztják szét a felhasználói folyamatok között

81 SZÁMALK SzakközépiskolaTantárgykód: 81 b) back-end processzor kapcsolat: egy főprocesszor bírja munkára a társprocesszort vagy processzorokat, ez alárendeltségi viszonyt mutat (pl. grafikus vagy matematikai társ-processzori megvalósítások) c) a sok processzor teljesen egyenrangú, és az operációs rendszer osztja szét közöttük a feladatokat a megfelelő ütemező algoritmus segítségével (maga az operációs rendszer is az épp szabad processzort használja) Szorosan és lazán csatolt rendszereket különböztetünk meg a többprocesszoros rendszerekben

82 SZÁMALK SzakközépiskolaTantárgykód: 82 Bármelyik processzor indíthat I/O műveletet, amely megszakítást okoz azon a processzoron, amelyik fogadni tudja a megszakítást (ütemezés, szinkronizálás) Nem lehet tudni, hogy egy adott felhasználó programja melyik processzoron fut Az időszelet végén a program az új aktivizálódáskor bármelyik processzoron futhat tovább, és folytathatja a munkát

83 SZÁMALK SzakközépiskolaTantárgykód: 83 Egy processzorhiba esetén egyik program sem szakad meg, hanem a hibát okozó processzor leáll, és valamelyik másik átveszi a rajta futó program végrehajtását (mintha csak az időszelet járt volna le) Sajnos ezek a megoldások ma még túl drágák, jobbára a katonai rendszerekben, az űrkutatásban, s a folyamatvezérlésben használják (vegyi üzemek, atomreaktorok) Bár helyenként megfigyelhetők az közlekedéstechnikában is (autók, repüléstechnika, automata metró-irányítás)

84 SZÁMALK SzakközépiskolaTantárgykód: Valós idejű rendszerek Normál körülmények között a programok nem valósidőben futnak a sok felfüggesztés, ütemezés miatt bekövetkezett időveszteségek miatt Ipari környezetbe beépített számítógépes rendszerekben ez megengedhetetlen Folyamatvezérlést csak valós idejű rendszerekkel lehet megvalósítani

85 SZÁMALK SzakközépiskolaTantárgykód: 85 Az eseményvezérelt jelleg (event driven) csak távoli rokona a valós idejű (real-time) rendszereknek A valós idő nem azonnalit jelent, hanem előírt időkorlátokat, amelyeket viszont nem szabad áthágni, mert az rendszerhibát, rendszerleállást eredményez - jó esetben (vagy Csernobil) Az eseményvezérelt rendszerek az emberi reakcióidőhöz vannak optimalizálva ( sec, bár belső a hardverhez igazodó események lehetnek gyorsabbak is), ez elektronikusan mérve igen lassú

86 SZÁMALK SzakközépiskolaTantárgykód: 86 Gyors folyamatoknál (pl. atomreaktor, vegyi kombinát, olajfinomítók) igen alacsony reakció idők vannak: kb. 1- ms Ilyenkor a kérelmek is megfelelően érzékeny mérő műszerekről érkeznek a számítógépes rendszerhez Az egész rendszer csúcsterhelésre kell méretezni, s arra kell optimalizálni, csúcsterhelésen kell tesztelni Programfejlesztésre ezek a rendszerek alkalmatlanok

87 SZÁMALK SzakközépiskolaTantárgykód: 87 Valós idejű rendszereket más operációs rendszer alatt fejlesztik ki, ahol szimulálják a vezérelt folyamatokat, majd kipróbálják a célhardveren is csúcs üzemmódban A fejlesztési és tesztelési idő nagyságrendekkel nagyobb, mint a beüzemelési szakasz Az esetek nagy részében az operátorok a valós idejű rendszereket csak elindítani és leállítani tudják, tehát az emberi beavatkozás minimális

88 SZÁMALK SzakközépiskolaTantárgykód: 88 Hibás működés esetén kell beavatkozni, illetve állásidőben lehetőség van bizonyos átkonfigurálásokra Ezeknél a programoknál fontos, hogy megváltoztathatatlanok legyenek - ezért a programokat ROM-ba égetve használják, így nem lehet elrontani őket, nem sérülnek

89 SZÁMALK SzakközépiskolaTantárgykód: Eseményvezérelt rendszerek Legfőképpen a mai, modern interaktív, grafikus és menüvezérelt rendszerekben használják A válaszidők bizonyos esetekben az emberi reakció időkhöz és más esetekben a hardver sebességéhez vannak optimalizálva (bár vannak anomáliák, s emiatt inkompatibilitási problémák is adódnak)

90 SZÁMALK SzakközépiskolaTantárgykód: Tranzakció-orientált rendszerek Hasonlóak a valós idejű rendszerekhez és az eseményvezérelt rendszerekhez, de itt az esemény maga a kívülről jövő (felhasználó felöl jövő) tranzakció - belülről ilyet nem generál a rendszer Itt emberi reakció időkkel kell számolni, bár sok esetben itt is használnak másodpercekben mért válaszidő-korlátokat Egyidejűleg sok ügyfél kiszolgálása sem okozhat gondot (…)

91 SZÁMALK SzakközépiskolaTantárgykód: Kötegelt rendszerek (BATCH) Több összetartozó programot egy egységbe szerveznek - ez a JOB A JOB-okat egymás után adják fel a rendszerbe feldolgozásra, az főütemező kiválasztja a futásra alkalmas JOB-ot, és időben egymást követően végrehajtja a benne szereplő programokat Több JOB több programja is futhat konkurens módon - ennek ütemezése már az operációs rendszer diszpécserének feladata

92 SZÁMALK SzakközépiskolaTantárgykód: 92 A programozó, a felhasználó ilyenkor nincs kapcsolatban a programjával - a mai rendszerekben ezt a „háttérben való futtatás” valósítja meg Az operátor adott esetben leállíthatja, ideiglenesen felfüggesztheti a futó JOB-ot független attól, hogy az hol tart (nehézkes visszaállítási lehetőségek) Némely esetben a JOB-ok üzennek a terminálra, attól függően, hogy hol tartanak, mit csinálnak Futásuk szempontjából kritikus az erőforrás-kezelés

93 SZÁMALK SzakközépiskolaTantárgykód: 93 Talán a legjobb hardver és gépidő kihasználtságot biztosítják, de a JOB-ok fordulásának ideje - a benne szereplő programok betöltése, futása, leállása - igen nagy lehet, ezért interaktivitásra alkalmatlan Interaktív rendszerek Az operációs rendszer olyan operátori interface-t biztosít, amely által állandó kapcsolatban van a felhasználó a géppel Ez lehet karakter-orientált vagy grafikus

94 SZÁMALK SzakközépiskolaTantárgykód: Időosztásos rendszerek (dr. John Kemény) Általában interaktív üzemmód, a CPU idő osztják a felhasználó, esetleg a processzek között szét (processzek sohasem kapnak fix időszeletet!) Az idő körben jár, s mindenki ugyanannyi időre kapja meg a CPU-t - minden felhasználó az adott időszeletnyit dolgozik Sokszor kombinálják BATCH (háttér) futtatással is tól szinte már csak ez létezik

95 SZÁMALK SzakközépiskolaTantárgykód: Többfelhasználós rendszerek Ezek gyakorlatilag a számítógép-hálózatok: az operációs rendszer legfontosabb feladata a hálózat életben tartása, azért hogy a felhasználók folyamatosan tudjanak kommunikálni Számítógép-hálózatok fajtái: - egy központi gép van összekötve „buta” terminálokkal (terminál=DTE, Data Termination Equipment)

96 SZÁMALK SzakközépiskolaTantárgykód: 96 - egy központi gép több „intelligens” terminállal, azaz munkaállomással van összekötve - több önálló „teljes értékű” gép van összekötve - bármelyik lehet szerver, ha a szükség úgy hozza Összekötés: vonalakkal, amely lehet közvetlen adatbusz, kábel, telefon-vonal, mikrohullám, infra, műholdas és egyéb rádiókapcsolat A hálózat célja: a központi hardver és szoftver erőforrás-kezelés, gyors adatátvitel és kommunikáció, szükség esetén a feladatok megosztása

97 SZÁMALK SzakközépiskolaTantárgykód: 97 Az elosztott rendszerek: ezek is számítógép-hálózatok, de míg az „egyszerű hálózatoknál” pontosan tudjuk, hogy hol hajtódik végre az elindított folyamat, addig az elosztott rendszerekben nem - ahol van szabad erőforrás oda teszi át a folyamatot (járulékaival együtt) az elosztott rendszert működtető operációs rendszer Hálózati topológiák: - teljes vagy részlegesen kapcsolt - csillag, sín vagy busz, gyűrű

98 SZÁMALK SzakközépiskolaTantárgykód: 98 - felnyitott gyűrű - többszörös gyűrű - fastruktúrás topológia Kiépítés mérete szerint a számítógép-hálózat lehet: LAN- Local Area Network (Netware, UNIX, NT) MAN- Metropolitan Area Network (~OTP ATM) WAN- Wide Area Network (Internet)

99 SZÁMALK SzakközépiskolaTantárgykód: 99 Protokoll, azaz adatkapcsolat, adatátvitel szerint: - vonalkapcsolt - üzenetkapcsolt - csomagkapcsolt A hálózatok kialakítását befolyásoló tényezők: - biztonság, védelem, létesítési költségek, kommunikációs költségek, hardver -és szoftverintegritás

100 SZÁMALK SzakközépiskolaTantárgykód: 100 Összefoglalás: az 4. Fejezet anyaga 4. zárthelyi dolgozat megírása 4. zárthelyi dolgozat kiosztása,megbeszélése

101 SZÁMALK SzakközépiskolaTantárgykód: Zárthelyi dolgozta - minta 1.Sorolja fel a operációs rendszer osztályzási szempontokat! 2.Adja meg a hagyományos operációs rendszeri osztályozási szempontokat! 3.Jellemezze a multiprogramozott rendszereket! 4.Jellemezze a többprocesszoros rendszereket! 5.Jellemezze a valósidejű rendszereket! 6.Jellemezze a tranzakció-orientált és az eseményvezérlet rendszereket! 7.Jellemezze a kötegelt és az időosztásos rendszereket! 8.Sorolja fel a multiprogramozás problémáit!


Letölteni ppt "SZÁMALK SzakközépiskolaTantárgykód: 1 Operációs rendszerek I. (elmélet, 17 óra)"

Hasonló előadás


Google Hirdetések