Sistemas Operacionais: Deadlocks
|
|
- Yago Mascarenhas Antas
- 6 Há anos
- Visualizações:
Transcrição
1 Sistemas Operacionais: Deadlocks
2 Definição Deadlocks (impasse) Um conjunto de processos bloqueados cada um de posse de um recurso, esperando por um outro recurso que já está alocado por outro processo do mesmo conjunto
3 Código de trânsito brasileiro Art. 29. O trânsito de veículos nas vias terrestres abertas à circulação obedecerá às seguintes normas: III - quando veículos, transitando por fluxos que se cruzem, se aproximarem de local não sinalizado, terá preferência de passagem: a) no caso de apenas um fluxo ser proveniente de rodovia, aquele que estiver circulando por ela; b) no caso de rotatória, aquele que estiver circulando por ela; c) nos demais casos, o que vier pela direita do condutor; Existe a possibilidade de um impasse?
4 Caracterização de um impasse Um deadlock pode ocorrer, somente se as quatro condições a seguir ocorrem simultaneamente: Exclusão mútua: acesso exclusivo a recursos Obtém e espera: um processo de posse de um recurso espera para obter um outro recurso Sem preempção: um recurso somente pode ser liberado voluntariamente pelo processo Espera circular: um conjunto de processos {P 0,P 1,..,P n }. O processo P 0 espera por um recurso alocado por P 1, P 2 espera por P 2, e assim sucessivamente
5 Modelo do sistema Recursos do sistemas S 1, S 2,...,S n Cada recurso R i tem W i instâncias Para utilizar um recurso, um processo realiza as seguintes seqüências Requisita Utiliza Libera
6 Grafo de alocação de recursos Conjunto de vértices V e arestas E V é particionado em dois tipos: P = {P 1, P 2,, P n }, conjunto de processos no sistema. R = {R 1, R 2,, R m }, conjunto de recursos do sistema. Aresta de requisição aresta P 1 R j Aresta de atribuição aresta R j P i
7 Grafo de alocação de recursos Processo Recurso Processo P i solicita recurso R j P i Recurso R j alocado para o processo P i R j P i R j
8 Exemplo Impasse: satisfaz as 4 propriedades de um impasse?
9 Grafo com ciclo porém sem impasse Porque não existe impasse na situação acima?
10 Impasse Se um grafo não contém ciclos sem impasse. Se um grafo contém ciclos Se existe somente uma instância do recurso, então impasse. Se existe várias instâncias, possibilidade de impasse.
11 Métodos para manipular impasses 1. Garantir que o sistema nunca entrará em um estado de impasse. a) Prevenção de impasse (por construção) b) Evitar o impasse (em tempo de execução) 2. Permitir que o sistema entre em um estado de impasse e recuperá-lo. 3. Ignorar o problema e torcer para que um deadlock não ocorra no sistema (afinal, qual seria a utilidade do botão reset?).
12 Prevenção do impasse Exclusão mútua Alguns recursos necessitam de acesso exclusivo, portanto é uma situação obrigatória Obtém e espera: evitar que um processo Obtém e espera: evitar que um processo solicite um recurso, enquanto estiver de posse de outros recursos Solicitar todos os recursos no início da execução Baixa utilização dos recursos (possibilidade de abandono de processos starvation )
13 Prevenção de impasses(2) Sem preempção Possibilitar a preempção. Um processo de posse de alguns recursos, solicita outro recurso que não pode ser alocado. O processo libera os recursos obtidos e espera O processo entra na fila de solicitação de todos os recursos que ele tinha acesso, mais o recurso solicitado O processo volta a executar somente quando todos os recursos estão disponíveis Espera circular Impor uma ordem dos recursos, e possibilitar somente a alocação dos recursos em ordem crescente
14 Evitar o impasse Necessita de algumas informações adicionais Cada processo deve declarar o número máximo de recursos de cada tipo que utilizará durante a execução Algoritmo para evitar o impasse analisa dinamicamente o estado do grafo de alocação de recursos para verificar a situação de espera circular O estado do grafo de alocação do recurso considera o número de recursos alocados e o máximo disponível, e a utilização máxima de cada processo
15 Estado seguro Quando um processo solicita um recurso, deve-se analisar se a alocação imediata deixará o sistema em um estado seguro (sem possibilidade de impasse) Estado seguro: se existe uma sequencia de processos <P 1, P 2,, P n>, de todos os processos do sistema, onde para cada P i, os recursos que P i pode ainda solicitar, são satisfeitos pelos recursos disponíveis + recursos alocados por P j, onde j < i Se os recursos que Pi necessita não estão disponíveis, Pi poderá esperar até que os processso Pj sejam finalizados Os recursos que Pi necessita, estarão disponíveis após a finalização dos processos Pj Pi+1 pode continuar a executar após finalização de Pi, onde todos os recursos necessários estarão disponíveis
16 Estado seguro x Estado inseguro Se o sistema está em estado seguro: sem possibilidade de impasse Se o sistema está inseguro: existe a possibilidade de impasse Evitar o impasse: não permitir que o sistema entre em estado inseguro.
17 Algoritmo do banqueiro Evitar o impasse em um sistema com múltiplas instâncias de recursos Cada processo deve durante sua inicialização, indicar todos os recursos que irá utilizar (o máximo) Quando um processo solicita um recurso, o mesmo pode esperar O processo tem que garantir que liberará todos os recursos em uma quantidade finita de tempo
18 Algoritmo do banqueiro N = processos, M= tipos de recursos Available= vetor de tamanho M. Available[j]= K, indica que existem K instâncias do recurso Rj disponíveis Max= matriz NxM. Max[i, j]=k, indica que um processo Pi pode solicitar no máximo K instâncias do recurso Rj. Allocation= matriz NxM. Allocation[i, j]=k, indica que um processo Pi, alocou K instâncias do recurso Rj Need= matriz NxM. Need[i, j]=k, indica que um processo Pi, necessita ainda K instâncias do recurso Rj para finalizar. Need= Max-Allocation
19 Algoritmo para avaliação do estado 1. Work e Finish são dois vetores de tamanho m e n, respectivamente. Inicializar Work= available Finish[i]= false, para i=0..n 2. Procure um i, onde: Finish[i]= false Need i <=Work Se não existir um processo i, vá para o passo 4 3. Passo 3 Work= Work+ Allocation i Finish[i]= true Volte para o passo 2 4. Passo 4 Se Finish[i]=true para todo i, o sistema está em estado seguro
20 Algoritmo para alocação recursos do processo Pi Request i = vetor de requisições do processo Pi 1. Se Request i <= Need i, vá para o passo 2. Senão, sinalize um erro, pois o processo solicitou mais recursos que ele declarou necessitar 2. Se Request i <= Available, vá para o passo 3. Senão, o processo Pi deve esperar pois os recursos não estão disponíveis 3. O processo Pi pretende alocar os recursos, logo é necessário atualizar as estruturas de dados Available = Available Request; Allocation i = Allocation i + Request i ; Need i = Need i Request i ; Se seguro => os recursos podem ser alocados Senão o processo deve esperar, e o estado anterior deve ser restaurado
21 Exemplo do algoritmo do banqueiro 5 processos P 0.. P 4 ; 3 tipos de recursos: A (10 instâncias), B (5 instâncias), and C (7 instâncias). Visão do sistema no tempo T 0 : Allocation Max Available A B C A B C A B C P P P P P
22 Exemplo O conteúdo da matriz Need = Max Allocation. Need A B C P P P P P O sistema esta em estado seguro < P 1, P 3, P 4, P 2, P 0 > satifaz o critério de segurança.
23 P 1 requisita (1,0,2) Verifique que Request Available (isto é, (1,0,2) (3,3,2) true. Allocation Need Available A B C A B C A B C P P P P P Executando o algoritmo, obtemos que a sequência < P 1, P 3, P 4, P 0, P 2 > satisfaz o critério de segurança.
24 Exercício Requisição (3,3,0) por P 4 pode ser realizada? Requisição (0,2,0) por P 0 pode ser realizada?
25 Detecção de impasses Permitir que o sistema entre em um estado de impasse e recuperá-lo.
26 Detecção de impasses Permitir que o sistema entre em estado de impasse Detectar Recuperar um estado seguro
27 Única instância Gerar um grafo waiting-for Nós: processos Pi ->Pj, Pi esperando por um recurso alocado por Pj Algoritmo de detecção de ciclos
28 Múltiplas instâncias M tipos de recursos no sistema Available: vetor de tamanho m. Indica os recursos disponíveis Allocation: matriz NxM. Número de recursos que cada processo tem alocado Request: matriz NxM. Matriz representa as requisições que estão em andamento.
29 Algoritmo de detecção de impasse 1. Work e Finish são vetores de tamanho M e N respectivamente Work= Available Finish[i]= false, se Allocation i!= 0, senão Finish[i]= true 2. Procurar um i, onde Finish[i]== false Request i <= Work Se um nenhum elemento i existe com essas condições, vá para o passo 4 3. Passo 3 Work= Work + Allocation Finish[i]= true Vá para o passo 2 4. Passo4 Se existe Finish[i] ==false, então o sistema está em estado de impasse. Os processos com Finish=false, estão em impasse.
30 Exemplo de detecção de deadlocks Processos P 0.. P 4 ; 3 tipos de recursos A (7 instâncias), B (2 instâncias), e C (6 instâncias). Estado do sistema no tempo T 0 : Allocation Request Available A B C A B C A B C P P P P P Seqüência <P 0, P 2, P 3, P 1, P 4 > resultará Finish[i] = true para todo i.
31 Deadlock P 2 requisita uma instância adicional do recurso C. Request A B C P P P P P Estado do sistema? Pode utilizar os recursos de P 0, porém insuficiente para satisfazer as outras requisições. Um impasse existe no sistema, com os processos P 1, P 2, P 3, and P 4
32 Utilização do algoritmo de detecção de impasse Qual a freqüência para invocar o algoritmo Depende da utilização do sistema Se demorar muito, poderá ocorrer muitos ciclos Quantos processos devem retornar a um estado seguro para sair do estado de impasse? (um para cada ciclo)
33 Recuperação do impasse Finalizar processos Finalizar todos os processos no estado de impasse Eliminar um processo por vez, até que o impasse seja finalizado Em qual ordem? Prioridade Utilização dos recursos Tempo de execução Preempção de recursos
Capí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 maisCapítulo 7: Deadlocks. Operating System Concepts 8th Edition
Capítulo 7: Deadlocks Sobre a apresentação (About the slides) Os slides e figuras dessa apresentação foram criados por Silberschatz, Galvin e Gagne em 2009. Esse apresentação foi modificada por Cristiano
Leia maisSistemas Operacionais Aula 09: Deadlocks / Impasses. Ezequiel R. Zorzal
Sistemas Operacionais Aula 09: Deadlocks / Impasses Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Objetivos Desenvolver uma descrição de deadlocks, que impedem que grupos de processos simultâneos
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 maisSISTEMAS OPERACIONAIS
SISTEMAS OPERACIONAIS Deadlock Andreza Leite andreza.leite@univasf.edu.br Plano da Aula 2 Introdução Modelo de um Sistema Computacional Característica de um Deadlock Modelagem de um Deadlock (Grafos de
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 maisDeadlocks (impasses)
Deadlocks (impasses) Exemplos de recursos impressoras, drives, tabelas, memória, tempo de processador Sequência de eventos necessária para usar um recurso Solicitar recurso Usar recurso Liberar recurso
Leia maisSistemas Operacionais. DeadLock. Edeyson Andrade Gomes.
Sistemas Operacionais DeadLock Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula DeadLock Metas Algoritmos 2 DeadLock Um estado de deadlock ocorre quando dois ou mais processos estão esperando por
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 OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar
- Aula 3-1. DEADLOCK Os sistemas computacionais estão repletos de recursos que podem ser usados por um processo por vez. Exemplo: CD-ROM, Driver de Fita Dat, etc. Ter dois processos simultaneamente gravando
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 Pearson
Leia maisSSC0640 Sistemas Operacionais I
SSC64 Sistemas Operacionais I 2ª Aula Deadlocks Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Slides adaptados de Marcos José Santana / Regina H. C. Santana / Luciana A. F. Martimiano baseados no livro
Leia maisAula 9. Deadlocks. Caracterização Grafo de dependência Métodos de tratamento Detecção Recuperação. Universidade Federal de Minas Gerais
Aula 9 Deadlocks 1.1 1.2 1.3 1.4 1.5 1.6 O que é Caracterização Grafo de dependência Métodos de tratamento Detecção Recuperação O quê é Deadlock (1) Propriedade indesejável de um conjunto de processos
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 maisProgramação Concorrente. 2º Semestre 2010
Programação Concorrente 2º Semestre 2 Tópicos de Hoje Assunto: Deadlocks Livro Texto Capítulo 4; Conceitos Iniciais; Tipos de Recursos; Condições necessárias para ocorrência de deadlock; Um sistemas livre
Leia maisSistemas Distribuídos
Sistemas Distribuídos Deadlocks Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 11.5 pág. 340-344 2 Conteúdo Detecção de deadlock distribuído Detecção centralizada
Leia maisProgramação de Sistemas. Impasse e carência
Programação de Sistemas Impasse e carência Programação de Sistemas Impasse/Carência : 1/27 Introdução Acesso de unidades de execução a recursos críticos exige sincronização. Quando uma unidade se encontra
Leia maisSOP - TADS Impasses - Deadlock
SOP - TADS Impasses - Deadlock Prof. Ricardo José Pfitscher dcc2rjp@joinville.udesc.br Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Cronograma Noções de deadlock Modelagem
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 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 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 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 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 maisLEGISLAÇÃO DE TRÂNSITO
LEGISLAÇÃO DE TRÂNSITO Normas Gerais de Circulação e Conduta Parte1 Prof. Denis Brasileiro Art. 26. Os usuários das vias terrestres devem: I - abster-se de todo ato que possa constituir perigo ou obstáculo
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 maisSistemas Operacionais Bloqueios Perpétuos
Sistemas Operacionais loqueios Perpétuos Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFM http://www.lsd.ufma.br 9 de agosto de Francisco Silva
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 maisSistemas Operacionais. Prof. André Y. Kusumoto
Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Deadlocks Situação na qual um, ou mais processos, fica impedido de prosseguir sua execução devido ao fato de cada um estar aguardando
Leia maisImpasses. Pedro Cruz. EEL770 Sistemas Operacionais
Impasses Pedro Cruz EEL770 Sistemas Operacionais Lembretes Proposta de trabalho Enviar para cruz@gta.ufrj.br Prazo: dia 21 de agosto 2 Recordar é viver Recursos preemptíveis e não-preemptíveis Impasse
Leia maisTécnicas de Controle de Concorrência
Técnicas de Controle de Concorrência Principais Técnicas bloqueio (locking) timestamp Técnicas Baseadas em Bloqueio Técnicas mais utilizadas pelos SGBDs Princípio de funcionamento controle de operações
Leia maisSistemas de Informação. Sistemas Operacionais
Sistemas de Informação Sistemas Operacionais PROCESSOS E THREADS PARTE III SUMÁRIO 4. GERÊNCIA DO PROCESSADOR: 4.1 Introdução; 4.2 Funções Básicas; 4.3 Critérios de Escalonamento; 4.4 Escalonamentos Não-Preemptivos
Leia maisResumo: Sistemas Operacionais Abertos
Resumo: Sistemas Operacionais Abertos Prof. Michael A. Pontes Processos Um processo é um programa em execução. Enquanto um processo é executado, ele muda de estado. O estado de um processo é definido pela
Leia maisBC1518-Sistemas Operacionais. Prof. Marcelo Z. do Nascimento
BC58-Sistemas Operacionais Deadlock (Impasse) Aula 7 Prof. Marcelo Z. do Nascimento marcelo.nascimento@ufabc.edu.br Roteiro Conceito de Deadlock; Recursos; Condições de ocorrência; Estratégias para tratar
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 maisMAC422/5753 Sistemas Operacionais
MAC422/5753 Sistemas Operacionais Prof. Marcel P. Jackowski Aula #9 Sincronização no kernel e deadlocks Sobre sincronização... Tarefa complexa e sutil Exemplos através de código-fonte mostrado utilizando
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 maisINTRODUÇÃO AOS SISTEMAS OPERACIONAIS. SEMANAS 11 e 12
INTRODUÇÃO AOS SISTEMAS OPERACIONAIS outubro/2013 SEMANAS 11 e 12 Estudo das deadlocks. Caracterização e condições necessárias para a ocorrência. Soluções, prevenção, impedimento, detecção e recuperação.
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 maisInversão de prioridades
Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Maio, 2017 1 / 46 Sumário 1 Dependência 2 Dependência Deadlocks 3 Classicação dos recursos 2 / 46 1 Dependência
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 maisAlocação de Recursos. Introdução. Sistemas de Tempo Real: Introdução. Modelo de Recursos. Modelo de Recursos. Modelo de Recursos
Introdução Sistemas de Tempo Real: Alocação de Recursos Rômulo Silva de Oliveira Departamento de Automação e Sistemas DAS UFSC Processador é o recurso mais imtante Mais essencial Outros recursos também
Leia maisAlocação de Recursos. Introdução. Sistemas de Tempo Real: Introdução. Modelo de Recursos. Modelo de Recursos. Modelo de Recursos
Introdução Sistemas de Tempo Real: Alocação de Recursos Rômulo Silva de Oliveira Departamento de Automação e Sistemas DAS UFSC Processador é o recurso mais imtante Mais essencial Outros recursos também
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 maisSistemas Operativos. Deadlocks FEUP. 23 de Outubro, 2009
Sistemas Operativos Rui Maranhão (rma@fe.up.pt) FEUP 23 de Outubro, 2009 Agradecimento: Pedro Souto (pfs@fe.up.pt) Rui Maranhão (FEUP) 23 de Outubro, 2009 1 / 33 Sumário O Problema Grafos de Alocação de
Leia maisEscalonamento. Eduardo Ferreira dos Santos. Abril, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 42
Escalonamento Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Abril, 2017 1 / 42 Sumário 1 Multiprogramação 2 Escalonamento 3 Concorrência Memória compartilhada
Leia maisTécnicas de Controle de Concorrência
Técnicas de Controle de Concorrência Pessimistas supõem que sempre ocorre interferência entre transações e garantem a serializabilidade enquanto a transação está ativa técnicas bloqueio (locking) timestamp
Leia maisRecursos. Exemplos de recursos:
Deadlocks 1. Recursos 2. Introdução aos deadlocks 3. Algoritmo Ostrich (Avestruz) 4. Detecção e recuperação de deadlocks 5. Evitar deadlocks 6. Prevenir deadlocks 7. Considerações Recursos Exemplos de
Leia maisModelagem e implementação de programas concorrentes
Modelagem e implementação de programas concorrentes Aula 5 DCC-UFMG 2010 Bibliograa A de sempre + The Mutual Exclusion Problem Part I: A Theory of Interprocess Communication L. Lamport Interferencia Interferência:
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 maisRoteiro. Noções de Controle de Concorrência. BCC321 - Banco de Dados I. Ementa. Finalidade do Controle de Concorrência.
Roteiro Noções de Controle de Concorrência Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Posicionamento
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 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 MOTIVAÇÃO 2 INTRODUÇÃO Em um sistema multiprogramado (concorrente) os processos alternam sua execução (ou seja, são executados alternadamente
Leia maisQUESTÕES LEGISLAÇÃO DE TRÂNSITO COMENTADAS PROF. MARCOS GIRÃO MOTORISTA DE CAMINHÃO GRANEL I PROVA 3
QUESTÕES LEGISLAÇÃO DE TRÂNSITO COMENTADAS PROF. MARCOS GIRÃO MOTORISTA DE CAMINHÃO GRANEL I PROVA 3 21. No que diz respeito à preferência de passagem, quando dois ou mais veículos passam por fluxos que
Leia maisQuestões de Provas de Períodos Anteriores
Sistemas Operacionais 2010/1 Questões de Provas de Períodos Anteriores 1) Dois importantes conceitos encontrados no sistema operacional Unix são: (i) modo de execução ( execution mode ); e (ii) contexto
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 maisRetrospectiva da aula passada... Escalonamento. Na aula passada... Comunicação entre processos (-- O jantar dos filósofos --)
Escalonamento Retrospectiva da aula passada... UL Flávia Maristela (flavia@flaviamaristela.com) Romildo Martins (romildo@romildo.net) Race condition Região rítica Exclusão Mútua Na aula passada... Problemas
Leia maisProgramação Concorrente Locks
Programação Concorrente Prof. Eduardo Alchieri Variáveis do tipo trava (lock) Lock: É um mecanismo de sincronização de processos/threads, em que processos/threads devem ser programados de modo que seus
Leia maisAULA 11 PROJETO E ANÁLISE DE ALGORITMOS. Conceitos básicos e representação de grafos Karina Valdivia Delgado
AULA 11 PROJETO E ANÁLISE DE ALGORITMOS Conceitos básicos e representação de grafos Karina Valdivia Delgado Roteiro Motivação Conceitos básicos Representação Motivação Um grafo é uma abstração que permite
Leia maisCAPÍTULO III DAS NORMAS GERAIS DE CIRCULAÇÃO E CONDUTA Art. 26. Os usuários das vias terrestres devem: I - abster-se de todo ato que possa constituir
CAPÍTULO III DAS NORMAS GERAIS DE CIRCULAÇÃO E CONDUTA Art. 26. Os usuários das vias terrestres devem: I - abster-se de todo ato que possa constituir perigo ou obstáculo para o trânsito de veículos, de
Leia maisCapítulo 6 Deadlocks. Não encontre defeitos, encontre soluções. Qualquer um sabe queixar-se. Henry Ford
Universidade Federal de Itajubá UNIFEI Instituto de Engenharia de Sistemas e Tecnologias da Informação IESTI CCO 004 Sistemas Operacionais Prof. Edmilson Marmo Moreira 1 Introdução Capítulo 6 Deadlocks
Leia maisPROCESSOS. Sistemas Operacionais. Vinícius Pádua
PROCESSOS Sistemas Operacionais Processo Conceito mais importante em SO SO também é um processo Multiprogramação Relembrando Execução simultânea de vários processos CPU salta de processo em processo Ilusão
Leia maisDeadlocks. Sistemas Operacionais - Professor Machado
Deadlocks Sistemas Operacionais - Professor Machado 1 Deadlock - Definição Um conjunto de processos está em situação de deadlock se todo processo pertencente ao conjunto estiver esperando por um evento
Leia maisSistemas Operacionais. Gerência de Processador
Sistemas Operacionais Gerência de Processador Sumário 1. Introdução 2. Funções Básicas do Escalonamento 3. Critérios de Escalonamento 4. Escalonamento 1. Não-Preemptivo 2. Preemptivo 5. Políticas de Escalonamento
Leia maisAvisos. Processamento de Transações Controle de Concorrência. Roteiro da aula. Tipos de bloqueio: Binários. Protocolos baseados em bloqueio
Ciência da Computação GBC043 Sistemas de Banco de Dados Processamento de Transações Controle de Concorrência Avisos Lista de exercícios adicionais na página da disciplina Profa. Maria Camila Nardini Barioni
Leia maisSeções Críticas em Sistemas de Tempo Real
Seções Críticas em Sistemas de Tempo Real Rômulo Silva de Oliveira ebook Kindle, 2018 www.romulosilvadeoliveira.eng.br/livrotemporeal Outubro/2018 1 Introdução Processador é o recurso mais importante Mais
Leia maisEscalonamento de Processos
Escalonamento de Processos - Critérios. justiça : cada processo tem sua parte justa de tempo de cpu;. eficiência : cpu ocupada 100% do tempo;. tempo de resposta : minimizar tempo de resposta para processos
Leia maisPrefeitura Municipal de Claraval/MG. Concurso Público - 01/2018 PERÍODO DE RECURSO CONTRA O JULGAMENTO DOS RECURSOS
Prefeitura Municipal de Claraval/MG Concurso Público - 01/2018 PERÍODO DE RECURSO CONTRA O JULGAMENTO DOS RECURSOS Cargo: Motorista I Código do recurso: 2137 Solicitado em: 06/05/2019-16:46 Recurso: Peço
Leia maisRedes de Computadores. INF201 - Fundamentos de Sistemas Operacionais - 2º Período
Redes de Computadores INF201 - Fundamentos de Sistemas Operacionais - 2º Período PARTE II: PROCESSOS E THREADS SUMÁRIO 7. SINCRONIZAÇÃO E COMUNICAÇÃO ENTRE PROCESSOS: 7.1 Introdução; 7.2 Aplicações Concorrentes;
Leia maisSISTEMAS EMBARCADOS. Acesso a recursos compar,lhados. Prof. André Schneider de Oliveira
Universidade Tecnológica Federal do Paraná (UTFPR) Departamento Acadêmico de Eletrônica (DAELN) SISTEMAS EMBARCADOS Acesso a recursos compar,lhados Prof. André Schneider de Oliveira andreoliveira@u6pr.edu.br
Leia maisEstrutura de Dados. Aula 07 Alocação Dinâmica
Estrutura de Dados Aula 07 Alocação Dinâmica 2 ALOCAÇÃO DINÂMICA Existem três modos de reservar espaço de memória para o armazenamento de informações: 1ª - através do uso de variáveis globais (e estáticas).
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. 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 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 Operacionais. Prof. André Y. Kusumoto
Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Escalonamento CPU Um vez escalonado, o processo utiliza o processador, de modo: Não preemptivo (FIFO, SJF, Cooperativo) Término
Leia maisContato. professorluisleite.wordpress.com
BD II Controle de Concorrência Professor: Luis Felipe Leite Contato luisleite@recife.ifpe.edu.br professorluisleite.wordpress.com Ciclo de três aulas Processamento de transações. Controle de Concorrência.
Leia mais14/05/2017. Conceitos de Processos. Conceitos de Processos. Conceito de processo
Conceito de processo Os computadores executam várias operações ao mesmo tempo. - Compilar um programa; - Enviar um arquivo para a impressora; - Exibir uma página web; - Reproduzir músicas; - Receber mensagens
Leia maisAlgoritmos de escalonamento
Algoritmos de escalonamento Escalonamento de Processos Sistemas Interativos Algoritmos para Sistemas Interativos: First-Come-First-Served (FIFO) Round-Robin; Prioridade; Múltiplas Filas; Utilizam escalonamento
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 maisDeadlocks. Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO
Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Dispositivos e recursos são compartilhados a todo momento: impressora, disco, arquivos,
Leia mais(Model Checking) Estes slides são baseados nas notas de aula da Profa. Corina
Verificação de Modelos (Model Checking) Estes slides são baseados nas notas de aula da Profa. Corina Cîrstea Agenda Lógica Temporal Lógica de Árvore de Computação (CTL) Verificação de Modelo do CTL Caminhos
Leia mais- CURSO DE DIREÇÃO DEFENSIVA -
- CURSO DE DIREÇÃO DEFENSIVA - Copyright -Todos os direitos reservados. A reprodução não autorizada destes materiais, no todo ou em parte, constitui violação do direitos autorais. (Lei nº 9.610). DEFINIÇÃO
Leia maisManual de Utilização (Fluxo)
Manual de Utilização (Fluxo) Manual do Usuário - Gestão de Assinaturas Projuris Enterprise Novembro/2014 Gestão de Assinaturas 1 Objetivo Permitir ao usuário efetuar inclusões, alterações e eventualmente
Leia maisAlocação de Recursos. Referências. Sistemas de Tempo Real: Introdução. Introdução. Modelo de Recursos. Modelo de Recursos
Referências Sistemas de Tempo Real: Alocação de Recursos Rômulo Silva de Oliveira Departamento de Automação e Sistemas - DAS UFSC romulo@das.ufsc.br http://www.das.ufsc.br/~romulo J.-M. Farines, J. da
Leia maisLICENCIATURA EM COMPUTAÇÃO. Resenha Livro Sistemas Operacionais 4ª edição Capítulo quatro: Gerencia do processador
LICENCIATURA EM COMPUTAÇÃO Resenha Livro Sistemas Operacionais 4ª edição Capítulo quatro: Gerencia do processador SANTO AMARO 2012 JEANDERVAL SANTOS DO CARMO RESENHA Resenha do quarto capítulo: Gerencia
Leia maisExclusão Mútua em Sistemas Distribuídos
Exclusão Mútua em Sistemas Distribuídos Recurso deve ser utilizado por apenas um processo de cada vez, com garantia de justiça ausência de deadlock ausência de livelock Premissas: processos não falham
Leia maisCONHECIMENTOS BÁSICOS
CONHECIMENTOS BÁSICOS VIA CONHECIMENTOS BÁSICOS LOTES LINDEIROS FAIXA DE TRÂNSITO FAIXA DE TRÂNSITO PISTA DE ROLAMENTO CICLOFAIXA FAIXA DE DOMÍNIO - superfície lindeira às vias rurais, delimitada por lei
Leia maisDavidson Rodrigo Boccardo
Gerenciamento de processos Davidson Rodrigo Boccardo flitzdavidson@gmail.com Revisão Critérios de alocação: Utilização da CPU Produtividade (Throughput) Número de processos finalizados por unidade de tempo
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 5 Gerenciamento de Processos Prof. Belarmino Execução de Processos Já vimos que o processador executa os processos entregando uma fatia de tempo (time slice) para
Leia maisProposta para geração de Cadernos
Proposta para geração de Cadernos Página 1 de 15 Nova proposta para Geração de Cadernos Objetivo : Esta proposta objetiva definir uma nova forma de geração de Cadernos no S4 visando eliminar a lentidão
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 maisGerência do Processador. Adão de Melo Neto
Gerência do Processador Adão de Melo Neto 1 Introdução Sistemas Multiprogramáveis: Múltiplos processos podem permanecer na memória principal compartilhando o uso da CPU. POLÍTICA DE ESCALONAMENTO São um
Leia maisUnidade III Gerência de Processos
Sistemas Operacionais Unidade III Gerência de Processos http://www.lncc.br/~lrodrigo Professor: Luis Rodrigo lrodrigo@lncc.br Página: 1 de 34 Unidade III: Gerência de Processos Conceito de Processo Materialização
Leia maisSINACOR TESOURARIA PROCESSOS CLIENTES. Classificação das Informações. Confidencial [ ] Uso Interno [ X ] Uso Público 6/6/2016
SINACOR TESOURARIA PROCESSOS CLIENTES Classificação das Informações 6/6/2016 Confidencial [ ] Uso Interno [ X ] Uso Público ÍNDICE 1 Conceitos... Erro! Indicador não definido. 2 Regras de utilização...
Leia maisTeoria dos Grafos Aula 6
Teoria dos Grafos Aula 6 Aula passada Busca em grafos Busca em largura (BFS Breadth First Search) Propriedades Aula de hoje BFS implementação Complexidade Busca em profundidade (DFS) Conectividade, componentes
Leia maisProgramação Linear M É T O D O S : E S T A T Í S T I C A E M A T E M Á T I C A A P L I C A D A S D e 1 1 d e m a r ç o a 2 9 d e a b r i l d e
Programação Linear A otimização é o processo de encontrar a melhor solução (ou solução ótima) para um problema. Existe um conjunto particular de problemas nos quais é decisivo a aplicação de um procedimento
Leia maisSistemas Operacionais
Sistemas Operacionais Processos - Parte 3 Prof. Dr. Fábio Rodrigues de la Rocha (Processos - Parte 3) 1 / 19 Algoritmos de Escalonamento Nas aulas anterior vimos o ESCALONADOR, que é uma parte do SO responsável
Leia maisSistemas Operacionais Aula 6
Sistemas Operacionais Aula 6 Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm Curso de Análise e Desenvolvimento de Sistemas de Informação Recife - PE O que fazer
Leia maisComunicação entre processos
Comunicação entre processos Freqüentemente, processos precisam se comunicar com outros processos Por exemplo, em um pipeline do interpretador de comandos, a saída do primeiro processo deve ser passado
Leia mais