You are on page 1of 17

PROCESSOS

PROCESSOS - REVENDO

• O PROCESSO É A ABSTRAÇÃO DE UM PROGRAMA EM EXECUÇÃO.


• EM SISTEMAS MULTITAREFA, EXISTEM VÁRIOS PROCESSOS UTILIZANDO A CPU
"SIMULTANEAMENTE".
• CADA PROCESSO PODE ASSUMIR, BASICAMENTE, TRÊS ESTADOS:
• EXECUÇÃO, QUE UTILIZA A CPU;
• BLOQUEADO, QUE ESPERA ALGUM RECURSO, COMO, POR EXEMPLO, A LEITURA DE
UM DISCO;
• PRONTO, QUE OCUPARÁ A CPU, A QUAL, NO MOMENTO, ESTÁ OCUPADA POR OUTRO
PROCESSO.
PROCESSOS
SUBPROCESSOS E THREAD

• PODEMOS TRABALHA DE FORMA DIVIDIDA EM CADA PROCESSO.


• DIVIDIR EM PARTES O PROBLEMA É MAIS FÁCIL?
• O “PROCESSO PAI” PERMITE QUE “PROCESSOS FILHOS” SOLUCIONEM O
PROBLEMA DEVOLVENDO SOMENTE A RESPOSTA CORRETA, PODEMOS CHAMAR
ELES DE SUBPROCESSOS.
• ESTES SUBPROCESSOS PODEM CRIAR OUTROS SUBPROCESSOS.
• CASO O PROCESSO PRINCIPAL DEIXE DE EXISTIR, TODOS OS OUTROS SERÃO
ELIMINADOS.
VINI MALVADEZA 😈🤙
• LEVA TEMPO PARA EXCLUIR UM PROCESSO COM VÁRIOS SUBPROCESSOS?
• E SE TIVÉSSEMOS OS PROCESSOS ALINHADOS EM UMA LINHA DE COMANDO?
• FICARIA MAIS RÁPIDO?
• THREADS “FLUXO DE EXECUÇÃO”
• SEQUÊNCIA DE INSTRUÇÃO
• EXECUTA VÁRIAS TAREFAS SIMULTANEAMENTE
• COMPARTILHAM O MESMO ESPAÇO DE MEMÓRIA
• EXEMPLO:
• SE TIVER UM ARQUIVO A SER TRANSFERIDO PARA OUTRO LUGAR
• QUAL A MELHOR FORMA DE TRANSFERIR?
• O ARQUIVO COMPLETO QUANTO TEMPO DEMORARIA?
• O ARQUIVO DIVIDIDO EM VÁRIAS PARTES SERIA MAIS RÁPIDO?
AMBIENTE DE PROGRAMAÇÃO MONOTHREAD
E MULTITHREAD
• MONOTHREAD: CADA PROCESSO PODE EXECUTAR APENAS UMA INSTRUÇÃO DO
PROGRAMA DA SEQUÊNCIA DE INSTRUÇÕES (DESVIOS, REPETIÇÕES, CHAMADAS A
PROCEDIMENTOS OU FUNÇÕES) – AS POSIÇÕES SÃO REGISTRADAS.

• MULTITHREADS: AS THREADS COMPARTILHAM UM PROCESSADOR, COM A


VANTAGEM DE COMPARTILHAREM O MESMO ESPAÇO DE ENDEREÇAMENTO. ESSA
VANTAGEM DIFERE AS THREADS DOS PROCESSOS E POSSIBILITA A ELAS ALTERAR
DADOS UMAS DAS OUTRAS DE FORMA MAIS RÁPIDA QUE OS PROCESSOS, GERANDO
GANHO DE DESEMPENHO PARA AS APLICAÇÕES
ESCALONAMENTO DE PROCESSOS

• O PROCESSO QUANDO SE ENCONTRA EM PRONTO FICA NO AGUARDO DE UMA


LIBERAÇÃO DA CPU PARA ENTRAREM EM EXECUÇÃO.
• PODEMOS MANTER O PROCESSADOR SEMPRE OCUPADO?
• PARA SEMPRE CONSEGUIRMOS O MELHOR DO PROCESSADOR COMO SERIA A MELHOR
FORMA?
ESCALONADOR

• É UTILIZADO UM ALGORITMO DE ESCALONAMENTO PARA DEFINIR OS CRITÉRIOS


DE SELEÇÃO DE UM PROCESSO.
• NO ESCALONAMENTO (PREEMPTIVO) O SISTEMA INTERROMPE UM PROCESSO
EM EXECUÇÃO PARA QUE OUTRO OCUPE O PROCESSADOR POR MEIO DO
CONCEITO DE PREEMPÇÃO** E TAMBÉM UTILIZADO EM PROCESSAMENTO BATCH
(NÃO PREEMPTIVO), QUANDO UM PROCESSO (JOB) GANHA A CPU, NENHUM
OUTRO LHE PODE TIRAR ESSE RECURSO
• ***SIGNIFICANDO QUE UM PROCESSO EM ESTADO DE PRONTO TEM PRECEDÊNCIA PARA
OCUPAR A CPU EM RELAÇÃO AOS OUTROS PROCESSOS NO MESMO ESTADO
• EM UMA PRIMEIRA ANÁLISE, O ESCALONAMENTO PREEMPTIVO PARECE-NOS
SER MAIS VANTAJOSO QUE O NÃO PREEMPTIVO.
• NO ENTANTO, O QUE PODE DETERMINAR SUAS VANTAGENS É O TIPO DE
APLICAÇÃO E O USO QUE SE FAZ DELE.
• PODEMOS OBSERVAR QUE, NO ESCALONAMENTO NÃO PREEMPTIVO,
CONHECEMOS PREVIAMENTE O TEMPO DE USO DA CPU, E ESSA
CARACTERÍSTICA É IMPORTANTE PARA O PROCESSAMENTO EM LOTE, QUE
PERMITE AOS USUÁRIOS CONHECER O TEMPO EXATO DA CONCLUSÃO DE UM
TRABALHO. NESSE CASO, O USO DO ESCALONAMENTO NÃO PREEMPTIVO É
MAIS INDICADO
PRIORIDADES

• A PRIORIDADE ESTÁTICA É AQUELA QUE, APÓS SER ASSOCIADA AO PROCESSO,


SE TORNA PERMANENTE E É ATRIBUÍDA PELO PRÓPRIO USUÁRIO, DE ACORDO
COM A IMPORTÂNCIA DO TRABALHO (JOB)

• A PRIORIDADE DINÂMICA PODE VARIAR, AUMENTANDO OU DIMINUINDO, DE


ACORDO COM A NECESSIDADE E O OBJETIVO DE OFERECER MELHOR TEMPO DE
RESPOSTA (TEMPO NECESSÁRIO PARA SE CONCLUIR UMA TAREFA) E
INTERATIVIDADE DO SISTEMA.
ALGORITMOS DE ESCALONAMENTO
• FIRST-IN-FIRST-OUT (FIFO) – PRIMEIRO-A-ENTRAR-PRIMEIRO-A-SAIR
• CONHECIDO COMO PRIMEIRO-A-CHEGAR-PRIMEIRO-A-SER-ATENDIDO
• MÉTODO SIMPLES DE ESCALONAMENTO.
• SÃO EXECUTADOS DO INÍCIO ATÉ O FIM.
• SEM INTERRUPÇÃO.
• SEM GARANTIAS DE TEMPO CURTO DE RESPOSTAS
ALGORITMOS DE ESCALONAMENTO

• ROUND ROBIN (RR) – ALTERNÂNCIA CIRCULAR


• FORMATO FIFO
• ALGORITMO DE INTERVALO DE TEMPO, CHAMADO DE QUANTUM.
• AO FINAL DE CADA QUANTUM O PROCESSO É INTERROMPIDO E VOLTARÁ AO FINAL
DA FILA E O PRÓXIMO SERÁ ALOCADO.
ALGORITMOS DE ESCALONAMENTO
• SHORTEST-PROCESS-FIRST (SPF) – PROCESSO-MAIS-CURTO-PRIMEIRO
• TAREFAS MENORES EXECUTADAS PRIMEIRO.
• NÃO PREEMPTIVO
• ANÁLISE EM LOTES
• PROCESSOS CURTOS SÃO FAVORECIDOS EM RELAÇÃO AOS MAIORES
• PROCESSOS PEQUENOS NÃO FICAM NA FILA
• COMPROMETER PROCESSOS LONGOS
ALGORITMOS DE ESCALONAMENTO

• SHORTEST-REMAINING-FIRST (SRF) – MENOR-TEMPO-DE-EXECUÇÃO-RESTANTE


• MENOR TEMPO DE EXECUÇÃO
• VERSÃO MELHORADA SPF.
• SE APARECER PROCESSOS MAIS CURTOS É INTERROMPIDO E COLOCADO OUTRO A SER
EXECUTADO.
• TEMPO MENOR DE USO DA CPU.
• TEMPO DE ESPERA LONGO PARA PROCESSOS LONGOS.
• SE ESTIVER EXECUTANDO UM PROCESSO LONGO E APARECER UM MENOR O MAIOR
PERDE A PRIORIDADE.
MÚLTIPLAS FILAS, OU FILAS MULTINÍVEIS DE
RETORNO
• VÁRIAS CLASSES DE PRIORIDADES
• PROCESSOS MENORES ENTRAM NA FILA DE MENOR QUANTUM.
• PROCESSOS SÃO REALIZADO MAIS RÁPIDOS.
• FILAS SUPERIORES COM MAIOR PRIORIDADE.
• CHEGA E OCUPA UMA FILEIRA DE NÍVEL ALTO E VAI
AVANÇANDO PARA AS SEGUINTES

You might also like