Programação
Francis Berenger Machado / Luiz Paulo Maia
Revisto por Sidney Lucena (Prof. UNIRIO)
Capítulo 3
Concorrência
3 – Concorrência
Sist. Monoprogramável x Multiprogramável o Sistemas Monoprogramáveis:
Apenas um programa sendo executado a cada vez Execução de um novo programa deve esperar o encerramento do programa sendo executado o Sistemas Multiprogramáveis:
Permite a concorrência dos programas
Execução de novos programas inicia-se durante a execução de outros programas
3/1
3 – Concorrência
Sist. Monoprogramável x Multiprogramável o Vantagens dos Sistemas Multiprogramáveis:
Tempo total de execução de vários programas torna-se menor
Uso mais racional dos recursos o Melhor aproveitamento do espaço de memória o Aproveitamento do processador durante operações de E/S o Cada programa (processo) ocupa uma fatia de tempo do processador
3/2
3 – Concorrência
Sist. Monoprogramável x Multiprogramável
E/ S
UCP
1
E/ S
UCP
livre
1
2
1
tempo
(a) Sistema Monoprogramável
tempo
(b) Sistema Multiprogramável
3/3
3 – Concorrência
Sist. Monoprogramável x Multiprogramável o Exemplo hipotético com 3 programas:
Prog 1: o 10% de CPU, 30% de memória e 5 min
Prog 2: o 50% de CPU, 30% de memória e 15 min
Prog 3:
o 30% de CPU, 20% de memória e 10 min
Execução concorrente dos 3 programas: o < 90% de CPU, < 80% de memória e < 15 min
3/4
3 – Concorrência
Sist. Monoprogramável x Multiprogramável o Troca de contexto:
Mudança de um processo para outro faz com que todo o conteúdo dos registradores seja trocado (estado do sistema)
Quando um processo retorna à sua execução, todo o contexto imediatamente anterior à sua saída deve ser recuperado
3/5
3 – Concorrência
Interrupção e Exceção o Durante a execução de um programa, alguns eventos inesperados podem ocorrer, ocasionando um desvio forçado no fluxo de