Gerenciamento de Processos
Os t�picos a serem examinados podem ser encontrados nos seguintes cap�tulos de livros:
1. Estados de um processoDo cap�tulo anterior � poss�vel perceber que os v�rios processos executando em um sistema est�o sempre disputando o acesso � CPU. Com isso, � preciso definir um conjunto de estados para representar os processos em cada condi��o. De modo geral os processos podem assumir os seguintes estados:
Al�m desses estados � poss�vel diferenciar outros estados a partir do fato do processo estar ou n�o residindo fisicamente na mem�ria. A passagem de um processo de um estado para outro ocorre em determinadas circunst�ncias, que s�o:
2. Tabela de processosPara que o sistema tenha condi��es de manipular os processos (e seus estados) � necess�rio que se tenha uma estrutura para armazenar informa��es de cada processo. Isso � feito por uma tabela, normalmente chamada de tabela de processos ou bloco de controle de processos (BCP), que deve conter informa��es tais como o n�mero do processo (PID), identificador de seu estado, instante de cria��o, tempo acumulado de execu��o, conte�do dos registradores da cpu por ele usados, endere�o na mem�ria, pilha, etc. � atrav�s da manipula��o desta tabela que o sistema operacional pode controlar todos os processos e, tamb�m, fornecer informa��es para os algoritmos de escalonamento na cpu. Uma descri��o mais detalhada dos dados de uma tabela de processos pode ser vista nos livros de SO. 3. Mecanismos de escalonamento de processosA ocupa��o da cpu pelos processos que estejam no estado de pronto deve ser feita de forma organizada. Para tanto existem algoritmos de escalonamento que atuam de acordo com premissas estabelecidas pelo tipo de processo do sistema, necessidades do usu�rio, disponibilidade de recursos de hardware, etc. Esses algoritmos podem ser classificados em duas categorias principais: algoritmos sem preemp��o (FCFS - primeiro a chegar primeiro a executar, SJF - primeiro o mais curto, etc.), e algoritmos com preemp��o (Round-Robin, Prioridade, SRTF - primeiro quem falta menos tempo, Filas multin�vel, etc.). Os algoritmos sem preemp��o n�o permitem que um processo seja interrompido ap�s assumir o controle da cpu, o que passa a ser permitido nos algoritmos com preemp��o. A diferen�a entre algoritmos com preemp��o est� centrada exatamente nos motivos que originam a preemp��o de um processo. De forma geral os algoritmos com preemp��o s�o muito mais eficientes do que os sem preemp��o por fazer um melhor uso da cpu. A efici�ncia de cada um desses algoritmos pode ser medida atrav�s de m�tricas de desempenho, tais como ocupa��o da cpu, throughput (taxa de sa�da ou vaz�o), tempos de espera, tempos de execu��o m�dios (turnaround time), etc. A ado��o de uma dessas m�tricas de desempenho � feita de acordo com a necessidade do usu�rio, sendo que cada algoritmo de escalonamento pode resultar em medidas bastante distintas de desempenho para conjuntos de processos diferentes. Cabe ao usu�rio, portanto, escolher a medida que mais lhe interessa e determinar o algoritmo de escalonamento que melhor se adequa � sua situa��o. Por fim, � preciso observar que esse cen�rio vem mudando com o surgimento de threads e processadores multicore. Atualmente � poss�vel executar v�rios threads simultaneamente, o que aumenta as possibilidades de escalonamento para o gerenciador. Assim, as vers�es mais recentes dos SO dispon�veis j� fazem uso dessa capacidade, permitindo um aumento no throughput do sistema. O que é o estado de pronto de um processo?6.3 – Estado do Processo
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.
Quais os 5 possíveis estados de um processo?Estados de Processos. Ao executar, processo muda de “estados” New: processo está sendo criado.. Running: instruções do processo estão executando. Waiting: processo está esperando ocorrência de algum.. evento. Terminated: processo terminou a execução.. O que acontece quando um processo está no estado de Pronto Ready )?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.
Quais são os estados de um processo explique o seu funcionamento?Um processo passa por diferentes estados desde sua criação até seu término. Enquanto ele é criado, seu estado é considerado "Novo"; em ação, muda para "Executando"; quando depende da ocorrência de algum evento, vira "Esperando"; quando não mais necessário, o processo é "Terminado".
|