Sistemas Distribuídos Coordenação
|
|
- Agustina Klettenberg Santiago
- 6 Há anos
- Visualizações:
Transcrição
1 Sistemas Distribuídos Coordenação Vinícius Fernandes Soares Mota 1
2 Até agora Vimos algumas formas ara rocessos sincronizarem suas ações Estudamos vários roblemas que odem surgir com a concorrência de rocessos 2
3 Agora 3 Nosso objetivo é verificar como os mecanismos de sincronização centralizada odem ser estendidos a um ambiente distribuído. Existe um curso somente sobre algoritmos distribuídos. Nosso objetivo é introduzir alguns dos rinciais asectos.
4 4 Sincronização de Processos Processos Cooerativos: Afetam ou são afetados or outros rocessos. Podem comartilhar um mesmo esaço de endereços lógicos, ou um mesmo arquivo. Endereços lógicos: threads, ou rocessos leves. Acesso concorrente a dados ode gerar inconsistência de dados. Devem ser desenvolvidos mecanismos ara garantir a consistência de dados comartilhados or rocessos cooerativos.
5 5 Jantar dos filósofos... Formulado or Dijkstra, 1965 Cada filósofo come Usando 2 garfos simultaneamente Usa ou larga 2 garfos Modela a disuta or recursos
6 6 Jantar dos filósofos... Algoritmo básico Pense até que o garfo esquerdo esteja disonível; Quando estiver, egá-lo; Pense até que o garfo direito esteja disonível; Quando estiver, egá-lo; Quando ossuir ambos os garfos, comer or um eríodo fixo de temo; Então, coloque o garfo direito ara baixo; Então, coloque o garfo esquerdo ara baixo; Reetir desde o início.
7 7 O caso rodutor/consumidor O caso rodutor/consumidor: Suonha rocessos com memória comartilhada Memória consiste em um buffer de tamanho variável que abriga itens em estoque. Variável counter indica o número de itens em estoque (itens no buffer. Toda vez que um roduto é adicionado incrementa-se o counter. Toda vez que um roduto é retirado decrementa-se o counter.
8 8 O caso rodutor/consumidor / inicializacao fim = 0; ini = 0; n = 0; // codigo do rodutor for (i=0; i<1000; i++) { while (n == caacidade); buf[fim] = roduzir(i); fim = (fim + 1) % caacidade; n++; } // codigo do consumidor for (i=0; i<1000; i++) { while (n == 0) ; consumir(buf[ini]); ini = (ini + 1) % caacidade; n--; }
9 9 O caso rodutor/consumidor Algoritmos corretos isoladamente. Podem causar inconsistência se rodados em aralelo. Problema: Sessão Crítica!!! Região de código onde um rocesso está acessando dados comartilhados. Problemas de inconsistência ocorrem em sessões críticas e devem ser evitados.
10 10 O roblema da sessão crítica Soluções ara o roblema da sessão crítica devem satisfazer os requisitos: Exclusão mútua: Se um rocesso está executando uma sessão crítica (acessando dados comartilhados) os demais rocessos devem eserar. Progressão:Se não há rocessos executando em sessão crítica, somente rocessos que não estão executando no final da sessão odem cometir ela sessão crítica. Esera limitada:existe um limite no número de vezes que outros rocessos são ermitidos a entrar na sessão crítica aós m rocesso requisitar a sessão crítica.
11 11 Sessão Crítica Algoritmo básico enter() // entra na seção crítica bloqueia, se necessário resourceaccesses() // acessa recursos comartilhados na seção crítica exit() // sai da seção crítica outros rocessos odem entrar agora
12 Sistemas centralizados: Semáforos 12 Um semáforo é um tio abstrato de dados que ossui um valor inteiro, uma lista de rocessos em esera e duas oerações P (do holandês Proberen, testar) V (do holandês Verhogen, incrementar) A imlementação do semáforo deve ser atômica Garantido or linguagens que oferecem o recurso
13 Sistemas centralizados: Semáforos 13 Para garantir exclusão mútua a uma determinada região (região crítica), cada rocesso deve chamar a oeração P antes de acessar tal região e chamar a oeração V aós sair dessa região Oeração P sobre um semáforo S Testa se o rocesso que executou P(S) ode ou não entrar na região crítica Oeração V sobre um semáforo S Sinaliza ao semáforo que o rocesso não está mais na região crítica e retira outro rocesso da fila de esera
14 Sistemas centralizados: Semáforos 14 // S.valor começa com 1 P(S) S.valor -= 1; Se (S.valor < 0) // bloqueia o rocesso e insere em S.fila V(S) S.valor += 1; Se (S.valor <= 0) // retira algum rocesso de S.fila e o coloca em execução
15 O caso rodutor/consumidor com semáforos 15 // inicializacao fim = 0; ini = 0; n = 0; semaforo S; S.valor = 1; // codigo do rodutor for (i=0; i<1000; i++) { while (n == caacidade) ; buf[fim] = roduzir(i); fim = (fim + 1) % caacidade; P(S); n++; V(S); } // codigo do consumidor for (i=0; i<1000; i++) { while (n == 0) ; consumir(buf[ini]); ini = (ini + 1) % caacidade; P(S); n--; V(S); }
16 O caso rodutor/consumidor com semáforos 16 Código do rodutor:... roduzir um item... wait(emty); wait(mutex);... Adicionar um item no vetor... signal(mutex); signal(full);
17 O caso rodutor/consumidor com semáforos 17 Código do consumidor: wait(full); wait(mutex);... remove nextc do buffer;... signal(mutex); signal(emty);... consome o róximo item...
18 Sincronização em Sistemas Distribuídos Conceitos imortantes no rojeto de qualquer alicação distribuída: Comunicação Sincronização Sincronização em alicações distribuídas: Como garantir exclusão mútua no acesso a seções críticas? Como garantir atomicidade na execução de uma transação distribuída? Como alocar recursos evitando a ocorrência de deadlocks? 18
19 Sincronização em Sistemas Distribuídos 19 Sincronização em sistemas centralizados: utiliza memória comartilhada Exemlos: semáforos, monitores etc Sincronização em sistemas distribuídos: utiliza troca de mensagens Imlementada via algoritmos distribuídos Mesmo determinar se um evento A ocorreu antes ou deois de um evento B é mais comlexo do que em um sistema centralizado
20 20 Exclusão Mútua Distribuída Sistemas Centralizados: memória comartilhada (semáforos, monitores etc) Sistemas Distribuídos: via troca de mensagens Requisitos: Segurança: No máximo um rocesso ode estar executando na seção crítica (SC) Subsistência: Um rocesso que requisita acesso à SC, obtém este acesso em algum momento. Ou seja, não há deadlock ou starvation. Ordenação: Se uma requisição ara entrar na SC aconteceu antes de outra, a entrada de SC é garantida na ordem
21 Primeira Solução: Algoritmo Centralizado 21 Existe um rocesso coordenado (PC) Gerencia o acesso à SC Processos comuns Antes de entrar na SC: enviam request ao PC Quando recebem rely: entram na SC Quando saem da SC: enviam release ao PC Processo Coordenador: Enfileira request quando a SC ocuada Desenfileira request ao receber um release
22 Primeira Solução: Algoritmo Centralizado 22 Queue of requests Server Grant token 1 1. Request token 2. Release token 4 2 3
23 Primeira Solução: Algoritmo Centralizado (cont.) 23 Número de mensagens trocadas ara entrar na SC: duas (um request e um rely) Saída da SC: uma mensagem (release). Problema: rocesso que centraliza todas as informações e decisões Solução: distribuir a fila de edidos Todos os nós recebem todos os edidos Pedidos são ordenados elos nós da mesma maneira
24 Algoritmos de Exclusão Mútua Distribuída 24 Princiais Algoritmos: Token Ring (*) Ricart e Agrawala (*) Osvaldo e Roucariol Maekawa (*) Algoritmos que serão estudados a seguir
25 25 Algoritmo Token Ring Suõe que os rocessos são organizados como um anel lógico, or onde circula uma token Não exige que a toologia da rede seja em anel (anel lógico e não físico) Cada rocesso deve armazenar a configuração comleta do anel Correção: ao rocesso de osse da token é garantido o acesso à SC
26 26 Algoritmo Token Ring Idéia básica: Se um rocesso não deseja entrar na SC: Ao receber a token, reassa a mesma ara seu vizinho Se um rocesso deseja entrar na SC: Aguarda a assagem da token e a retém Número de mensagens trocadas: entre 1 e n-1
27 27 Algoritmo Token Ring 1 2 n 3 4 Token
28 28 Algoritmo Token Ring Vantagens: simlicidade Desvantagem: tratamento de erros Perda da mensagem que contém a token Deve-se gerar a token novamente Quando gerar? Quem deve gerar? Travamento de rocessos Deve-se reconfigurar o anel
29 29 Algoritmo de Ricart e Agrawala Algoritmo executado or cada rocesso Pi, que comartilha uma SC ( i <= n): Variáveis: estado: estado da seção crítica OSN: relógio lógico do rocesso HSN: maior valor do timestam de qualquer mensagem enviada ou recebida Inicialização: estado:= livre; HSN:= 0;
30 30 Algoritmo de Ricart e Agrawala 1. Broadcast de mensagem request com timestam Aós receber um request, envia ack SE -Não quer entrar na SC, ou -Está tentando entrar na SC, mas seu timestam é maior do que o enviado (Se está na SC, coloque o request no buffer) 3. Entrar na SC, quando receber ack de todos 4. Aós sair da SC, envia ack ara cada request endent e antes de fazer nova requisição
31 31 Algoritmo de Ricart e Agrawala On initialization state := RELEASED; To enter the section state := WANTED; Multicast request to all rocesses; request rocessing deferred here T := request s timestam; Wait until (number of relies received = (N 1)); state := HELD; On receit of a request <T i, i > at j (i j) if (state = HELD or (state = WANTED and (T, j ) < (T i, i ))) then queue request from i without relying; else rely immediately to i ; end if To exit the critical section state := RELEASED; rely to any queued requests;
32 32 Algoritmo de Ricart e Agrawala Número de mensagens trocadas ara entrar na SC: 2 (n -1) n-1: requests n-1: relys Vantagem: Distribuído (sem um onto central de falha) Desvantagem: Em qual situação este algoritmo ode ser ineficiente?
33 33 Algoritmo de Ricart e Agrawala Número de mensagens trocadas ara entrar na SC: 2 (n -1) n-1: requests n-1: relys Vantagem: Distribuído (sem um onto central de falha) Desvantagem: Em qual situação este algoritmo ode ser ineficiente? Caso de Mútlilas requisições or um SC
34 34 Jantar dos filósofos... Uma solução distribuída (Kandy, 1984) Para cada ar de filósofos que disutam um recurso, crie um garfo e dêo ao filósofo com a ID mais baixa (n ara o agente Pn). Cada garfo ode estar sujo ou limo. Inicialmente, todos os garfos estão sujos. Quando um filósofo quer usar um conjunto de recursos (isto é, comer), esse filósofo deve obter os garfos de seus vizinhos. Para cada garfo o filósofo não tem, ele envia uma mensagem de edido. Quando um filósofo com um garfo recebe uma mensagem de edido, ele mantem o garfo se ele está limo, mas desiste quando está sujo. Se o filósofo envia o garfo, ele lima o garfo antes de fazê-lo. Deois que um filósofo acaba de comer, todos os garfos ficam sujos. Se outro filósofo havia edido anteriormente um dos garfos, o filósofo que acabou de comer lima o garfo e o envia.
35 35 Reforçando 1) No algoritmo do servidor central ara exclusão mútua, descreva uma situação na qual duas requisições não são rocessadas na ordem acontece-antes 2) Qual o imacto na largura de banda de algoritmos de exclusão mútua 3) O algoritmo de Ricart e Agrawala tem o roblema de que se um rocesso cai e não resonde a uma solicitação de outro rocesso ara acessar recursos, a falta de resosta será interretada como negação de ermissão. Solução: todas as solicitações serem resondidas imediatamente ara facilitar a detecção de rocessos quebrados. Existem circunstâncias em que mesmo este método é insuficiente? Discutir.
36 36 Reforçando 1) No algoritmo do servidor central ara exclusão mútua, descreva uma situação na qual duas requisições não são rocessadas na ordem acontece-antes O Processo A envia uma solicitação ra ara entrar na Seção crítica e envia uma mensagem m ara B. Ao receber m, B envia um edido rb ara entrar na SC. Para satisfazer a regra aconteceu-antes ra deve ser concedido antes de rb. No entanto, devido a atrasos de roagação de mensagem, rb chega ao servidor antes de ra, Eles serão atendidos na ordem oosta.
37 37 Reforçando 2) Qual o imacto na largura de banda de algoritmos de exclusão mútua A largura de banda será dividida elo temo que cada rocesso segurar a exclusão mútua
38 38 Reforçando 3) O algoritmo de Ricart e Agrawala tem o roblema de que se um rocesso cai e não resonde a uma solicitação de outro rocesso ara acessar recursos, a falta de resosta será interretada como negação de ermissão. Suonha que um rocesso nega ermissão e, em seguida, falha. O rocesso solicitante ensa que ele está vivo, mas a ermissão nunca virá. Uma saída é o solicitante não bloquear realmente, mas sim ir dormir or um eríodo de temo fixo, aós o qual ele examina todos os rocessos que negaram ermissão ara ver se eles ainda estão em execução.
39 42 Algoritmos de Eleição Gruo de rocessos deve eleger um coordenador. Alicações: Gerenciamento de rélicas, Algoritmos centralizados de coordenação, sincronização, etc... A escolha do coordenador deve ser única, mesmo que vários rocessos de eleição tenham começado simultaneamente.
40 43 Requisitos Algoritmos de Eleição Segurança Um rocesso conhece o rocesso eleito Subsistência Todos os rocessos articiam da eleição
41 Algoritmo de eleição baseado em anel 44 Processos organizados em toologia anel Todos rocessos iniciam como não articiantes Marca a si mesmo como articiante e envia uma mensagem com seu id no sentido horário Ao receber Se o id recebido é maior, encaminha ara o vizinho Se o id é menor Se é não articiante, substitui elo seu id Se é articiante, não encaminha a mensagem
42 Algoritmo de eleição baseado em 45 anel Nota: Eleição iniciada elo rocesso 17. O maior identificador encontrado até então é o 24. Processos com estado articiante estão escurecidos
43 Algoritmo Tirano (Valentão) The bully algorithm 46 Membros do gruo devem conhecer a identidade e o endereço dos outros membros. Mensagens: Eleição: enviada ara anunciar o início de uma nova eleição Resosta: enviada em resosta a uma mensagem de eleição. Coordenador: enviada ara anunciar o coordenador. Um rocesso inicia uma eleição quando notar uma falha no coordenador (não recebeu uma resosta a uma requisição deois de um certo número de tentativas ou aós um certo timeout, or exemlo).
44 Algoritmo Tirano The bully algorithm 47 Processo inicia eleição enviando mensagem de eleição ara os rocessos de maior rioridade. Estágio 1 1 eleição resosta eleição 2 resosta 3 eleição C 4
45 Algoritmo Tirano The bully algorithm 48 Processo inicia eleição enviando mensagem de eleição ara os rocessos de maior rioridade. Processos resondem a mensagem e iniciam nova eleição Estágio 1 Estágio eleição resosta eleição 2 resosta 2 eleição resosta 3 eleição 3 eleição C 4 C 4
46 Algoritmo Tirano The bully algorithm 49 Processo inicia eleição enviando mensagem de eleição ara os rocessos de maior rioridade. Processos resondem a mensagem e iniciam nova eleição Processo coordenador envia mensagem de coordenador. Estágio 1 Estágio 2 Estágio timeout 1 eleição resosta eleição 2 resosta 2 2 eleição resosta 3 eleição 3 3 eleição C 4 C 4 4
47 Algoritmo Tirano The bully algorithm 50 Processo inicia eleição enviando mensagem de eleição ara os rocessos de maior rioridade. Processos resondem a mensagem e iniciam nova eleição Processo coordenador envia mensagem de coordenador. Se nenhuma mensagem for recebida, rocesso se declara coordenador e envia mensagem de coordenador ara os rocessos de menor rioridade. Estágio 1 Estágio 2 Estágio 3 Eventualmente... Estágio timeout 1 1 eleição resosta coordenador eleição 2 resosta 2 2 C 2 eleição resosta 3 eleição eleição C 4 C 4 4 4
48 51 Reforçando 1) Comare o algoritmo de eleição do anel com o algoritmo valentão 2) Esboce um seudo-código ara ambos os algoritmos.
49 Consenso 52 Um dos roblemas mais fundamentais de SDs Informalmente: como fazer um gruo de rocessos concordar em um valor Qual é a hora Fazer ou não fazer commit Quem é arte do gruo Quem é o líder do gruo Podemos seguir ara o róximo asso do algoritmo Já vimos algumas instâncias, agora vejamos o mais geral
50 Um ouco de formalismo 53 Consenso: Para chegar a um consenso, todo rocesso i começa no estado indeciso e roõe um único valor v i, extraído de um conjunto D (i = 1, 2,..., N). Os rocessos se comunicam, trocando valores. Cada rocesso configura o valor de uma variável de decisão d i. Ao fazer isso, ele entra no estado decidido, no qual não ode mais mudar d i (i = 1, 2,..., N).
51 Um ouco de formalismo 54 Conjunto de nós Falhas or fail-sto ou bizantinas Mais tarde: fail-sto + recueração Objetivo: todos os rocessos i õem o mesmo valor em uma variável d i Não queremos amarrar de onde vem v i v i ode ser roosto or um nó ou decidido a artir de várias roostas
52 Um ouco de formalismo 55 P 1 d 1 :=roceed d 2 :=roceed P 2 v 1 =roceed 1 v 2 =roceed Consensus alg ori thm v 3 =abort P 3 (crashes)
53 Um ouco de formalismo 56 Requisitos: 1. Concordância: Todos os nós escolhem o mesmo valor ara d i 2. Validade: O valor escolhido deve ter sido roosto or algum nó 3. Terminação: Alguma hora, todos decidem um valor Pode ser descrito de formas ligeiramente diferentes: generais bizantinos, consistência interativa, atomic broadcast,...
54 57 Consenso Consistência interativa Consenso com líder (generais bizantinos)
55 Uma boa nova 58 Esses roblemas são equivalentes Resolvemos um, resolvemos todos Por exemlo: CI a artir de GB: GB várias vezes, cada rocesso é líder uma vez C de CI: roda CI, deois nós alicam mesma função a vetor ara decidir Por aí vai...
56 Uma éssima nova 59 Nenhum desses consensos ode ser garantido em um sistema assíncrono com falha Não odemos decidir não levar em conta a oinião de um nó; ele ode estar aenas lento e mandar a mensagem na hora errada Consenso ode acontecer frequentemente ou ode acontecer raramente Não funciona com crash não funciona com falhas bizantinas
57 Mas a vida continua 60 Se consenso não funciona em um sistema assíncrono e: Multicast totalmente ordenado? Relicação consistente? Commits em gruo? Na rática, vivemos com isso: Tentamos até que o sistema se comorte como síncrono Mascaramos falhas: eseramos até o rocesso resonder Usamos detectores de falha: Crash fail-sto (semre que funciona, claro)
58 Comentário 61 Eleição é um consenso Casos de falha, não há acordo sobre quem é líder Qualquer um ode achar que é Se gente demais achar que é, há um livelock Como um líder não bagunça trabalho do outro? Proostas são ordenadas Todos os nós sabem qual a mais recente que conhecem
59 70 Questões Sincronização Vinícius Fernandes Soares Mota
Exclusão Mútua Distribuída. Algoritmos para eleição de um coordenador ou líder. UBI, DI, Paula Prata SDTF T04 1
Exclusão Mútua Distribuída Algoritmos para eleição de um coordenador ou líder 1 Há situações em que os processos de um sistema distribuído necessitam de coordenar as suas ações: - quando há recursos partilhados,
Leia maisExclusão Mútua Distribuída. Algoritmos para eleição de um coordenador ou líder. UBI, DI, Paula Prata SDTF T04 1
Exclusão Mútua Distribuída Algoritmos para eleição de um coordenador ou líder 1 Suponhamos N processos, pi, i=1,2,,n que não partilham variáveis, mas que partilham algum recurso partilhado ao qual devem
Leia maisExclusão Mútua e Eleição
Exclusão Mútua e Eleição Prof. Raul Ceretta Nunes Curso de Ciência da Comutação ELC1018 - Sistemas Distribuídos 1 Algoritmo Centralizado a) Processo 1 solicita ermissão ao coordenador ara entrar na região
Leia maisSistemas Distribuídos. 7 Coordenação e Acordo. Coordenação e Acordo. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR
Sistemas Distribuídos 7 Coordenação e Acordo n Coordenação e Acordo Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Exclusão Mútua Evitar interferência entre um conjunto de processos e garantir a
Leia maisSistemas Distribuídos Capítulo 6 - Aula 12
Sistemas Distribuídos Capítulo 6 - Aula 12 Aula Passada Relógios Lógicos Relógios de Lamport Relógios Vetoriais Aula de hoje Exclusão Mútua Algoritmos de Eleição 1 Exclusão Mútua - Questão fundamental
Leia maisSistemas Distribuídos
Sistemas Distribuídos Exclusão Mútua Gustavo Reis gustavo.reis@ifsudestemg.edu.br - Questão fundamental em SDs Concorrência e colaboração entre vários processos Processos vão precisar acessar simultaneamente
Leia maisCoordenaçãoe consenso
Sistemas Distribuídos Coordenaçãoe consenso Nazareno Andrade Universidade Federal de Campina Grande 02/2008 Fundamentos Coordenando processos Construíndo sistemas Sistemas construídos 2 Fundamentos Coordenando
Leia maisSistemas Distribuídos
Sistemas Distribuídos Exclusão Mútua Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 11.2 pág. 325-329 Conteúdo Algoritmo centralizado Algoritmo distribuído (Algoritmo
Leia maisSistemas Distribuídos Aula 17
Sistemas Distribuídos Aula 17 Aula passada Garantindo ordenação total Relógio de vetores Propriedades Aula de hoje Exclusão mútua Algoritmo centralizado Algoritmo de Lamport Token Ring Exemplo Bancário
Leia maisAlgoritmos Distribuídos (deadlock) ALGORITMOS DISTRIBUÍDOS Deadlock. Algoritmos Distribuídos (deadlock) Algoritmos Distribuídos (deadlock)
Um deadlock é causado pela situação onde um conjunto de processos está bloqueado permanentemente, i.e., não conseguem prosseguir a execução, esperando um evento que somente outro processo do conjunto pode
Leia maisSistemas Distribuídos Exclusão Mútua. Edeyson Andrade Gomes
Sistemas Distribuídos Exclusão Mútua Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Introdução Coordenação e Acordo Suposição de Falhas Exclusão Mútua Algoritmos Centralizado Distribuído Anel
Leia maisAlgoritmos Distribuídos (exclusão mútua) ALGORITMOS DISTRIBUÍDOS Exclusão mútua. Algoritmos Distribuídos (exclusão mútua)
ALGORITMOS DISTRIBUÍDOS Exclusão mútua Problema: alguns recursos não podem ser usados simultaneamente por diversos processos (ex.: arquivos) Exclusividade de acesso deve ser garantida pelo sistema esta
Leia maisExclusão Mútua Distribuída
Exclusão Mútua Distribuída Raimundo Macêdo Laboratório de Sistemas Distribuídos - LaSiD Universidade Federal da Bahia Propriedades de um programa distribuído (Lamport, 1977) Exemplo 2: sistema controlando
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Sincronização Slide 7 Nielsen C. Damasceno Introdução Utilizando Sistemas Distribuídos, uma grande dificuldade que temos é como garantir o acesso exclusivo a um recurso compartilhado,
Leia maisRoteiro. Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua
Sincronização Roteiro Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua Introdução A comunicação entre processos é importante, mas não é só isso que importa; Uma
Leia maisSistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Consistência Causal(3) Neste exemplo temos uma sequência de eventos permitida quando o depósito é consistente por causalidade, mas proibida quando
Leia maisSistemas Distribuídos. Ricardo Ribeiro dos Santos
Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Setembro/2003 Tópicos Sincronização em Sistemas Distribuídos Sincronização de Relógio Estados Globais
Leia maisSincronização em Sistemas Distribuídos
Sincronização em Sistemas Distribuídos Universidade Federal do ABC Turma: Ciência da Computação Prof. Dr. Francisco Isidro Massetto Sincronização Como as regiões críticas são implementadas em um SD? Como
Leia maisDesenvolvimento de Aplicações Distribuídas
Transação e Controle de Concorrência Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características
Leia maisRelógio Lógico Algoritmo de Lamport. Relógio Lógico Algoritmo de Lamport. Relógio Físico Algoritmo Centralizado. Relógio Físico Algoritmo Centralizado
Relógio Lógico Algoritmo de Lamport Objetivo: Sincronização de clocks lógicos Os tempos associados aos eventos não são necessariamente próximos ao tempo real. Os processos não precisam estar de acordo
Leia maisFaculdade de Informática - PUCRS. Sistemas Distribuídos 2. Faculdade de Informática - PUCRS. Sistemas Distribuídos 4. Faculdade de Informática - PUCRS
Algoritmos Distribuídos Processos em um sistema distribuído geralmente buscam atingir cooperação e para tanto utilizam mecanismos de sincronização para que esta cooperação seja realizada de maneira correta.
Leia maisLabSO Gerência de Processos. Retrospectiva da aula passada... Na aula passada... Na aula passada...
LabSO Gerência de Processos Retrospectiva da aula passada... AULA 4 Flávia Maristela (flavia@flaviamaristela.com) Romildo Martins (romildo@romildo.net) Na aula passada... Processos Estados do processo
Leia maisFundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 6: Monitores, Troca de Mensagens e Deadlock Diego Passos Última Aulas Mecanismos de Exclusão Mútua Operações atômicas. Protocolos de controle de acesso. Spin-locks.
Leia maisAPLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar
- Aula 3-1. REVISÃO SOBRE CONCEITOS FUNDAMENTAIS DE SISTEMAS DISTRIBUÍDOS Na segunda parte abordamos o tema tolerância a falhas, assunto este muito relacionado a redes de computadores, mas que nos mostra
Leia maisImpasses. Pedro Cruz. EEL770 Sistemas Operacionais
Impasses Pedro Cruz EEL770 Sistemas Operacionais Lembretes Proposta de trabalho Enviar para cruz@gta.ufrj.br Prazo: hoje 2 Última aula Semáforos Up Down Mutexes Monitor Mensagens Bloquear no envio/recebimento
Leia maisALGORITMOS DISTRIBUÍDOS Algoritmos de eleição
ALGORITMOS DISTRIBUÍDOS Algoritmos de eleição Sistemas Distribuídos 251 Em sistemas distribuídos, diversos algoritmos necessitam que um processo funcione como, inicializador, sequenciador, enfim, ter um
Leia maisSistemas Operacionais. Deadlock
Sistemas Operacionais Deadlock Deadlocks! Recursos: hardware ou informação! Preemptivo X não preemptivo! Uso do Recurso:! Pedido (Request ou Open)! Uso! Liberação! Um conjunto de processos está em deadlock
Leia maisSistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Comunicação Confiável de Grupo Capítulo 8 Comunicação Confiável de Grupo Camadas de Transporte oferecem comunicação ponto-a-ponto confiável (TCP)
Leia maisSistemas Distribuídos. Ricardo Ribeiro dos Santos
Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Setembro/2003 Tópicos Sincronização em Sistemas Distribuídos Exclusão Mútua Transações Distribuídas
Leia maisSincronização e Concorrência
Tópicos da Aula Sincronização e Concorrência Sincronização sincronização interna sincronização externa sincronização de relógio métodos de sincronização Cristian Berkeley tempo lógico Controle de Concorrência
Leia maisComunicação entre Processos
Programação Paralela e Distribuída Ordenação e Sincronização Prof. Msc. Marcelo Iury de Sousa Oliveira marceloiury@gmail.com http://sites.google.com/site/marceloiury/ Comunicação entre Processos Processos
Leia maisSistemas Distribuídos Aula 7
Sistemas Distribuídos Aula 7 Aula passada Atomicidade Test-and-set Locks revisitado Semáforos Dois problemas Aula de hoje Limitação dos semáforos Monitores Variáveis de condição Semântica do signal Sincronização
Leia maisSistemas Distribuídos Capítulo 8 - Aula 15
Sistemas Distribuídos Capítulo 8 - Aula 15 Aula de hoje Aula Passada Comunicação Confiável Cliente-Servidor Comunicação Confiável de Grupo Comunicação Confiável de Grupo Multicast Atômico Sincronia Virtual
Leia maisSistemas Distribuídos Estados globais. Vinícius Fernandes Soares Mota
Sistemas Distribuídos Estados globais Vinícius Fernandes Soares Mota 1 2 Tópicos Tempo e relógio lógicos (revisão curta) Relógios vetoriais Estados Globais Snapshot distribuído 3 Antes... Por que a sincronização
Leia maisfalhas em sistemas distribuídos
Tolerância a Falhas falhas em sistemas distribuídos Lamport: A distributed system is a system where I can t get any work done if a machine I ve never heard of crashes. sistemas distribuídos e falhas parciais
Leia maisSistemas Distribuídos Capítulo 8 - Aula 14
Sistemas Distribuídos Capítulo 8 - Aula 14 Aula Passada Tolerância a Falhas Conceitos básicos Modelos de falha Redundância Resiliência de Processo Aula de hoje Comunicação Confiável Cliente-Servidor Comunicação
Leia maisSistemas Operacionais
Sistemas Operacionais Processos - Parte 2 Prof. Dr. Fábio Rodrigues de la Rocha (Processos - Parte 2) 1 / 33 (Processos - Parte 2) 2 / 33 (Processos - Parte 2) 3 / 33 (Processos - Parte 2) 4 / 33 (Processos
Leia maisTempos e Estados Globais. ECO036 - Sistemas Paralelos e Distribuídos
Tempos e Estados Globais ECO036 - Sistemas Paralelos e Distribuídos Tópicos Abordados - Tempo - Relógios e Ordenação de eventos. - Relação Happened- Before - Relógios Lógicos - Vetor de Relógios - Relógios
Leia maisSincronização em Sistemas Distribuídos
Sincronização em Sistemas Distribuídos problemas clássicos ordenação de mensagens exclusão mútua distribuída eleição de líder... transações ordenação de acontecimentos relógio físico dificuldades relógio
Leia maisSistemas Operacionais: Sincronização entre processos
Sistemas Operacionais: Sincronização entre processos Sincronização Programa concorrente Executado por diversos processos Acesso concorrente a dados Paralelismo real x Paralelismo aparente Multiprocessadores:
Leia maisPassos lógicos. Texto 18. Lógica Texto Limitações do Método das Tabelas Observações Passos lógicos 4
Lógica ara Ciência da Comutação I Lógica Matemática Texto 18 Passos lógicos Sumário 1 Limitações do Método das Tabelas 2 1.1 Observações................................ 4 2 Passos lógicos 4 2.1 Observações................................
Leia maisEscalonamento. Pedro Cruz. EEL770 Sistemas Operacionais
Escalonamento Pedro Cruz EEL770 Sistemas Operacionais Avisos Propostas de trabalho já foram revisadas Todos os grupos foram comunicados 2 Jantar dos filósofos - Dijkstra Filósofos estão jantando em uma
Leia maisComunicação entre processos (2)
Comunicação entre processos (2) Pedro Cruz EEL770 Sistemas Operacionais Lembretes Proposta de trabalho Enviar para cruz@gta.ufrj.br Prazo: dia 02 de abril 2 Aula passada Comunicação entre processos é útil
Leia mais(Broadcast - um emissor envia a mensagem para todos os nós do sistema) Multicast um emissor, um grupo de processos como receptores
Comunicação em Grupo (Broadcast - um emissor envia a mensagem para todos os nós do sistema) Multicast um emissor, um grupo de processos como receptores Exemplos de aplicação: - ferramentas de trabalho
Leia maisALGORITMOS DISTRIBUÍDOS Deadlock
ALGORITMOS DISTRIBUÍDOS Deadlock Sistemas Distribuídos 231 Um deadlock é causado pela situação onde um conjunto de processos está bloqueado permanentemente, i.e., não conseguem prosseguir a execução, esperando
Leia maisSistemas Distribuídos. Capítulo 6 - Aula 10
Sistemas Distribuídos Aula Passada Capítulo 6 - Aula 10 Nomeação estruturada Implementação de um espaço de nomes Implementação de resolução de nomes Nomeação baseada em atributo Introdução ao problema
Leia maisSistemas Distribuídos Capítulo 8 - Aula 13
Sistemas Distribuídos Capítulo 8 - Aula 13 Aula de hoje Aula Passada Exclusão Mútua Algoritmos de Eleição Tolerância a Falhas Conceitos básicos Modelos de falha Redundância Resiliência de Processo 1 Tolerância
Leia maisFundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 5: Exclusão Mútua Diego Passos Última Aula Programação Concorrente Programas compostos por mais de um processo ou thread. Pode trazer benefícios: Simplificar o
Leia maisSistemas Distribuídos
Sistemas Distribuídos 2016.1 PROF. MARCIAL PORTO FERNANDEZ MARCIAL@LARCES.UECE.BR PROF. ANDRÉ RIBEIRO CARDOSO ANDREC@LARCES.UECE.BR 1 4. Sincronização em Sistemas Distribuídos 2 Sumário Sincronização de
Leia maisSistemas Operacionais. Prof. André Y. Kusumoto
Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Fundamentos Paradigma do produtor-consumidor Sincronização de Processos Produtor while (count == BUFFER_SIZE) ; //no-op //adiciona
Leia maisCapítulo 7: Impasse (Deadlocks( Deadlocks)
Capítulo 7: Impasse (Deadlocks( Deadlocks) Capítulo 7: Impasse (Deadlocks( Deadlocks) O Problema do Impasse Modelo de Sistema Caracterização de Impasse Métodos para Manipular Impasses Prevenção de Impasse
Leia maisSincronização e Comunicação entre Processos
Sincronização e Comunicação entre Processos Monitores/Semáforos Semáforos Mecanismos de sincronização nãoestruturados; Exige do desenvolvedor bastante cuidado, pois qualquer engano pode levar a problemas.
Leia maisConcorrência. Condições de Corrida. 5a. Tentativa. Dificuldades: Sincronização de Processos (2) Aula 11 Profa. Patrícia Dockhorn Costa
Concorrência Dificuldades: Sincronização de Processos (2) Aula 11 Profa. Patrícia Dockhorn Costa Compartilhamento de recursos globais. Gerência de alocação de recursos. Localização de erros de programação
Leia maisAluísio Augusto Silva Gonçalves 17 de maio de 2018
CONSISTÊNCIA E CONSENSO CONSTRUINDO SISTEMAS DISTRIBUÍDOS TOLERANTES A FALHAS Aluísio Augusto Silva Gonçalves 17 de maio de 2018 CONTEÚDO Recapitulando Garantias de consistência Linearizabilidade Garantias
Leia maisUniversidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação
Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação SISTEMAS OPERACIONAIS Aula 7 Regiane Kawasaki kawasaki@ufpa.br Slides adaptados da Profa. Sarita Mazzini Bruschi
Leia maisFICHA de AVALIAÇÃO de MATEMÁTICA A 12.º Ano de escolaridade Versão.4
FICHA de AVALIAÇÃO de MATEMÁTICA A.º Teste.º Ano de escolaridade Versão.4 Nome: N.º Turma: Professor: José Tinoco 6//08 Evite alterar a ordem das questões Nota: O teste é constituído or duas artes Caderno
Leia maisFICHA de AVALIAÇÃO de MATEMÁTICA A 12.º Ano de escolaridade Versão.3
FICHA de AVALIAÇÃO de MATEMÁTICA A.º Teste.º Ano de escolaridade Versão. Nome: N.º Turma: Professor: José Tinoco 6//08 Evite alterar a ordem das questões Nota: O teste é constituído or duas artes Caderno
Leia maisUNIVERSIDADE CATÓLICA PORTUGUESA Faculdade de Ciências Económicas e Empresariais. Microeconomia
UNIVERSIDADE CATÓLICA PORTUGUESA Faculdade de Ciências Económicas e Emresariais icroeconomia Licenciatura em Administração e Gestão de Emresas 3 de Novembro de Fernando Branco Eame de Finalistas Gabinete
Leia maisSincronização e Comunicação entre Processos. Adão de Melo Neto
Sincronização e Comunicação entre Processos Adão de Melo Neto 1 INTRODUÇÃO Em um sistema multitarefa os processos alternam sua execução segundo critérios de escalonamento estabelecidos pelo sistema operacional.
Leia mais14 MODELO DE DECISÃO DA TEORIA DAS RESTRIÇÕES
14 MODELO DE DECISÃO DA TEORIA DAS RESTRIÇÕES A artir da remissa da teoria das restrições de ue a emresa oera semre com algum tio de restrição, neste caítulo é abordado o rocesso geral de tomada de decisão
Leia maisSistemas Distribuídos: Conceitos e Projeto Resiliência de Processos
Sistemas Distribuídos: Conceitos e Projeto Resiliência de Processos Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.ufma.br
Leia maisCapítulo 3 Deadlocks - Impasses
Capítulo 3 Deadlocks - Impasses 3.1. Recurso 3.2. Introdução aos deadlocks 3.3. Algoritmo do avestruz 3.4. Detecção e recuperação de deadlocks 3.5. Evitando deadlocks 3.6. Prevenção de deadlocks 3.7. Outras
Leia maisTolerância a Falhas. Sumário. Acordo Distribuído. December 18, Grupos de Processos
Tolerância a Falhas Acordo Distribuído December 18, 2009 Sumário Grupos de Processos Acordo Distribuído Com falha nas comunicações Modelos de Sincronismo Sistemas Assíncronos Sistemas Síncronos Grupos
Leia maisComunicação de Grupo: Disfusão Confiável e Atômica
WTF 2000: Computação mini-curso Distribuída LCMI/DAS/CTC/UFSC Comunicação de : Disfusão Confiável e Atômica Prof. Lau Cheuk Lung E-mail: lau.lung@inf.ufsc.br Departamento de Informática e Estatística stica
Leia maisSistemas Distribuídos
Sistemas Distribuídos Comunicação em Grupo abril de 2017 Grupos em Aplicações Distribuídas Primitiva de comunicação em grupo um processo envia uma mensagem para um grupo de processos e todos os destinatários
Leia maisSincronização de Processos (2)
Sincronização de Processos (2) Tipos de Soluções (cont.) Soluções de Hardware Inibição de interrupções Instrução TSL (apresenta busy wait) Soluções de software com busy wait Variável de bloqueio Alternância
Leia maisAula 03. Evandro Deliberal
Aula 03 Evandro Deliberal evandro@deljoe.com.br https://www.linkedin.com/in/evandrodeliberal Concorrência Método Sincronização Problemas: Perda de consistência Acesso a dados inconsistentes Perda de atualizações
Leia maisEleição de Líder. Alysson Neves Bessani Departamento de Informática Faculdade de Ciências da Universidade de Lisboa
Eleição de Líder Alysson Neves Bessani Departamento de Informática Faculdade de Ciências da Universidade de Lisboa Algoritmos de Eleição Muitos algoritmos distribuídos necessitam de seleccionar um processo
Leia maisRedes Neurais e Sistemas Fuzzy
Conceitos básicos de redes neurais recorrentes Redes eurais e Sistemas Fuzzy Redes eurais Recorrentes A Rede de Hofield A suressão do ruído numa memória auto-associativa linear ode ser obtida colocando-se
Leia maisDEADLOCKS IMPASSES. Vinícius Pádua
DEADLOCKS IMPASSES O que é um Deadlock? 2 O que é um Deadlock? Cenário Dois processos : Gravar CD com dados do scanner Processo A solicita o CD é autorizado Processo B solicita o scanner é autorizado Processo
Leia maisUnidade 3. Controle de Concorrência. Primitivas de Programação Concorrente Clássica
Unidade 3 Controle de Concorrência Primitivas de Programação Concorrente Clássica Programação Concorrente A abstração de programação concorrente é o estudo de sequênciasde execução intercaladas, de instruções
Leia maisSistemas Distribuídos Aula 5
Sistemas Distribuídos Aula 5 Aula passada Sincronização Race condition Região crítica Locks Algoritmo de Peterson Aula de hoje Atomicidade test-and-set Locks revisitado Semáforos Dois problemas Atomicidade
Leia maisDEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO SISTEMAS OPERACIONAIS I SEM/12 PROVA I. Tempo de Prova: 100 minutos / Escore Máximo: 300 pontos
DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO SISTEMAS OPERACIONAIS I - 1 0 SEM/12 PROVA I Tempo de Prova: 100 minutos / Escore Máximo: 300 pontos Aluno: G A B A R I T O Escore: Responda às perguntas de forma
Leia maisSistemas Operacionais. Prof. André Y. Kusumoto
Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Semáforos Sincronização de Processos Um semáforo é uma estrutura de dados que consiste em um número inteiro e em uma fila Seu
Leia maisSistemas Operacionais
Introdução Sistemas Operacionais Sincronização de processos Aula 07 Em sistemas multiprogramados há interação entre processos para comunicação, que pode ser feita via compartilhamento de memória/arquivos
Leia maisEleição de leader e Exclusão Mútua
Eleição de leader e Exclusão Mútua November, 9 Sumário Leader Exclusão Mútua Leader O problema muitos algoritmos distribuídos pressupõem que um determinado processo desempenha um papel especial Por exemplo,
Leia maisDeadlock. Um problema de concorrência. Parte dos slides: Sistemas Operacionais Modernos 2ª Edição, Pearson Education
Deadlock Um problema de concorrência Parte dos slides: Sistemas Operacionais Modernos 2ª Edição, Pearson Education 1 Interação entre Processos Processos que executam em paralelo podem trocar informações
Leia maisTipos de Soluções (cont.)
Sincronização de Processos (2) Tipos de Soluções (cont.) Soluções de Hardware Inibição de interrupções Instrução TSL (apresenta busy wait) Soluções de software com busy wait Variável de bloqueio Alternância
Leia maisFICHA de AVALIAÇÃO de MATEMÁTICA A 12.º Ano de escolaridade Versão.1
FICHA de AVALIAÇÃO de MATEMÁTICA A.º Teste.º Ano de escolaridade Versão. Nome: N.º Turma: Professor: José Tinoco 6//08 Evite alterar a ordem das questões Nota: O teste é constituído or duas artes Caderno
Leia maisCapítulo 3. Deadlocks. Recursos
Capítulo 3 Deadlocks 3.1. Recursos 3.2. Introdução a deadlocks 3.3. O algoritmo a avestruz 3.4. Detecção e recuperação de deadlock 3.5. Evitando Deadlock 3.6. Prevenindo Deadlock 3.7. Outros assuntos 1
Leia maisMC504 Sistemas Operacionais MC514 Sistemas Operacionais: Teoria e
Instituto de Computação Universidade Estadual de Campinas Nome: MC504 Sistemas Operacionais MC514 Sistemas Operacionais: Teoria e Prática Profa. Islene Calciolari Garcia 18 de setembro de 2013 Questão
Leia maisCapítulo 2 Processos e Threads
Capítulo 2 Processos e Threads 2.1 Processos 2.2 Threads 2.3 Comunicação interprocesso 2.4 Problemas clássicos de IPC 2.5 Escalonamento 1 Processos O Modelo de Processo Multiprogramação de quatro programas
Leia maisConsenso Distribuído em Sistemas Assíncronos
Consenso Distribuído em Sistemas Assíncronos Uma Solução Probabilística Gerhard Tel: Introduction to Distributed Algorithms, Cambridge Press, sections 14.1 e 14.4 Revendo a Impossibilidade em Sistemas
Leia maisSistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Consistência e Replicação Capítulo 7 Agenda Distribuição de Conteúdo Estado versus operações Protocolos de recuperação de atualizações versus protocolos
Leia maisSistemas Distribuídos
Comunicação em Grupo Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 10.4 pág. 304-311 2 Comunicação em Grupo Suponha que se deseja um serviço de arquivos único
Leia maisSistemas Operacionais
Sistemas Operacionais Programação Concorrente Impasses Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Princípios de Deadlock Técnicas de solução do problema Prevenir a ocorrência
Leia maisAlgoritmos Distribuídos. AD Modelo Computacional 1
Algoritmos Distribuídos Modelo Computacional Antonio Alfredo Ferreira Loureiro loureiro@dcc.ufmg.br http://www.dcc.ufmg.br/~loureiro AD Modelo Computacional 1 Modelo Computacional Modelo: Esquema que possibilita
Leia maisINE5645 Programação Paralela e Distribuída - Prova 1 22/10/2012 Aluno: Parte 1 Controle de Concorrência Conceitos Básicos (2,5)
INE5645 Programação Paralela e Distribuída - Prova 1 22/10/2012 Aluno: Parte 1 Controle de Concorrência Conceitos Básicos (2,5) 1.1 (Verdade/Falso) Itens próprios de processos são: Espaço de endereçamento,
Leia maisAlgoritmos Distribuídos Introdução
Algoritmos Distribuídos Introdução Antonio Alfredo Ferreira Loureiro loureiro@dcc.ufmg.br htt://www.dcc.ufmg.br/~loureiro Este material está baseado no caítulo 3 do livro Distributed Systems, second edition,
Leia maisSincronização e comunicação entre processos
Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Sincronização e comunicação entre processos Em um sistema multiprogramável com
Leia maisProgramação Orientada a Objetos. Concorrência
Programação Orientada a Objetos Concorrência Cristiano Lehrer, M.Sc. Níveis de concorrência: Introdução Nível de instrução de máquina: Executando duas ou mais instruções de máquina simultaneamente. Nível
Leia maisSistemas Operacionais
Sistemas Operacionais Processos Exclusão Mútua Mecanismos para se Obter Exclusão MútuaM Mecanismos de Hardware: Inibição de Interrupções Instrução TSL (Test and Set Lock) Mecanismos de Software: Com Espera
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Capítulo 8 Introdução à replicação e consistência Material de suporte às aulas de Sistemas Distribuídos Copyright DI FCT/ UNL / 1 NOTA PRÉVIA A apresentação utiliza algumas das figuras
Leia maisENADE 2011 SISTEMAS OPERACIONAIS
ENADE 2011 SISTEMAS OPERACIONAIS SOs: conteúdos comuns Gerência de processos/processador Comunicação Concorrência e Sinc. de Processos Gerenciamento de Memória Alocação de Recursos e Deadlocks Sistemas
Leia maisSistemas Distribuídos Aula 16
Sistemas Distribuídos Aula 16 Aula passada Relacionando eventos Relógios lógicos Algoritmo de Lamport Propriedades Aula de hoje Limitação de Lamport Relógio de vetores Propriedades Garantindo ordenação
Leia maisGeometria Computacional Primitivas Geométricas. Claudio Esperança Paulo Roma Cavalcanti
Geometria Comutacional Primitivas Geométricas Claudio Eserança Paulo Roma Cavalcanti Oerações com Vetores Sejam x e y vetores do R n e λ um escalar. somavetorial ( x, y ) = x + y multescalar ( λ, x ) =
Leia maisSincronização de Processos (2)
Sincronização de Processos (2) Tipos de Soluções (cont.) Soluções de Hardware Inibição de interrupções Instrução TSL (apresenta busy wait) Soluções de software com busy wait Variável de bloqueio Alternância
Leia mais