Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Sistema Operacional
- Processo é um programa em execução.
- Um processo pode estar em um dos três 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.
- Thread (linha de execução) é uma sequência de instruções que faz parte de um processo principal. Um software é organizado em processos. Cada processo é dividido em threads, que formam tarefas independentes, mas relacionadas entre si. CPUs podem realizar multithreading simultâneo (SMT) para ter mais desempenho.
- O que é um processo em um sistema operacional?
- Um processo pode ser considerado como um programa em execução, também um conjunto de informações necessárias para a concorrência de programas no sistema operacional. Além disso, também pode ser entendido como o ambiente onde um programa é executado.
- Essas definições você irá encontrar no Arquitetura de Sistemas Operacionais, livro dos mestres Francis Machado e Luiz Maia.
- Frisando Tanenbaum e Austin:
- (..) um processo pode ser pensado como um programa em execução juntamente com toda informação do seu estado (memória, registradores, contador de programa, status de E/S, etc
- Quando ocorre uma troca de um processo por outro temos a chamada mudança de contexto, e cada processo possui três partes:
- Contexto de hardware
- Contexto de software
- Espaço de endereçamento
- Contexto de hardware
- Essa parte do processo é a que armazena o conteúdo dos registradores gerais da CPU e dos registradores específicos. O contexto de hardware de um processo em execução fica armazenado nos registradores do processador.
- Contexto de software
- Aqui temos as especificidades dos recursos disponíveis para serem alocados em um processo, como limite de arquivos abertos ao mesmo tempo, tamanho do buffer para operações de E/S e prioridade de execução de processos.
- O contexto possui três tipos de informação sobre o processo: identificação, quotas e privilégios.
- Identificação
- Cada processo do sistema operacional possui um número identificador, chamado de PID (process identification), juntamente com a identificação do usuário que o criou, o UID (user identificação).
- Quotas
- Aqui temos a informação dos limites de recurso que o processo pode alocar.
- Privilégios
- Os privilégios definem quais ações um processo pode tomar com relação a ele mesmo, a outros processo e ao sistema operacional. Pense, por exemplo, num processo iniciado pelo root no linux, que tem privilégios de administrador.
- Espaço de endereçamento
- Esta parte do processo refere-se a àrea da memória que pertence ao processo, que ele possui para armazenar instruções e dados para sua execução.
- Estados de um processo
- Um processo pode ter basicamente três estados: em execução, pronto ou em espera.
- Execução (running)
- Dizemos que um processo está em execução quando ele está sendo processado pela CPU.
- Pronto (ready)
- Estar em estado de pronto significa que o processo aguarda para ser executado. A ordem de execução dos processos em estado de pronto é determinada pelo mecanismo de escalonamento.
- Espera (wait)
- O processo encontra-se em estado de espera quando aguarda por algum evento externo ou algum recurso para prosseguir sua execução.
- Para maiores informações sobre processos vale dar uma lida no livro Arquitetura de Sistemas Operacionais do Francis Machado e do Luiz Maia.
- Fontes:
- MACHADO, Francis Berenger; MAIA, Luiz Paulo. Arquitetura de Sistemas Operacionais: Incluindo Exercícios com o Simulador SOSIM e Questões do ENADE. Rio de Janeiro: LTC, 2013.
- TANENBAUM, Andrew S; AUSTIN, Todd. Organização estruturada de computadores. Tradução Daniel Vieira; revisão técnica Wagner Luiz Zucchi. São Paulo: Pearson Prentice Hall, 2013.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement