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

Post on 17-Apr-2015

114 views 2 download

Transcript of Processos Prof. André Luis Meneses Silva alms@ufs.br.

Processos

Prof. André Luis Meneses Silvaalms@ufs.br

Processo

Um dos conceitos mais importantes em sistemas operacionais.

Um processo é um programa em execução.

Processo

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.

Modelos de Processos

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

Modelos de Processos• Heavyweight

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

• Cada processo possui um único fluxo de controle.

• Independente dos demais.

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.

Modelos de Processos

Modelos de Processos

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

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

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

Processos na prática

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

Hierarquias de Processos

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

Geralmente um processo é criadoporoutro.

15

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

Estados de Processos (1)

17

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.

Implementação de Processos (1)

Campos da entrada de uma tabela de processos19

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