Lib.Ru: Moris Dzh. Bah. Arhitektura operacionnoj sistemy Unix
Proza Perevody Poeziya Fantastika Detektivy Klassika Istoriya I DR.>>>[NOVINKI][Hitparad][Samizdat][Muzyka][Hudozhniki][Zagranica][Turizm][ArtOfWar][Forum][Zerkala]
Avtorskie razdely: Sovremennaya Ostrosyuzhetnaya Fantastika Voennaya [koi-win-lat]
(razmer) [rate] data modif. ("THE DESIGN OF THE UNIX OPERATING SYSTEM" by Maurice J. Bach)
Perevod Kryukova A. V.
Predislovie......................................................... 3
GLAVA 1 OBSHCHIJ OBZOR OSOBENNOSTEJ SISTEMY
1.1 ISTORIYA......................................................... 6
1.2 STRUKTURA SISTEMY............................................... 8
1.3 OBZOR S TOCHKI ZRENIYA POLXZOVATELYA.............................. 10
1.3.1 Fajlovaya sistema.......................................... 10
1.3.2 Sreda vypolneniya processov................................ 14
1.3.3 |lementy konstrukcionnyh blokov........................... 16
1.4 FUNKCII OPERACIONNOJ SISTEMY................................... 17
1.5 PREDPOLAGAEMAYA APPARATNAYA SREDA................................ 18
1.5.1 Preryvaniya i osobye situacii.............................. 19
1.5.2 Urovni preryvaniya processora.............................. 20
1.5.3 Raspredelenie pamyati...................................... 20
1.6 VYVODY......................................................... 21
GLAVA 2 VVEDENIE V ARHITEKTURU YADRA OPERACIONNOJ SISTEMY
2.1 ARHITEKTURA OPERACIONNOJ SISTEMY UNIX.......................... 22
2.2 VVEDENIE V OSNOVNYE PONYATIYA SISTEMY............................ 24
2.2.1 Obzor osobennostej podsistemy upravleniya fajlami.......... 24
2.2.2 Processy.................................................. 26
2.2.2.1 Kontekst processa.................................... 31
2.2.2.2 Sostoyaniya processa................................... 31
2.2.2.3 Perehody iz sostoyaniya v sostoyanie.................... 31
2.2.2.4 "Son" i probuzhdenie.................................. 34
2.3 STRUKTURY DANNYH YADRA.......................................... 35
2.4 UPRAVLENIE SISTEMOJ............................................ 36
2.5 VYVODY I OBZOR POSLEDUYUSHCHIH GLAV................................ 37
2.6 UPRAZHNENIYA..................................................... 38
ogl GLAVA 3 BUFER SVERHOPERATIVNOJ PAMYATI
3.1 ZAGOLOVKI BUFERA.............................................. 39
3.2 STRUKTURA OBLASTI BUFEROV (BUFERNOGO PULA).................... 41
3.3 MEHANIZM POISKA BUFERA........................................ 42
3.4 CHTENIE I ZAPISX DISKOVYH BLOKOV............................... 52
3.5 PREIMUSHCHESTVA I NEUDOBSTVA BUFERNOGO KESHA...................... 55
3.6 VYVODY........................................................ 56
3.7 UPRAZHNENIYA.................................................... 57
ogl GLAVA 4 VNUTRENNEE PREDSTAVLENIE FAJLOV
4.1 INDEKSY....................................................... 59
4.1.1 Opredelenie.............................................. 59
4.1.2 Obrashchenie k indeksam..................................... 62
4.1.3 Osvobozhdenie indeksov.................................... 64
4.2 STRUKTURA FAJLA OBYCHNOGO TIPA................................. 64
4.3 KATALOGI...................................................... 70
4.4 PREVRASHCHENIE SOSTAVNOGO IMENI FAJLA (PUTI POISKA)
V IDENTIFIKATOR INDEKSA....................................... 71
4.5 SUPERBLOK..................................................... 73
4.6 NAZNACHENIE INDEKSA NOVOMU FAJLU............................... 73
4.7 VYDELENIE DISKOVYH BLOKOV..................................... 80
4.8 DRUGIE TIPY FAJLOV............................................ 83
4.9 VYVODY........................................................ 83
ogl GLAVA 5 SISTEMNYE OPERACII DLYA RABOTY S FAJLOVOJ SISTEMOJ
5.1 OPEN.......................................................... 86
5.2 READ.......................................................... 90
5.3 WRITE......................................................... 95
5.4 ZAHVAT FAJLA I ZAPISI......................................... 96
5.5 UKAZANIE MESTA V FAJLE,GDE BUDET VYPOLNYATXSYA VVOD-VYVOD -LSEEK 96
5.6 CLOSE......................................................... 97
5.7 SOZDANIE FAJLA................................................ 99
5.8 SOZDANIE SPECIALXNYH FAJLOV.................................. 100
5.9 SMENA TEKUSHCHEGO I KORNEVOGO KATALOGA.......................... 102
5.10 SMENA VLADELXCA I REZHIMA DOSTUPA K FAJLU.................... 103
5.11 STAT I FSTAT................................................ 103
5.12 KANALY...................................................... 104
5.12.1 Sistemnaya funkciya pipe................................. 104
5.12.2 Otkrytie poimenovannogo kanala......................... 106
5.12.3 CHtenie iz kanalov i zapis' v kanaly.................... 106
5.12.4 Zakrytie kanalov....................................... 108
5.12.5 Primery................................................ 109
5.13 DUP......................................................... 110
5.14 MONTIROVANIE I DEMONTIROVANIE FAJLOVYH SISTEM............... 111
5.14.1 Peresechenie tochek montirovaniya v marshrutah poiska fajlov.. 115
5.14.2 Demontirovanie fajlovoj sistemy........................... 118
5.15 LINK........................................................ 120
5.16 UNLINK...................................................... 123
5.16.1 Celostnost' fajlovoj sistemy.............................. 125
5.16.2 Povody dlya konkurencii.................................... 126
5.17 ABSTRAKTNYE OBRASHCHENIYA K FAJLOVYM SISTEMAM................... 129
5.18 SOPROVOZHDENIE FAJLOVOJ SISTEMY.............................. 130
5.19 VYVODY...................................................... 131
5.20 UPRAZHNENIYA.................................................. 131
ogl GLAVA 6 STRUKTURA PROCESSOV
6.1 SOSTOYANIYA PROCESSA I PEREHODY MEZHDU NIMI..................... 137
6.2 FORMAT PAMYATI SISTEMY........................................ 141
6.2.1 Oblasti................................................. 141
6.2.2 Stranicy i tablicy stranic.............................. 143
6.2.3 Razmeshchenie yadra......................................... 145
6.2.4 Prostranstvo processa................................... 146
6.3 KONTEKST PROCESSA............................................ 147
6.4 SOHRANENIE KONTEKSTA PROCESSA................................ 150
6.4.1 Preryvaniya i osobye situacii............................ 151
6.4.2 Vzaimodejstvie s operacionnoj sistemoj cherezzovy
sistemnyh funkcij....................................... 153
6.4.3 Pereklyuchenie konteksta.................................. 156
6.4.4 Sohranenie konteksta na sluchaj avarijnogo zaversheniya.... 158
6.4.5 Kopirovanie dannyh mezhdu adresnym prostranstvsis-
temy i adresnym prostranstvom zadachi.................... 159
6.5 UPRAVLENIE ADRESNYM PROSTRANSTVOM PROCESSA................... 159
6.5.1 Blokirovka oblasti i snyatie blokirovki.................. 160
6.5.2 Vydelenie oblasti....................................... 160
6.5.3 Prisoedinenie oblasti k processu........................ 161
6.5.4 Izmenenie razmera oblasti............................... 162
6.5.5 Zagruzka oblasti........................................ 163
6.5.6 Osvobozhdenie oblasti.................................... 167
6.5.7 Otsoedinenie oblasti ot processa........................ 168
6.5.8 Kopirovanie soderzhimogo oblasti......................... 169
6.6 PRIOSTANOVKA VYPOLNENIYA...................................... 170
6.6.1 Sobytiya, vyzyvayushchie priostanov vypolneniya, i ih adresa.. 171
6.6.2 Algoritmy priostanova i vozobnovleniya vypolneniya........ 173
6.7 VYVODY....................................................... 175
6.8 UPRAZHNENIYA................................................... 176
ogl GLAVA 7 UPRAVLENIE PROCESSOM
7.1 SOZDANIE PROCESSA............................................ 179
7.2 SIGNALY...................................................... 187
7.2.1 Obrabotka signalov...................................... 190
7.2.2 Gruppy processov........................................ 197
7.2.3 Posylka signalov processami............................. 197
7.3 ZAVERSHENIE VYPOLNENIYA PROCESSA............................... 198
7.4 OZHIDANIE ZAVERSHENIYA VYPOLNENIYA PROCESSA...................... 200
7.5 VYZOV DRUGIH PROGRAMM........................................ 204
7.6 KOD IDENTIFIKACII POLXZOVATELYA PROCESSA...................... 213
7.7 IZMENENIE RAZMERA PROCESSA................................... 215
7.8 KOMANDNYJ PROCESSOR SHELL.................................... 218
7.9 ZAGRUZKA SISTEMY I NACHALXNYJ PROCESS......................... 220
7.10 VYVODY...................................................... 223
7.11 UPRAZHNENIYA.................................................. 224
ogl GLAVA 8 DISPETCHERIZACIYA PROCESSOV I EE VREMENNYE HARAKTERISTIKI
8.1 PLANIROVANIE VYPOLNENIYA PROCESSOV............................ 232
8.1.1 Algoritm................................................ 233
8.1.2 Parametry dispetcherizacii............................... 233
8.1.3 Primery dispetcherizacii processov....................... 237
8.1.4 Upravlenie prioritetami................................. 238
8.1.5 Planirovanie na osnove spravedlivogo razdela............ 239
8.1.6 Rabota v rezhime real'nogo vremeni....................... 241
8.2 SISTEMNYE OPERACII, SVYAZANNYE SO VREMENEM.................... 241
8.3 TAJMER....................................................... 243
8.3.1 Perezapusk chasov........................................ 245
8.3.2 Vnutrennie sistemnye tajm-auty.......................... 246
8.3.3 Postroenie profilya...................................... 247
8.3.4 Uchet i statistika....................................... 250
8.3.5 Podderzhanie vremeni v sisteme........................... 251
8.4 VYVODY....................................................... 251
8.5 UPRAZHNENIYA................................................... 251
ogl GLAVA 9 ALGORITMY UPRAVLENIYA PAMYATXYU
9.1 SVOPING...................................................... 253
9.1.1 Upravlenie prostranstvom na ustrojstve vygruzki......... 253
9.1.2 Vygruzka processov...................................... 257
9.1.2.1 Vygruzka pri vypolnenii sistemnoj funkcii fork........ 259
9.1.2.2 Vygruzka s rasshireniem................................ 260
9.1.3 Zagruzka (podkachka) processov........................... 260
9.2 PODKACHKA PO ZAPROSU.......................................... 265
9.2.1 Struktury dannyh, isp-mye podsistemoj zameshcheniya stranic..267
9.2.1.1 Funkciya fork v sisteme s zameshcheniem stranic........ 270
9.2.1.2 Funkciya exec v sisteme s zameshcheniem stranic........ 272
9.2.2 "Sborshchik" stranic....................................... 274
9.2.3 Otkazy pri obrashcheniyah k stranicam....................... 277
9.2.3.1 Obrabotka preryvanij po otkazu iz-za nedostupnosti 278
9.2.3.2 Obrabotka preryvanij po otkazu sistemy zashchity...... 282
9.2.4 Zameshchenie stranic na menee slozhnoj tehnicheskoj baze..... 285
9.3 SISTEMA SMESHANNOGO TIPA SO SVOPINGOM I PODKACHKOJ PO ZAPROSU.. 286
9.4 VYVODY....................................................... 287
9.5 UPRAZHNENIYA................................................... 287
ogl GLAVA 10 PODSISTEMA UPRAVLENIYA VVODOM-VYVODOM
10.1 VZAIMODEJSTVIE DRAJVEROV S PROGRAMMNOJ I APPARATNOJ SREDOJ.. 290
10.1.1 Konfiguraciya sistemy................................... 291
10.1.2 Sistemnye funkcii i vzaimodejstvie s drajverami........ 293
10.1.2.1 Open.............................................. 294
10.1.2.2 Close............................................. 297
10.1.2.3 Read i Write...................................... 298
10.1.2.4 Strategicheskij interfejs.......................... 299
10.1.2.5 Ioctl............................................. 300
10.1.2.6 Drugie funkcii, imeyushchie otnoshenie k fajlovoj siste 300
10.1.3 Programmy obrabotki preryvanij......................... 301
10.2 DISKOVYE DRAJVERY........................................... 301
10.3 TERMINALXNYE DRAJVERY....................................... 305
10.3.1 Simvol'nye spiski...................................... 307
10.3.2 Terminal'nyj drajver v kanonicheskom rezhime............. 310
10.3.3 Terminal'nyj drajver v rezhime bez obrabotki simvolov... 315
10.3.4 Opros terminala........................................ 318
10.3.5 Naznachenie operatorskogo terminala..................... 318
10.3.6 Drajver kosvennogo terminala........................... 319
10.3.7 Vhod v sistemu......................................... 319
10.4 POTOKI...................................................... 320
10.4.1 Bolee detal'noe rassmotrenie potokov................... 324
10.4.2 Analiz potokov......................................... 326
10.5 VYVODY...................................................... 327
10.6 UPRAZHNENIYA.................................................. 327
ogl GLAVA 11 VZAIMODEJSTVIE PROCESSOV
11.1 TRASSIROVKA PROCESSOV....................................... 330
11.2 VZAIMODEJSTVIE PROCESSOV V VERSII V SISTEMY................. 334
11.2.1 Soobshcheniya.............................................. 335
11.2.2 Razdelenie pamyati...................................... 341
11.2.3 Semafory............................................... 344
11.2.4 Obshchie zamechaniya........................................ 353
11.3 VZAIMODEJSTVIE V SETI....................................... 354
11.4 GNEZDA...................................................... 355
11.5 VYVODY...................................................... 360
11.6 UPRAZHNENIYA.................................................. 360
ogl GLAVA 12 MNOGOPROCESSORNYE SISTEMY
12.1 PROBLEMY, SVYAZANNYE S MNOGOPROCESSORNYMI SISTEMAMI.......... 362
12.2 GLAVNYJ I PODCHINENNYJ PROCESSORY............................ 363
12.3 SEMAFORY.................................................... 365
12.3.1 Opredelenie semaforov.................................. 366
12.3.2 Realizaciya semaforov................................... 367
12.3.3 Primery algoritmov..................................... 374
12.3.3.1 Vydelenie bufera.................................. 374
12.3.3.2 Wait.............................................. 377
12.3.3.3 Drajvery.......................................... 377
12.3.3.4 Fiktivnye processy................................ 378
12.4 SISTEMA TUNIS............................................... 378
12.5 UZKIE MESTA V FUNKCIONIROVANII MNOGOPROCESSORNYH SISTEM..... 379
12.6 UPRAZHNENIYA.................................................. 379
ogl GLAVA 13 RASPREDELENNYE SISTEMY
13.1 PERIFERIJNYE PROCESSORY..................................... 382
13.2 SVYAZX TIPA NEWCASTLE........................................ 390
13.3 "PROZRACHNYE" RASPREDELENNYE FAJLOVYE SISTEMY................ 393
13.4 RASPREDELENNAYA MODELX BEZ PEREDATOCHNYH PROCESSOV............ 396
13.5 VYVODY...................................................... 397
13.6 UPRAZHNENIYA.................................................. 398
ogl PRILOZHENIE
SISTEMNYE OPERACII............................................... 400
access....................................................... 400
acct......................................................... 400
alarm........................................................ 400
brk.......................................................... 401
chdir........................................................ 401
chmod........................................................ 401
chown........................................................ 401
chroot....................................................... 401
close........................................................ 402
creat........................................................ 402
dup.......................................................... 402
exec......................................................... 402
exit......................................................... 402
fcntl........................................................ 403
fork......................................................... 404
getpid....................................................... 404
getuid....................................................... 404
ioctl........................................................ 404
kill......................................................... 404
link......................................................... 405
lseek........................................................ 405
mknod........................................................ 405
mount........................................................ 406
msgctl....................................................... 406
msgget....................................................... 407
msgsnd i msgrcv.............................................. 407
nice......................................................... 408
open......................................................... 408
pause........................................................ 409
pipe......................................................... 409
plock........................................................ 409
profil....................................................... 410
ptrace....................................................... 410
read......................................................... 410
semctl....................................................... 411
semget....................................................... 412
semop........................................................ 412
setpgrp...................................................... 413
setuid....................................................... 413
shmctl....................................................... 413
shmget....................................................... 414
shmop........................................................ 414
signal....................................................... 415
stat......................................................... 416
stime........................................................ 416
sync......................................................... 416
time......................................................... 416
times........................................................ 417
ulimit....................................................... 417
umask........................................................ 417
umount....................................................... 418
uname........................................................ 418
unlink....................................................... 418
ustat........................................................ 418
utime........................................................ 419
wait......................................................... 419
write........................................................ 419
BIBLIOGRAFIYA..................................................... 420
zip(433k) |ta knizhka dostupna takzhe v vide odnogo zip-arhiva
Visitors:
1996 Nov: 310
1997: 250,280
Svidetel'stvo o registracii elektronnogo SMI 77-20625 | Pri podderzhke Federal'nogo agentstva po pechati i massovym kommunikaciyam. |