Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC 541 - SISTEMAS OPERACIONAIS I Aula.

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais
Advertisements

Sistemas Operacionais Sincronismo e Comunicação entre processos
SISTEMAS OPERACIONAIS (SO) Aula 5 Luciana A. F. Martimiano 2002
Sincronização de Processos (1)
Sincronismo e Comunicação entre Processos
Sincronismo e Comunicação entre Processos
Programação Concorrente
Arquitetura de Sistemas Operacionais
Capítulo 7: Deadlocks.
Algoritmos Distribuídos Professora: Lúcia Drummond
Sistemas Operacionais II
SSC SISTEMAS OPERACIONAIS I Aula 1 – Apresentação da disciplina
SSC SISTEMAS OPERACIONAIS I Aulas 6 – Escalonamento de Processos
Avaliação de Sistemas Operacionais
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC SISTEMAS OPERACIONAIS I Aula.
SSC SISTEMAS OPERACIONAIS I
SSC SISTEMAS OPERACIONAIS I Aula 12 – Gerenciamento de Memória 3
SSC SISTEMAS OPERACIONAIS I
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC SISTEMAS OPERACIONAIS I Turmas.
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC SISTEMAS OPERACIONAIS I Turmas.
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC SISTEMAS OPERACIONAIS I Aula.
SSC SISTEMAS OPERACIONAIS I
Sistemas Distribuídos e Redes de Computadores
Avaliação de Desempenho de Sistemas Operacionais
Threads Estagiário: Bruno Guazzelli Batista Slides de autoria do Prof Drº Marcos José Santana baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum.
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC SISTEMAS OPERACIONAIS I Turmas.
SSC541 - SISTEMAS OPERACIONAIS I Aula 12 – Gerenciamento de Memória
Avaliação de Desempenho
Deadlock Marcos José Santana Regina Helena Carlucci Santana
SSC SISTEMAS OPERACIONAIS I Aula 10 – Gerenciamento de Memória
Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de Ciências Matemáticas.
SSC SISTEMAS OPERACIONAIS I Aula 15 – Gerenciamento de Memória
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC SISTEMAS OPERACIONAIS I Turmas.
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC SISTEMAS OPERACIONAIS I Aulas.
Walfredo Cirne Threads Walfredo Cirne
Sistemas Distribuídos
Capítulo 3 Deadlocks - Impasses 3.1. Recurso
Sincronização de Processos (3) Exercícios - Semáforos
Sincronização e Comunicação entre Processos
Claudio de Oliveira – Thread 09/03/10 20:13 Claudio de Oliveira –
Sistemas Operacionais
Exclusão Mútua A solução mais simples para evitar os problemas de compartilhamento é impedir que dois ou mais processos estiver acessando determinado recurso,
Sistemas Operacionais
Monitores.
Unidade 3 Controle de Concorrência
Arquitetura de Sistemas Operacionais
Linguagem de Programação IV
Disciplina: Sistema Operacional Professor: Luciano Ricardi Scorsin
Sistemas Distribuídos
Redes de Petri 1° Exercício
Prof. Alexandre Monteiro Recife
Capítulo 2 Processos e Threads 2.1 Processos 2.2 Threads
PROGRAMAÇÃO DISTRIBUÍDA Aula 01 Prof. Henrique Mongelli
Sistemas Concorrentes Capítulo 02 – Threads
Sistemas Operacionais
Implementação de Sincronização n Protocolos que usam busy waiting:  Difíceis de projetar, compreender e provar corretos  Complexos  Variáveis usadas.
Video Capítulo 7: Sincronização de Processos. Silberschatz, Galvin and Gagne  Video Operating System Concepts Assuntos n Cenário n O problema.
SISTEMAS OPERACIONAIS
©André Santos, Concorrência: Sincronização de fina granularidade André Santos CIn-UFPE.
Exclusão Mútua com Espera Ociosa (1)
Gerenciamento de Processos
Deadlocks Impasses Vinícius Pádua.
Sistemas Operacionais
Comunicação Interprocesso Condições de Disputa (corrida)
Faculdade Pernambucana - FAPE Sistemas Operacionais Prof. Flávio Gonçalves da Rocha.
Sistemas Operacionais Sincronização e Comunicação Introdução Aplicações concorrentes (mecanismos de sincronização: variáveis compartilhadas e troca de.
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais IESP - FATEC-PB Professor: Gustavo Wagner
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais IESP - FATEC-PB Professor: Gustavo Wagner.
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner
SISTEMAS OPERACIONAIS
Transcrição da apresentação:

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC 541 - SISTEMAS OPERACIONAIS I Aula 9 –Comunicação e Sincronização de Processos Profa. Sarita Mazzini Bruschi Regina Helena Carlucci Santana Marcos José Santana Slides adaptados de Luciana A. F. Martimiano baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum

Processos Introdução Escalonamento de Processos Comunicação entre Processos Condição de Disputa Região Crítica Formas de Exclusão Mútua Problemas Clássicos Threads Deadlock

Problemas clássicos de comunicação entre processos Problema do Jantar dos Filósofos Cinco filósofos desejam comer espaguete; No entanto, para poder comer, cada filósofo precisa utilizar dois garfo e não apenas um. Portanto, os filósofos precisam compartilhar o uso do garfo de forma sincronizada. Os filósofos comem e pensam;

Problemas clássicos de comunicação entre processos Problemas que devem ser evitados: Deadlock – um ou mais processos impedidos de continuar; Starvation – processos executam mas não progridem; 4 3 2 1

Solução 1 para Filósofos 4 3 2 1 Solução 1 para Filósofos

Solução 1 para Filósofos Problema da solução 1: Execução do take_fork(i)  Se todos os filósofos pegarem o garfo da esquerda, nenhum pega o da direita  Deadlock; 4 3 2 1

Solução 1 para Filósofos 4 3 2 1 Solução 1 para Filósofos Se modificar a solução: Pegar o garfo da esquerda Verificar se o garfo da direita está disponível. Se não está, devolve o da esquerda e começa novamente Se tempo para tentativa for fixo  Starvation (Inanição); Se tempo for aleatório (abordagem utilizada pela rede Ethernet) – resolve o problema Serve para sistemas não-críticos;

Solução 1 para Filósofos 4 3 2 1 Solução 1 para Filósofos Mais uma opção possível... semaphore mutex = 1; down(&mutex); up(&mutex); Somente um filósofo come!

Solução 2 para Filósofos usando Semáforos Permite o máximo de “paralelismo”; Não apresenta: Deadlocks; Starvation;

Solução 2 para Filósofos usando Semáforos (2/3)

Solução 2 para Filósofos usando Semáforos (3/3)