1.062.077

kiadvánnyal nyújtjuk Magyarország legnagyobb antikvár könyv-kínálatát

A kosaram
0
MÉG
5000 Ft
a(z) 5000Ft-os
szállítási
értékhatárig

Operációs rendszerek

Tervezés és implementáció

Szerző
Szerkesztő
Fordító
Budapest
Kiadó: Panem Könyvkiadó Kft.
Kiadás helye: Budapest
Kiadás éve:
Kötés típusa: Fűzött keménykötés
Oldalszám: 680 oldal
Sorozatcím:
Kötetszám:
Nyelv: Magyar  
Méret: 24 cm x 17 cm
ISBN: 978-963-5454-76-1
Megjegyzés: CD melléklet nélkül.
Értesítőt kérek a kiadóról

A beállítást mentettük,
naponta értesítjük a beérkező friss
kiadványokról
A beállítást mentettük,
naponta értesítjük a beérkező friss
kiadványokról

Fülszöveg

Az operációs rendszerekről szóló kézikönyvek többsége az elméletet hangsúlyozza és kevésbé a gyakorlatot. Könyvünk megkísérli a kettő egyensúlyban tartását. Nagy részletességgel tárgyalja az alapvető fogalmakat, amelyek között megtalálhatók a processzorok, processzusok kommunikációi, szemaforok, monitorok, üzenetváltás, ütemezési algoritmusok, bevitel-kivitel, holtpont, eszközvezérlő, memóriakezelés, lapozási algoritmusok, fájlrendszerek, a biztonság és védelem módszerei. Emellett részletesen ismertetünk egy Unix-kompatibilis konkrét rendszert is, a MINIX 3-at, melynek teljes forráskódját is rendelkezésre bocsátjuk tanulmányozás céljából a CD mellékleten. Ez a szerkezet biztosítja, hogy az olvasó ne csak a fogalmakat tanulja meg, hanem azt is, hogy ezek hogyan használhatók valódi operációs rendszerekben. A MINIX 3 különösen a kisebb PC-ket helyezi a középpontba, ahol az erőforrások mindig korlátozottak. Mindenesetre ez a tervezési mód sokkal egyszerűbbé teszi az olvasók számára az... Tovább

Fülszöveg

Az operációs rendszerekről szóló kézikönyvek többsége az elméletet hangsúlyozza és kevésbé a gyakorlatot. Könyvünk megkísérli a kettő egyensúlyban tartását. Nagy részletességgel tárgyalja az alapvető fogalmakat, amelyek között megtalálhatók a processzorok, processzusok kommunikációi, szemaforok, monitorok, üzenetváltás, ütemezési algoritmusok, bevitel-kivitel, holtpont, eszközvezérlő, memóriakezelés, lapozási algoritmusok, fájlrendszerek, a biztonság és védelem módszerei. Emellett részletesen ismertetünk egy Unix-kompatibilis konkrét rendszert is, a MINIX 3-at, melynek teljes forráskódját is rendelkezésre bocsátjuk tanulmányozás céljából a CD mellékleten. Ez a szerkezet biztosítja, hogy az olvasó ne csak a fogalmakat tanulja meg, hanem azt is, hogy ezek hogyan használhatók valódi operációs rendszerekben. A MINIX 3 különösen a kisebb PC-ket helyezi a középpontba, ahol az erőforrások mindig korlátozottak. Mindenesetre ez a tervezési mód sokkal egyszerűbbé teszi az olvasók számára az operációs rendszerek működésének megértését, mintha egy nagy monolitikus rendszert kellene tanulmányozniuk.
Tanenbaum és Woodhull munkája olyan alapmű, amelyet a világ számos egyetemén az operációs rendszerek elméleti tankönyveként használnak, és így nem hiányozhat egyetlen informatikai hallgató, rendszergazda vagy rendszer-adminisztrátor könyvespolcáról sem. Vissza

Tartalom

Előszó 11
1. Bevezetés 15
1.1. Mi az az operációs rendszer? 17
1.1.1. Az operációs rendszer mint kiterjesztett gép 18
1.1.2. Az operációs rendszer mint erőforrás-kezelő 19
1.2. Az operációs rendszerek története 20
1.2.1. Az első generáció (1945-1955): vákuumcsövek és kapcsolótáblák 20
1.2.2. A második generáció (1955-1965): tranzisztorok és kötegelt rendszerek 21
1.2.3. Harmadik generáció (1965-1980): integrált áramkörök és multiprogramozás 23
1.2.4. A negyedik generáció (1980-tól napjainkig): személyi számítógépek 28
1.2.5. A MINIX 3 története 30
1.3. Az operációs rendszer fogalmai 33
1.3.1. Processzusok 34
1.3.2. Fájlok 36
1.3.3. A parancsértelmező 39
1.4. Rendszerhívások 40
1.4.1. Processzuskezelő rendszerhívások 42
1.4.2. Szignálkezelő rendszerhívások 45
1.4.3. Fájlkezelő rendszerhívások 47
1.4.4. Könyvtárkezelő rendszerhívások 52
1.4.5. A védelem rendszerhívásai 55
1.4.6. Az időkezelés rendszerhívásai 56
1.5. Az operációs rendszer struktúrája 57
1.5.1. Monolitikus rendszerek 57
1.5.2. Rétegelt rendszerek 59
1.5.3. Virtuális gépek 61
1.5.4. Exokernelek 63
1.5.5. A kliens-szerver modell 64
1.6. Könyvünk további részeinek felépítése 65
1.7. Összefoglalás 66
Feladatok 66
2. Processzusok 69
2.1. Bevezetés 69
2.1.1. A processzusmodell 69
2.1.2. Processzusok létrehozása 71
2.1.3. Processzusok befejezése 73
2.1.4. Processzushierarchiák 74
2.1.5. Processzusállapotok 75
2.1.6. Processzusok megvalósítása 77
2.1.7. Szálak 79
2.2. Processzusok kommunikációja 83
2.2.1. Versenyhelyzetek 83
2.2.2. Kritikus szekciók 84
2.2.3. Kölcsönös kizárás tevékeny várakozással 86
2.2.4. Alvás és ébredés 91
2.2.5. Szemaforok 93
2.2.6. Mutexek 96
2.2.7. Monitorok 96
2.2.8. Üzenetküldés 100
2 3. Klasszikus IPC-problémák 104
2.3.1. Az étkező filozófusok probléma 104
2.3.2. Az olvasók és írók probléma 107
2.4. Ütemezés 109
2.4.1. Bevezetés az ütemezésbe 109
2.4.2. Ütemezés kötegelt rendszerekben 114
2.4.3. Ütemezés interaktív rendszerekben 118
2.4.4. Ütemezés valós idejű rendszerekben 125
2.4.5. Elvek és megvalósítás 126
2.4.6. Szálütemezés 127
2.5. A MINIX 3-processzusok áttekintése 128
2.5.1. A MINIX 3 belső szerkezete 129
2.5.2. Processzuskezelés a MINIX 3-ban 132
2.5.3. Processzusok közötti kommunikáció a MINIX 3-ban 136
2.5.4. Processzusok ütemezése a MINIX 3-ban 139
2.6. Processzusok megvalósítása MINIX 3-ban 141
2.6.1. A MINIX 3 forráskódjának szerkezete 141
2.6.2. A MINIX 3 fordítása és futtatása 144
2.6.3. A közös definíciós fájlok 147
2.6.4. A MINIX 3 definíciós állományok 154
2.6.5. Processzusok adatszerkezetei és definíciós állományai 163
2.6.6. A MINIX 3 indítása 173
2.6.7. A rendszer inicializálása 176
2.6.8. Megszakításkezelés a MINIX 3-ban 183
2.6.9. Processzusok közötti kommunikáció a MINIX 3-ban 194
2.6.10. Ütemezés a MINIX 3-ban 198
2.6.11. Hardverfüggő kernelkomponensek 202
2.6.12. Kiegészítő eljárások és a kernelkönyvtár 206
2.7. A MINIX 3-rendszertaszk 209
2.7.1. A rendszertaszk áttekintése 211
2.7.2. A rendszertaszk megvalósítása 214
2.7.3. A rendszerkönyvtár megvalósítása 217
2.8. A MINIX 3-időzítőtaszk 220
2.8.1. Időzítőhardver 220
2.8.2. Időzítőszoftver 222
2.8.3. A MINIX 3-időzítőmeghajtó áttekintése 225
2.8.4. A MINIX 3-időzítőmeghajtó megvalósítása 230
2.9. Összefoglalás 231
Feladatok 233
3. Bevitel/Kivitel 238
3.1. Az I/O-hardver alapjai 238
3.1.1. I/O-eszközök 239
3.1.2. Eszközvezérlők 240
3.1.3. Memórialeképezésű I/O 242
3.1.4. Megszakítások 243
3.1.5. Közvetlen memóriaelérés (DMA) 244
3.2. Az I/O-szoftver alapelvei 246
3.2.1. Az I/O-szoftver céljai 246
3.2.2. Megszakításkezelők 248
3.2.3. Eszközmeghajtók 248
3.2.4. Eszközfüggetlen I/O-szoftver 250
3.2.5. A felhasználói szintű I/O-szoftver 253
3.3. Holtpontok 255
3.3.1. Erőforrások 256
3.3.2. A holtpont alapelvei 257
3.3.3. A strucc algoritmus 261
3.3.4. Felismerés és helyreállítás 262
3.3.5. A holtpont megelőzése 262
3.3.6. A holtpont elkerülése 265
3.4. A MINIX 31/O áttekintése 270
3.4.1. Megszakításkezelők és I/O-elérés a MINIX 3-ban 270
3.4.2. A MINIX 3 eszközmeghajtói 274
3.4.3. Eszközfüggetlen I/O-szoftver a MINIX 3-ban 278
3.4.4. Felhasználói szintű I/O-szoftver a MINIX 3-ban 278
3.4.5. Holtpontkezelés a MINIX 3-ban 279
3.5. Blokkos eszközök a MINIX 3-ban 280
3.5.1. Blokkos eszközmeghajtók áttekintése a MINIX 3-ban 280
3.5.2. Közös blokkos eszközmeghajtó szoftver 283
3.5.3. A meghajtó könyvtára 287
3.6. RAM-lemezek 289
3.6.1. Hardver és szoftver a RAM-lemeznél 290
3.6.2. A RAM-lemezmeghajtó áttekintése a MINIX 3-ban 291
3.6.3. A RAM-lemezmeghajtó megvalósítása a MINIX 3-ban 293
3.7. Lemezek 296
3.7.1. Lemezhardver 297
3.7.2. RAID 299
3.7.3. Lemezszoftver 300
3.7.4. A MINIX 3 merevlemez-meghajtója 306
3.7.5. A merevlemez-meghajtó megvalósítása MINIX 3-ban 3l0
3.7.6. Hajlékonylemezek kezelése 319
3.8. A terminálok 322
3.8.1. A terminálhardver 323
3.8.2. A terminálszoftver 327
3 8 3 A MINIX 3 terminálmeghajtójának attekintese 337
3.8.4. Az eszközfüggetlen terminálmeghajtó implementációja 353
3.8.5. A billentyűzetmeghajtó megvalósítása 372
3.8.6. A képernyőmeghajtó megvalósítása 380
3.9. Összefoglalás 389
Feladatok 390
4. Memóriagazdálkodás 395
4.1. Alapvető memóriakezelés 396
4.1.1. Monoprogramozás csere és lapozás nélkül 396
4.1.2. Multiprogramozás rögzített méretű partíciókkal 397
4.1.3. Relokáció és védelem 398
4.2. Csere 400
4.2.1. Memóriakezelés bittérképpel 402
4.2.2. Memóriakezelés láncolt listákkal 403
4.3. Virtuális memória 405
4.3.1. Lapozás 405
4.3.2. Laptáblák 409
4.3.3. TLB - címfordítási gyorsítótár 413
4.3.4. Invertált laptáblák 415
4.4. Lapcserélési algoritmusok 417
4.4.1. Az optimális lapcserélési algoritmus 417
4.4.2. Az NRU lapcserélési algoritmus 418
4.4.3. A FIFO lapcserélési algoritmus 419
4.4.4. A második lehetőség lapcserélési algoritmus 420
4.4.5. Az óra lapcserélési algoritmus 420
4.4.6. Az LRU lapcserélési algoritmus 421
4.4.7. Az LRU szoftveres szimulációja 422
4.5. A lapozásos rendszerek tervezési szempontjai 424
4.5.1. A munkahalmaz modell 424
4.5.2. Lokális vagy globális helyfoglalás 426
4.5.3. Lapméret 429
4.5.4. Virtuális memória interfész 430
4.6. Szegmentálás 431
4.6.1. A tiszta szegmentálás implementációja
4.6.2. Szegmentálás lapozással: Intel Pentium
4.7. A MINIX 3 processzuskezelője 43!j
4.7.1. A memória szerkezete 441
4.7.2. Üzenetkezelés 444
4.7.3. A processzuskezelő adatszerkezetei és algoritmusai 446
4.7.4. A fork, az exit és a wait rendszerhívás 451
4.7.5. Az exec rendszerhívás 452
4.7.6. A brk rendszerhívás 456
4.7.7. Szignálkezelés 456
4.7.8. Egyéb rendszerhívások 464
4.8. A MINIX 3 processzuskezelőjének implementációja 465
4.8.1. A definíciós fájlok és az adatszerkezetek 465
4.8.2. A főprogram 469
4.8.3. A fork, az exit és a wait implementációja 474
4.8.4. Az exec implementációja 476
4.8.5. A brk implementációja 480
4.8.6. A szignálkezelés implementációja 480
4.8.7. A többi rendszerhívás implementációja 489
4.8.8. A memóriakezelés segédeljárásai 492
4.9. Összefoglalás 493
Feladatok 494
5. Fájlrendszerek 499
5.1. Fájlok 500
5.1.1. Fájlnevek 500
5.1.2. Fájlszerkezet 502
5.1.3. Fájltípusok 503
5.1.4. Fájlelérés 505
5.1.5. Fájlattribútumok 506
5.1.6. Fájlműveletek 507
5.2. Könyvtárak 509
5.2.1. Egyszerű könyvtárszerkezet 509
5.2.2. Hierarchikus könyvtárszerkezet 511
5.2.3. Útvonal megadása 511
5.2.4. Könyvtári műveletek 514
5.3. Fájlrendszerek megvalósítása 515
5.3.1. Fájlrendszerszerkezet 515
5.3.2. Fájlok megvalósítása 517
5.3.3. Könyvtárak megvalósítása 521
5.3.4. Lemezterület-kezelés 527
5.3.5. Fájlrendszerek megbízhatósága 530
5.3.6. Fájlrendszer hatékonysága 537
5.3.7. Naplózott fájlrendszer 542
5.4. Biztonság 543
5.4.1. Biztonsági környezet 544
5.4.2. Általános biztonság elleni támadások 549
5.4.3. Tervezési elvek a biztonság érdekében 550
5.4.4. Felhasználó azonosítása 550
5.5. Védelmi mechanizmusok 555
5.5.1. Védelmi tartományok 555
5.5.2. Hozzáférést vezérlő listák 557
5.5.3. Képességi listák 560
5.5.4. Rejtett csatornák 563
5.6. A MINIX 3 fájlrendszere 566
5.6.1. Üzenetek 567
5.6.2. A fájlrendszer felépítése 568
5.6.3. A bittérképek 572
5.6.4. Az i-csomópontok 574
5.6.5. A blokkgyorsítótár 576
5.6.6. Könyvtárak és elérési utak 578
5.6.7. Az állományleírók 581
5.6.8. Fájlzárolás 583
5.6.9. Adatcsövek és speciális fájlok 583
5.6.10. Egy példa: a read rendszerhívás 585
5.7. A MINIX 3 fájlrendszerének megvalósítása 586
5.7.1. Definíciós állományok és globális adatszerkezetek 587
5.7.2. A táblák kezelése 591
5.7.3. A főprogram 600
5.7.4. Egyedi fájlokon végzett műveletek 604
5.7.5. Könyvtárak és elérési utak 614
5.7.6. További rendszerhívások 619
5.7.7. Az I/O-eszközcsatoló 621
5.7.8. Egyéb rendszerhívások 626
5.7.9. Fájlrendszer-segédeljárások 628
5.7.10. Egyéb MINIX 3-komponensek 629
5.8. Összefoglalás 630
Feladatok 631
6. További irodalom 635
6.1. Ajánlott irodalom 635
6.1.1. Bevezetés és általános témájú munkák 635
6.1.2. Processzusok 638
6.1.3. Bevitel/kivitel 638
6.1.4. Memóriakezelés 639
6.1.5. Fájlrendszerek 640
62. Betűrendes irodalomjegyzék 642
Függelék 649
F.1. A MINIX 3 telepítése 649
F.1.1. Előkészület 649
F.1.2. Rendszerindítás 651
F.1.3. Telepítés a merevlemezre 652
F.1.4. Tesztelés 654
F.1.5. Szimulátor használata 657
F.2. A MINIX 3 forráskódja - CD melléklet 659
F.3. Fájlmutató 659
Tárgymutató 661
Megvásárolható példányok

Nincs megvásárolható példány
A könyv összes megrendelhető példánya elfogyott. Ha kívánja, előjegyezheti a könyvet, és amint a könyv egy újabb példánya elérhető lesz, értesítjük.

Előjegyzem