Gerência De Processos
Ensaios: Gerência De Processos. Pesquise 862.000+ trabalhos acadêmicosPor: brunacbs30 • 1/12/2014 • 4.669 Palavras (19 Páginas) • 243 Visualizações
RESUMO
O Sistema Operacional tem uma função específica: gerenciar o ambiente multiprogramável, com a administração da execução de diversos programas e do uso concorrente do processador. Processos e Threads estão associados a execução dos programas e os mesmos são a base para a implementação de um sistema multiprogramáveis. Neste artigo serão abordados conceitos de processos e thread, estrutura, estados, tipos e sinalização.
Palavra-Chave: Sistema Operacional – Processos – Threads – Sinalização
____________________________________________
ABSTRACT
The OS has a specific function: manage multiprogrammable environment, with management of the implementation of various programs and the concurrent use of the processor. Threads and processes are associated with implementing programs and they are the basis for the implementation of a system multiprogrammable. In this paper the concepts of processes and thread structure, states, types and signaling will be discussed.
Keyword: Operating System - Processes - Threads - Signage
____________________________________________
INTRODUÇÃO
A unidade básica do software com a qual o sistema operacional trabalha para organizar as tarefas realizadas pelo processador é representada pelo processo ou thread, dependendo do sistema operacional (COUSTAN, Dave e FRANKLIN, Curt).
Um processo pode até ser comparado a um aplicativo, mas seria uma ideia incompleta, pois os processos são mais complexos que os aplicativos. Os aplicativos (processador de texto, planilha eletrônica ou jogo) são processos que podem ativar outros processos e se comunicam com outros dispositivos ou computadores. Existem muitos processos que são executados sem que seja percebido. O Windows e o UNIX podem executar muitos processos para trabalhar com a rede, gerenciar a memória e o disco rígido, verificar vírus entre outros.
____________________________________________
PROCESSOS
O conceito com mais evidência em qualquer sistema operacional é o processo. Um programa por si só não é um processo, mas a abstração de um programa em execução.
Um processo pode ser definido como o ambiente onde um programa é executado. Este ambiente, além das informações sobre a execução, possui também o quanto de recursos do sistema cada programa pode utilizar, como o espaço de endereçamento, tempo de processador e área em disco.
Através de processos, um programa pode alocar recursos, compartilhar dados, trocar informações e sincronizar sua execução. Nos sistemas multiprogramáveis os processos são executados concorrentemente, compartilhando o uso do processador, memória principal, dispositivos de E/S dentre outros recursos.
Estrutura
Na visão da camada de hardware, o processador executa instruções sem distinguir qual programa encontra-se em processamento. É de responsabilidade de o sistema operacional programar a concorrência entre programas gerenciando a alternância de execução de instruções na UCP de maneira controlada e segura.
Para melhor entendimento, o processo inicia como um programa em execução, que quando interrompido, é necessário que todas as informações sejam guardadas para que ao retomar o processo, não lhe falte nenhuma informação. Estas informações são de extrema importância para que o sistema operacional possa gerenciar a execução concorrentes de programas, e é a base de qualquer ambiente multiprogramável.
Assim, um sistema multiusuário, cada usuário tem seu programa associado a um processo. Desta forma, todos os recursos estão sendo compartilhado, inclusive a UCP. O processador executa o programa de um usuário durante um intervalo de tempo e no instante seguinte estará processando um outro programa.
Um processo é formado por três partes: Contexto de hardware, contexto de software e espaço de endereçamento, que juntos mantém todas as informações necessárias à execução de um programa.
• Contexto De Hardware – Armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específicos, como program conter (PC), stack pointer (PC) e registrador de status.
• Quando um processo está em execução, o seu contexto de hardware está armazenado nos registradores do processador. No momento em que o processo perde a utilização da UCP, o sistema salva as informações no contexto de hardware do processo.
• Controle de Software – São especificados limites e características dos recursos que podem ser alocados pelo processo, como o número máximo de arquivos abertos simultaneamente, prioridades de execução e tamanho do buffer para operações de entrada e saída. O contexto de software é subdividido em:
o Identificação – Cada processo criado pelo sistema recebe uma identificação única (PID) representada por um número. Através do PID, o sistema operacional e outros processos podem fazer a referência a qualquer processo existente, consultando seu contexto ou alterando uma de suas características.
o Quotas – São os limites de cada recurso do sistema que um processo pode alocar. Caso a quota seja insuficiente, o processo poderá ser executado lentamente, interrompendo seu procedimento ou mesmo não ser executado.
Exemplo de quotas nos sistemas operacionais:
- Número máximo de arquivos abertos simultaneamente;
- Tamanho máximo de memória principal e secundária que o processo pode alocar;
- Número máximo para operações de entrada e saída pendentes;
- Tamanho máximo de buffer para operações de entrada e saída;
- Número máximo de processos, subprocessos e threads que podem ser criados.
Privilégios (Direitos) – Definem as ações que um processo pode fazer em relação a ele mesmo, aos demais processos e ao sistema operacional.
Os privilégios são alterados de acordo com a característica que afetam, pois estão relacionados à operação e à gerência do ambiente, como a desativação do sistema, alteração de regras de segurança, criação de outros processos privilegiados e outros.
Espaço de Endereçamento
É
...