Operációs rendszerek (PMB1206)

Hasonló dokumentumok
Operációs rendszerek (PMB1206)

Operációs rendszerek (I 1204)

Operációs rendszerek. Bemutatkozás

Operációs rendszerek MINB240 V2+2+0

Operációs rendszerek MINB240 V kredit KF Nagyváradi Anett 0. előadás Bevezetés

Operációs rendszerek Folyamatok 1.1

Operációs rendszerek

Bevezetés az informatikába

Számítógépes alapismeretek

Az informatika alapjai. 10. elıadás. Operációs rendszer

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

2. Számítógépek működési elve. Bevezetés az informatikába. Vezérlés elve. Külső programvezérlés... Memória. Belső programvezérlés

Alkalmazások típusai Szoftverismeretek

Operációs rendszerek Bevezetés 1.1

A számítógép egységei

OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc -

UNIX operációs rendszer bemutatása. A UNIX története, fejlesztésének céljai.

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

Számítógépes munkakörnyezet II. Szoftver

Alapismeretek. Tanmenet

Intelligens biztonsági megoldások. Távfelügyelet

Operációs rendszerek. A Windows NT felépítése

1. MODUL - ÁLTALÁNOS FOGALMAK

Szoftver labor III. Tematika. Gyakorlatok. Dr. Csébfalvi Balázs

OPERÁCIÓS RENDSZEREK. Elmélet

Térinformatika. Térinformatika. GIS alkalmazói szintek. Rendszer. GIS funkcionális vázlata. vezetői szintek

Operációs rendszerek

SZÁMÍTÓGÉP FELÉPÍTÉSE (TK 61-TŐL)

Számítógép architektúra

Operációs rendszerek 1. kidolgozott tételsor Verzió: 1.0 (Build: )

Operációsrendszerek. 1. elıadás. Standard ismeretek

Dr. Schuster György október 30.

Mértékegységek a számítástechnikában

1. Fejezet: Számítógép rendszerek. Tipikus számítógép hirdetés

Alapismeretek. Tanmenet

Operációs Rendszerek II.

1. tétel. A kommunikáció információelméleti modellje. Analóg és digitális mennyiségek. Az információ fogalma, egységei. Informatika érettségi (diák)

Operációs Rendszerek II.

Számítógép-rendszerek fontos jellemzői (Hardver és Szoftver):

Adatbázis rendszerek. dr. Siki Zoltán

A szoftverfejlesztés eszközei

Programozás alapjai. Wagner György Általános Informatikai Tanszék

SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1

1. Fejezet: Számítógép rendszerek

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

TestLine - Informatika gyakorló Minta feladatsor

Operációs rendszerek - bevezető

Fejezetek az Információ-Technológia Kultúrtörténetéből

Utolsó módosítás:

LOGIKAI TERVEZÉS. Előadó: Dr. Oniga István Egytemi docens

Uniprogramozás. várakozás. várakozás. Program A. Idő. A programnak várakoznia kell az I/Outasítások végrehajtására mielőtt továbbfuthatna

Az operációs rendszer. Az operációs rendszer feladatai, részei, fajtái Az operációs rendszer beállítása

6. óra Mi van a számítógépházban? A számítógép: elektronikus berendezés. Tárolja az adatokat, feldolgozza és az adatok ki és bevitelére is képes.

Küls eszközök. Dokumentum cikkszáma: Ez az útmutató a külön beszerezhető külső eszközök használatát ismerteti

1_Linux_bevezeto_bash

Külső eszközök. Felhasználói útmutató

Operációs rendszerek

IT - Alapismeretek. Feladatgyűjtemény

Küls eszközök. Dokumentum cikkszáma: Ez az útmutató a külön beszerezhető külső eszközök használatát ismerteti

3 A hálózati kamera beállítása LAN hálózaton keresztül

Számítógép egységei. Szoftver (a fizikai eszközöket működtető programok összessége)

OPERÁCIÓS RENDSZEREK. Célkitűzések, tárgyfelépítés. Módszerek. OS fogalom, struktúrák. 2005/2006. tanév II. félév Dr. Vadász Dénes

Nyíregyházi Egyetem Matematika és Informatika Intézete. Input/Output

Szoftver-technológia I.

Bevezetés a párhuzamos programozási koncepciókba

Alapismeretek. Tanmenet

Az operációs rendszer fogalma

Ütemezés (Scheduling),

Matematikai és Informatikai Intézet. 4. Folyamatok

Windows történet Windows 1.0. DOS kiegészítő Grafikus felület

Folyamatok. 6. előadás

Párhuzamos programozási platformok

Informatika érettségi vizsga

Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem

A számítógépek felépítése. A számítógép felépítése

SZOFTVER = a számítógépet működtető és az azon futó programok összessége.

Párhuzamos programozási platformok

Számítógépes alapismeretek 1.

A Számítógépek hardver elemei

Everything Over Ethernet

HÁLÓZATOK I. Segédlet a gyakorlati órákhoz. Készítette: Göcs László mérnöktanár KF-GAMF Informatika Tanszék tanév 1.

evosoft Hungary Kft.

Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT

Digitális technika VIMIAA01 9. hét

Máté: Számítógépes grafika alapjai

Az Informatika Elméleti Alapjai Dr. Kutor László. A számolás korai segédeszközei A korszerű számítógépek kialakulása

Az Informatika Elméleti Alapjai Dr. Kutor László. A számolás korai segédeszközei A korszerű számítógépek kialakulása

Operációs rendszerek. Az NT folyamatok kezelése

Intelligens Érzékelők

GIS adatgyűjtés zseb PC-vel

Utolsó módosítás:

Hálózati operációs rendszerek II. Novell Netware 5.1 Hálózati nyomtatás

BEVEZETÉS A SZÁMÍTÓGÉPEK VILÁGÁBA

1. Generáció( ):

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Alkalmazások architektúrája

ELSŐ LÉPÉSEK A SZÁMÍTÓGÉPEK RODALMÁBA AMIT A SZÁMÍTÓGÉPEKRŐL TUDNI ÉRDEMES

ÉRETTSÉGI TÉTELCÍMEK 2018 Informatika

Iman 3.0 szoftverdokumentáció

Mi szükséges a működéshez?

Átírás:

1 Operációs rendszerek PMB1206 NyE MII 2016-201* (ahol *=7,8,9) Félévi tematika Hét Előadás Gyakorlat 1 Bevezetés, történet, fajták, strukturák MS-DOS alapok 2 Processzusok, Szálak, IPC MS-DOS parancsok 3 Ütemezés jogosultságrendszer, chmod, attr 4 Deadlock es algoritmusok fájlműveletek, bat-programozás I. 5 Memória kezelés 1 fájlműveletek, bat-programozás II. 6 Memória kezelés 2 fájlműveletek, bat-programozás III. 7 Input Output 1 MSVS- DLL technológia 8 Input Output 2 Zh1 9 File rendszerek felépítése 1 s/w ismertetés: shed, XVI32 10 File rendszerek felépítése 2 s/w ismertetés: awk, Cygwin, 11 Biztonság, Registry MSVS Registry kezelés 12 Miltiprocesszoros rendszerek s/w ismertetés: vi, WinVi 13 Op. rendszer Online frissítése MSVS állományok Web-ről 14 Egyéb operációs rendszerek Zh2

2 Javasolt irodalom 1. Andrew S. Tanenbaum, Albert S. Woodhull Operációs rendszerek - Tervezés és implementáció CD melléklet, Panem Könyvkiadó, 2007 2. Andrew S. Tanenbaum, Albert S. Woodhull Operating Systems Design and Implementation (3rd Edition) 3rd Edition Upper Saddle River, New Jersey 2006 3. Andrew S. Tanenbaum, Herbert Bos, Modern Operating Systems (4th Edition) Pearson, 2014 4. Mary S. Gorman, Stubbs Operációs rendszerek, Panem Könyvkiadó, 2003 5. William Stallings, Operating Systems: Internals and Design Principles (7th or 8th Edition), Prentice Hall;, 2011, 2014

3 Bevezetés 1. Mi az operációs rendszer? 2. Korai rendszerek. 3. A kötegelt feldolgozás egyszerű rendszerei. (Simple Batch) 4. A kötegelt feldolgozás multiprogramozott rendszerei. (Multiprogramming Batched Systems) 5. Időosztásos (time-sharing) rendszerek. 6. Személyi számítógépes rendszerek. 7. Párhuzamos rendszerek. 8. Elosztott rendszerek. 9. Valós idejű rendszerek.

4 Mi az operációs rendszer (English: operating system, OS)? Operációs rendszer: Egy program (rendszer), amely közvetítő szerepet játszik a számítógép felhasználója és a számítógép hardver között. (https://hu.wikipedia.org/wiki/operációs_rendszer) Operációs rendszer célok: 1. Felhasználói programok végrehajtása, a felhasználói feladatmegoldás megkönnyítése. 2. A számítógép rendszer használatának kényelmesebbé tétele. 3. A számítógép hardver kihasználásának hatékonyabbá tétele.

5 Hány operációs rendszer létezik? Nem teljes lista (csak nyilvános, nem speciális jellegűek): https://hu.wikipedia.org/wiki/operációs_rendszerek_listá1ja https://en.wikipedia.org/wiki/list_of_operating_systems https://en.wikipedia.org/wiki/history_of_ibm_mainframe_operating_systems (+ Kylin, Gun data computer, Battery Computer System, Army Secure Operating System ASOS, РАФОС, ДУБНА, Эльбрус, Агат, stb.) Fő elemei Az operációs rendszerek alapvetően három részre bonthatók: 1. a felhasználói felület (a shell, amely lehet egy grafikus felület,vagy egy szöveges), 2. alacsony szintű segédprogramok és 3. a kernel (mag), amely közvetlenül a hardverrel áll kapcsolatban.

6 Számítógép rendszerek komponensei (séma) 1. Hardver az alapvető számítási erőforrásokat nyújtja (CPU, operatív memória, I/O berendezések). 2. Operációs rendszer koordinálja és vezérli a hardver erőforrások különböző felhasználók különböző alkalmazói programjai által történő használatát. 3. Alkalmazói programok definiálják azt a módot, ahogyan az egyes rendszer-erőforrásokat a felhasználók számítási problémáinak megoldásához föl kell használni (fordítók, adatbázis kezelők, videó játékok, ügyviteli programok). 4. Felhasználók (emberek, gépek, más számítógépek).

7 Számítógép rendszerek komponensei (séma)

8 Vagy másképpen, részletesebben

9 A számítógép funkcionális felépítése

10 A számítógép funkcionális struktúrája

11 Operációs rendszer definíciók (nézetfüggő) 1.Erőforrás allokáló/kiosztó menedzseli és kiosztja a hardver erőforrásokat. 2.Felügyelő program felügyeli a felhasználói programok végrehajtását, az I/O berendezések működését. 3.Kernel (mag) az egyetlen program, amelyik "állandóan fut" (minden más program alkalmazói program).

12 Korai rendszerek "pucér" gépek (1945-1955), operációs rendszerek nélkül. MARK I. Hardver relék, kommutációs panelek. A számítógépes rendszerek fejlődését erősen befolyásolta a második világháború (rakéták pályájának kiszámítása, kódolt szövegek megfejtése, stb.) 1939 ABC - az első digitális számítógép. Dr. John Astanasoff tervezte.

13 1944 Mark I - az első amerikai általános célú számítógép, amelyet programok vezéreltek (Relékkel működött). A Harvard egyetemen tizenöt évig használták. 1945 MARK II - az első "bug". A Mark II fejlesztése közben a számítógép egyik reléje elromlott, és a kutatók egy agyonütött molylepkét találtak az érintkezői között. Azt tartják, hogy ez az eredete az angol "bug" (bogár, apró programhiba) és a debugging (hibakeresés) szakkifejezéseknek. 1945 ENIAC - Electronic Numeric Integrator and Computer. 30 tonna, 18 ezer rádiócső, programozáshoz 6000 kapcsolót kellett átállítani.

14 Tranzisztor alapú gépek (1955-1965), kötegelt feldolgozás (Simple Batch) I. Szerkezeti jellemzők a nagyméretű gépet a konzolról irányítják, egy felhasználós rendszer, a programozó egyben operátor is, lyukszalagos és/vagy lyukkártyás adatbevitel és kivitel.

15 EC-1020 (Szovjetunió) IBM-360 (USA)

16 Korai szoftver assemblerek, betöltők (loader-ek), kapcsolat szerkesztők (linkage editor), közös szubrutin-könyvtárak, fordítók (compiler-ek), I/O berendezés kezelő rutinok (device driver-ek). Biztonság -? Drága erőforrások rossz hatékonyságú kihasználása alacsony CPU kihasználtság, jelentős mennyiségű "beállítási idő" (setup time).

17 A kötegelt feldolgozás rendszerei (Simple Batch) II. Professzionális operátor. Felhasználó saját alkalmazást készít és átadja operátornak. Rendszer rendelkezik egy/több kártyaolvasóval. Automatikus soros munka végrehajtása (job sequencing): a vezérlés egyik job-ról (a job vége után) automatikusan kerül át a következőre.

18 Az első elemi operációs rendszer megjelenése. Rezidens monitor (felügyelőprogram, schedular) működési elve: kezdetben a vezérlés a monitornál van, a vezérlés átadódik a job-nak, ha a job befejeződött a vezérlés vissza kerül a monitorhoz. Egy tipikus job szerkezete és a számítógépes problémamegoldás folyamata, job-lépés (jobstep). Problémák: 1. Hogyan szerezhet a monitor tudomást az adott job természetéről (pl. FORTRAN vagy ASSEMBLY nyelvű-e?), vagy melyik programot kell végrehajtani? 2. Hogyan tudja a monitor megkülönböztetni egyik job-ot a másiktól? az adatot a programtól? Megoldás: Vezérlő kártyák, pozicionálás, JCL-nyelv (Job Controlling Language) Speciális kártyák, amelyek megmondják a monitornak, mely programot kell futtatni ($JOB, $FTN, $RUN, $DATA, $END)

19 Speciális karakterek különböztetik meg az adat és program kártyákat. (//, $, stb.)

20 A kötegelt feldolgozás rendszerei (Simple Batch) III. A rezidens monitor funkcionális részei Vezérlő kártya interpreter (értelmező) felelős a vezérlőkártyák beolvasásáért és értelmezéséért. Betöltő (loader) háttértárból betölti az egyes rendszer és felhasználói programokat az operatív memóriába. Készülék meghajtó programok (device drivers) ismerik a rendszer az egyes I/O berendezéseinek tulajdonságait és működtetésük logikáját. Előny: csökken a beállítási idő (setup time)! Probléma: Alacsony teljesítmény mivel az I/O és a CPU műveletek nem fedhetik át egymást (párhuzamosság!) és a kártyaolvasó nagyon lassú! Megoldás: Off-line elő- és utófeldolgozás a job-okat egy másik (olcsóbb, egyszerűbb) gép segítségével szalagra másoljuk, ill. az eredményeket (mágneses) szalagra írjuk, majd a főgépen (mainframe) a több job-ból összeállított csomagot (batch) futatjuk.

21 A kötegelt feldolgozás rendszerei (Simple Batch) IV. Még jobb megoldás: Spooling (SPOOL - Simultaneous Peripheral Operation On Line) IBM704, 1960. Mialatt egy job végrehajtódik, az operációs rendszer: 1. beolvassa a következő job-ot a kártyaolvasóról a lemezre (job queue) 2. egy előző job által nyomtatni szánt adatokat lemezről printerre továbbítja, Ennek következtében drasztikusan növekszik a CPU kihasználtsága! Job pool olyan adatszerkezet, amelynek segítségével az operációs rendszer kiválaszthatja a lemezről a következő job-ot.

22 A kötegelt feldolgozás multiprogramozott rendszerei. (Multiprogramming Batched Systems) Alapelv néhány job (step) futtatható kódja állandóan az operatív memóriában helyezkedik el és készen áll arra, hogy utasításokkal lássa el a CPU-t. Vigyázat Nem párhuzamosan futó programokról van szó! Az operációs rendszer valamilyen stratégia szerint adja oda a CPU-t a sorban álló futásra kész programoknak.

23 A multiprogramozás által az operációs rendszerekkel szemben támasztott követelmények: Az I/O-nak az operációs rendszer részéről történő teljes körű felügyelete. (adat- és programkód-védelem!) Az I/O-t az operációs rendszer nem egyszerűen támogatja, hanem végrehajtásához elkerülhetetlen. Hardver feltételek (kernel/supervisor mode, privileged operations) Memória gazdálkodás a rendszernek fel kell osztania a memóriát a futó job-ok között. Hardver feltételek (kernel/supervisor mode, privileged operations, segmentation) CPU ütemezés a rendszernek választani kell tudni a futásra kész job-ok között. Eszközökhöz való hozzárendelés. Nem jut minden job-nak printer, lemez, stb.

24 Időosztásos (TS - time-sharing) rendszerek interaktivitás CTSS Compatible Time Sharing System A kötegelt rendszerek hátránya: nincs interaktivitás! TS esetén a CPU váltakozva áll olyan job-oknak a rendelkezésére, amelyek a memóriában, vagy lemezen találhatók. (Természetesen a CPU-t csak olyan job kaphatja meg, amely éppen a memóriában van.) Egy job a lemezről a memóriába, ill. a memóriából a lemezre betölthető vagy kimenthető az ütemezési stratégiának (időosztás!) megfelelően. Új fogalom: folyam (process)! A rendszer és a felhasználó között on-line kommunikációt tételezünk fel; ha az operációs rendszer befejezi egy parancs végrehajtását, a következő vezérlő utasítás -t nem a kártyaolvasóról, hanem a felhasználó klaviatúrájáról várja. Egy adatokat és utasításkódokat tároló on-line fájl-rendszer (file system) kell, hogy a felhasználók rendelkezésére álljon.

25 Személyi számítógépes rendszerek. Személyi számítógépek (PC- Personal Computer) a teljes számítógép rendszer egy egyszerű felhasználónak kizárólagos rendelkezésére áll. Tipikus konfigurációjú I/O berendezések klaviatúra (keyboard), egér (mouse), képernyő kijelző (monitor, screen), kis(ebb) teljesítményű nyomtató (printer). Előtérben a felhasználó (személy) kényelme és felelőssége. Több esetben adaptál eredetileg nagygépes operációs rendszerekre kidolgozott információ technológiai megoldásokat (rendszer migráció). Példa: MULTICS (MIT,1965-70) UNIX (Bell Labs, 1970) POSIX szabvány (IEEE), ahol MILTICS MULTiplexed Infromation and Computing Service, IEEE- Institute of Electrical and Electronics Engineers, UNIX- eredetileg UNICS, azaz UNIplexed Information and Computing System. A felhasználó személy sokszor a számítógép kizárólagos tulajdonosa, felhasználója, és így nincs szüksége fejlett CPU kiszolgáló és adatvédő szolgáltatásokra.

26 Párhuzamos rendszerek / multiprocesszoros rendszerek. Egynél több (szoros kommunikációs kapcsolatban levő) CPU-val. Szorosan kapcsolt/csatolt rendszerek a processzorok közösen használják a memóriát és a rendszer órát. A kommunikáció a közös memória segítségével történik. Párhuzamos rendszerek előnyei: Megnövelt átbocsátó képesség, magasabb teljesítmény Gazdaságosság Növekvő megbízhatóság

27 Szimmetrikus multiprocesszálás Minden egyes processzor az operációs rendszer azonos változatát (másolatát) futtatja. Ezek egymással szükség szerint kommunikálhatnak. Sok processz futhat egyszerre teljesítménycsökkenés nélkül (I/O problémák, ütemezés) Aszimmetrikus multiprocesszálás (master-slave modell) Minden egyes processzor a hozzárendelt specifikus feladatot (task) oldja meg. A futtatandó feladatot a mester határozza meg! Ezek a taskok egymással szükség szerint kommunikálhatnak. Nagyon nagy rendszerekben elterjedtebb megoldás.

28 Elosztott rendszerek a számításokat több processzor között osztják meg. Lazán kapcsolt/csatolt rendszerek a processzorok saját lokális memóriát és rendszer órát használnak. A kommunikáció nagy kapacitású adatvonalak (korábban telefonvonalak) segítségével történik. Új fogalmak: LAN (Local Area Network), site (hely, telek), node (csomópont). Elosztott rendszerek előnyei: Erőforrás megosztás (printerek, adattárolók, stb.), Számítási teljesítmény növelés, Túlterhelés védelem (load sharing), Növekvő megbízhatóság, Kommunikáció (e-mail, Web-alkalmazások, stb.)

29 Valós idejű (real-time) rendszerek Gyakran úgy jelenik meg, mint valamilyen dedikált alkalmazás (pl. tudományos kísérlet támogatása, orvosi képfeldolgozás, ipari kontroll, kijelző rendszerek, forgalomirányítás, stb.) irányító-felügyelő rendszere. A kiszolgálás azonnal megkezdődik! Jól definiált, rögzített idejű korlátozások. Hard ("merev" valós idejű) rendszerek. A másodlagos tár korlátozott, vagy teljesen hiányzik; az adatokat az operatív memóriában (RAM), vagy akár ROM-ban tárolják. Példa: robotizált gyártás (hegesztés, festés, szerelés). Szoft ("puha" valós idejű) rendszerek. Korlátozott szolgáltató programok az ipari kontroll, a robotika területén. A fejlett operációs rendszer szolgáltatásokat igénylő alkalmazásoknál igen hasznosak. Példa: VxWorks, QNX multimédiás operációs rendszerek.

30 Beépített (built-in) rendszerek Korlátozott képességű speciális feladatok végrehajtására fejlesztett rendszerek. Sokszor JVM (Java Virtual Machine) és Java applet (kis program) alapúak. Területek: PDA Personal Digital Assistant, GPS Global Positioning System, Mobil telefonok / kommunikátorok / SMART eszközök, Videó- és fényképezőgépek, bankkártyák, ipod/ipad- féle eszközök, stb. Példák: PalmOS, Windows CE (Consumer Electronics), Android, stb.