Índice
2.1 Programa distribuído
Sistema distribuído: um sistema no qual os componentes são distribuídos em diferentes nós de computador e diferentes nós se comunicam por meio da passagem de mensagens e se coordenam entre si para concluir tarefas.
C ij C_{ij}Ceu: processo iieu processarjjcanal de mensagem entre j
mij m_{ij}meu: processo iii é enviado para processarjjnotícias de j
Estado global: O estado global de um sistema distribuído consiste no estado de todos os processos e no estado de todos os canais de comunicação.
2.2 Modelo de operação distribuída
eix e_i^xeeux: processo iieu souxxx eventos.
enviar (m) enviar(m)se n d ( m ) : envia o evento da mensagem m.
rec(m) rec(m)rec ( m ) : Receber evento para mensagem m.
Gráfico de espaço-tempo distribuído:
HHH : a coleção de eventos no processo de computação distribuída
a → ba\seta para a direita ba→b : eventoaaa precede o eventobbb acontece.
∀ eix , ejy ∈ H , eix → ejy ⇔ { eix → ejy , ( i = j ) e ( x < y ) (eventos no mesmo processo) eix → msgejy (passagem de mensagem) eix → ejy e eix → ejy ( Transitivo ) \forall e_i^x,e_j^y \in H,e_i^x\rightarrow e_j^y \Leftrightarrow \left\{ \begin{matriz} e_i^x\rightarrow e_j^y,(i=j)~ ~e ~~(x<y) (eventos no mesmo processo) \\ \\ e_i^x\rightarrow _{msg}e_j^y (passagem de mensagem) \\ \\ e_i^x\rightarrow e_j^y~ ~e~ ~e_i^x\rightarrow e_j^y (transitivo)\\ \end{matriz} \right.∀ eeux,ejvocê∈H , eeux→ejvocê⇔⎩ ⎨ ⎧eeux→ejvocê,( eu=j ) e d ( x <y ) (eventos no mesmo processo)eeux→ms g _ejvocê(Mensagens)eeux→ejvocê e d e eux→ejvocê(transitivo )
Esta é uma relação de ordenação parcial anti-reflexiva.
ei ∣ ∣ ej e_i||e_jeeu∣∣ ej:ei ↛ ej e ej ↛ ei e_i \not \rightarrow e_j ~and~e_j \not \rightarrow e_ieeu→ej e d e j→eeu(simultâneo)
2.4 Estado Global dos Sistemas Distribuídos
LS ix LS_i^xL Seux: Processador no evento eix e_i^xeeuxDepois disso acontece, e o evento eix + 1 e_i^{x+1}eeux + 1estado antes
SC ijx , y SC_{ij}^{x,y}S Ceu jx , y: canal C ij {C_{ij}}CeuEm processo pi p_ipeuaté o evento eix e_i^xeeuxA mensagem enviada e o processo pj p_jpjaté o evento ejy e_j^yejvocêmensagem não recebida
2.5 Segmentação da computação distribuída
~~~~~~~ Desenhar uma linha em ziguezague cruzando um determinado ponto de cada linha de processo pode dividir todo o processo de cálculo em duas partes, e essa linha em ziguezague é chamada de linha de divisão.
~~~~~~~ Essa linha divide o gráfico do espaço-tempo em duas partes e também divide todos os eventos de computação distribuídos em dois conjuntos, chamados de conjunto passado (PASSADO) e conjunto futuro (FUTURO). A coleção PAST contém todos os eventos à esquerda da linha divisória e a coleção FUTURE contém todos os eventos à direita da linha divisória.
2.6 O passado e o futuro dos eventos
P ast ( ej ) = { ei ∣ ∀ ei ∈ H , ei → ej } Past(e_j)=\{e_i~|~\forall e_i\in H,e_i\rightarrow e_j\}P a s t ( ej)={ eeu ∣ ∀ e eu∈H ,eeu→ej}
Futuro ( ej ) = { ei ∣ ∀ ei ∈ H , ej → ei } Futuro(e_j)=\{e_i~|~\forall e_i\in H,e_j\rightarrow e_i\}Futu ra ( e _ _ _j)={ eeu ∣ ∀ e eu∈H ,ej→eeu}