operacios-rendszerek

365
Created by XMLmind XSL-FO Converter. Operációs rendszerek mérnöki megközelítésben Benyó, Balázs Fék, Márk Kiss, István Kóczy, Annamária Kondorosi, Károly Mészáros, Tamás Román, Gyula Szeberényi, Imre Sziray, József

Upload: malik-jozsef-zoltan

Post on 16-Dec-2015

19 views

Category:

Documents


6 download

DESCRIPTION

szamtech

TRANSCRIPT

  • Created by XMLmind XSL-FO Converter.

    Opercis rendszerek mrnki megkzeltsben

    Beny, Balzs Fk, Mrk

    Kiss, Istvn Kczy, Annamria Kondorosi, Kroly Mszros, Tams

    Romn, Gyula Szebernyi, Imre

    Sziray, Jzsef

  • Created by XMLmind XSL-FO Converter.

    Opercis rendszerek mrnki megkzeltsben rta Beny, Balzs, Fk, Mrk, Kiss, Istvn, Kczy, Annamria, Kondorosi, Kroly, Mszros, Tams, Romn, Gyula, Szebernyi, Imre, s Sziray, Jzsef

    Ez a knyv a Mveldsi s Kzoktatsi Minisztrium tmogatsval a Felsoktatsi Plyzatok Irodja ltal lebonyoltott felsoktatsi tanknyvtmogatsi program keretben jelent meg. Szerzi jog 2000 Panem Kiad

  • iii Created by XMLmind XSL-FO Converter.

    Tartalom

    1. Tmogatk ...................................................................................................................................... 1 2. Elsz ............................................................................................................................................. 2 3. 1. Bevezets .................................................................................................................................... 4

    1. 1.1. Mit neveznk opercis rendszernek? ........................................................................... 4 2. 1.2. Az opercis rendszerek trtnete .................................................................................. 5

    2.1. 1.2.1. Korai rendszerek ............................................................................................. 6 2.2. 1.2.2. Batch rendszerek ............................................................................................. 6 2.3. 1.2.3. Multiprogramozott rendszerek ........................................................................ 9 2.4. 1.2.4. Idosztsos rendszerek ................................................................................. 10 2.5. 1.2.5. Szemlyi szmtgpek ................................................................................ 10 2.6. 1.2.6. Elosztott rendszerek ...................................................................................... 11 2.7. 1.2.7. Valsidej rendszerek ................................................................................... 12 2.8. 1.2.8. Nylt rendszerek ............................................................................................ 12 2.9. 1.2.9. Napjaink rendszerei ...................................................................................... 12

    3. 1.3. Rendszermodell s rendszerarchitektra ...................................................................... 13 3.1. 1.3.1. Az opercis rendszer s krnyezete ............................................................ 13 3.2. 1.3.2. Funkcik ....................................................................................................... 14 3.3. 1.3.3. Csatlakozsi felletek ................................................................................... 14

    3.3.1. 1.3.3.1. Kezeli (opertori) fellet (Operator Interface, User Interface) .... 14 3.3.2. 1.3.3.2. Alkalmazsi (programozi) fellet (Application Interface, Program Interface) .............................................................................................................. 16 3.3.3. 1.3.3.3. Hardverfellet (Hardware Interface) ............................................. 17

    3.4. 1.3.4. Szmtgp-architektrk ............................................................................. 18 3.4.1. 1.3.4.1. Egyszer mikrogp ........................................................................ 18 3.4.2. 1.3.4.2. Jellegzetes szemlyi szmtgp ................................................... 19 3.4.3. 1.3.4.3. Szuperszmtgp ......................................................................... 19

    3.5. 1.3.5. Bels szerkezet ............................................................................................. 20 3.5.1. 1.3.5.1. Rtegek s modulok ...................................................................... 21 3.5.2. 1.3.5.2. Tipikus modulok ........................................................................... 22 3.5.3. 1.3.5.3. Virtulis hardver ............................................................................ 23 3.5.4. 1.3.5.4. Kliensszerver szerkezet ............................................................... 24

    3.6. 1.3.6. Mkds ....................................................................................................... 24 3.6.1. 1.3.6.1. Rendszerhvsok kezelse ............................................................. 25 3.6.2. 1.3.6.2. Be-/kivitel vgrehajtsa ................................................................. 26 3.6.3. 1.3.6.3. Kezeli parancsok ......................................................................... 29 3.6.4. 1.3.6.4. Kls megszaktsok kezelse ...................................................... 30 3.6.5. 1.3.6.5. Idmrs ........................................................................................ 30 3.6.6. 1.3.6.6. Hibamegszaktsok kezelse (kivtelkezels) ............................... 30 3.6.7. 1.3.6.7. Rendszerindts s lells .............................................................. 31

    4. 2. Az opercis rendszer mint absztrakt, virtulis gp ................................................................. 33 1. 2.1. Folyamatok s szlak .................................................................................................. 33 2. 2.2. Folyamatokbl ll rendszerek .................................................................................... 35

    2.1. 2.2.1. Folyamatok ltrehozsnak indokai .............................................................. 35 2.2. 2.2.2. Fggetlen, verseng s egyttmkd folyamatok ....................................... 36 2.3. 2.2.3. Folyamatok szletse s halla ..................................................................... 37 2.4. 2.2.4. Folyamatok egyttmkdse ........................................................................ 37

    2.4.1. 2.2.4.1. Egyttmkds kzs memrin ................................................. 37 2.4.2. 2.2.4.2. Egyttmkds zenetvltssal .................................................... 38

    2.5. 2.2.5. Folyamatok szinkronizcija ........................................................................ 39 2.5.1. 2.2.5.1. Megoldsok a PRAM-modell keretei kztt (szoftvermegoldsok) 40 2.5.2. 2.2.5.2. A PRAM-modell kiterjesztse ....................................................... 42 2.5.3. 2.2.5.3. Szinkronizcis eszkzk az opercis rendszer szintjn ............. 42

    2.6. 2.2.6. Folyamatok kommunikcija ....................................................................... 44 2.6.1. 2.2.6.1. A partner megnevezse ................................................................. 44 2.6.2. 2.2.6.2. Szemantikai konzisztencia ............................................................ 47 2.6.3. 2.2.6.3. Jrulkos (implicit) szinkronizci ............................................... 48

  • Opercis rendszerek mrnki megkzeltsben

    iv Created by XMLmind XSL-FO Converter.

    2.7. 2.2.7. Holtpont ........................................................................................................ 48 2.7.1. 2.2.7.1. Mi a holtpont? ............................................................................... 48 2.7.2. 2.2.7.2. Holtpont erforrsokrt verseng rendszerekben .......................... 49 2.7.3. 2.2.7.3. A strucc algoritmus ....................................................................... 51 2.7.4. 2.2.7.4. A holtpont szlelse ...................................................................... 52 2.7.5. 2.2.7.5. A holtpont feloldsa ...................................................................... 53 2.7.6. 2.2.7.6. A holtpont megelzse .................................................................. 54 2.7.7. 2.2.7.7. A holtpont elkerlse .................................................................... 55 2.7.8. 2.2.7.8. Kombinlt stratgik ..................................................................... 58 2.7.9. 2.2.7.9. Kommunikcis holtpontok .......................................................... 58

    2.8. 2.2.8. hezs ........................................................................................................... 59 2.9. 2.2.9. Klasszikus konkurens problmk ................................................................. 59

    2.9.1. 2.2.9.1. Termelfogyaszt problma ........................................................ 59 2.9.2. 2.2.9.2. rkolvask problmja ............................................................... 60 2.9.3. 2.2.9.3. Az tkez filozfusok problmja ................................................. 61 2.9.4. 2.2.9.4. Adatfolyamok illesztse ................................................................ 62

    2.10. 2.2.10. Folyamatokbl ll rendszerek lersa nyelvi szinten .............................. 62 2.10.1. 2.2.10.1. A prhuzamossg lersa ........................................................... 62 2.10.2. 2.2.10.2. Az egyttmkds nyelvi modelljei .......................................... 63

    3. 2.3. Trak ............................................................................................................................ 64 3.1. 2.3.1. Trhierarchia ................................................................................................. 65 3.2. 2.3.2. A logikai memria ........................................................................................ 66 3.3. 2.3.3. A httrtr-fjlok .......................................................................................... 66

    3.3.1. 2.3.3.1. Fjlmodellek .................................................................................. 66 3.3.2. 2.3.3.2. Fjlmveletek ................................................................................ 67

    3.4. 2.3.4. Trak tulajdonsgai ....................................................................................... 67 3.4.1. 2.3.4.1. Mkdsi sebessg ........................................................................ 67 3.4.2. 2.3.4.2. Cmezhet adategysg ................................................................... 68 3.4.3. 2.3.4.3. Trolsi biztonsg ......................................................................... 68

    4. 2.4. Kszlkek s kls kapcsolatok ................................................................................. 68 4.1. 2.4.1. A kls eszkzk f tpusai .......................................................................... 68 4.2. 2.4.2. Kszlkmodell az alkalmazi felleten ...................................................... 69

    4.2.1. 2.4.2.1. Egyszer be-/kivitel ..................................................................... 70 4.2.2. 2.4.2.2. Fjlmveletek ................................................................................ 70 4.2.3. 2.4.2.3. Grafikus eszkzk kezelse ........................................................... 71 4.2.4. 2.4.2.4. Terminlkezels ............................................................................ 71 4.2.5. 2.4.2.5. Hlzati kapcsolatok kezelse ....................................................... 71

    4.3. 2.4.3. Kszlkmodell a kezeli felleten .............................................................. 71 5. 2.5. Vdelem s biztonsg ................................................................................................... 72

    5.1. 2.5.1. Vdelem ........................................................................................................ 72 5.1.1. 2.5.1.1. Vdelmi tartomnyok .................................................................... 72 5.1.2. 2.5.1.2. Elrsi mtrix brzolsa s kezelse ............................................ 73

    5.2. 2.5.2. Biztonsg ...................................................................................................... 74 5.2.1. 2.5.2.1. A felhasznlk azonostsa ........................................................... 75 5.2.2. 2.5.2.2. A rendszer biztonsgt nvel ltalnos mdszerek ..................... 76

    5. 3. Multiprogramozott opercis rendszerek ................................................................................. 78 1. 3.1. Bevezets ..................................................................................................................... 78 2. 3.2. A szmtgp-architektra ........................................................................................... 79

    2.1. 3.2.1. Az egyprocesszoros von Neumann struktrj szmtgp-architektra ..... 79 2.1.1. 3.2.1.1. Bekapcsolsi folyamat ................................................................... 79 2.1.2. 3.2.1.2. Megszaktsi rendszer ................................................................... 80 2.1.3. 3.2.1.3. B/K-struktra ................................................................................. 80 2.1.4. 3.2.1.4. Kzvetlen memria hozzfrs, DMA .......................................... 80 2.1.5. 3.2.1.5. Trak ............................................................................................. 81 2.1.6. 3.2.1.6. Vdelem ........................................................................................ 82

    2.2. 3.2.2. Tbbprocesszoros, szorosan csatolt szmtgprendszerek .......................... 82 3. 3.3. Folyamatkezels ........................................................................................................... 83

    3.1. 3.3.1. A folyamatmodell lekpezse a fizikai eszkzkre ...................................... 83 3.1.1. 3.3.1.1. A mkds alapjai ......................................................................... 84 3.1.2. 3.3.1.2. Sorllsi modell ............................................................................. 85

  • Opercis rendszerek mrnki megkzeltsben

    v Created by XMLmind XSL-FO Converter.

    3.1.3. 3.3.1.3. llapotmodell ................................................................................ 86 3.1.4. 3.3.1.4. Egy megvalstsi sma ................................................................ 88 3.1.5. 3.3.1.5. Ttlen ciklusok kikszblse ....................................................... 90

    3.2. 3.3.2. Processzortemezs ...................................................................................... 91 3.2.1. 3.3.2.1. Az temezsi algoritmusok sszehasonltsa ................................ 91 3.2.2. 3.3.2.2. Az temezsi algoritmusokkal szemben tmasztott kvetelmnyek 92 3.2.3. 3.3.2.3. temezsi algoritmusok ................................................................ 93 3.2.4. 3.3.2.4. Az temezsi algoritmusok jsgnak rtkelse ...................... 96

    3.3. 3.3.3. temezs tbbprocesszoros rendszerekben .................................................. 97 4. 3.4. Trkezels .................................................................................................................... 97

    4.1. 3.4.1. A ftr megosztsa a folyamatok kztt ....................................................... 97 4.1.1. 3.4.1.1. A program cmeinek ktse ........................................................... 97 4.1.2. 3.4.1.2. Trszervezsi mdszerek ............................................................. 100

    4.2. 3.4.2. Virtulis trkezels ..................................................................................... 109 4.2.1. 3.4.2.1. A mkds alapjai ....................................................................... 110 4.2.2. 3.4.2.2. Betltend lap kivlasztsa (fetch-strategy) ................................ 112 4.2.3. 3.4.2.3. Lapcsere stratgia (replacement strategy) ................................... 112 4.2.4. 3.4.2.4. Gazdlkods a fizikai trral ......................................................... 115 4.2.5. 3.4.2.5. Egyb tnyezk ........................................................................... 118

    4.3. 3.4.3. Fjlrendszerek ............................................................................................. 119 4.4. 3.4.3.1. Az llomnyok trolsa a lemezen .......................................................... 120

    4.4.1. 3.4.3.2. A fjlok szerkezete ...................................................................... 122 4.4.2. 3.4.3.3. Knyvtrak .................................................................................. 123 4.4.3. 3.4.3.4. Mveletek .................................................................................... 124 4.4.4. 3.4.3.5. Osztott fjlkezels ....................................................................... 124 4.4.5. 3.4.3.6. A hozzfrs szablyozsa .......................................................... 124

    5. 3.5. Kszlkkezels ......................................................................................................... 125 5.1. 3.5.1. A kernel B/K-alrendszere ........................................................................... 126 5.2. 3.5.2. Httrtrak kezelse .................................................................................... 127

    5.2.1. 3.5.2.1. A lemezegysg fizikai szervezse ............................................... 128 5.2.2. 3.5.2.2. A lemezmveletek temezse ..................................................... 129 5.2.3. 3.5.2.3. Egyb szervezsi elvek a teljestmny nvelsre ...................... 130 5.2.4. 3.5.2.4. Az adattrols megbzhatsga ................................................... 131

    6. 3.6. Opercis rendszerek kezeli fellete ........................................................................ 131 6.1. 3.6.1. Az X Window-rendszer .............................................................................. 133

    6.1.1. 3.6.1.1. Az X protokoll ............................................................................. 133 6.1.2. 3.6.1.2. Az X Window-rendszer koncepcija .......................................... 134 6.1.3. 3.6.1.3. Ablakkezels ............................................................................... 134 6.1.4. 3.6.1.4. Bemeneti eszkzk kezelse ....................................................... 134 6.1.5. 3.6.1.5. Megjelent eszkz kezelse ....................................................... 134 6.1.6. 3.6.1.6. A kezeli fellet elemei ............................................................... 134

    6. 4. Hlzati s elosztott rendszerek .............................................................................................. 136 1. 4.1. Bevezets ................................................................................................................... 136 2. 4.2. Hlzati architektra .................................................................................................. 137

    2.1. 4.2.1. Alapfogalmak ............................................................................................. 137 2.2. 4.2.2. A hlzatok topolgija .............................................................................. 137 2.3. 4.2.3. A hlzatok tpusai ..................................................................................... 140 2.4. 4.2.4. A hlzati kommunikci rtegei ............................................................... 140 2.5. 4.2.5. Cmzs s forgalomirnyts ....................................................................... 141

    3. 4.3. Hlzati jelleg szolgltatsok ................................................................................... 142 3.1. 4.3.1. Telnet: tvoli terminl ................................................................................. 142

    3.1.1. 4.3.1.1. A Telnet kapcsolat ....................................................................... 142 3.1.2. 4.3.1.2. Szerver- s kliensprogramok ....................................................... 143 3.1.3. 4.3.1.3. A Telnet parancsrtelmez .......................................................... 144

    3.2. 4.3.2. FTP: fjltvitel ............................................................................................ 146 3.2.1. 4.3.2.1. FTP-kapcsolat ............................................................................. 146 3.2.2. 4.3.2.2. FTP kliens- s szerverprogramok ................................................ 146 3.2.3. 4.3.2.3. Az FTP-parancsrtelmez ........................................................... 147

    4. 4.4. Elosztott szolgltatsok .............................................................................................. 148 4.1. 4.4.1. Jellemzk .................................................................................................... 148

  • Opercis rendszerek mrnki megkzeltsben

    vi Created by XMLmind XSL-FO Converter.

    4.1.1. 4.4.1.1. Az elosztott rendszerek legfontosabb jellemzi .......................... 148 4.1.2. 4.4.1.2. Elosztott rendszerek tervezsi szempontjai ................................. 152

    4.2. 4.4.2. Elosztott fjlrendszerek .............................................................................. 157 4.2.1. 4.4.2.1. Az elosztott fjlrendszer szolgltats .......................................... 158 4.2.2. 4.4.2.2. Az llomnyok azonostsa ......................................................... 158 4.2.3. 4.4.2.3. Elnevezsi mdszerek ................................................................. 159 4.2.4. 4.4.2.4. Az gyfelek krseinek kielgtse ............................................. 160 4.2.5. 4.4.2.5. A szolgltat implementcija .................................................... 162 4.2.6. 4.4.2.6. A fjlok tbbszrzse ................................................................ 163

    4.3. 4.4.3. Folyamatkezels ......................................................................................... 163 4.3.1. 4.4.3.1. Kliensszerver-folyamatok ......................................................... 163 4.3.2. 4.4.3.2. Tvoli eljrshvs RPC ........................................................... 164 4.3.3. 4.4.3.3. Szlak alkalmazsnak elnyei ................................................... 166

    4.4. 4.4.4. Idkezels s koordinci elosztott rendszerekben .................................... 167 4.4.1. 4.4.4.1. Idkezels .................................................................................... 167 4.4.2. 4.4.4.2. Elosztott koordinci ................................................................... 172

    4.5. 4.4.5. Elosztott rendszerek biztonsgi krdsei .................................................... 176 4.5.1. 4.4.5.1. Mi a biztonsg? ........................................................................... 176 4.5.2. 4.4.5.2. Kik a tmadk s mik a fenyegetsek? ........................................ 177 4.5.3. 4.4.5.3. A tmads mdszerei .................................................................. 177 4.5.4. 4.4.5.4. Az elosztott biztonsgi rendszer tervezse .................................. 177 4.5.5. 4.4.5.5. Titkosts ..................................................................................... 178 4.5.6. 4.4.5.6. Hozzfrs-szablyozs .............................................................. 179 4.5.7. 4.4.5.7. Azonosts ................................................................................... 179 4.5.8. 4.4.5.8. Azonosts s kulcs sztoszts .................................................... 179 4.5.9. 4.4.5.9. Kerberos: hitelestsi protokoll nylt hlzati rendszerekre ........ 180

    7. 5.UNIX ....................................................................................................................................... 182 1. 5.1. Bevezets ................................................................................................................... 182 2. 5.2. A UNIX rvid trtnete ............................................................................................. 182 3. 5.3. Bels szerkezet s mkds ....................................................................................... 183

    3.1. 5.3.1. Szerkezet ..................................................................................................... 184 3.2. 5.3.2. Folyamatkezels ......................................................................................... 185

    3.2.1. 5.3.2.1. Vgrehajtsi mdok s krnyezetek ............................................ 186 3.2.2. 5.3.2.2. A folyamat absztrakci a folyamatok llapotai s az llapottmeneti grf ............................................................................................................................ 187 3.2.3. 5.3.2.3. Folyamatok krnyezete (kontextus) ............................................ 188 3.2.4. 5.3.2.4. Folyamatok ltrehozsa ............................................................... 190 3.2.5. 5.3.2.5. Folyamatok befejezse (terminls) ............................................ 191

    3.3. 5.3.3. temezs .................................................................................................... 191 3.3.1. 5.3.3.1. Az temezsi algoritmussal szemben tmasztott kvetelmnyek 191 3.3.2. 5.3.3.2. A UNIX-temezs rvid jellemzse ............................................ 192 3.3.3. 5.3.3.3. Folyamatok temezsi prioritsa ................................................. 193 3.3.4. 5.3.3.4. Krnyezetvlts temezskor ...................................................... 195 3.3.5. 5.3.3.5. Adatszerkezetek a folyamatok prioritsnak trolsra .............. 196 3.3.6. 5.3.3.6. Plda az temezs szmolsra ................................................... 196 3.3.7. 5.3.3.7. A UNIX-temezs rtkelse ...................................................... 197 3.3.8. 5.3.3.8. Call-out ........................................................................................ 198

    3.4. 5.3.4. Szinkronizci ............................................................................................ 200 3.4.1. 5.3.4.1. UNIX-jelzsek ............................................................................. 200 3.4.2. 5.3.4.2. Jelzsek keltse ........................................................................... 200 3.4.3. 5.3.4.3. Jelzsek kezelse ......................................................................... 201 3.4.4. 5.3.4.4. Megbzhatatlan jelzsek .............................................................. 202 3.4.5. 5.3.4.5. Megbzhat jelzsek .................................................................... 202 3.4.6. 5.3.4.6. Az SVR3 implementci ............................................................. 203 3.4.7. 5.3.4.7. BSD jelzsmenedzsment ............................................................. 203 3.4.8. 5.3.4.8. Az SVR4 jelzsek ....................................................................... 203 3.4.9. 5.3.4.9. Kivtelkezels ............................................................................. 204 3.4.10. 5.3.4.10. Folyamatcsoportok s terminlkezels .................................... 204

    3.5. 5.3.5. Folyamatok kztti kommunikci (interprocess communication) ............ 205 3.5.1. 5.3.5.1. Jelzsek ....................................................................................... 205

  • Opercis rendszerek mrnki megkzeltsben

    vii Created by XMLmind XSL-FO Converter.

    3.5.2. 5.3.5.2. Csvezetkek ............................................................................... 205 3.5.3. 5.3.5.3. Folyamat-nyomkvets ............................................................... 206 3.5.4. 5.3.5.4. System V IPC .............................................................................. 207 3.5.5. 5.3.5.5. Szemaforok ................................................................................. 207 3.5.6. 5.3.5.6. zenetsorok ................................................................................. 208 3.5.7. 5.3.5.7. Osztott memria .......................................................................... 208 3.5.8. 5.3.5.8. Hlzati kommunikci socket programozs ........................... 209

    3.6. 5.3.6. llomnyrendszer implementcik ............................................................ 213 3.6.1. 5.3.6.1. A System V llomnyrendszer .................................................... 213 3.6.2. 5.3.6.2. A Berkeley FFS llomnyrendszer .............................................. 222 3.6.3. 5.3.6.3. Az llomnyrendszerek megvalstsnak jabb megkzeltse 224 3.6.4. 5.3.6.4. Specilis llomnyrendszerek ..................................................... 226 3.6.5. 5.3.6.5. Modern llomnyrendszerek ....................................................... 227

    3.7. 5.3.7. Teljes folyamatok httrtrra rsa (swapping) ........................................... 228 3.7.1. 5.3.7.1. A httrtr szervezse .................................................................. 229 3.7.2. 5.3.7.2. A httrtr-foglalsi s -felszabadtsi algoritmus ...................... 229 3.7.3. 5.3.7.3. Folyamatok httrtrra rsa ........................................................ 230 3.7.4. 5.3.7.4. A httrtrra rs, illetve a httrtrrl val beolvass szablyai 232 3.7.5. 5.3.7.5. A httrtrra kirand folyamat kivlasztsval kapcsolatos problmk 232

    3.8. 5.3.8. Igny szerinti lapozs ................................................................................. 233 3.8.1. 5.3.8.1. A virtulis memriakezelst tmogat adatszerkezetek .............. 234 3.8.2. 5.3.8.2. A virtulis memriakezelst tmogat adatszerkezetek hasznlata 235 3.8.3. 5.3.8.3. Laphibk ...................................................................................... 237 3.8.4. 5.3.8.4. A laptbla-bejegyzs, a diszk blokk ler s a pfdata egyttes hasznlata 237 3.8.5. 5.3.8.5. A copy-on-write technika s hasznlata ...................................... 239 3.8.6. 5.3.8.6. Hivatkozs bit szimullsa szoftverbl ....................................... 240 3.8.7. 5.3.8.7. A 4.3 BSD virtulis memriakezelse ......................................... 241

    4. 5.4. Hlzati s elosztott szolgltatsok a UNIX-ban ....................................................... 241 4.1. 5.4.1. A TCP/IP protokoll csald .......................................................................... 242 4.2. 5.4.2. A SUN Network File System (NFS) ........................................................... 242

    4.2.1. 5.4.2.1. A SUN NFS jellemz tulajdonsgai ............................................ 242 4.2.2. 5.4.2.2. A SUN NFS rszei ...................................................................... 243 4.2.3. 5.4.2.3. XDR (EXtended Data Representation) protokoll ........................ 244 4.2.4. 5.4.2.4. Az RPC protokoll ........................................................................ 245 4.2.5. 5.4.2.5. Az RPC protokoll mkdse ....................................................... 245 4.2.6. 5.4.2.6. A SUN NFS mkdse ............................................................... 247 4.2.7. 5.4.2.7. Tvoli fjlok elrse NFS hasznlatval ..................................... 247

    5. 5.5. POSIX ........................................................................................................................ 248 5.1. 5.5.1. Alapfogalmak, felpts .............................................................................. 249 5.2. 5.5.2. POSIX krnyezet ........................................................................................ 251 5.3. 5.5.3. Hordozhat alkalmazsok ........................................................................... 251 5.4. 5.5.4. Folyamatkezels ......................................................................................... 253 5.5. 5.5.5. llomnykezels ........................................................................................ 254 5.6. 5.5.6. Jelzskezels ............................................................................................... 255 5.7. 5.5.7. Terminlkezels .......................................................................................... 256

    6. 5.6. A LINUX-RENDSZER .............................................................................................. 256 6.1. 5.6.1. A Linux fejldsnek llomsai ................................................................. 257 6.2. 5.6.2. A Linux felptse s mkdse ................................................................. 258

    8. 6. A Windows NT opercis rendszer ........................................................................................ 260 1. 6.1. A Windows NT kialakulsa ....................................................................................... 260

    1.1. 6.1.1. Az NT-vel szemben tmasztott kvetelmnyek .......................................... 260 1.1.1. 6.1.1.1. Elvrsok ..................................................................................... 260 1.1.2. 6.1.1.2. Tervezi clkitzsek .................................................................. 261

    1.2. 6.1.2. A Windows NT, a Windows 95 s a Windows 98 sszehasonltsa .......... 261 1.3. 6.1.3. Az NT felptsnek f jellemzi ............................................................... 263 1.4. 6.1.4. Az NT objektumorientlt szemllete .......................................................... 263

    2. 6.2. A Windows NT felptse .......................................................................................... 264 2.1. 6.2.1. HAL ............................................................................................................ 264

  • Opercis rendszerek mrnki megkzeltsben

    viii Created by XMLmind XSL-FO Converter.

    2.2. 6.2.2. Kernel ......................................................................................................... 265 2.3. 6.2.3. Kszlkkezelk (device driverek) ............................................................. 265 2.4. 6.2.4. Executive .................................................................................................... 266 2.5. 6.2.5. Rendszerfolyamatok ................................................................................... 266 2.6. 6.2.6. Szolgltatsok ............................................................................................. 267 2.7. 6.2.7. NTDLL.DLL .............................................................................................. 267 2.8. 6.2.8. Alrendszerek ............................................................................................... 267

    2.8.1. 6.2.8.1. POSIX alrendszer ........................................................................ 268 2.8.2. 6.2.8.2. Win32 alrendszer ........................................................................ 268

    3. 6.3. A Windows NT bels mechanizmusai ....................................................................... 268 3.1. 6.3.1. Megszakts- s kivtelkezels ................................................................... 268

    3.1.1. 6.3.1.1. A megszaktsok tpusa s prioritsa ........................................... 269 3.1.2. 6.3.1.2. Kivtelkezels ............................................................................. 270

    3.2. 6.3.2. Objektumkezels ........................................................................................ 270 3.3. 6.3.3. Szinkronizci ............................................................................................ 271

    3.3.1. 6.3.3.1. Kernel szinkronizci .................................................................. 271 3.3.2. 6.3.3.2. Executive szinkronizci ............................................................. 272

    3.4. 6.3.4. Loklis eljrshvs .................................................................................... 272 4. 6.4. Folyamatok kezelse s temezse ............................................................................ 273

    4.1. 6.4.1. A Windows NT folyamatmodellje .............................................................. 273 4.2. 6.4.2. Folyamatok kezelse a Windows NT-ben .................................................. 274 4.3. 6.4.3. Szlak kezelse az NT-ben ......................................................................... 276 4.4. 6.4.4. Szlak temezse ........................................................................................ 277

    4.4.1. 6.4.4.1. A kvantum ................................................................................... 277 4.4.2. 6.4.4.2. Egy szl llapotai ........................................................................ 278 4.4.3. 6.4.4.3. A processzoraffinits ................................................................... 279 4.4.4. 6.4.4.4. A processzor kivlasztsa ............................................................ 279

    5. 6.5. Memriakezels ......................................................................................................... 280 5.1. 6.5.1. Memria manager felhasznli interfsze .................................................. 280 5.2. 6.5.2. Memriafoglals ......................................................................................... 280 5.3. 6.5.3. Osztott elrs memria ............................................................................. 281 5.4. 6.5.4. Memriavdelem ........................................................................................ 281 5.5. 6.5.5. Copy-on-Write ............................................................................................ 282 5.6. 6.5.6. Memria foglalsa ...................................................................................... 283 5.7. 6.5.7. A memria mrete ...................................................................................... 283 5.8. 6.5.8. Cmtranszformci ..................................................................................... 284

    6. 6.6. A Windows NT fjlrendszere (NTFS) ....................................................................... 286 6.1. 6.6.1. Elvrsok az NTFS-sel szemben ................................................................ 286

    6.1.1. 6.6.1.1. Tranzakcinknti feldolgozs ...................................................... 286 6.1.2. 6.6.1.2. Rteg szerkezet device driver struktra ..................................... 287

    6.2. 6.6.2. Az NTFS tovbbi elnys tulajdonsgai .................................................... 289 6.3. 6.6.3. Az NTFS ltal hasznlt adattpusok, adatszerkezetek ................................. 289 6.4. 6.6.4. Fjlok elrse NTFS alatt ........................................................................... 291 6.5. 6.6.5. File ReKord ................................................................................................ 291

    6.5.1. 6.6.5.1. Rezidens trols .......................................................................... 292 6.5.2. 6.6.5.2. Nem rezidens trols ................................................................... 292

    7. 6.7. Biztonsgi alrendszer ................................................................................................. 293 7.1. 6.7.1. A biztonsgi alrendszer komponensei ........................................................ 293 7.2. 6.7.2. Az objektumok vdelme ............................................................................. 294 7.3. 6.7.3. A biztonsgi auditls ................................................................................. 295 7.4. 6.7.4. A logon ....................................................................................................... 295

    9. 7.Krdsek, feladatok ................................................................................................................. 297 1. 7.1. Bevezets ................................................................................................................... 297 2. 7.2. Az opercis rendszer mint absztrakt, virtulis gp ................................................... 299 3. 7.3. Multiprogramozott opercis rendszerek ................................................................... 302 4. 7.4. Hlzati s elosztott rendszerek ................................................................................. 306 5. 7.5. UNIX .......................................................................................................................... 309 6. 7.6. Windows NT opercis rendszer ............................................................................... 314

    10. Trgymutat .............................................................................................................................. 317 1. A ........................................................................................................................................ 317

  • Opercis rendszerek mrnki megkzeltsben

    ix Created by XMLmind XSL-FO Converter.

    2. B ........................................................................................................................................ 318 3. C, CS ................................................................................................................................. 320 4. D ........................................................................................................................................ 321 5. E, .................................................................................................................................... 322 6. F ........................................................................................................................................ 324 7. G, GY ................................................................................................................................ 325 8. H ........................................................................................................................................ 326 9. I ......................................................................................................................................... 327 10. J ....................................................................................................................................... 328 11. K ...................................................................................................................................... 329 12. L ...................................................................................................................................... 331 13. M ..................................................................................................................................... 333 14. N ...................................................................................................................................... 335 15. O, .................................................................................................................................. 336 16. P ...................................................................................................................................... 337 17. R ...................................................................................................................................... 338 18. S, SZ ................................................................................................................................ 339 19. T ...................................................................................................................................... 341 20. U ...................................................................................................................................... 343 21. V ...................................................................................................................................... 344 22. W ..................................................................................................................................... 345 23. X ...................................................................................................................................... 345 24. Z ...................................................................................................................................... 346

    Irodalom ......................................................................................................................................... 347

  • x Created by XMLmind XSL-FO Converter.

    Az brk listja

    1.1. bra. A szmtgpes rendszer egymsra pl rtegei ............................................................... 5 1.2. bra. (a)On-line (b) off-line perifris mveletek blokkvzlata .................................................. 6 1.3. bra. A korai batch programok tipikus szerkezete ....................................................................... 7 1.4. bra. A spooling technika ............................................................................................................ 8 1.5. bra. A multiprogramozs alapelve ............................................................................................. 9 1.6. bra. Az opercis rendszer kontextdiagramja .......................................................................... 13 1.7. bra. Egyszer mikrogp architektrja .................................................................................... 18 1.8. bra. szemlyi szmtgp architektrja .................................................................................. 19 1.9. bra. Szuperszmtgp-architektra ......................................................................................... 20 1.11. bra. A UNIX s az OS/2 rtegszerkezete ............................................................................... 23 1.13. bra. Kliens-szerver szerkezet rendszer ................................................................................. 24 1.14. bra. Vezrlsi szlak klnbz tpus rendszerhvsok esetn ............................................ 26 1.15. bra. Be-/kivitel lefolysa multiprogramozott rendszerben ..................................................... 27 1.16. bra. A parancsrtelmez szerkezete ....................................................................................... 29 2.1. bra. Folyamatok egyttmkdse PRAM szerint mkd kzs memrin ........................... 37 2.2. bra. Folyamatok egyttmkdse zenetvltssal ................................................................... 38 2.3. bra. Kommunikci direkt megnevezssel .............................................................................. 44 2.4. bra. Kommunikci indirekt megnevezssel ........................................................................... 45 2.5. bra. Kommunikci asszimetrikus megnevezssel .................................................................. 45 2.6. bra. Kommunikci zenetszrssal ........................................................................................ 46 2.7. bra. Erforrsfoglalsi grf ...................................................................................................... 50 2.8. bra. Irnytott krt tartalmaz grf holtponttal s holtpont nlk ............................................ 51 2.11. bra. Potencilis krsek az erforrsfoglalsi grfon ............................................................. 57 2.12. bra. A termel-fogyaszt problma ........................................................................................ 60 2.13. bra. Az rk-olvask problmja ............................................................................................ 60 2.14. bra. Az tkez filozfusok problmja .................................................................................. 61 2.15. bra. Adatfolyamok illesztsnek problmja ......................................................................... 62 2.16. bra. Precedenciagrf ............................................................................................................... 63 3.1. bra. Von Neumann struktrj szmtgp egyszerstett tmbvzlata .................................. 79 3.2. bra. Trhierarchia ..................................................................................................................... 81 3.3. bra. Multiprocesszoros rendszerek logikai tmbvzlata .......................................................... 82 3.4. bra. Sorllsi diagram .............................................................................................................. 85 3.5. bra. Multiprocesszoros rendszerek logikai tmbvzlata .......................................................... 86 3.6. bra. Felfggesztett llapotokat kiegsztett llapotmeneti diagram ......................................... 87 3.7. bra. Folyamatlerok lncolsa .................................................................................................. 88 3.8. bra. Plda a krlfordulsi id s az idszelet hossznak sszefggsre RoundRobin-rendszerekben ................................................................................................................................... 93 3.9. bra. Tbbszint temezs (a) statikus (b) visszacsatolt tbbszint sorok ................................ 95 3.10. bra. Logikai-fizikai cmtranszformci a felhasznli programok tbblpcss feldolgozsa sorn 98 3.11. bra. Dinamikus cmlekpezsi mdok (a) bzisrelatv cmzs (a a program fizikai kezdcme, b virtulis (logikai) cm, r fizikai cm), (b) utastsszmll relatv cmzs ..................................... 99 3.12. bra. Ksleltetett betltsi mdok (a) dinamikus betlts (b) dinamikus knyvtrbetlts (c) tfed programrszek ................................................................................................................................ 100 3.13. bra. Egypartcis memria szervezs ................................................................................... 102 3.14. bra. Tbbpartcis memria szervezs ................................................................................. 102 3.15. bra. tlapolt trcsere ............................................................................................................ 104 3.16. bra. Cmtranszformci szegmensszervezs esetn ............................................................. 106 3.17. bra. Cmtranszformci lapszervezs esetn ........................................................................ 107 3.18. bra. Cmtranszformci lapszervezs esetn ktszint laptbla hasznlatval .................... 108 3.19. bra. Laphiba kezelsnek folyamata .................................................................................... 111 3.20. bra. Bldy-anomlia ........................................................................................................... 113 3.21. bra. A multiprogramozs hatsa a CPU-kihasznltsgra ..................................................... 115 3.22. bra. A lokalits hatsa a laphiba gyakorisgra ..................................................................... 117 3.23. bra. Rendszeregyensly biztostsa a laphiba-gyakorisg mrse alapjn ........................... 117 3.24. bra. Rendszerstruktra ......................................................................................................... 125

  • Opercis rendszerek mrnki megkzeltsben

    xi Created by XMLmind XSL-FO Converter.

    3.25. bra. Mgneslemez-egysg felptse .................................................................................... 128 4.1. bra. Teljesen s rszlegesen sszekapcsolt hlzat ................................................................ 137 4.2. bra. Hierarchikus s csillag sszekapcsols ........................................................................... 138 4.3. bra. Gyr s kettztt gyr hlzat .................................................................................... 139 4.4. bra. Sn tpus hlzat ............................................................................................................ 139 4.5. bra. A hlzati rtegek s protokollok kapcsolata .................................................................. 141 4.9. bra. Bully algoritmus. P2 kordintorr vlasztsa P4 s P3 meghibsodsa utn. Majd P4 koordintorr vlasztsa annak jraindulsa utn ................................................................................................. 174 4.10. bra. A gyr vlasztsi algoritmus mkdse. A vlasztst most a 19-es csompont kezdemnyezte ......................................................................................................................................................... 176 5.1. bra. A hagyomnyos UNIX-rendszerek bels szerkezete ...................................................... 184 5.2. bra. A modern UNIX-ok egy lehetsges szerkezeti felptse ............................................... 185 5.3. bra. Vgrehajtsi md s krnyezet ....................................................................................... 186 5.4. bra. A folyamatok llapottmeneti grfja ............................................................................... 187 5.5. bra. Lncolt lista egy kzbls elem lefzse eltt ................................................................ 192 5.6. bra. Lncolt lista egy kzbls elem lefzse kzben ........................................................... 192 5.9. bra. A folyamatok prioritsnak trolsa ............................................................................... 196 5.11. bra. Call-out fggvnyek lncolt lists brzolsa ............................................................... 199 5.12. bra. Call-out fggvnyek idkerekes brzolsa .................................................................. 199 5.15. bra. A szuperblokkban trolt inode lista .............................................................................. 214 5.17. bra. Az open s dup rendszerhvsok hatsa az llomnykezelssel kapcsolatos adatszerkezetekre 220 5.18. bra. A UNIX-llomnyrendszer knyvtrstruktrja ........................................................... 221 5.20. bra. Az FFS knyvtrszerkezete .......................................................................................... 224 5.21. bra. A vnode szerkezete ....................................................................................................... 225 5.22. bra. A vnode-ot is tartalmaz llomnyrendszer hozzfrs logikai smja ........................ 225 5.23. bra. Tbb llomnyrendszer hasznlata vfs-sel .................................................................... 226 5.24. bra. Folymat httrtrra rsa s visszatltse ...................................................................... 230 5.25. bra. Tartomnybvts httrtrra rssal ............................................................................. 231 5.28. bra. A tartomnymodell s a virtulis memriakezelst tmogat adatszerkezetek kapcsolata 235 5.29. bra. A virtulis memriakezelst tmogat adatszerkezetek kereszthivatkozsai ................ 236 5.30. bra. A laphibt okoz lap llapotai ...................................................................................... 238 5.31. bra. A mdosult adatszerkezetek a lap allokls utn .......................................................... 238 5.32. bra. A mdosult adatszerkezetek a lap szabad listn trtn megtallsa utn .................... 239 5.33. bra. Egyszer plda a copy-on-write technika alkalmazsra. Az (a) bra azt az llapotot mutatja, amikor az A folyamat s kt gyermeke osztoznak egy lapon, mg a (b) brn mr az egyik gyermek (B) rs miatt kln lapot hasznl ......................................................................................................... 239 5.34. bra. A hardver, szoftver rvnyessgi s a szoftverbl szimullt hivatkozs bit llapota (a) memriahivatkozs eltt, (b) memriahivatkozs utn .................................................................. 241 5.35. bra. Egy IP-adatcsomag vzlatos felptse ......................................................................... 242 5.36. bra. Plda az XDR adatbrzolsra ...................................................................................... 244 5.37. bra. Az RPC mkdse ........................................................................................................ 245 5.38. bra. Az RPC-krs felptse ............................................................................................... 246 5.39. bra. Az RPC-vlasz felptse .............................................................................................. 246 5.40. bra. Az NFS mkdsnek smja ....................................................................................... 247 5.41. bra. Tvoli fjl elrse NFS segtsgvel ............................................................................. 248 5.42. bra. A legfontosabb POSIX.x szabvnyok ........................................................................... 249 5.43. bra. Alkalmazsok megfelelsge ........................................................................................ 250 5.44. bra. Trigraph karakterek ....................................................................................................... 252 5.45. bra. POSIX jelzskezels ..................................................................................................... 255 5.46. bra. A Linux-rendszer komponensei .................................................................................... 258 6.1. bra. Az NT trtnetnek f llomsai .................................................................................... 260 6.2. bra. Opercis rendszerek sszehasonltsa ........................................................................... 262 6.3. bra. A Windows NT felptse ............................................................................................... 264 6. 4. bra. A trapkezel mkdse .................................................................................................. 269 6.5. bra. IRQL tbla az Alpha processzornl ................................................................................ 269 6.6. bra. IRQL tbla az Intel x86 processzoroknl ........................................................................ 270 6.7. bra. A Windows NT folyamatmodellje .................................................................................. 274 6.8. bra. Folyamatokhoz s szlakhoz tartoz adatstruktra ......................................................... 274 6.9. bra. Az executive szlblokk felptse ................................................................................... 276

  • Opercis rendszerek mrnki megkzeltsben

    xii Created by XMLmind XSL-FO Converter.

    6.10. bra. Egy szl llapotai a Windows NT-ben .......................................................................... 278 6.11. bra. Copy-on-write memrialapok rst megelzen ........................................................... 282 6.12. bra. Copy-on-write memrialapok rst megelzen ........................................................... 282 6.13. bra. A logikai cmtr felptse ............................................................................................ 283 6.14. bra. A fizikai memria mrete klnbz memriamodellek esetn ................................... 284 6.15. bra. A virtulis cm felptse .............................................................................................. 285 6.16. bra. A cmtranszformci menete x86-os processzorok esetn ........................................... 285 6.17. bra. Egy lemezrsi mvelet kiszolglsa ............................................................................ 286 6.18. bra. A lemezmveletek adminisztrlsra hasznlt log fjl szerkezete ................................ 287 6.19. bra. Rteg szerkezet device driver struktra ...................................................................... 288 6.20. bra. LCN s VCN egymshoz rendelse .............................................................................. 289 6.21. bra. NTFS metadata informcik ......................................................................................... 290 6.22. bra. A virtulis cm felptse .............................................................................................. 290 6.23. bra. Egy tipikus file rekord .................................................................................................. 291 6.24. bra. Attribtumok rezidens trolsa ..................................................................................... 292 6.25. bra. Attribtumok nem rezidens trolsa ............................................................................. 292 6.26. bra. A logonban rszt vev komponensek ........................................................................... 295

  • xiii Created by XMLmind XSL-FO Converter.

    A tblzatok listja

    1.10.bra. Nevezetes opercis rendszerek rtegszerkezete ............................................................. 21 1.12.bra. A virtulis hardver megvalost rendszer s kzs kernel ............................................... 21 2.9.bra. Tbbpldnyos erforrsok pillanatnyi allokcija s ignylse ....................................... 23 2.10.bra. Tbbpldnyos erforrsok maximlis igny elrejelzsvel .......................................... 52 2.17.bra. Elrsi mtrix statikus vdelmi tartomnyokkal .............................................................. 55 2.18.bra. Elrsi mtrix dinamikus vdelmi tartomnyokkal .......................................................... 72 4.6.bra. A centralizlt rendszer rtegstruktrja ............................................................................. 73 4.7.bra. Elosztott rendszerek rteg struktrja .............................................................................. 154 4.8.bra. Az RPC-zenetek felptse ............................................................................................ 155 5.7.bra. A UNIX prioritsi tartomnyai ........................................................................................ 165 5.8.bra. Az ramegszaktshoz ktd temezsi tevkenysgek ................................................ 193 5.10.bra. temezsi plda ............................................................................................................. 195 5.13.bra. Jelzsek .......................................................................................................................... 197 5.14.bra. Tipikus UNIX-jelzsek s rtelmezsk ........................................................................ 200 5.16.bra. A plda llomny lemezblokkjainak elhelyezkedse ..................................................... 216 5.19.bra. /etc knyvtr egy lehetsges tartalma ............................................................................ 218 5.26.bra. A laptbla-bejegyzs ltal trolt informcik. A bejegyzst a folyamat virtulis cmei cmzik. Jellsek: Age regts bit(ek), C/W copy-on-write bit, Mod mdosts bit, Ref hivatkozs bit, Val rvnyessgi bit, ......................................................................................................................... 229 Protection vdelmi bitek. all ........................................................................................................ 235 5.27.bra. A diszk blokk ler ltal trolt informcik. A bejegyzst a folyamat virtulis cmei cmzik 235

  • 1 Created by XMLmind XSL-FO Converter.

    1. fejezet - Tmogatk A Kempelen Farkas Felsoktatsi Digitlis Tanknyvtr vagy ms ltal kzreadott digitlis tartalom a szerzi jogrl szl 1999. vi LXXVI. tv. 33. (4) bekezdsben meghatrozott oktatsi, illetve tudomnyos kutatsi clra hasznlhat fel. A felhasznl a digitlis tartalmat kpernyn megjelentheti, letltheti, elektronikus adathordozra vagy paprra msolhatja, adatrgzt rendszerben trolhatja. A Kempelen Farkas Felsoktatsi Digitlis Tanknyvtr vagy ms weblapjn tallhat digitlis tartalmak zletszer felhasznlsa tilos, valamint kizrt a digitlis tartalom mdostsa s tdolgozsa, illetve az ilyen mdon keletkezett szrmazkos anyag tovbbi felhasznlsa is.

    A jelen digitlis tartalom internetes kzreadst a Nemzeti Kutatsi s Technolgiai Hivatal 2006-ban nyjtott tmogatsa tette lehetv.

  • 2 Created by XMLmind XSL-FO Converter.

    2. fejezet - Elsz A szmtstechnika s informatika minden kpzeletet fellml sebessg s szlessg terjedse megkveteli olyan tanknyvek megjelenst, amelyek folyamatosan karbantarthatk, s lpst tartanak a mai kor gyorsan vltoz kvetelmnyeivel. Opercis rendszerekkel foglalkoz knyvekbl a vilgpiacon bsg van. A tma szinte mr klasszikusnak szmt persze csak az igen fiatal szakterleten bell. A magyar nyelv szakirodalom ebben a tmakrben szegnyesebb. Opercis rendszerekrl magyar nyelven mindeddig inkbb csak egy-egy rszterletet lefed szakknyv, vagy pedig egy-egy felsoktatsi intzmny specilis szkebb ignyt kielgt jegyzet kerlt kiadsra. Pedig a tmakr fontossga aligha vonhat ktsgbe. Nehezen kpzelhet el, hogy egy szmtstechnikval vagy informatikval kapcsolatba kerl mrnknek ne legyenek opercis rendszerekre vonatkoz ltalnos, s a legelterjedtebben hasznlt konkrt rendszerekre vonatkoz specilis ismeretei. Ebbl kvetkezik, hogy a tmakrnek az informatikai kpzsek tanterveiben megfelel sllyal jelen kell lennie, s ltalban jelen is van.

    Ez a tanknyv azzal a cllal szletett, hogy a fenti hinyt valamelyest ptolja. Ennek megfelelen igyekeztnk ttekintst adni mind a klasszikus, mind az elosztott opercis rendszerek alapvet cljrl, mkdsi elveirl, funkciirl, azok lehetsges megvalstsi mdjairl. Az elmleti eredmnyek mellett hangslyt fektettnk ezek megvalstsi lehetsgeire is, gy a gyakorlati megvalstsok s eredmnyek bemutatst kt olyan konkrt opercis rendszeren a UNIX s Windows NT opercis rendszereken keresztl taglaljuk, melyek napjaink, illetve a kzeljv vrhatan legelterjedtebb s legnpszerbb opercis rendszerei lesznek.

    A Budapesti Mszaki Egyetem Villamosmrnki s Informatikai Kar mszaki informatika szakn Opercis rendszerek cm tantrgy az nll szak indulstl 19911992-tl szerepel alaptrgyknt, de a tmakr mr sokkal korbban megjelent a villamosmrnkk kpzsi programjban. A szerzk mgtt teht jelents oktatsi tapasztalat ll. Ugyanakkor az Opercis rendszerek c. tantrgy keretben fellelt anyag a szakterlet kihvsnak megfelelen az 1997/98-as tanvtl kezdden megjult, kibvlt a korbbiakhoz kpest. Knyvnk alapjt e trgy tananyaga kpezi. A tanknyv nem kveti pontosan az eladssorozat menett, szmos helyen bvebb annl, illetve az eladsokon el nem hangz tmkat is trgyal, mg ms tmk, melyek az eladsokon rszletesebben szerepelnek, nem, vagy csak rintlegesen jelennek meg a knyvben. Igyekeztnk az elmlt vekben elrt nhny fontos eredmnyt is bemutatni, azonban a tmakr sokrtsge s gyors fejldse miatt ez messzemenen nem teljes.

    A knyv szemllett s a trgyals mlysgt a trgy kpzsben elfoglalt helye s szerepe hatrozta meg. A trgybl kvetkez ler jelleget a mrnki konstruktivitssal gy prbltuk sszeegyeztetni, hogy igyekeztnk megmutatni a mirteket is. gy a felmerl problmk mellett a lehetsges vlaszokat is elemezzk, majd az esettanulmnyok konkrt megoldsait elhelyezzk a tervez elvi mozgsterben. Ugyancsak a mrnki modellalkot szemlletet kvnjuk ersteni a virtulis gp s a megvalstsok trgyalsnak sztvlasztsval.

    A tanknyv ht fejezetbl ll. A Bevezets (1. fejezet) az opercis rendszerek funkciit, tpusait, illetve felptst ismerteti. A fejezetben igyeksznk rmutatni a hardver-szoftver fejlds klcsns s folyamatos egymsra hatsra. Itt alapozzuk meg azt a rendszermodellt, valamint a hozz szorosan kapcsold rendszerarchitektrt is, amelyre ptve a ksbbiekben a mkdst rszletesen trgyaljuk.

    A 2. fejezet az opercis rendszerek absztrakt, virtulis gp megkzeltst fejti ki. A fejezetben a f hangsly az opercis rendszerek egyik alapfogalmra a folyamatokra tovbb a szlakra s a folyamatokbl ll rendszerek alapkrdseire (folyamatok egyttmkdse, szinkronizci, kommunikci, holtponthelyzetek, vdelem, biztonsg) helyezdik.

    A 3. fejezet az absztrakt fogalmak klasszikus, egyprocesszoros rendszeren trtn megvalstst trgyalja. A multiprogramozott opercis rendszerekben alapvet folyamatkezels (folyamatllapotok, llapottmenetek, temezs), trkezels (trszervezs, cmek ktse, virtulis trkezels), httrtrkezels (szervezs, kezels, adattrols biztonsga) s llomnykezels krdseit rszletezi.

    A hlzati s elosztott rendszerek tmjval a 4. fejezet foglalkozik. A hlzatok alapfogalmainak, a hlzattopolgik s kapcsolatok alaptpusainak, valamint a nv- s cmkezels legfontosabb krdseinek bemutatsa utn az elosztottsgnak a minsgi jellemzk, tervezsi szempontok, llomnyrendszer, folyamat- s idkezels s biztonsg tern jelentkez hatsait trgyaljuk. Rszletes ismertetsre kerl egy kliensszerver-modellre pl hitelest rendszer is.

  • Elsz

    3 Created by XMLmind XSL-FO Converter.

    Az 5. fejezet a UNIX opercis rendszerrl ad ttekintst. A korbban megismert elvek s legfontosabb funkcik megvalstsnak bemutatsa sorn f clunk nem a pillanatnyilag ismert legfrissebb UNIX-implementci pontos ismertetse, hanem inkbb a megvalstsok mrnki elemzse volt. Kitrnk a fejleszts gondolatmenetre, az annak sorn felmerl problmkra, azok lehetsges megoldsi lehetsgeire s az implementcik ltal megvalstott elvekre, azok elnyeire illetve hinyossgaira.

    A 6. fejezet a Microsoft cg jgenercis opercis rendszervel, a Windows NT-vel foglalkozik. Ez, a korbbi Windows-rendszerektl struktrjban is klnbz opercis rendszer egy j technolgit (NT New Techno-logy) kpvisel s tnylegesen j, korszer megoldsokat alkalmaz.

    A tanknyv utols, 7. fejezete ellenrz krdseket s feladatokat tartalmaz az ismertetett anyag egszre vonatkozan. Elssorban a mrnkhallgatkra gondoltunk, az anyag elsajttsnak ellenrzst igyekeztnk megknnyteni a szmukra.

    Mindamellett, hogy a knyvet elssorban tanknyvnek szntuk, gy vljk, szlesebb olvastbor szmra is btran ajnlhatjuk. Az informatikus szakembereknek, de az informatika eszkzeivel megismerkedni szndkoz szakmn kvlieknek is grhetnk rdekldsket kielgt mondanivalt. Az olvasshoz nmi szmtstechnikai elismeret (szmtgpek felptse, programozs) hasznos, de nem elengedhetetlen.

    A knyv szndkaink ellenre nyilvn szmos hinyossgot s hibt tartalmaz. Remljk, hogy a tmakrt tanul hallgatk ezeket szrevve hozzsegtenek a kijavtsukhoz.

    A knyv megszletshez val hozzjrulsukrt ksznet illeti mindazokat, akik korbban publikltk eredmnyeiket, s ezzel lehetv tettk, hogy az igen bsges nemzetkzi irodalomra tmaszkodva alaktsuk ki azt a szemlletet s megkzeltsmdot, amit oktatsi cljaink elrshez a legmegfelelbbnek tartottunk. Hallgatinknak is ksznjk a konzultcik sorn feltett krdseket, amelyek eredmnyeknt az anyag sokat csiszoldott.

    Ugyancsak ksznet illeti a trgy oktatsban rsztvev tanszkek vezetit, Arat Ptert s Pceli Gbort a munkafelttelek biztostsrt, Vajk Istvnt az nll trgy els vltozatnak kidolgozsban val kzremkdsrt, Szigeti Szabolcsot s Mann Zoltn dmot rtkes anyaggyjt munkjukrt, a Panem Kiad munkatrsait a konstruktv s rugalmas munkakapcsolat kialaktsrt, s vgl, de nem utols sorban csaldtagjainkat, hogy elviseltk idnknt jelenltnket, idnknt hinyunkat az rs sorn.

    A knyv megszletshez nagymrtkben hozzjrult az a tmogats, amelyet a Mveldsgyi Minisztrium Felsoktatsi Tanknyvtmogatsi Plyzata nyjtott.

    Budapest, 1999. oktber 31.

    Kczy Annamria s Kondorosi Kroly

    szerkesztk

  • 4 Created by XMLmind XSL-FO Converter.

    3. fejezet - 1. Bevezets Az opercis rendszerek alapvet rszt kpezik brmelyik szmtgpes rendszernek. Egy opercis rendszer olyan program, amely kzvettknt mkdik a felhasznl s a szmtgp hardvere kztt. Elsdleges clja, hogy biztostsa azt a krnyezetet, amelyben a felhasznl knyelmesen s hatkonyan vgre tudja hajtatni a sajt programjt. A msodlagos cl a szmtgp hardverjnek minl hatkonyabb hasznlata. Mindehhez az is szksges, hogy az opercis rendszerek megfelel szolgltatsokat nyjtsanak a programoknak s a programok felhasznlinak azzal a cllal, hogy a programfejlesztsi feladat knnyebb vljk.

    A szmtgpes rendszerek lnyegben hrom f komponensre oszthatk: hardver, rendszerprogramok (melyek egszt vagy rszt kpezi az opercis rendszer), valamint alkalmazi programok.

    A hardver a kzponti feldolgoz egysg (CPU: Central Processing Unit), a memria, valamint a bemeneti/kimeneti (I/O: Input/Output) egysgek szolgltatjk az alapvet szmtsi erforrsokat. Az alkalmazi programok a felhasznlk szmra segtik el sajt feladataik megoldst. A rendszerprogramok leglnyegesebb rsze az opercis rendszer, amely a szmtgpes rendszer helyes mkdst biztostja, vagyis vezrli s koordinlja a hardver felhasznlst a klnbz alkalmazi programok kztt. Az opercis rendszer pontos meghatrozsa nem egysges, a klnbz iskolk ms-ms megkzeltsei rvn eltr nzetek terjedtek el.

    A fejezet tovbbi rszben elszr az opercis rendszer lehetsges rtelmezseit elemezzk. A kvetkez alfejezetben az opercis rendszerek fejldstrtnett vizsgljuk rszletesebben. Vgl pedig az 1.3. alfejezetben a szmtgp rendszerek modelljvel s architekturlis krdseivel foglalkozunk.

    1. 1.1. Mit neveznk opercis rendszernek?

    Van egy olyan monds, miszerint Szoftver nlkl a szmtgp csak egy ssze-vissza gubancolt cskavas-halom. Brki, aki dolgozott mr szmtgppel brmilyen rvid ideig is tisztban van ennek a mondsnak az igazsgval. A legtbb ember szmra a szoftver (SW: Software) sz alkalmazi (application) vagy msszval felhasznli (user) szoftver-t jelent, azaz olyan programokat, amelyek segtsgvel tervezhetnk egy rhajt, kiszmthatjuk az adnkat, mozijegyet vsrolhatunk vagy jtszhatunk. Ez azonban az igazsgnak csak egy rsze.

    Kpzeljk el, hogy odaltetnek bennnket egy olyan szmtgp el, amely tnyleg csak a puszta hardverbl (HW: Hardware) ll, semmilyen szoftver nem tallhat rajta: Hogyan lennnk kpesek az emltett feladatokat megoldani? De mg az olyan egyszer dolgok is gondolkodst ignyelnnek, mint kt szm sszeadsa, nem is beszlve a szorzsrl, osztsrl.

    Szerencsre azonban a helyzet a valsgban legalbbis a szmtgp trtnetnek nagyobbik felben ennl sokkal jobb, mert a szoftvernek van egy ltalban nem mindig ltott, de mindig hasznlt rtege (layer), amely a felhasznl (itt ne csak emberi felhasznlkra gondoljunk, a rendszer szempontjbl felhasznl lehet valamilyen gp vagy akr egy msik szmtgp is) s a hardver kztt helyezkedik el, olyan krnyezetet teremtve, amely lehetv teszi az alkalmaz szmra a szmtgp knyelmes s hatkony hasznlatt. Ezt hvjk opercis rendszernek (operating system).

    Az opercis rendszer fogalmt nemigen tudjuk pontosan meghatrozni, klnbz irnyzatok ms-ms szigorsggal llnak a krdshez. Abban mindenki egyetrt, hogy az opercis rendszer rsze a mag (kernel), vagyis az a program, amely felttlenl szksges a gp mkdshez s amely kzvetlenl vezrli azt. Rgebben ezt gy is meg lehetett kzelteni, hogy a kernel az a program, amely llandan fut. A dinamikus kernel megjelense ta azonban ez utbbi definci mr nem llja meg teljesen a helyt. A msik vglet szerint az opercis rendszerbe tartoznak azok a tulajdonkppen felhasznli rendszerprogramok (system program) is, amelyek a gp ltalnos felhasznlst segtik, pldul a fordtk, szvegszerkesztk, parancsrtelmez.

    E knyv a nzetek klnbzsgt figyelembe vve megprbl inkbb az opercis rendszer kt szintjrl beszlni. A bels, szkebben rtelmezett szint a kernelt takarja, mg egy tgabb szint alatt a kznapi rtelemben vett opercis rendszert rtjk azaz mindazokat a programokat, amelyeket egy felhasznl a gp vsrlsakor megkap. Lnyeges klnbsg a kett kztt, hogy a kernel el van rejtve, vdve van (hardvervdelem) a felhasznl ell, azaz ehhez a felhasznl nem fr hozz, nem tudja mdostani s elrontani. Bizonyos

  • 1. Bevezets

    5 Created by XMLmind XSL-FO Converter.

    rendszerprogramokat clszer, ha elrhet a felhasznl, mert gy azokat gy tudja alaktani, hogy hasznlatuk szmra a legknyelmesebb legyen. A hardver- s szoftverrtegek egy lehetsges egymsra plst az 1.1. bra mutatja.

    Az alkalmazi programok teht a felhasznl problmit oldjk meg, mg a rendszerprogramok a szmtgp sajt tevkenysgt irnytjk. Ezen bell az opercis rendszer felgyeli az sszes erforrst (resource), tovbb biztostja azt a krnyezetet, amelyben az alkalmazi programok futhatnak. Vezrli mind a programok, mind az erforrsok mkdst, valamint meggtolja a szmtgp hibs felhasznlst.

    1.1. bra. bra - A szmtgpes rendszer egymsra pl rtegei

    A hardver hatkony hasznlatnak biztostsa tekintetben az opercis rendszer feladatt erforrs kezels alulrl, a hardver oldalrl fogalmaztuk meg (ezt hvjk bottom-up view-nak). Erforrs alatt mind hardver-, mind pedig szoftvererforrsokat rtnk (CPU-id, memria, perifrik, llomnyok, adatok stb.), melyeket a felhasznlk cljaik elrse rdekben hasznlni szeretnnek. A sok, sokszor tkz vagy ellentmond igny kztt az opercis rendszernek kell dntenie s az ignyelt erforrsokat felhasznlhoz rendelnie gy, hogy hatkony, biztonsgos s igazsgos mkdst biztostson.

    A knyelmes hasznlat biztostsa tekintetben megknnyti a programozst fellrl, a felhasznl oldalrl (top-down view) kzeltnk az opercis rendszerhez. Az opercis rendszer nmagban nem vgez (kvlrl nzve) hasznos tevkenysget, de olyan krnyezetet biztost, amelyben a felhasznli programok kpesek hasznos munka vgzsre. Ezt gy is tekinthetjk, hogy az opercis rendszer egy olyan rteget kpez a hardver fltt, amely elrejti annak krlmnyessgt s bonyolultsgt a programoz ell, s kibvti a szmtgp hardver szolgltatsait. gy a felhasznl egy sokkal kellemesebb tulajdonsgokkal rendelkez virtulis gpet (virtual machine, extended machine) lt.

    Manapsg a felhasznlbart (user friendly) virtulis gp, illetve krnyezet biztostsa egyre nvekv fontossg alapkvetelmny minden opercis rendszerrel szemben. Hossz idt ignyelt azonban, amg eljutottunk ide. A kvetkez fejezetben ezt a trtneti fejldst tekintjk t rviden, hangslyozva azt, ahogyan a hardver- s szoftvertechnikai elrelpsek klcsnsen egymsra hatottak, kedvez lkst adva a tovbbfejldsnek.

    2. 1.2. Az opercis rendszerek trtnete

    Az opercis rendszerek trtnett a szmtgpek trtnetvel prhuzamosan, azzal szoros sszefggsben trgyaljuk. A fejlds menetnek felvzolsa sorn vegyk szre, hogy minden kornak megvolt a leggetbb problmja, amely mellett a tbbi brmilyen komoly volt is eltrplt. Amint azonban sikerlt megoldst tallni erre, azonnal a kvetkez idszer nehzsg megoldst cloztk meg. gy pldul, mint ltni fogjuk az albbiakban, az els genercis (elektroncsves) gpek legnagyobb gondja a megbzhatatlansg volt, amely mellett nemigen szmtott a rossz gpkihasznls. Amint azonban megjelentek a msodik genercis megbzhat (tranzisztoros) gpek, a gpid jobb kihasznlsnak krdse kerlt eltrbe. Vagy egy msik pldt emltve, amint napjainkhoz kzeledve eljutottunk ahhoz, hogy a nagysebessg, megbzhat gpek kihasznlsa optimliss vlt, majd bizonyos eszkzk olcssga miatt egyre kevsb volt fontos azok minl jobb kihasznlsa, a felhasznl knyelmnek kiszolglsa lett a legslyosabb megoldand problma.

  • 1. Bevezets

    6 Created by XMLmind XSL-FO Converter.

    2.1. 1.2.1. Korai rendszerek

    Charles Babbage (17921871) nevhez fzdik az a szerkezet, amely tulajdonkppen a digitlis szmtgp snek tekinthet. Az ltala elemz gpnek (analytical engine) nevezett mechanikus szerkezetet azonban akkor soha nem sikerlt megpteni, mert abban az idben nem tudtk az alkatrszeket megfelel pontossggal ellltani. (Az eredeti tervek alapjn megptettk, s 1991-ben bemutattk a gpet, amelyik azta a London Science Museumban lthat.)

    Hatalmas elrelpst jelentett, hogy a II. vilghbor befejezdse krnykn tbb egyetemen, illetve kutatintzetben sikerlt mkd szmtgpet pteni pldul az Egyeslt llamokban H. Aiken (Harvard), J. P. Eckert s W. Mauchley (University of Pennsylvania), Nmetorszgban pedig K. Zuse nevhez fzdnek sikerek. Igazn ismertt azonban Neumann Jnos (19031957) magyar szrmazs, Amerikban lt matematikus s H. H. Goldstine rnytsa alatt plt (1945) els szmtgp vlt. Az EDVAC (Electronic Discrete Variable Calculator, diszkrt vltozs elektronikus szmolgp) hossz ideig mintul szolglt a tbbi trolt program, elektronikus programvezrls szmtgp ptshez. A von Neumann ltal megfogalmazott alapelv (mely szerint a programokat s adatokat ugyanabban a trban, ugyanolyan formban troltk s csak krnyezetk alapjn klnbztettk meg) miatt nevezik ma is a hagyomnyos szmtgpeket von Neumann struktrj gpeknek.

    Az els szmtgpek 1500 szorzs vagy 15 000 sszeads elvgzsre voltak kpesek msodpercenknt legfeljebb 12 jegy decimlis szmnak megfelel binris szmokkal. A tervezst, ptst, programozst, mkdtetst, javtst egyetlen csapat vgezte. A gpek elektroncsvesek voltak, ami teljesen megbzhatatlann tette a mkdst, mivel a nagyjbl 20 000 elektroncs kzl nagy valsznsggel kigett valamelyik az egyszer programok futsa alatt. Programnyelveket nem ismertek ebben az idben, gy mindent gpi kdban oldottak meg. A programokat dugaszols kapcsoltbln rgztettk s ezeket csatlakoztattk a szmtgpbe. Tovbbi problmt jelentett, hogy nem ismertk elre a futshoz szksges idt, gy a gpidfoglalst becsls alapjn vgeztk, ami azzal jrt, hogy jobbik esetben kihasznlatlan maradt a drga gpid egy rsze rosszabbik esetben pedig , az eredmnyek kiszmtsa eltt meg kellett szaktani a futst, s a gpet t kellett adni a kvetkez foglalnak. Technikai elrelpst jelentett, amikor az 50-es vekben megjelentek a lyukkrtyk.

    Ebben az idben szmtgp segtsgvel olyan egyszer szmtsi feladatokat oldottak meg, mint szinusz, koszinusz tblzatok kiszmtsa.

    2.2. 1.2.2. Batch rendszerek

    A szmtgpek II. genercijt (19551965) mr tranzisztorokbl ptettk, gy megolddott az eddigi leggetbb problma az elektroncsvek miatti megbzhatatlan mkds. Azonban ezek a gpek rettenetesen drgk voltak. Mkdtetskhz specilis lgkondicionlt gptermek kellettek. A korszakhoz fzdik a kln professzionlis opertori csapat megjelense, amely a gp kiszolglst s a programok futtatst vgezte. A programozs akkori menete szerint a programokat papron rtk (ekkor mr ismertek programnyelveket, pldul assemblereket, Fortrant), majd ezeket lyukkrtyn kilyukasztottk. Az elkszlt lyukkrtykat leadtk egy teremben, ahonnan azokat az opertorok vittk a gphez, majd a szksgnek megfelelen betltttk a fordtt stb. Az eredmnyeket paprra nyomtattk (on-line mdon, azaz a beolvass s az eredmnyek kinyomtatsa nem volt idben sztvlasztva a programok futstl), melyeket egy jabb teremben lehetett tvenni. A programok elksztsi ideje teht roppant nagy volt, a drga gpek drga gpidejnek egy j rsze azzal telt, hogy az opertorok a gpterem s kiszolgl termei kztt stltak, mikzben maga a szmtgp kihasznlatlanul llt. Ezrt aztn kvetkez fejldsi lpsknt a felesleges idvesztesgek cskkentst tztk ki clul.

    A megoldst a ktegelt vagy batch feldolgozs megjelense jelentette, amely szerint az opertorok sszevlogattk a hasonl munkkat (pldul mindegyik Fortran fordtt ignyelt), majd ezeket egyms utn futtatva tbb korbbi lpst csak egyszer kellett elvgezni. A mgnesszalagok megjelense (az sszelltott kteget a lyukkrtykrl egy szalagra msoltk) tovbb knnytette s gyorstotta ezt a folyamatot. Hasonlkppen, a jobb gpkihasznlst segtette, hogy az on-line perifris mveletekrl ttrtek az off-line perifris mveletekre (1.2. bra), azaz a lyukkrtyk beolvasst, valamint az eredmnyek nyomtatst a programok futtatstl elvlasztva, ltalban egy kln erre a clra kifejlesztett kis szmtgp segtsgvel vgeztk.

    1.2. bra. bra - (a)On-line (b) off-line perifris mveletek blokkvzlata

  • 1. Bevezets

    7 Created by XMLmind XSL-FO Converter.

    A programok futsa kztt eltel res idt (amg az opertor szrevette, hogy egy munka (job) befejezdtt s elindtotta a kvetkezt) tovbb cskkentette, amikor sikerlt kifejleszteni egy olyan felgyel programot egyszer monitort (resident monitor) , amely egy-egy munka befejezdse utn automatikusan beolvasta a kvetkezt s megkezdte annak vgrehajtst. Vagyis megjelentek az els opercis rendszerek. A joblersokat a knnyebb felismerhetsg kedvrt specilis karakterrel kezdd vezrl utastsokkal egsztettk ki, amelyek a monitor szmra hordoztak informcit. (gy minden joblers a munka kezdett s vgt jelz utastssal kezddtt, illetve vgzdtt; kln utasts adta meg, hogy mikor s milyen fordtprogramot kell betlteni, mikor lehet a trgyprogramot betlteni [azaz hol a programrsz vge] elkezddhet a program futtatsa stb.)

    Az egyszer monitorok megjelense egyben azt is jelentette, hogy a korbban egy terletknt kezelt memrit a tovbbiakban kt alapvet rszre, egy monitor s egy felhasznli terletre osztottk.

    1.3. bra. bra - A korai batch programok tipikus szerkezete

    Az off-line perifris mveletek alkalmazsnak legnagyobb elnye abban rejlett, hogy a f szmtgp mkdse nem fggtt tbb a lass krtyaolvas s sornyomtat mkdstl, hanem a sokkal gyorsabb mgnesszalag vezrltl. sszessgben azonban ez a megolds csak akkor gyorstotta a munkk befejezdst, ha nagyjbl azonos idej CPU- s perifris mveletet tartalmaztak.

    Az j technika elterjedse azt is eredmnyezte, hogy a programok nem az eredeti perifrikat, hanem logikai B/K-kszlkeket hasznltak. Ezt hvjuk kszlkfggetlen vagy perifriafggetlen programozsnak (device independence). Szabvnyos fellet perifriameghajtkat kezdtek alkalmazni egyrszt, hogy biztostsk, hogy a programok ne vegyk szre a csert, msrszt viszont a programokat trs nlkl lehetett hasznlni akkor is, ha a rendszerben kicserltk a perifrikat.

    A fenti megoldsnak minden elnye mellett htrnya volt, hogy tbb szmtgpet (esetenknt hrmat vagy akr tbbet is) ignyelt s a szalagok cserje mg mindig nehzkesen, opertori segdlettel trtnt. A problma

  • 1. Bevezets

    8 Created by XMLmind XSL-FO Converter.

    megoldsra megalkottk az autonm perifriavezrlket. Az autonm perifriavezrlk lehetv tettk a pufferelst (buffering), azaz, hogy a B/K-mveletek a perifrik s a CPU kztt elhelyezked pufferen keresztl hajtdnak vgre megszakts, illetve blokkos tvitel segtsgvel. Teht pldul a beolvass egy pufferbe trtnik s a CPU innen veszi az adatot, majd annak feldolgozsval egyidben jabb perifris mvelet hajtdhat vgre (tlapolt feldolgozs).

    A hibakeress (debugging) tovbbra is komoly nehzsgekbe tkztt, ugyanis ezt nyilvnvalan csak a programoz tudta elvgezni. Mivel azonban nem volt kzvetlen kapcsolatban a szmtgppel, ezrt off-line mdon, a hibs befejezdskor kiratott (dumping) memria s regiszter tartalmak segtsgvel vgezte.

    Ebben az idben a szmtgp segtsgvel olyan tudomnyos s mrnki szmtsokat is el tudtak mr vgezni, mint pldul parcilis differencilegyenletek megoldsa.

    A II. genercis gpek hatsra a 60-as vek elejre kt teljesen fggetlen, egymstl eltr fejldsi irny alakult ki: szszervezs nagy tudomnyos komputerek s karakterszervezs kis perifris gpek, ami a fejlesztst igen megdrgtotta. Kvetkez lpsknt teht ezen kellett segteni.

    A krdst a szmtgpek harmadik genercijnl (19651980, hardver: integrlt ramkrk) az IBM oldotta meg, a System/360 szmtgpcsald bevezetsvel. A csald klnbz mret (memria, gyorsasg, perifrik, r, teljestmny), de egymssal kompatbilis gpekbl llt, gy elvileg brmely gpre rt szoftver futtathat volt brmelyiken. A gyrtmnycsald s szabvnyos egysgek bevezetse a hardverfejleszts kltsgeinek cskkense mellett egyb elnykkel is jrt, ugyanakkor azonban nagyon drga s bonyolult opercis rendszert ignyelt.

    jra eltrbe kerlt teht az alapvet krds, a kltsgcskkents krdse. Ehhez komoly lkst jelentett a nagykapacits, gyors s vletlen hozzfrs (random access) mgnesdobok s mgneslemezek megjelense. Az n. spooling technika (simultaneous peripherial operation on-line) ezeket a trakat mint egy hatalmas mret puffert hasznlja, s egyszerre nemcsak egy, hanem tbb munkt is lemezre tlt. Ez a megolds lnyegben az off-line perifris mveletek egyetlen gpen trtn megvalstsa. Lehetv vlik a perifris s CPU-mveletek teljes sztvlasztsa gy, hogy tbb munka is tlapoldhat, azaz pldul az egyik munka vgrehajtsval egyidben egy msik munka beolvassa s egy harmadik eredmnyeinek kivitele folyhat. Ezzel mind a perifrik, mind pedig a CPU kihasznltsga jelentsen megntt (1.4. bra).

    A vletlen hozzfrs httrtrak megjelensnek legnagyobb jelentsg kvetkezmnye azonban a multiprogramozs lehetsge volt.

    1.4. bra. bra - A spooling technika

  • 1. Bevezets

    9 Created by XMLmind XSL-FO Converter.

    2.3. 1.2.3. Multiprogramozott rendszerek

    A multiprogramozs megjelense eltt a lass perifrik korltoztk a CPU kihasznltsgt: a CPU-nak meg kellett vrnia a perifris mveletek befejezdst, mieltt a kvetkez munka vgrehajtsba belekezdhetett. Radsul a szekvencilis hozzfrs trak miatt a munkkat csak rkezsi sorrendjkben lehetett feldolgozni.

    A vletlen hozzfrs trakrl az opercis rendszer tetszleges sorrendben vlaszthatja ki a kvetkez vgrehajtand munkt, s egy specilis adatszerkezet (nyilvntarts) a job pool rvn gy temezheti, hogy a CPU kihasznltsga kzel 100%-os legyen. (A ksbbiekben ltni fogjuk, hogy a gyakorlatban legjobb esetben is csak nagyjbl 90%-os kihasznltsg rhet el, mivel annak biztostshoz, hogy a munkk ksbb tovbb futtathatk legyenek, szksges a krnyezetk elmentse, illetve visszalltsa.) Egy-egy munka addig fut, amg vrakozni nem knyszerl. Ekkor az opercis rendszer egy msik, futni kpes munkt vlaszt ki s indt el. Amint a flbehagyott munka vrakozsi felttele teljesl, jra felkerl a futtathat folyamatok listjra, s az opercis rendszer a kvetkez temezsi alkalommal kivlaszthatja futsra (1.5. bra).

    1.5. bra. bra - A multiprogramozs alapelve

  • 1. Bevezets

    10 Created b