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 gyakorlati órákon gyakorlati és elméleti anyagból pótlás: félév végén vagy vizsgaidőszakban minimum követelmény: 50% zhnként vizsgajegybe beszámítás 30%-ban Előadás segédlet elérhető: http://e-oktat.pmmf.hu http://morpheus.pte.hu CSAK VÁZLAT!!! 2
Könyvajánló • 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 3
1
Félévi tematika hét 1
dátum
előadás
2008.09.09
Követelményrendszer ismertetése, bevezetés
gyakorlat -
2
2008.09.16
Definíció, történet, fajták, strukturák, processzusok
általásos ismeretek, putty
3
2008.09.23
Szálak, IPC
jogosultságrendszer linux alatt
4
2008.09.30
Ütemezés
fájlműveletek
5
2008.10.07
Deadlock es algoritmusok
vi
6
2008.10.14
Memória kezelés 1
szűrés, keresés
7
2008.10.21
Memória kezelés 2
zh1
8
2008.10.28
Őszi szünet
Őszi szünet
9
2008.11.04
Input Output 1
reguláris kifejezések
10
2008.11.11
Input Output 2
sed
11
2008.11.18
File rendszerek felépítése
awk
12
2008.11.25
File rendszerek, CD-ROM, FAT, NTFS, stb
shell scriptek
13
2008.12.02
Biztonság
zh2
14
2008.12.09
Egyéb operációs rendszerek
shell scriptek
15
2008.12.16
Összefoglalás
pótzh 4
Mikrogép architektúra
5
PC architektúra
6
2
Memória hierarchia
7
Merevlemez
8
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
9
3
Számítógép rendszer
10
Operációs rendszer • Legalapvetőbb rendszerprogram kezeli a rendszer erőforrásait, alapot biztosít a felhasználói programok írásához
11
Mi is az operációs rendszer? Virtuális gép
ill.
erőforrás kezelő
Alulról - felfelé Felülről - lefelé Felhasználó felé olyan A processzorokért, memóriákért, I/O felületet nyújtson, eszközökért versenyző melyet könnyebb programok számára programozni, mint a szabályos, felügyelt mögöttes hardvert módon biztosítsa ezeket 12
4
Történet - lyukkártya • Joseph Jacquard (1752-1834)
lyukkártya vezérlésű szövőgépe 13
Történet - első digitális sz.gép • Charles Babbage (1832) • Ada Lovelace (Ada Byron)
14
Történet – elektromos leolvasás • Herman Hollerith (1860-1929) lyukkártyák elektromos leolvasása
15
5
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 16
Lyukkártya
17
Digitalizálódás
18
6
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 19
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
20
Bemenetei feladat Tipikus bemenetei feladat (batch program) szerkezete
21
7
Ú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 22
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 23
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) 24
8
Multiprogramozás alapelve
25
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 26
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 27
9
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 28
Personal Computer • PC 1970-es évek: Apple, Commodore, Radio Shack • 1981: IBM PC • 1984: Macintosh (Mac 1984 commercial)
1970 Datapoint 2200
1977 Apple II
1979 Altair
1981 IBM5150
1984 Apple Machintos 29
Merre tartunk? Mooretörvénye
30
10
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
31
Processzusok • Program, adat, verem szegmensekből áll
32
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 33
11
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 34
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
35
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ó 36
12
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 37
Mountolás • Fájlrendszerek felcsatolása a könyvtárstruktúrába
38
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
39
13
Parancsértelmező - shell Nem az operációs rendszer része!
40
Operációs rendszerek belső szerkezete • • • •
Monolitikus rendszerek Rétegelt rendszerek Virtuális gépek Kliens-szerver modell - mikrokernel
41
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
42
14
Monolitikus rendszer
43
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. Réteg
MULTICS
Feladat
5
A gépépkezelő
4
Fehsználói programok
3
I/O kezelése
2
Gépkezelő - processzuskommunikáció
1
Memória és dobkezelés
0
Proesszor hozzárendelés és multiprogramozás
44
Rétegelt rendszerek
45
15
Virtuális gépek • virtuális gépmonitor
46
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
47
Kliens-szerver modell Mikrokernel
48
16
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 49
• rejtett
50
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ő 51
17
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
52
IBM AIX Advanced Interactive eXecutive • IBM fejlesztés (1986) • IBM POWER vagy PowerPC architektúrára • JFS2 (Journaled File System) fájlrendszer bevezetése
53
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
54
18
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 55
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 56 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 57
19
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 58
Ö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 59
20