

3.3 Architetture parallele...................................................................................... 159
3.3.1 Classificazione di Flynn....................................................................... 159
3.3.2 SIMD..................................................................................................... 161
3.3.3 Definizione di parallelismo................................................................. 162
3.3.4 Processore superscalare....................................................................... 163
3.3.5 Processore vettoriale............................................................................ 165
3.3.6 Assenza di cicli in una elaborazione vettoriale.................................. 167
3.3.7 Multiprocessori.................................................................................... 168
3.3.8 Multicomputer..................................................................................... 170
3.4 Processore e memorie..................................................................................... 171
3.4.1 Memorie RAM, ROM, Cache.............................................................. 171
3.4.2 RAM, ROM........................................................................................... 173
3.4.3 Memoria cache. ................................................................................... 177
3.4.4 Le memorie e il processore................................................................. 179
3.4.5 Bus di comunicazione. ........................................................................ 181
3.4.6 Le memorie secondarie....................................................................... 183
3.5 La gestione dell’input/output........................................................................ 186
3.5.1 Introduzione........................................................................................ 186
3.5.2 Salvataggio e ripristino del contesto................................................... 189
3.5.3 Tecniche di colloquio.......................................................................... 190
Capitolo 4
- La struttura dei programmi di base
4.1 Il sistema operativo. ........................................................................................ 205
4.1.1 La struttura di un sistema operativo................................................... 206
4.2 La gestione dei processi.................................................................................. 208
4.2.1 Introduzione........................................................................................ 208
4.2.2 Architettura e modello di esecuzione. ............................................... 209
4.2.3 Programma concorrente..................................................................... 210
4.2.4 Programma in tempo reale................................................................. 211
4.2.5 Processi................................................................................................. 212
4.2.6 Transizioni di stato............................................................................... 213
4.2.7 Creazione ed eliminazione di processi............................................... 214
4.2.8 Sincronizzazione tra processi.............................................................. 214
4.2.9 Descrittore del processo...................................................................... 214
4.2.10 Il nucleo coordinatore di processi...................................................... 215
4.2.11 Risorse.................................................................................................. 216
4.2.12 Interazione fra processi....................................................................... 218
4.2.13 Competizione fra processi per le risorse............................................ 218
4.2.14 Cooperazione fra processi tramite condivisione. .............................. 219
4.2.15 Cooperazione fra processi tramite comunicazione........................... 220
4.2.16 Requisiti per la mutua esclusione....................................................... 220
4.2.17 Produttore/consumatore.................................................................... 221
4.2.18 Primitive di sincronizzazione.............................................................. 222
4.2.19 Stallo (deadlock)................................................................................. 224
4.2.20 Interrupt............................................................................................... 226
4.2.21 Ruolo dei segnali di interruzione....................................................... 228
Indice
VII