Üzleti környezetre k optimalizált lt rendszerek SANB107 IBM System i IBM System p rendszerének ismertetése Csütörtökönként 12:45-től blokkosítva A102-es teremben http://morpheus.pte.hu/~varady/ Várady Géza varady@morpheus.pte.hu 1 Operációs rendszerek MINB240 V3+2+0-5 kredit KF Nagyváradi Anett 0. előadás Bevezetés Félévi követelmények 2 db zárthelyi dolgozat gyakorlati órákon gyakorlati és elméleti anyagból pótlás: egyszeri - félév utolsó hetében vagy vizsgaidőszakban minimum követelmény: 50% (külön-külön, zh-nként) vizsgajegybe beszámítás: 30%-ban Vizsgaidőszakban vizsga zh teljesítendő: minimum 50% 3 1
Előadás és gyakorlatok Az előadások és gyakorlatok látogatása kötelező! 4 Jegyzet Előadás segédlet elérhető: http://e-oktat.pmmf.hu CSAK VÁZLAT!!! Kérem kinyomtatva előadásra elhozni az anyagot jegyzetoldal. 5 Ajánlott irodalom A.TANENBAUM: Operációs rendszerek, Panem Kiadó Kft., 2007 Kóczi Annamária, Kondorosi Károly: Operációs rendszerek mérnöki megközelítésben, Panem Kiadó Kft., 2004 6 2
Félévi tematika hét 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 előadás Követelményrendszer ismertetése, bevezetés Definíció, történet, fajták, strukturák, processzusok Szálak, IPC Ütemezés Deadlock es algoritmusok Memória kezelés 1 Memória kezelés 2 Input Output 1 Input Output 2 Tavaszi szünet File rendszerek felépítése File rendszerek, CD-ROM, FAT, NTFS, stb Biztonság Egyéb operációs rendszerek Összefoglalás gyakorlat - általásos ismeretek, putty jogosultságrendszer linux alatt fájlműveletek vi szűrés, keresés zh1 reguláris kifejezések sed Tavaszi szünet awk shell scriptek shell scriptek zh2 pótzh 7 Mikrogép architektúra 8 PC architektúra 9 3
Memória hierarchia 10 Merevlemez 11 Számítógép rendszer Processzor Belső memória Lemezek Hálózati csatolók Nyomtatók Egyéb I/O eszközök Nyers hardver fölötti szoftver réteg Virtuális gép Operációs rendszer 12 4
Számítógép rendszer 13 Operációs rendszer Legalapvetőbb rendszerprogram kezeli a rendszer erőforrásait, alapot biztosít a felhasználói programok írásához 14 Mi is az operációs rendszer? Virtuális gép ill. erőforrás kezelő Felülről - lefelé Felhasználó felé olyan felületet nyújtson, melyet könnyebb programozni, mint a mögöttes hardvert Alulról - felfelé A processzorokért, memóriákért, I/O eszközökért versenyző programok számára szabályos, felügyelt módon biztosítsa ezeket 15 5
Történet - lyukkártya Joseph Jacquard (1752-1834) lyukkártya vezérlésű szövőgépe 16 Történet - első digitális sz.gép Charles Babbage (1832) Ada Lovelace (Ada Byron) 17 Történet elektromos leolvasás Herman Hollerith (1860-1929) lyukkártyák elektromos leolvasása 18 6
Történet - Első generáció Első generáció (1945-55) Vákuumcsövek, kapcsolótáblák Vákuumcső - meghibásodás Programozás :kapcsolótáblákkal Abszolút gépi nyelv Operációs rendszer fogalma ismeretlen 1950-es évekre lyukkártya 19 Lyukkártya 20 Digitalizálódás 21 7
Történet - Második generáció Második generáció (1955-65) Tranzisztorok és kötegelt rendszerek Feladat futtatása: programozó papírra írta a programot ezt kártyákra lyukasztották kártyacsomagot a beviteli terembe vitték átadták az egyik kezelőnek mikor a gép végzett, az eredményt a kiviteli teremben kinyomtatta 22 Kötegelt rendszerek Gyűjtsünk össze egy kötegre való feladatot Egy olcsóbb géppel olvastassuk mágnesszalagra IBM 1401 Másik drágább, gyorsabb géppel végeztessük el a számításokat IBM 7094 23 Bemenetei feladat Tipikus bemenetei feladat (batch program) szerkezete 24 8
Új korszak a tranzisztor Megbízható működés BM Stretch: 50,000 ops/sec, 3.5 millió $ Programozási nyelvek: FORTRAN, assembly Tipikus operációs rendszerek FMS (Fortran Monitor System) IBSYS 25 Történet - Harmadik generáció Harmadik generáció (1965-80) Integrált áramkörök és multiprogramozás IBM System/360 Új módszerek multiprogramozás spooling 26 Multiprogramozás és spooling Szalagra várakozás. I/O várakozás üresjárat Multiprogramozás Háttértárolás - Spooling technika (Simultaneous Peripherial Operatiopn On Line) 27 9
Multiprogramozás alapelve 28 Még pár újdonság Időosztásos rendszer kialakulása CTSS (M.I.T.) Számítógép szolgáltató fejlesztése MULTICS Miniszámítógépek Ken Thompson UNIX IEEE - POSIX szabvány 29 POSIX Portable Operating System Interface rendszerinterfész definiálása, mely alkalmas hordozható alkalmazások készítésére ~200 C függvény segítségével adja meg Többfelhasználós több folyamat futtatására alkalmas környezet (egyedi azonosító) Hierarchikus állományrendszer Védelmi rendszer felhasználók adatainak elérését védelmi rendszer szabályozza 30 10
Történet - Negyedik generáció Negyedik generáció (1980-tól) Személyi számítógépek LSI (Large Scale Integration) Mikroprocesszor Kezdetben kép op.rsz. uralta a piacot: Microsoft DOS UNIX Hálózati operációs rendszerek, osztott operációs rendszerek fejlődése 31 Personal Computer PC 1970-es évek: Apple, Commodore, Radio Shack 1981: IBM PC 1984: Macintosh (Mac 1984 commercial) 1970 1977 1979 1981 1984 Datapoint 2200 Apple II Altair IBM5150 Apple Machintos 32 Merre tartunk? Mooretörvénye 33 11
Fogalmak Rendszerhívások kiterjesztett utasítások Az op.rsz. és a felhasználói programok közötti kapcsolatot biztosító kiterjesztett utasításkészlet Processzus egy végrehajtás alatt lévő program Címtartomány Regiszterkészlet Processzustáblázat 34 Processzusok Program, adat, verem szegmensekből áll 35 Rendszerhívások Programok és az op.rsz. közötti szolgáltatások igénybevételének eszközei. Speciális gépi utasítás trap (csapda) - paraméterátadás -HW működési mód váltás - paraméterek másolása - elágazása a hívott szolgáltatáshoz - visszaadott paraméterek másolása - visszatérés a hívóhoz 36 12
Alapvető processzuskezelő rendszerhívások Processzust létrehozó és megszűntető rendszerhívások Pl.: parancsértelmező / shell Gyermekprocesszusok Processzusok közötti kommunikáció Memóriakezelő rendszerhívások Fájlrendszerrel kapcsolatos rendszerhívások 37 Fájlok Rendszerhívások szükségesek: fájlok létrehozására, törlésére, olvasására, írására Katalógus / könyvtár / directory 38 Hierarchikus felépítés Processzushierarchia: nem túl mély (max. 3 szint) rövid életű (percek) korlátozott vezérlés, elérés munkakatalógus Fájlhierarchia: több szint is lehet hosszú életű (évek) majdnem minden felhasználó számára van jogosultsági rendszer útvonalnévvel azonosítható 39 13
Unix rendszerek sajátossága Katalógusvédelem: 9 bites bináris védelmi kód - rwx rw- r-- (user, group, other) Fájl írása: open jogok ellenőrzése fájlleíró hibakód 40 Mountolás Fájlrendszerek felcsatolása a könyvtárstruktúrába 41 Pipe Specifikus fájlok Blokk specifikus fájl (lemezek) Karakter specifikus fájl (nyomtatók, modemek) Két processzus összeköttetésére alkalmas fájl 42 14
Parancsértelmező -shell Nem az operációs rendszer része! 43 Operációs rendszerek belső szerkezete Monolitikus rendszerek Rétegelt rendszerek Virtuális gépek Kliens-szerver modell - mikrokernel 44 Monolitikus rendszer Legelterjedtebb szervezés Struktúrája a struktúrálatlanság Az op.rsz. eljárások gyűjteménye bármelyik szabadon hívhatja a másikat 45 15
Monolitikus rendszer 46 Rétegelt rendszerek az op.rsz. rétegekből álló hierarchia is lehet minden réteg az alatta lévőre épül pl.: T.H.E. (Technische Hogeschool indhoven) Dijkstra 1968. MULTICS Réteg 5 4 3 2 1 0 Feladat A gépépkezelő Fehsználói programok I/O kezelése Gépkezelő - processzuskommunikáció Memória és dobkezelés Proesszor hozzárendelés és multiprogramozás 47 Rétegelt rendszerek 48 16
virtuális gépmonitor Virtuális gépek 49 Kliens-szerver modell Mikrokernel Op.rsz. részek magasabb rétegbe helyezés Az op rsz több funkcióját felhasználói processzusokra bízzák A kernelnek csak a kliens és szerver közötti kommunikációt kell kezelnie 50 Kliens-szerver modell Mikrokernel 51 17
Unix - Linux 1960. többfelhasználós operációs rendszer kifejlesztése 1969. Ken Thompson a UNIX kezdetleges változatának a kifejlesztése C nyelvre való áttérés Modularizálás 1971-ben publikálták az első UNIX kézikönyvet Berkeley Egyetem 1974-ben jutott hozzá egy UNIXlicenszhez 52 rejtett 53 BSD Berkeley Software Distribution 1977. Bill Joy először kiegészítő Sixth Edition Unix-hoz (1BSD) Majd önálló, teljes rendszer legfőbb komponense a [Pascal programming language Pascal]] fordító 1978. 2BSD két új program Vi szövegszerkesztő C shell - parancsértelmező 54 18
Sun Solaris Solaris Operating System SUN Microsystems cég által kifejlesztett Korábbi verziók: SunOS (BSD Unix-on) Elsődlegesen SPARC processzorokra írták Solaris-x86 PC-re 55 IBM AIX Advanced Interactive executive IBM fejlesztés (1986) IBM POWER vagy PowerPC architektúrára JFS2 (Journaled File System) fájlrendszer bevezetése 56 I5/OS iseries vagy AS/400 néven is ismert 1988 IBM System i rendszereken használt operációs rendszer architektúrája 128 bitre van tervezve struktúrája nem processzorközpontú, hanem alkalmazáscentrikus 57 19
Windows ablaktechnikán alapuló rendszer mindent szabad, kivéve néhány dolgot elv alapján épültek fel felhasználói programok a teljes rsz-t elérték biztonság hiánya New Technology fájl szintű Hozzáférés Vezérlő Lista alapú jogosultságkezelés 58 Windows történet 1985 Windows 1.0 1990 Windows 3.0 (a legsikerültebb verzió) 1992 Windows 3.1 (ez az első Windows, ami IBM XT-ken már nem működik) 1993 Windows NT (New Technology, ez volt az első önálló operációs rendszer, ami nem igényelt DOS-t maga alá) 1994 Windows 3.11 (for Workgroups, hálózati támogatottsággal) 1995 Windows 95 (önálló operációs rendszer, CD-n is forgalmazták) 1996 Windows CE (laptopokra és palmtopokra) 1998 Windows 98 (sok 95-ös hiba kijavítása, főleg az Internetes lehetőségei) 1999 Windows Me 2000 Windows 2000. (NT és 9x vonalak összefonása) 2001 Windows XP (=experience - élmény) A Stabil NT/2000-es folytatása 2007 Windows Vista 59 2010 Windows 7 munkanével (hipervizor technika ) OS/2 Operating System/2 (1988) IBM és Microsoft által fejlesztett rendszer Az IBM Personal System/2 rendszerekre HPFS (High Performance File System) fájlrendszer Hosszú fájlnevek Kis és nagybetűérzékeny Hatékonyabb lemezkihasználtság 60 20
Novell Netware Hálózati operációs rendszer (1983) Diszkmegosztás helyett fájlmegosztás Különféle, különálló hálózatok egy egységes hálózattá való összeintegrálása Bármikor, bárhonnan elérhető a különféle hálózati platformokról asztali operációs rendszerekről vezeték nélküli eszközökről Moduláris felépítés 61 Összefoglalás Vizsgálat kétféle nézőpontból Erőforráskezelők Kiterjesztett gépek Történet Először csak gépkezelő helyettesítése Korszerű, multiprogramozható rendszerek Minden operációs rendszer lelke: Megvalósított rendszerhívások készlete Többféleképpen struktúrálhatóak Monolitkus, rétegelt, virtuális gép, kliens szerver modell 62 21