FÜLSZÖVEG
Ma már az informatika a mérnöki tudományok családjába tartozik. Habár az informatika születésénél sok kiváló matematikus bábáskodott, és a számítástudomány ma már önálló diszciplína, de aligha vitatható, hogy vannak olyan, viszonylag könnyen jellemezhető rétegei és nézetei az informatikának, amelyek nyilvánvalóan mérnökiek. Az operációs rendszerek tervezése, az architekturális kérdések jellegzetesen ilyenek.
A könyv az alábbi elméleti témaköröket tárgyalja:
- Operációs rendszerek alapfogalmai, történeti áttekintés
- Az operációs rendszer mint absztrakt, virtuális gép, alapvető algoritmusok
- Multiprogramozott operációs rendszerek
- Hálózati és elosztott rendszerek
A fenti alapvetések ismertetése után a
- UNIX és a
- Windows NT
operációs rendszerek architektúráiról olvashatunk. Egyedisége a könyvnek ez utóbbiban rejlik. Operációs rendszerek elméletéről és a konkrét operációs rendszerek használatáról több könyvben is olvashatunk, de az architektúra oldaláról való megközelítési mód jellegzetesen mérnöki szemléletet takar. A fenti témaköröket tárgyaló informatikai kiadványok vagy az elméleti oldalt hanyagolják el, és csak konkrét parancsokat és eljárásokat tárgyalják, vagy megfordítva, klasszikus algoritmusokat ismertetve, a konkrétumokat mellőzik.
Mivel nehezen képzelhető el az, hogy egy nagy bonyolultságú operációs rendszert a könyvben tárgyalt tudáselemek nélkül igazán megismerhetnénk, a könyv nem hiányozhat egyetlen hivatásos informatikus polcáról sem, sőt örömmel ajánlható az informatikusok képzésével foglalkozó intézmények számára is. A mű felépítése didaktikus, közel tíz éves, egyetemen történő oktatási tapasztalatokra támaszkodik.
E könyv méltó módon illeszkedik abba a sorozatban, amelyet a Panem Könyvkiadó a hivatásos informatikusok és informatika szakos egyetemi, illetve főiskolai hallgatók számára jelentet meg. Vissza
TARTALOM
Előszó 13
Bevezetés 17
Mit nevezünk operációs rendszernek? 17
Az operációs rendszerek története 20
Korai rendszerek 20
Batch rendszerek 21
Multiprogramozott rendszerek 24
Időosztásos rendszerek 26
Személyi számítógépek 26
Elosztott rendszerek 27
Valósidejű rendszerek 29
Nyílt rendszerek 29
Napjaink rendszerei 30
Rendszermodell és rendszerarchitektúra 30
Az operációs rendszer és környezete 31
Funkciók 31
Csatlakozási felületek 32
Kezelői (operátori) felület 32
Alkalmazási (programozói) felület 35
Hardverfelület 36
Számítógép-architektúrák 38
Egyszerű mikrogép 39
Jellegzetes személyi számítógép 39
Szuperszámítógép 40
Belső szerkezet 42
Rétegek és modulok 42
Tipikus modulok 44
Virtuális hardver 45
Kliens-szerver szerkezet 46
Működés 47
Rendszerhívások kezelése 48
Be-/kivitel végrehajtása 50
Kezelői parancsok 52
Külső megszakítások kezelése 54
Időmérés 54
Hibamegszakítások kezelése (kivételkezelés) 55
Rendszerindítás és leállás 56
Az operációs rendszer mint absztrakt, virtuális gép 58
Folyamatok és szálak 58
Folyamatokból álló rendszerek 62
Folyamatok létrehozásának indokai 62
Független, versengő és együttműködő folyamatok 63
Folyamatok születése és halála 64
Folyamatok együttműködése 65
Együttműködés közös memórián 65
Együttműködés üzenetváltással 67
Folyamatok szinkronizációja 68
Megoldások a PRAM-modell keretei között (szoftvermegoldások) 70
A PRAM-kiterjesztése 73
Szinkronizációs eszközök az operációs rendszer szintjén 75
Folyamatok kommunikációja 77
A partner megnevezése 78
Szemantikai konzisztencia 80
Járulékos (implicit) szinkronizáció 82
Holtpont 82
Mi a holtpont? 83
Holtpont erőforrásokért versengő rendszerekben 84
A strucc algoritmus 87
A holtpont észlelése 88
A holtpont feloldása 91
A holtpont megelőzése 92
A holtpont elkerülése 94
Kombinált stratégiák 98
Kommunikációs holtpontok 99
Éhezés 99
Klasszikus konkurens problémák 100
Termelő-fogyasztó probléma 100
Írók-olvasók problémája 101
Az étkező filozófusok problémája 102
Adatfolyamatok illesztése 103
Folyamatokból álló rendszerek leírása nyelvi szinten 104
A párhuzamosság leírása 104
Az együttműködés nyelvi modellje 106
Tárak 107
Tárhierarchia 107
A logikai memória 109
A háttértárfájlok 110
Fájlmodellek 110
Fájlműveletek 111
Tárak tulajdonságai 112
Működési sebesség 112
Címezhető adategység 113
Tárolási biztonság 113
Készülékek és külső kapcsolatok 113
A külső eszközök fő típusai 114
Készülékmodell az alkalmazói felületen 115
Egyszerű be-/kivitel 116
Fájlműveletek 117
Grafikus eszközök kezelése 117
Terminálkezelés 118
Hálózati kapcsolatok kezelése 118
Készülékmodell a kezelői felületen 119
Védelem és biztonság 119
Védelem 119
Védelmi tartományok 120
Elérési mátrix ábrázolása és kezelése 122
Biztonság 124
A felhasználók azonosítása 124
A rendszer biztonságát növelő általános módszerek 127
Multiprogramozott operációs rendszerek 128
Bevezetés 128
A számítógép-architektúra 130
Az egyprocesszoros von Neumann struktúrájú számítógép-architektúra 130
Bekapcsolási folyamat 131
Megszakítási rendszer 131
B/K-struktúra 132
Közvetlen memória hozzáférés, DMA 132
Tárak 133
Védelem 134
Többprocesszoros, szorosan csatolt számítógéprendszerek 135
Folyamatkezelés 136
A folyamatmodell leképezése a fizikai eszközökre 136
A működés alapjai 137
Sorállási modell 139
Állapotmodell 141
Egy megvalósítási séma 143
Tétlen ciklusok kiküszöbölése 146
Processzorütemezés 147
Az ütemezési algoritmusok összehasonlítása 148
Az ütemezési algoritmusokkal szemben támasztott követelmények 149
Ütemezési algoritmusok 150
Az ütemezési algoritmusok "jóságának" értékelése 154
Ütemezés többprocesszoros rendszerekben 156
Tárkezelés 157
A főtár megosztása a folyamatok között 157
A program címeinek kötées 157
Társzervezési módszerek 161
Virtuális tárkezelés 174
A működés alapjai 174
Betöltendő lap kiválasztása 178
Lapcsere stratégia 178
Gazdálkodás a fizikai tárral 182
Egyéb tényezők 186
Fájlrendszerek 187
Az állományok tárolása a lemezen 189
A fájlok szerkezete 193
Könyvtárak 194
Műveletek 195
Osztott fájlkezelés 196
A hozzáférés szabályozása 197
Készülékkezelés 197
A kernel B/K-alrendszere 199
Háttértárak kezelése 200
A lemezegység fizikai szervezése 201
A lemezműveletek ütemezése 203
Egyéb szervezési elvek a teljesítmény növelésére 204
Az adattárolás megbízhatósága 205
Operációs rendszerek kezelői felülete 206
Az X Window-rendszer 207
Az X-protokoll 208
Az X Window-rendszer koncepciója 209
Ablakkezelés 209
Bemeneti eszközök kezelése 209
Megjelenítő eszközök kezelése 210
A kezelői felület elemei 210
Hálózati és elosztott rendszerek 212
Bevezetés 212
Hálózati architektúra 214
Alapfogalmak 214
A hálózatok topológiája 214
A hálózatok típusai 218
A hálózati kommunikáció rétegei 218
Címzés és forgalomirányítás 220
Hálózati jellegű szolgáltatások 221
Telnet: távoli terminál 221
A Telnet kapcsolat 222
Szerver- és kliensprogramok 222
A Telnet parancsértelmező 224
FTP: fájlátvitel 225
FTP-kapcsolat 225
FTP kliens- és -szerverprogramok 226
Az FTP-parancsértelmező 227
Elosztott szolgáltatások 228
Jellemzők 228
Az elosztott rendszerek legfontosabb jellemzői 229
Elosztott rendszerek tervezési szempontjai 235
Elosztott fájlrendszerek 243
Az elosztott fájlrendszer szolgáltatás 244
Az állományok azonosítása 244
Elnevezési módszerek 245
Az ügyfelek kéréseinek kielégítése 247
A szolgáltató implementációja 249
A fájlok többszörözése 250
Folyamatkezelés 251
Kliens-szerver-folyamatok 251
Távoli eljáráshívás - RPC 253
Szálak alkalmazásának előnyei 255
Időkezelés és koordináció elosztott rendszerekben 257
Időkezelés 257
Elosztott koordináció 265
Elosztott rendszerek biztonsági kérdései 270
Mi a biztonság? 271
Kik a támadók és mik a fenyegetések? 272
A támadás módszerei 272
Az elosztott biztonsági rendszer tervezése 273
Titkosítás 274
Hozzáférés-szabályozás 275
Azonosítás 275
Azonosítás és kulcs szétosztás 275
Kerberos: hitelesítési protokoll nyílt hálózati rendszerekre 277
Unix 279
Bevezetés 279
Az UNIX rövid története 280
Belső szerkezet és működés 282
Szerkezet 282
Folyamatkezelés 284
Végrehajtási módok és környezetek 285
A folyamat absztrakció - a folyamatok állapotai és az állapotátmeneti gráf 287
Folyamatok környezete (kontextus) 289
Folyamatok létrehozása 291
Folyamatok befejezése (terminálás) 292
Ütemezés 292
Az ütemezési algoritmussal szemben támasztott követelmények 293
Az UNIX-ütemezés rövid jellemzése 293
Folyamatok ütemezési prioritása 295
Környezetváltás ütemezéskor 298
Adatszerkezetek a folyamatok prioritásának tárolására 299
Példa az ütemezés számolására 300
Az UNIX-ütemezés értékelése 300
Call-out 302
Szinkronizáció 304
UNIX-jelzések 304
Jelzések keltése 305
Jelzések kezelése 306
Megbízhatatlan jelzések 307
Megbízható jelzések 308
Az SVR3 implementáció 308
BSD jelzésmenedzsment 309
Az SVR4 jelzések 310
Kivételkezelés 310
Folyamatcsoportok és terminálkezelés 311
Folyamatok közötti kommunikáció 312
Jelzések 312
Csővezetékek 312
Folyamat-nyomonkövetés 314
System V IPC 315
Szemaforok 316
Üzenetsorok 317
Osztott memória 317
Hálózati kommunikáció - socket programozás 318
Állományrendszer implementációk 323
A System V állományrendszer 323
A Berkeley FFS állományrendszer 336
Az állományrendszerek megvalósításának újabb megközelítése 339
Speciális állományrendszerek 342
Modern állományrendszerek 344
Teljes folyamatok háttértárra írása 345
A háttértár-szervezés 346
A háttértár-foglalási és -felszabadítási algoritmus 347
Folyamatok háttértárra írása 347
A háttértárra írás, illetve a háttértárról való beolvasás szabályai 351
A háttértárra kiírandó folyamat kiválasztásával kapcsolatos problémák 351
Igény szerinti lapozás 352
A virtuális memóriakezelést támogató adatszerkezetek 353
A virtuális memóriakezelést támogató adatszerkezetek használata 356
Laphibák 358
A laptábla-bejegyzés, a diszk blokk leíró és a pfdata együttes használata 359
A copy-on-write technika és használata 361
Hivatkozás bit szimulálása szoftverből 362
A 4.3 BSD virtuális memóriakezelése 363
Hálózati és elosztott szolgáltatások a UNIX-ban 364
A TCP/IP protokoll család 365
A SUN Network File System (NFS) 366
SUN NFS jellemző tulajdonságai 366
A SUN NFS részei 367
XDR protokoll 369
Az RPC protokoll 369
Az RPC protokoll működése 370
A SUN NFS működése 372
Távoli fájlok elérése NFS használatával 372
POSIX 374
Alapfogalmak, felépítés 375
POSIX környezet 377
Hordozható alkalmazások 377
Folyamatkezelés 379
Állománykezelés 380
Jelzéskezelés 382
Terminálkezelés 383
A Linux-rendszer 384
A Linux fejlődésének állomásai 385
A Linux felépítése és működése 386
A Windows NT operációs rendszer 389
A Windows NT kialakulása 389
Az NT-vel szemben támasztott követelmények 390
Elvárások 390
Tervezői célkitűzések 391
A Windows NT, a Windows 95 és a Windows 98 összehasonlítása 391
Az NT felépítésének főbb jellemzői 393
Az NT objektumorientált szemlélete 394
A Windows NT felépítése 394
HAL 395
Kernel 396
Készülékkezelők 397
Executive 397
Rendszerfolyamatok 398
Szolgáltatások 398
NTDLL.DLL 399
Alrendszerek 399
POSIX alrendszer 400
Win 32 alrendszer 400
A Windows NT belső mechanizmusai 401
Megszakítás- és kivételkezelés 401
A megszakítások típusai és prioritása 402
Kivételkezelés 404
Objektumkezelés 404
Szinkronizáció 405
Kernel szinkronizáció 405
Executive szinkronizáció 406
Lokális eljáráshívás 407
Folyamatok kezelése és ütemezése 408
A Windows NT folyamatmodellje 408
Folyamatok kezelése a Windows NT-ben 409
Szálak kezelése az NT-ben 411
Szálak ütemezése 412
A Kvantum 413
Egy szál állapotai 414
A processzoraffinitás 416
A processzor kiválasztása 417
Memóriakezelés 418
Memória manager felhasználói interfésze 418
Memóriafoglalás 419
Osztott elérésű memória 420
Memóriavédelem 421
Copy-on-write 422
Memória foglalása 422
A memória mérete 424
Címtranszformáció 425
A Windows NT fájlrendszere (NTFS) 425
Elvárások az NTFS-sel szemben 426
Tranzakciónkénti feldolgozás 427
Réteg rendszerű device driver struktúra 429
Az NTFS további előnyös tulajdonságai 429
Az NTFS által használt adattípusok, adatszerkezetek 432
Fájlok elérése NTFS alatt 432
File rekord 433
Rezidens tárolás 433
Nem rezidens tárolás 434
Biztonsági alrendszer 435
A biztonsági alrendszer komponensei 436
Az objektumok védelme 437
A biztonsági auditálás 438
A logon 439
Kérdések, feladatok 440
Bevezetés 440
Az operációs rendszer mint absztrakt, virtuális gép 444
Multiprogramozott operációs rendszerek 448
Hálózati és elosztott rendszerek 454
UNIX 460
A Windows NT operációs rendszer 467
Irodalomjegyzék 471
Tárgymutató 477
Ez is elérhető kínálatunkban:
A könyvben a Unix operációs rendszer jelenlegi és jövőbeli használói a rendszer kezelésével kapcsolatos ismeretekre tehetnek szert, miközben jobban megértik a rendszer néhány alapkoncepcióját, ille...
Online ár:
1 990 Ft
Online ár:
1 190 Ft