Conceitos de Sistemas Operacionais: Processos e Escalonamento

Classificado em Computação

Escrito em em português com um tamanho de 3,72 KB

Conceitos de Sistemas Operacionais

S.O. — definição

S.O. — software que gerencia os recursos de hardware e oferece uma abstração de alto nível para o usuário.

Processos

Processos — são programas em execução.

Sistemas multitarefa e multiusuário

Sis. Multitarefa — onde vários programas podem ser executados concorrentemente.

Sis. Multiuser — permite o acesso de vários usuários simultaneamente.

Interpretador de comandos

Interpretador de cmds — um programa de interface de usuário que executa comandos.

Chamadas de sistema (APIs)

Chamadas de sistema — interfaces usadas por programas para solicitar serviços ao S.O. (APIs).

Sistemas monoprogramáveis

Sis. Monoprogramáveis — apenas um trabalho na memória; a CPU fica inutilizada durante a E/S. Quando o processo vai acessar os recursos do sistema, a CPU não pode ser utilizada.

Sistemas de tempo compartilhado

Sis. de tempo compartilhado — vários terminais conectados a um mainframe; é a capacidade de fazer com que vários processos usem a CPU alternadamente.

Processo vs Programa

Processo — são as instruções associadas a um estado.

Programa — são as instruções que querem ser executadas.

Estados dos processos

Estados dos processosNOVO / PRONTO / EXECUÇÃO / BLOQUEADO / TÉRMINO.

Aplicação concorrente

Aplicação concorrente — aplicação que, dentro dela, há concorrência; utiliza threads e/ou processos filhos para serem usados concorrentemente.

Exclusão mútua

Exclusão Mútua — mecanismo que garante que dois ou mais processos concorrentes não acessem o meio compartilhado simultaneamente. Pode ser implementada por dois tipos:

  • Por hardware — inibição de interrupções, instrução TSL (Test-and-Set Lock).
  • Por software — com espera ocupada ou sem espera ocupada.

Espera bloqueada e espera ocupada

Espera bloqueada — o processo fica no estado de bloqueado até que o recurso seja liberado.

Espera ocupada — o processo volta ao estado de pronto continuamente até conseguir utilizar o recurso.

Contexto e troca de contexto

Contexto — parte do estado do processo, definido pelos registradores da CPU.

Troca de contexto — salvar os registradores do processo (contexto) e carregar um novo contexto no BCP (Bloco de Controle de Processos).

Thread

Thread — fluxo de execução alternativo dentro de um mesmo processo; serve para executar instruções em paralelo (concorrentemente).

Escalonadores

Escalonadores

  • Escalonador de curto prazo: decide quais dos processos prontos vão para a CPU.
  • Escalonador de longo prazo: decide quais dos processos novos vão para a fila de prontos.

Preemptivo vs Não preemptivo

Preemptivo — sistema capaz de parar um processo no meio e tirá‑lo da CPU.

Não preemptivo — sistemas que não conseguem parar o processo enquanto ele está em execução.

Quantum

Quantum — tempo máximo que um processo pode ficar em execução na CPU. Se for muito pequeno haverá alta troca de contexto; se for muito longo haverá ociosidade da CPU.

Entradas relacionadas: