Linguaggi per la programmazione concorrente

Francesco Baiardi, Marco Vanneschi

Linguaggi per la programmazione concorrente

Edizione a stampa

24,50

Pagine: 164

ISBN: 9788820436353

Edizione: 4a edizione 1992

Codice editore: 272.1

Disponibilità: Esaurito

Una trattazione approfondita dei principali modelli per la programmazione concorrente e di alcuni dei linguaggi da essi derivati.

Vengono presi in considerazione linguaggi procedurali basati nel concetto di processo concorrente.

Lo studio copre gli aspetti dei costruiti per la sincronizzazione e la comunicazione, per il controllo del non-determinismo, per l'attivazione e la terminazione nonché le caratteristiche degli ambienti di programmazione per lo sviluppo di software concorrente su architetture uniprocessor, multiprocessor e distribuite.

Viene fornita una analisi delle prestazioni dei modelli e linguaggi in funzione di vari parametri.

Il testo è diretto a progettisti e ricercatori nell'area dei sistemi paralleli, sistemi operativi e linguaggi di programmazione.

Fabrizio Baiardi, laureato in Scienze dell'informazione nel 1979 a Pisa, dal 1980 borsista presso il Dipartimento di informatica dell'Università di Pisa, dal 1983 è ricercatore presso lo stesso dipartimento. Svolge attività di ricerca nel campo dei sistemi di elaborazione, con particolare riferimento a sistemi distribuiti e relativi strumenti per la programmazione concorrente e la definizione del sistema operativo.

Marco Vanneschi, laureato in ingegneria elettronica nel 1970 a Pisa, ricercatore presso il Centro Eni di Pisa fino al 1973, professore incaricato di Progetto di sistemi numerici e assistente ordinario di Sistemi per l'elaborazione dell'informazione presso l'università di Pisa fino al 1981, professore straordinario di Sistemi per l'elaborazione dell'informazione presso l'università di Udine fino al 1983, e dal 1983 presso l'università di Pisa (Diparti. mento di informatica). Svolge attività di ricerca nel campo dei sistemi di elaborazione, con particolare riferimento ad architetture, sistemi operativi e linguaggi per sistemi distribuiti e ad alto grado di parallelismo.

1. INTRODUZIONE
2. REQUISITI DI UN LINGUAGGIO CONCORRENTE
2.1. Criteri di progetto
2.2. Alcuni problemi di programmazione concorrente
2.3. Classi di costruiti concorrenti
2.4. Letteratura
3. MODELLI DI COOPERAZIONE
3.1. Ambiente globale ed ambiente locale
3.2. Primi approcci ad ambiente globale
3.3. Verso linguaggi ad ambiente globale
3.4. Primi approcci ad ambiente locale
3.5. Verso linguaggi ad ambiente locale
3.6. Il problema dell'ingresso - uscita
3.7. Modelli e linguaggi
3.8. Letteratura
4. MODELLI E LINGUAGGI AD AMBIENTE GLOBALE
4.1. Monitor
4.1.1. Definizione
4.1.2. Implementazione
4.1.3. Valutazioni generali
4.2. Esempi di programmazione di monitors
4.2.1. Sistema di bufferizzazione
4.2.2. Lettori - scrittori
4.2.3. Sveglia
4.2.4. Risorsa protetta
4.3. Concurrent Pascal
4.4. Modula
4.5. Path expressions
4.6. Letteratura
5. MODELLI E LINGUAGGI AD AMBIENTE LOCALE
5.1. Communicating Sequential Processes
5.2. Distributed Processes
5.3. Il linguaggio ECSP
5.3.1. Caratteristiche principali
5.3.2. Tipi di dato
5.3.3. Costrutti sequenziali
5.3.4. Costrutti concorrenti
5.4. Esempi di programmi ECSP
5.4.1. Sistema di bufferizzazione
5.4.2. Lettori - scrittori
5.4.3. Sveglia
5.4.4. Risorsa protetta
5.5. Supporto a tempo d'esecuzione di ECSP
5.6. Il linguaggio MML
5.7. Letteratura
6. GESTIONE DELLA CONCORRENZA NEL LINGUAGGIO Ada
6.1. Comunicazione
6.2. Controllo del nondeterminismo
6.3. Attivazione e terminazione
6.4. Esempi di programmi Ada
6.4.1. Sistema di bufferizzazione
6.4.2. Lettori - scrittori
6.4.3. Sveglia
6.4.4. Risorsa protetta
6.5. Letteratura
7. AMBIENTI DI PROGRAMMAZIONE PER LINGUAGGI CONCORRENTI
7.1. Il legame tra linguaggio ed ambiente di programmazione
7.2. L'ambiente di programmazione di ECSP
7.3. La linea di programmazione MML
7.4. Compilazione di linguaggi concorrenti
7.4.1. Concurrent Pascal
7.4.2. Modula
7.4.3. PLITS
7.5. Specifiche per l'ambiente del linguaggio Ada
7.6. Letteratura
8. CONSIDERAZIONI CONCLUSIVE
9. BIBLIOGRAFIA


Collana: Crai