Fundamentos dos sistemas operacionais
Recursos computacionais dedicados a uma única tarefa até seu término
– – – –
Resulta em ociosidade da CPU por tempo considerável Subutilização da memória principal Periféricos dedicados a um único usuário Não há grandes necessidades de proteção da memória
MULTITAREFA
Vários programas e/ou usuários competem pelos recursos do sistema. OBJETIVOS
– – –
Aumentar a utilização da CPU Suportar múltiplos usuários Maximização do uso do processador e da memória. Aproveitar tempo ocioso da UCP durante as operações de E/S. Para executar outros programas.
IDÉIA
–
MULTITAREFA
Conceitos necessários a multiprogramação: Processos
–
Define as tarefas que vão compartilhar os recursos do hardware Estabelece um sistema de sinalização de ocorrência de eventos Impede situações de erros catastróficos
Mecanismos de Interrupção
–
Proteção entre processos
–
PROCESSOS
Processos são uma abstração para programa em execução
–
Também chamado de tarefa, “task” ou “job” Entidade estática e permanente
Invariável do ponto de vista do SO
Programa
–
Processo
– – –
Entidade ativa e dinâmica Possui estados que se alternam no tempo Constituído de código, dados, contexto e recursos do sistema
PROCESSOS
Instâncias de programas
– – –
Vários processos podem ser instâncias diferentes de um mesmo processo Mesmo código, porém dados e contexto de execução diferentes Processos são a forma com o SO vê programas Programas do usuário Programas de apoio ao SO
Processos executam:
– –
PROCESSOS – CICLO DE VIDA
Criação
– –
Chamada de Sistema Seções de trabalho (login) Seu estado pode alternar
Ciclo do processador Ciclo de E/S
Execução
–
Destruição
– –
Termino da execução Por outros processos
EXECUÇÃO
Só um processo pode ser executado a cada instante
– – –
Manter uma fila de processos em espera de execução Selecionar periodicamente um novo processos da fila para execução Prevenir que um processo monopolize o