Escolar Documentos
Profissional Documentos
Cultura Documentos
CAPÍTULO 2- PROCESSOS
Escalonamento de Processos
Comunicação entre Processos: Semáforo, Monitores
Problemas clássicos de sincronização de Processos
Alocação de recursos e Deadlocks
2.4- ESCALONAMENTO DE PROCESSOS
PROCESSOS
Um processo pode ser definido como "um programa em execução".
O conceito de processo é bastante abstrato, mas é essencial no
estudo de sistemas operacionais
ESCALONADORES
Prioridade dinâmica:
Pode ser modificada durante a execução do processo.
O processo recebe um acréscimo à sua prioridade ao sair do estado
de espera.
Processos I/O-Bound terão mais chances de serem escalonados,
compensando o tempo que passam no estado de espera.
Os processos CPU-Bound podem ser executados enquanto os
processos I/O -Bound esperam por algum evento.
O tempo de resposta compensa o maior overhead e complexidade
algorítmica.
Condições de corrida
Ocorre quando os processos cooperantes precisam compartilhar um
recurso,que ambos podem lere gravar:
Desabilitar interrupções.
InstruçãoTSL.
InstruçãoTSL*:
Instrução especial que permite ler uma variável, armazenar seu
conteúdo em uma outra área e atribuir um novo valor a esta
variável (hardware)
É uma instrução indivisível: executada sem interrupção
Comum em computadores commulti processadores.
– Semáforos.
2.5- COMUNICAÇÃO ENTRE PROCESSOS
Introdução:
Os processos que cooperam entre si para executar uma tarefa precisam se
comunicar uns com os outros.
A comunicação entre os processos deve ser feita de tal modo que seja
estruturada e independente de interrupções.
Devemos evitar que os processos interfiram uns com os outros, um problema
chamado de exclusão mútua.
2.5- COMUNICAÇÃO ENTRE PROCESSOS
Processos concorrentes
Processos que executam ao mesmo tempo podem existir de maneira
independente um dos outros ou podem requerer sincronização
ocasional ou cooperação.
• Partilha de informação
• Redundância
• Aumento de performance de computação
• Modularidade
• Conveniência
Cooperação entre processos através de
compartilhamento: Cont
Produtor/Consumidor utilizando
buffer de tamanho limitado
Duas variáveis de condição:
essas variáveis são acessíveis
somente dentro do monitor
notfull – TRUE se ainda há espaço
notempty – TRUE se tem caractere
2.6- PROBLEMAS CLÁSSICOS DE
SINCRONIZAÇÃO DE PROCESSOS
Na comunicação entre processos cooperantes, a sincronização
destes processos éimportante:
Processos Cooperantes
Paradigma de processos cooperantes: