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

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais
Advertisements

Deadlocks Professora: Lúcia Drummond. Deadlocks Recursos: hardware ou informação Preemptivo Não preemptivo Uso do Recurso: 1. Pedido (Request ou Open)
Sistemas Operacionais Sincronismo e Comunicação entre processos
SISTEMAS OPERACIONAIS (SO) Aula 5 Luciana A. F. Martimiano 2002
Sincronismo e Comunicação entre Processos
Sincronismo e Comunicação entre Processos
Programação Concorrente
Deadlocks - Impasses 3.1. Recurso 3.2. Introdução aos deadlocks
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
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 Aula.
SSC SISTEMAS OPERACIONAIS I
Sistemas Distribuídos e Redes de Computadores
Avaliação de Desempenho
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.
Deadlock Marcos José Santana Regina Helena Carlucci Santana
SSC SISTEMAS OPERACIONAIS I Aula 10 – Gerenciamento de Memória
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 Aula.
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.
Capítulo 3 Deadlocks - Impasses 3.1. Recurso
Sincronização de Processos (3) Exercícios - Semáforos
Sincronização de Processos (3)
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
Disciplina: Sistema Operacional Professor: Luciano Ricardi Scorsin
Sistemas Distribuídos
Memória virtual Professor Esp. Diego André Sant’Ana
1.
Prof. Alexandre Monteiro Recife
Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.
Processos.
Capítulo 2 Processos e Threads 2.1 Processos 2.2 Threads
PROGRAMAÇÃO DISTRIBUÍDA Aula 01 Prof. Henrique Mongelli
Semáforos n Variáveis compartilhadas são globais n Acesso a variáveis ocorre em procedimentos, mas podem estar espalhados pelo programa n Exige consulta.
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
Exclusão Mútua com Espera Ociosa (1)
Gerenciamento de Processos
Processos Concorrentes
Deadlocks Impasses Vinícius Pádua.
Programação Concorrente
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 140 - SISTEMAS OPERACIONAIS I Turmas A e B Aula 8 –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; 4 3 2 1

Problemas clássicos de comunicação entre processos Problemas que devem ser evitados: Deadlock – todos os filósofos pegam um garfo ao mesmo tempo; Starvation – os filósofos fiquem indefinidamente pegando garfos simultaneamente; 4 3 2 1

Solução 1 para Filósofos (1/2)

Solução 1 para Filósofos (2/2) Problemas 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; Se modificar a solução (mudança 1): Verificar antes se o garfo da direita está disponível. Se não está, devolve o da esquerda e começa novamente  Starvation (Inanição); Tempo fixo ou tempo aleatório (rede Ethernet); Serve para sistemas não-críticos;

Solução 1 para Filósofos (2/2) Se modificar a solução (mudança 2): semaphore mutex = 1; down(&mutex); up(&mutex); Somente um filósofo come!

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

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

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

Exclusão Mútua Problema dos Leitores / Escritores O problema dos Leitores e Escritores modela o acesso compartilhado a uma base de dados. Processos leitores e processos escritores competem por um acesso a essa base. É possível que vários processos leitores acessem a base ao mesmo tempo, no entanto, quando um processo escritor está escrevendo (modificando) a base de dados, nenhum outro processo pode realizar um acesso, nem mesmo um processo leitor.

Exclusão Mútua Problema dos Leitores / Escritores

Exclusão Mútua Problema do Barbeiro Na barbearia há um barbeiro, uma cadeira de barbeiro e n cadeiras para os clientes esperarem para ser atendidos. Quando não há clientes, o barbeiro senta-se na cadeira do barbeiro e dorme. Quando um cliente chega, ele precisa acordar o barbeiro para ser atendido. Se outros clientes chegarem enquanto o barbeiro estiver ocupado cortando o cabelo de algum cliente, eles se sentam se houver cadeiras disponíveis para clientes, senão eles vão embora se todas as cadeiras para clientes estiverem ocupadas.

Exclusão Mútua Problema do Barbeiro

Processos Threads Agora  Exercício  Próxima Semana 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 Agora  Exercício  Próxima Semana