Sistemas Operacionais
Processos e Threads
2.1 Processos
2.2 Threads
2.3 Comunicação interprocesso
2.4 Problemas clássicos de IPC
2.5 Escalonamento
Pearson Education
Sistemas Operacionais Modernos – 2ª Edição
1
Introdução aos Processos
• Se o computador possuir somente um processador, então teremos um paralelismo virtual
• Teremos um paralelismo real quando o computador possuir mais de um processador.
Pearson Education
Sistemas Operacionais Modernos – 2ª Edição
2
Modelo de Processos
• A distinção entre um programa e um processo é importante:
• Um programa é um conjunto de intruções para executar uma tarefa.
• Um processo é uma atividade e execução, e possui um programa, uma entrada, uma saída, e um estado.
Pearson Education
Sistemas Operacionais Modernos – 2ª Edição
3
Modelo de Processos
• Todos os programas rodando no computador são organizados como um conjunto de processos sequenciais.
• O Sistema operacional também é, em geral, organizado como um conjunto de processos (como por exemplo o Linux).
• Cada processo possui um contexto, necessário à correta execução do processo, e que contém
• O contador de programa (PC), que controla o fluxo de instruções do processo, e os outros registradores da CPU
• Outras informações, como o mapeamento do espaço de endereçamento. Pearson Education
Sistemas Operacionais Modernos – 2ª Edição
4
Processos
O Modelo de Processo
• Multiprogramação de quatro programas
• Modelo conceitual de 4 processos sequenciais, independentes • Somente um programa está ativo a cada momento
Pearson Education
Sistemas Operacionais Modernos – 2ª Edição
5
Criação de Processos
Principais eventos que levam à criação de processos
1. Início do sistema
2. Execução de chamada ao sistema de criação de processos
3. Solicitação do usuário para criar um novo processo
4. Início de um job em lote
Pearson Education
Sistemas Operacionais Modernos – 2ª Edição
6