Lock a tre valori.

Slides:



Advertisements
Presentazioni simili
1 Processi e Thread Meccanismi di IPC, Inter Process Communication (1)
Advertisements

BDE-TRANS 1 Gestione di transazioni concorrenti. BDE-TRANS 2 Lock Principio: –Tutte le letture sono precedute da r_lock (lock condiviso) e seguite da.
Controllo della concorrenza basato sui timestamp.
I Polinomi Prof.ssa A.Comis.
CONTROLLO DELLA CONCORRENZA
Le Frazioni Prof.ssa A.Comis.
Fotogrammetria - Lezione 3
Algoritmi Avanzati a.a.2014/2015 Prof.ssa Rossella Petreschi
x2 – 4x + 1 x – 3 6x 5y2 ; x2 – 4x + 1 x – 3 x – 3 ≠ 0 x ≠ 3
Le frazioni decimali Tutto in un click.
PROGRAMMAZIONE SHELL -
Protocollo di locking a due fasi stretto
PERMUTAZIONI Consideriamo i primi cinque numeri naturali 1,2,3,4,5
Algoritmi Avanzati a.a.2010/2011 Prof.ssa Rossella Petreschi
Write-only, read-only.
(7x + 8x2 + 2) : (2x + 3) 8x2 + 7x + 2 2x + 3 8x2 + 7x + 2 2x + 3 4x
Geometria descrittiva dinamica
Algoritmi Avanzati a.a.2013/2014 Prof.ssa Rossella Petreschi
Definizione e caratteristiche
L'ABC della statistica LA MEDIA ARITMETICA
Algoritmi Avanzati Prof.ssa Rossella Petreschi
I PERMESSI IN LINUX.
Unità di apprendimento 7
Equazioni e disequazioni
Pensi che sia impossibile risolvere un’espressione come questa?
File hash.
PARTE TERZA OPERAZIONI CON LE PROPOSIZIONI
Deadlock e livelock.
Algoritmi Avanzati Prof.ssa Rossella Petreschi
Algoritmi Avanzati a.a.2011/2012 Prof.ssa Rossella Petreschi
I FILES AD ACCESSO SEQUENZIALE
04/09/2018 Il concetto di limite 1 1.
FORMULE E FUNZIONI SU EXCEL
PROGRAMMAZIONE BASH – ISTRUZIONE IF
Usi (meno scontati) della visita DFS
ATOMICITÀ Il tipo di atomicità di un programma PL/SQL è stabilito dall’ambiente chiamante oppure dal programma Gestione atomicità: COMMIT SAVEPOINT nome_punto.
Lock binario.
Tecnologia di un Database Server
Rapporti e proporzioni
Lock.
Interpolazione e zero-padding
K4 è planare? E K3,3 e K5 sono planari? Sì!
Programmazione e Laboratorio di Programmazione
Processi e Thread Meccanismi di IPC (1).
Programmazione e Laboratorio di Programmazione
Lezione n°12 Prof.ssa Rossella Petreschi
Codicfiche Interi Complemento alla base.
Principali Algoritmi di Scheduling
I numeri relativi DEFINIZIONE. Si dicono numeri relativi tutti i numeri interi, razionali e irrazionali dotati di segno (positivo o negativo). ESEMPI Numeri.
Logica Lezioni
Algoritmi per il flusso nelle reti
Ricorsione 16/01/2019 package.
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Lezione 1: Modalità di scrittura
Definire progetti con i partners utilizzando gli «eventi».
Usi (meno scontati) della visita DFS
Astrazione e Concretizzazione
Algoritmi Avanzati Prof.ssa Rossella Petreschi
Programmazione e Laboratorio di Programmazione
Geometria descrittiva dinamica
Risolvere le moltiplicazioni tra frazioni
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
Il problema del flusso nelle reti
Le Frazioni Prof.ssa A.Comis.
PowerShell di Windows PowerShell è un shell che mette a disposizione un prompt interattivo e un interprete a riga di comando , per le sue caratteristiche.
La programmazione strutturata
STRANO ! Ecco un breve esercizio matematico che sorprendera ’ piu ’ di una persona.
Programmazione e Laboratorio di Programmazione
Definizione e caratteristiche
Transcript della presentazione:

Lock a tre valori

Una transazione può accedere ad un item solo per leggerlo, senza modificarlo Se una transazione desidera solo leggere un item X effettua una rlock(X) che impedisce a qualsiasi altra transazione di modificare X, ma non di leggere X Se una transazione desidera modificare un item X effettua un wlock(X); in tal caso nessuna altra transazione può leggere o modificare X Entrambi i lock sono rilasciati mediante una unlock(X)

Lock a tre valori rlocked, wlocked, unlocked Valore lock su X T vuole fare un unlocked rlock(X) T ottiene il lock in lettura, valore variabile rlocked rlocked T ottiene il lock in lettura wlocked T aspetta wlock(X) T ottiene il lock in scrittura, valore variabile wlocked

Modello per le transazioni Una transazione è una sequenza di operazioni di rlock, wlock e unlock ogni rlock(X) e ogni wlock(X) implicano la lettura di X ogni unlock(X) associato a una wlock(X) implica la scrittura di X

Modello per le transazioni Il nuovo valore viene calcolato da una funzione che è associata in modo univoco ad ogni coppia wlock-unlock ed ha per argomenti tutti gli item letti (rlocked o wlocked) dalla transazione prima dell’operazione di unlock T1 rlock(X) unlock(X) wlock(Y) unlock(Y) f1(X,Y)

Equivalenza Due schedule sono equivalenti se producono lo stesso valore per ogni item su cui viene effettuato un wlock (le formule che danno i valori finali per ciascun item sono le stesse) ogni operazione rlock(X) legge lo stesso valore di X nei due schedule

Uno schedule è serializzabile se è equivalente ad uno schedule seriale Serializzabilità Uno schedule è serializzabile se è equivalente ad uno schedule seriale

Testare la serializzabilità Algoritmo 2 Dato uno schedule S Passo 1 crea un grafo diretto G (grafo di serializzazione) nodi: transazioni archi: Ti --> Tj (con etichetta X) se in S - Ti esegue una rlock(X) o una wlock(X) e Tj è la transazione che esegue la successiva wlock(X) - Ti esegue una wlock(X) e Tj esegue una rlock(X) dopo che Ti ha eseguito la wlock(X) e prima che un’altra transazione esegua una wlock(X).

Testare la serializzabilità Passo 2 Se G ha un ciclo allora S non è serializzabile; altrimenti applicando a G l’ordinamento topologico si ottiene uno schedule seriale S’ equivalente ad S

Consideriamo il seguente schedule di tre transazioni T1 T2 T3 rlock(X) unlock(X) wlock(X) wlock(Y) unlock(Y) rlock(Y) wlock(Z) unlock(Z) rlock(Z) T2 T1 X Z Y T3 È serializzabile (equivalente allo schedule seriale T1 T3 T2 )

mentre il seguente schedule delle stesse transazioni T1 T2 T3 rlock(X) unlock(X) wlock(X) rlock(Y) unlock(Y) rlock(Z) unlock(Z) wlock(Z) wlock(Y) T2 T1 X Z Y T3 non è serializzabile

Risultati Se ogni transazione in un insieme T è a due fasi allora ogni schedule di T è serializzabile Solo se tutte le transazioni sono a due fasi possiamo avere la certezza che ogni schedule è serializzabile