Processos Prof. André Luis Meneses Silva [email protected].

19
Processos Prof. André Luis Meneses Silva [email protected]

Transcript of Processos Prof. André Luis Meneses Silva [email protected].

Page 1: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Processos

Prof. André Luis Meneses [email protected]

Page 2: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Processo

Um dos conceitos mais importantes em sistemas operacionais.

Um processo é um programa em execução.

Page 3: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Processo

Page 4: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Processo

Características: Cada processo possui um identificador único, conhecido

como pid (process id). As informações sobre um processo estão armazenadas na

tabela de processos, acessada pelo pid.

Durante a execução, o processo compartilha o processador com outros processos em execução (escalonamento de processador).

Um processo interage com outros processos através de mecanismos de comunicação.

Page 5: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Modelos de Processos

Classificação dos modelos de processos quanto ao custo de troca de contexto e manutenção. Heavyweight (processos tradicionais) Lightweight (threads)

Page 6: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Modelos de Processos• Heavyweight

• Processo é composto pelo ambiente e execução.

• Cada processo possui um único fluxo de controle.

• Independente dos demais.

Page 7: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Modelos de Processos

Em um dado instante, pode haver vários processos ativos. O processador é chaveado entre os diversos

processos. Por esta razão, fica praticamente impossível prever

o tempo de execução de um processo, pois este dependerá da carga do sistema. Ruim para RTOS.

Essa característica, de permitir vários processos ativos, é conhecida como multiprogramação.

Page 8: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Modelos de Processos

Page 9: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Modelos de Processos

Page 10: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Modelos de Processos

Como acontece a multiprogramação? O Sistema Operacional é responsável por

“escalonar” cada tarefa para execução. Cada tarefa possui uma fatia de tempo, de acordo

com sua importância (prioridade) para o sistema. Cada troca de processo é acompanhado pela troca

de contexto. troca de contexto.swf

Page 11: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Criação de Processos

Principais eventos que levam à criação de processos

1. Início do sistema2. Execução de chamada ao sistema de

criação de processos3. Solicitação do usuário para criar um

novo processo4. Início de um job em lote

12

Page 12: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Término de Processos

Condições que levam ao término de processos

1. Saída normal (voluntária)

2. Saída por erro (voluntária)

3. Erro fatal (involuntário)

4. Cancelamento por um outro processo (involuntário)

13

Page 13: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Processos na prática

1. Iniciar em modo linux 2. Iniciar o terminal 3. executar top.

Page 14: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Hierarquias de Processos

Todo S.O. possuemecanismosquepermitem a criação de processos (fork() no linux)

Geralmente um processo é criadoporoutro.

15

Page 15: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Paicria um processofilho, processofilhopodecriarseupróprioprocesso

Formamumahierarquia Linux chamaisso de “grupo de processos” Filho é clone do processopai.

Windows nãopossui o conceito de hierarquia de processos Todososprocessossãocriadosiguais e

apóscriaçãosãopersonalizados (create_process()).

Hierarquias de Processos

Page 16: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Estados de Processos (1)

17

Page 17: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Tabelas de Processos

Mantém todas as informações de um processo.

Campos úteis para gerência do processo, memória e arquivos.

Varia de Sistema Operacional para Sistema Operacional.

Page 18: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Implementação de Processos (1)

Campos da entrada de uma tabela de processos19

Page 19: Processos Prof. André Luis Meneses Silva alms@ufs.br.

Atividades

Elaborar um Live CD/DVD Linux, o mesmo será utilizado para as disciplinas S.O. e Linguagens Formais e Tradutores.

Ferramentas G++. Eclipse IDE ou Netbeans IDE para C++ e Java. CUP. JFLEX. JDK 6. make autoconfig Xfce (para quem quiser).

Para 01/09