Exclusão Mútua com Espera Ociosa (1)

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)
Sistemas operacionais
Sincronismo e Comunicação entre Processos
Sincronismo e Comunicação entre Processos
Programação Concorrente
Arquitetura de Sistemas Operacionais
Monitores.
Capítulo 6: Sincronização de Processos
Sistemas Operacionais II
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.
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 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.
Capítulo 3 Deadlocks - Impasses 3.1. Recurso
Projeto de Sistemas Operacionais
Sincronização de Processos (5)
Sincronização de Processos (3) Exercícios - Semáforos
Sincronização de Processos (3)
Sincronização de Processos (5) - Monitores -
Sincronização de Processos (6) - Troca de Mensagens -
Sincronização e Comunicação entre Processos
e comunicação entre Processos
Claudio de Oliveira – Thread 09/03/10 20:13 Claudio de Oliveira –
Sistemas Operacionais Adriana Vettorazzo
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
Sistemas Operacionais Aula 4
Monitores.
Unidade 3 Controle de Concorrência
Arquitetura de Sistemas Operacionais
Disciplina: Sistema Operacional Professor: Luciano Ricardi Scorsin
Processos.
SISTEMAS OPERACIONAIS I
Cap 2 – Processos e Threads
Capítulo 2 Processos e Threads 2.1 Processos 2.2 Threads
Sistemas Operacionais
Escalonamento de Processos e Threads
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 operacionais
Sistemas Operacionais
Infra-Estrutura de Software
Faculdade Pernambucana - FAPE
Implementação de Sincronização n Protocolos que usam busy waiting:  Difíceis de projetar, compreender e provar corretos  Complexos  Variáveis usadas.
Gerenciamento de Processos
Processos Concorrentes
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
Capítulo 2 Processos e Threads 2.1 Processos 2.2 Threads
Sistemas Operacionais
Sistemas Operacionais
Faculdade Pernambucana - FAPE Sistemas Operacionais Prof. Flávio Gonçalves da Rocha.
Comunicação Interprocesso Condições de Disputa (corrida)
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
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.
Cap 2 – Processos e Threads 2.1 Processos 2.2 Threads 2.3 Comunicação interprocesso 2.4 Escalonamento 2.5 Problemas clássicos de IPC 1.
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 IESP - FATEC-PB Professor: Gustavo Wagner
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais IESP - FATEC-PB Professor: Gustavo Wagner.
SINCRONIZAÇÃO E COMUNICAÇÃO ENTRE PROCESSOS PROF. HORACIO RIBEIRO Sistemas operacionais.
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais Prof.: Gustavo Wagner FATEC-PB.
Sistemas Operacionais I
Transcrição da apresentação:

Exclusão Mútua com Espera Ociosa (1) Solução proposta para o problema da região crítica (a) Processo 0. (b) Processo 1.

Exclusão Mútua com Espera Ociosa (2) Solução de Peterson para implementar exclusão mútua

Exclusão Mútua com Espera Ociosa (3) Entrando e saindo de uma região crítica usando a instrução TSL

Problema do produtor-consumidor com uma condição de disputa fatal Dormir e Acordar Problema do produtor-consumidor com uma condição de disputa fatal

Semáforos São variáveis que indicam o sinal de acordar para um processo. Se o valor = 0, indica que nenhum sinal de acordar foi possível. Se o valor > 0, o sinal será decrementado de uma unidade e o processo será acordado. Semáforos possuem duas operações: down e up.

O problema do produtor-consumidor usando semáforos

Mutex (mutual exclusion) São semáforos usados para a exculsão mútua. Ele é destinado a garantir que somente um processo por vez esteja lendo ou escrevendo no buffer. Implementação de mutex_lock e mutex_unlock

Monitores (1) É uma coleção de procedimentos, variáveis e estruturas de dados, agrupadas em um tipo especial de módulo ou pacote. Somente um processo pode estar ativo em um monitor em um dado momento. É uma construção da linguagem de programação e assim, o compilador sabe que ele é especial. Exemplo de um monitor

Monitores (2) Delineamento do problema do produtor-consumidor com monitores somente um procedimento está ativo por vez no monitor o buffer tem N lugares

Troca de Mensagens São chamadas ao sistema. Usa duas primitivas: send e receive Ex.: send(destination, &message); receive(source , &message)

Barreiras Uso de uma barreira processos se aproximando de uma barreira todos os processos, exceto um, bloqueados pela barreira último processo chega, todos passam

Problemas clássicos de IPC

Jantar dos Filósofos Filósofos comem/pensam Cada um precisa de 2 garfos para comer Pega um garfo por vez Como prevenir deadlock

O Problema dos Leitores e Escritores Como gerenciar o acesso de vários usuários a uma base de dados e a escrita nessa base de dados.

O Problema do Barbeiro Sonolento (1)

Escalonamento Introdução ao Escalonamento (1) Surtos de uso da CPU alternam-se com períodos de espera por E/S um processo orientado à CPU um processo orientado à E/S

Introdução ao Escalonamento (2) Objetivos do algoritmo de escalonamento

Escalonamento em Sistemas em Lote (1) Um exemplo de escalonamento job mais curto primeiro

Escalonamento em Sistemas em Lote (2) Escalonamento em três níveis

Escalonamento em Sistemas Interativos (1) Escalonamento por alternância circular (round-robin) lista de processos executáveis lista de processos executáveis depois que B usou todo o seu quantum

Escalonamento em Sistemas Interativos (2) Um algoritmo de escalonamento com quatro classes de prioridade