Administrao de Sistemas Operacionais 1 Windows Processos Curso

  • Slides: 21
Download presentation
Administração de Sistemas Operacionais 1 -Windows Processos Curso Técnico em Redes de Computadores Prof.

Administração de Sistemas Operacionais 1 -Windows Processos Curso Técnico em Redes de Computadores Prof. Emerson Felipe

O QUE É UM PROCESSO?

O QUE É UM PROCESSO?

Definições �Processo É um programa em execução �Programa Código fonte que possui instruções a

Definições �Processo É um programa em execução �Programa Código fonte que possui instruções a serem seguidas, e que ao serem executadas é chamada de processo.

Processo Um processo é composto de: � Espaço de endereçamento texto (código binário) ;

Processo Um processo é composto de: � Espaço de endereçamento texto (código binário) ; dados (variáveis); pilha; � Entrada na tabela de processos

Criação e término de processos Principais eventos que levam a criação de processos: �Início

Criação e término de processos Principais eventos que levam a criação de processos: �Início do sistema; �Execução de uma chamada de sistema de criação de processo por um processo em execução; �Uma requisição do usuário para criar um novo processo; Principais eventos que levam ao término de processos: �Saída normal (voluntária); �Saída por erro (voluntária); �Erro fatal (involuntária); �Cancelamento por um outro processo (involuntário).

Hierarquia de processos Em uma hierarquia de processos o primeiro processo é chamado de

Hierarquia de processos Em uma hierarquia de processos o primeiro processo é chamado de processo pai esse pode criar outros processos chamados de processos filhos que também podem criar outros processos que também são chamados de processos filhos.

Hierarquia de processos Esse tipo de hierarquia de processos é utilizado pelo sistema operacional

Hierarquia de processos Esse tipo de hierarquia de processos é utilizado pelo sistema operacional UNIX. Este tipo de organização dificulta a propagação de vírus em nossos sistemas operacionais, pois quando um processo pai é “morto” seja pelo sistema ou pelo próprio usuário, todos que estiverem abaixo dele na hierarquia serão mortos também.

Hierarquia de processos Agora no Windows um conceito de hierarquia não seria muito adequado,

Hierarquia de processos Agora no Windows um conceito de hierarquia não seria muito adequado, primeiramente cada processo do Windows possui um identificador próprio chamado de handle, algo como uma hierarquia ocorre somente quando um processo gera outro, a partir desse ponto o processo filho ganha uma ligação com o identificador do processo pai.

Hierarquia de processos Ao contrário do que ocorre no Unix, quando um processo pai

Hierarquia de processos Ao contrário do que ocorre no Unix, quando um processo pai é “morto”, seus filhos não morrem junto com o processo pai, o que não é muito efetivo contra os vírus, pois não adianta matar o só o processo gerador dos vírus, tem que elimina-los por completo matando todos os seus filhos.

Estado dos processos Possíveis estados de processos: • Em execução; • Bloqueado; • Pronto.

Estado dos processos Possíveis estados de processos: • Em execução; • Bloqueado; • Pronto. Transições válidas: • Pronto -> Em execução; • Em execução -> Pronto; • Em execução -> Bloqueado; • Bloqueado -> Pronto.

THREADS

THREADS

Threads �As threads são processos leves que trabalham dentro de um processo comum, com

Threads �As threads são processos leves que trabalham dentro de um processo comum, com o objetivo de colaborar na execução deste mesmo processo. �Um processo pode possuir uma ou mais threads e essa quantidade pode variar de programa para programa, ou conforme as solicitações realizadas pelo usuário para o programa.

Threads �A thread ocupa o mesmo espaço de endereçamento e entrada na tabela de

Threads �A thread ocupa o mesmo espaço de endereçamento e entrada na tabela de processos correspondente ao processo a quem pertence. �Como já vimos, a thread é uma divisão do processo principal de um programa. Todavia, nem todos os processos são divididos em múltiplas threads, assim como nem todos os processadores são capazes de trabalhar “tranquilamente” com uma enormidade de threads.

Threads �A figura (a) apresenta três processos cada um com um thread. �A figura

Threads �A figura (a) apresenta três processos cada um com um thread. �A figura (b) mostra um processo com três threads.

ESCALONAMENTO

ESCALONAMENTO

Escalonamento �Faz parte do sistema operacional e decide que processo executará e quando executará.

Escalonamento �Faz parte do sistema operacional e decide que processo executará e quando executará. �Realiza o agendamento dos processos, ele utiliza um algoritmo de agendamento; �Cada processo é único e imprevisível e isso dificulta o trabalho do agendador/escalonador; �Há várias formas de escalonar um processo, aqui daremos ênfase ao escalonamento por prioridade.

Escalonamento �Escalonamento por prioridade: �A cada processo é atribuída uma prioridade, e o processo

Escalonamento �Escalonamento por prioridade: �A cada processo é atribuída uma prioridade, e o processo com maior prioridade recebe permissão para executar; �O Sistema Operacional deve definir a quem atribuir prioridade, ele ou o próprio usuário;

Escalonamento �A figura apresenta o escalonamento por prioridade.

Escalonamento �A figura apresenta o escalonamento por prioridade.

MÁQUINAS VIRTUAIS

MÁQUINAS VIRTUAIS

Máquinas Virtuais A máquina virtual é um computador fictício que simula uma máquina real,

Máquinas Virtuais A máquina virtual é um computador fictício que simula uma máquina real, onde a sua memória e seu processador são virtualizados. Exemplo: Virtual PC, VMware, Virtual. Box, entre outros.

DÚVIDAS

DÚVIDAS