Appunti per Scuola e Università
Umanistiche
Appunti e tesine di tutte le materie per gli studenti delle scuole medie riguardanti le materie umanistiche: dall'italiano alla storia riguardanti le materie umanistiche: dall'italiano alla storia 
Scientifiche
Appunti, analisi, compresione per le scuole medie suddivisi per materie scientifiche, per ognuna troverai appunti, dispense, esercitazioni, tesi e riassunti in download.
Tecniche
Gli appunti, le tesine e riassunti di tecnica amministrativa, ingegneria tecnico, costruzione. Tutti gli appunti di AppuntiMania.com gratis!
Appunti
informatica
CComputerDatabaseInternetJava
Linux unixReti


AppuntiMania.com » Informatica » Appunti di computer » Allocatore di risorse

Allocatore di risorse




Visite: 1088Gradito: [ Picolo appunti ]
Leggi anche appunti:

La gestione delle memorie di massa


LA GESTIONE DELLE MEMORIE DI MASSA Un dato viene rappresentato su un

Funzione espo


FUNZIONE ESPO Scopo: la funzione calcola ex, nel caso in cui x è negativo

Funzione errori


FUNZIONE ERRORI Scopo: la function  calcola l’errore relativo e l’errore



Scarica gratis Allocatore di risorse

ALLOCATORE DI RISORSE


Nel modello a memoria comune o GLOBALE, e solo in questo caso, si può presentare il problema dei conflitti: due processi potrebbero richiedere l’attribuzione di una singola risorsa comune. Si fa uso allora di un apposito allocatore o gestore di risorsa [1].



L’allocatore della risorsa non è altro che un segmento di codice attraverso il quale ‘passano’ tutte le richieste fatte dai processi per ottenere l’uso della risorsa. L’allocatore può, secondo il caso, concedere, rifiutare o ritardare l’attribuzione di una risorsa. Esso ha la possibilità di accedere alla struttura dati relativa alla risorsa di cui si è fatta richiesta, e da questa struttura attinge informazioni sul suo stato. Ogni allocatore è, nel modello a memoria globale, a sua volta una risorsa (e come tale è dunque una struttura dati pilotata da un insieme minimo di procedure), allocata staticamente e comune a tutti i processi.

L’allocatore è solitamente composto da due sole procedure, separatamente invocabili dai processi. La prima alloca la risorsa in questione, se ciò è possibile (acquisizione). La seconda la libera per successive richieste di utilizzo (rilascio).

Supponiamo che un processo richieda di scrivere delle informazioni sul disco. I dati che si vuole siano memorizzati in un disco vengono prima registrati in un apposito buffer di memoria che è sempre allocato dinamicamente. Ovviamente il processo non può conoscere la posizione di tale buffer in memoria. Deve quindi invocare l’apposita routine di acquisizione risorse del gestore, la quale consulta la relativa struttura dati e, se la risorsa risulta libera, restituisce l’indirizzo del buffer.














Abbiamo visto che il processo di lettura, elaborazione e scrittura di un N-record fa parte di quella categoria di programmi che non possono essere espressi usando soltanto i costrutti COBEGIN / COEND, per lo meno se il grafo delle precedenze su cui ci si basa è quello di pag. 22. Si nota che ad esempio dal nodo L1, il quale è un nodo cobegin, partono numerosi cammini paralleli terminanti in nodi coend diversi tra loro.

È possibile tuttavia modificare il grafo delle precedenze, in modo che esso possa essere reso solo con le due operazioni summenzionate: lo riportiamo di seguito, unitamente al programma che lo realizza.


Var A, B ,C : T

i :2..N ;


begin

Lettura (A) ; L1

COBEGIN

Lettura (B) ; L2 E1

Elaborazione (A) ;

I : = 2 ;

 
COEND

C : = A ;  A : = B


 
i : = 2 ;



while i < N do

begin

C : = A ; L3 E2 S1

A : = B ;

I : = 3 ;

 
COBEGIN

C : = A ; A : = B

 
Lettura (B) ;

Elaborazione (A) ;

Stampa (C) 

COEND ;

i : = i + 1 

end ;

C : = A ;

A : = B ;

COBEGIN

Elaborazione (A) ;

Stampa (C) ;

COEND ;

Stampa (A) 

end.


Questa scelta comporta un ‘grado di parallelismo’ inferiore rispetto alla versione FORK / JOIN. Ad esempio, un cammino unisce i nodi L2 e S1, il che significa che il secondo deve seguire il primo, cosa che invece non risulta necessaria nel grafo di pag.22. Comunque, non è detto che parallelizzando al massimo gli eventi dei processi si ottengano le prestazioni migliori. Ciò dipende anche dal tipo, dal numero e dall’efficienza delle risorse fisiche che la macchina ha a disposizione.





De Carlini parla con insistenza di ‘gestore delle risorse’, come se ce ne fosse uno solo per tutte le risorse o comunque come se un singolo gestore potesse essere dedicato a più risorse contemporaneamente. Benché sia plausibile, questo concetto è estraneo all’Ancilotti-Boari (pag. 69).

Scarica gratis Allocatore di risorse
Appunti su:










Accedi al tuo account
Scarica 100% gratis e Invia appunti, tesine, riassunti

Registrati ora Password dimenticata?
  • Appunti superiori
  • In questa sezione troverai sunti esame, dispense, appunti universitari, esercitazioni e tesi, suddivisi per le principali facoltà.
  • Università
  • Appunti, dispense, esercitazioni, riassunti direttamente dalla tua aula Universitaria
  • all'Informatica
  • Introduzione all'Informatica, Information and Comunication Tecnology, componenti del computer, software, hardware ...