Lista de Sistemas Operacionais
Por: Salezio.Francisco • 20/4/2018 • 2.768 Palavras (12 Páginas) • 410 Visualizações
...
Pode-se ainda requerer informações adicionais sobre como os recursos do sistema serão solicitados para que, com o conhecimento da sequência completa de requisições e liberações de cada processo, se possa decidir se para uma determinada requisição um processo deve ou não esperar. Os algoritmos usados nessa abordagem tem a desvantagem de imporem um overhead a mais no sistema operacional, podendo causar significante perda de eficiência.
A estratégia de permitir que os deadlocks ocorram para depois recuperar o sistema é de elevado custo devido à árdua tarefa que é detectar-se a ocorrência de um deadlock e, ainda, recuperar o sistema mantendo a consistência das informações alteradas.
Por fim, a abordagem de ignorar a ocorrência de deadlocks no sistema é uma alternativa barata, uma vez que dispensa o overhead extra dos algoritmos de detecção, prevenção e recuperação, e pode ser bem aceitável de se utilizar desde que esse tipo de problema não ocorra frequentemente no sistema.
06. Letra B
07. Letra B
08. Letra E
09. Letra A
10. Letra D
11. Letra C
12. Long−term Scheduling: Determina os processos que serão admitidos no sistema.
Medium−term Scheduling: Determina a adição de um número de processos que estão parcialmente ou completamente na memória.
Short−term Scheduling: Determina quais processos serão executados pelo processador.
Long−term Scheduling e Medium−term Scheduling estão diretamente relacionados com aspectos de performance, ou seja grau de multiprogramação. É utilizado quando o processo deverá ser admitido no sistema e quando tomar decisão de trocar parte do processo da memória primária para a memória secundária.
Short−term Scheduling aborda com alto grau de performance o escalonamento de processos que estão pronto para executar na memória principal.
13. O Short-term Scheduling procura alocar o tempo do processador de tal maneira a otimizar um ou mais aspectos do comportamento do sistema. Os critérios utilizados para isso são distinguidos em: critérios orientados ao sistema e critérios orientados aos usuários.
O Turnaround time é um critério orientado ao usuário e caracteriza o intervalo de tempo entre a submissão de um processo e o seu término de execução. Este tempo inclui o tempo atual de execução mais o tempo de espera pelo recurso, incluindo a CPU. Esta é a média apropriada de um Job em Lote.
O Throughput é um critério orientado ao sistema, sendo que sua política de escalonamento deve tentar maximizar o número de processos completados por unidade de tempo. Esta é a média de quanto trabalho iniciado é executado.
14. Os processos podem ser classificados como CPU-Bound ou I/O-Bound, de acordo com sua utilização de processador e dos dispositivos I/O.
CPU-Bound é um processo que utiliza muita CPU. O seu tempo de execução é definido principalmente pelo tempo dos ciclos(clocks) do processador. Esse tipo de processo realiza poucas operações de leitura e gravação e é encontrado em aplicações cientificas e de muito cálculo. Por exemplo um processo que executa um programa de inversão de matriz é cpu-bound. Após ler alguns poucos dados, ele precisa apenas de processador.
Um processo é considerado I/O-Bound quando passa a maior parte do tempo no estado de espera, pois realiza um elevado número de operações de E/S. Nesse caso, o tempo de execução é definido principalmente por estas operações. Por exemplo, um processo que executa um programa de cópia de arquivo é i/o-bound. Ele praticamente não utiliza processador, apenas acessa disco. Este tipo de processo é encontrado principalmente em aplicações comerciais, que se baseiam em leitura, processamento e gravação.
15. Os escalonadores preemptivos são algoritmos que permitem que um processo seja interrompido durante sua execução, quer seja por força de uma interrupção de entrada/saída, quer seja em decorrência da política de escalonamento adotada e aplicada por parte do escalonador de processos ou simplesmente por força do término da execução do processo. Após a interrupção deste processo, ocorre o que se chama de troca de contexto, que consiste em salvar o conteúdo dos registradores e a memória utilizada pelo processo e conceder à outro processo o privilégio de executar na CPU, restaurando assim o contexto deste último processo.
As vantagens são:
- Ser justo: todos os processos devem ser tratados igualmente, tendo possibilidades idênticas de uso do processador, devendo ser evitado o adiamento indefinido;
- Maximizar a produtividade (throughput): procurar maximizar o número de tarefas processadas por unidade de tempo;
- Ser previsível: uma tarefa deveria ser sempre executada com aproximadamente o mesmo tempo e custo computacional;
- Minimizar o tempo de resposta para usuários interativos;
- Maximizar o número possível de usuários interativos;
- Minimizar a sobrecarga (overhead): recursos não devem ser desperdiçados, embora algum investimento em termos de recursos para o sistema pode permitir maior eficiência;
- Favorecer processos bem comportados: processos que tenham comportamento adequado poderiam receber um serviço melhor;
- Balancear o uso de recursos: o escalonador deve manter todos os recursos ocupados, ou seja, processos que usam recursos subutilizados deveriam ser favorecidos;
- Exibir degradação previsível e progressiva em situações de intensa carga de trabalho.
As desvantagens são:
Como pode ser visto facilmente, alguns destes objetivos são contraditórios, pois dado que a quantidade de tempo disponível de processamento (tempo do processador) é finita, assim como os demais recursos computacionais, para que um processo seja favorecido outro deve ser prejudicado. O maior problema existente no projeto de algoritmos de escalonamento está associado a natureza imprevisível dos processos, pois não é possível prevermos
...