Os sistemas operacionais utilizam o conceito de processo para executar os programas, e esses processos possuem estados. defina quais são esses estados e explique cada um: *
heeelp plissss
Soluções para a tarefa
Resposta:
Introdução
De forma simples, o processo é um programa em execução.
Extensão do conceito: Estrutura responsável pela manutenção de todas as informações necessárias à execução de um programa, como conteúdo de registradores e espaço na memória
6.2 – Modelo de Processo
Processo = ambiente onde se executa um programa
Um mesmo programa pode produzir resultados diferentes, dependendo do processo no qual ele é executado.
Bloco de controle do processo (Process Control Block – PCB) – Estrutura onde o SO guarda todas as informações do processo, contendo sua identificação, prioridade, estado corrente, recursos alocados por ele e informações sobre o programa em execução
O Sistema Operacional gerencia os processos através de System Calls.
Processo : contexto de hardware, software e espaço de endereçamento.
6.2.1 – Contexto de Hardware
Constitui-se do conteúdo de registradores
A troca de um processo por outro na CPU, pelo sistema operacional, é denominada mudança de contexto.
Mudança de Contexto - salva o conteúdo dos registradores da CPU e carregá-los com os valores referente ao do processo que está ganhando a utilização do processador.
6.2.2 – Contexto de Software
Características do processo incluídas na execução de um programa, divididas em:
Identificação – Principalmente número (PID) de identificação e identificação do processo ou usuário (UID) que o criou.
Quotas – Limites de cada recurso do sistema que um processo pode alocar
Privilégios – o que o processo pode ou não fazer em relação ao sistema e aos outros processos.
6.2.3 – Espaço de Endereçamento
Área da memória do processo onde o programa será executado e para dados utilizados por ele.
Deve ser protegido do espaço de endereçamento dos demais processos
6.3 – Estado do Processo
Em sistemas Multitarefas o processo não é executado todo o tempo pelo processador
3 tipos de estados:
Execução (running) – O processo está sendo executado pela CPU.
Pronto (ready) – O processo está pronto e esperando para ser executado pela CPU.
Espera (wait) – O processo está esperando algum evento externo ou por algum recurso para poder prosseguir seu processamento.
Bloqueado – O processo está esperando por algum recurso do sistema que não se encontra disponível.
6.4 – Mudança de Estado do Processo
Mudança de estado por eventos do próprio processo (eventos voluntários) ou causados pelo sistema operacional (eventos involuntários). Dividido em 4 mudanças:
Pronto -> Execução = Quando um processo é criado, é colocado em uma lista de processos no estado pronto. Então é escolhido pelo sistema para ser executado.
Execução -> Espera = O processo passa para espera quando aguarda a conclusão de um evento solicitado.
Espera -> Pronto = O processo passa para pronto quando a operação solicitada é atendida ou o recurso esperado é concedido.
Execução -> Pronto = O processo passa de execução para pronto por eventos gerados pelo sistema.
6.5 – Subprocesso e Thread
Subprocesso ou processo filho
processos criados por um outro processo, de maneira hierárquica.
O subprocessos são eliminados quando o processo pai deixa de existir.
Permite dividir a aplicação para trabalhar de forma concorrente.
Cada processo e subprocesso possui seu ambiente e recursos alocados.
Thread ou Linha de Controle
No ambiente multthread cada processo pode responder a várias solicitações concorrentes ou mesmo simultaneamente, se houver mais de um processador.
Threads compartilham o processador da mesma forma que um processo.
Cada Thread possui seu próprio conjunto de registradores, porém compartilha o mesmo espaço de endereçamento com as demais threads do processo.
Uma Thread pode alterar os dados de outra Thread.
6.6 – Processos do Sistema
Grande parte do núcleo do sistema é executada no contexto de processos, inclusive no contexto de processos de usuários, como:
auditoria e segurança:
serviços de rede;
contabilização do uso de recursos;
contabilização de erros;
gerência de impressão;
gerência de jobs batch;
temporização;
comunicação de eventos;
inteface de comando (shell).
Explicação: se eu tive errado desculpa