120 likes | 360 Views
Escalonamento de Processos no Linux. Universidade Federal do Pará Prof. Regiane Kawasaki. Equipe: Marissa Brasil Michell Cruz Nicoli Souza Renato Iori. Gerenciamento de Processos.
E N D
Escalonamento de Processos no Linux Universidade Federal do Pará Prof. Regiane Kawasaki Equipe: Marissa Brasil Michell Cruz Nicoli Souza Renato Iori
Gerenciamento de Processos • O Linux não diferencia processos de threads, todos são considerados tarefas. • Não distingue processos interativos de processos batch, apenas os de tempo real. • E privilegia processos I/O bound em relação aos CPU bound.
Gerenciamento de Processos • Objetivo: - Ter uma vazão razoável (throughput) - Respeitar as prioridades - Manter alta a utilização e rendimento de recursos - Reduzir a sobrecarga de operações de escalonamento
Gerenciamento de Processos • Prioridades: - Estática: exclusiva de processos em tempo real, definida pelo usuário. - Dinâmica: aplicada às demais tarefas, sendo sua prioridade calculada com a prioridade base do processo e o tempo restante de execução.
Gerenciamento de Processos • As tarefas de prioridade estáticas são privilegiadas em relação as de dinâmicas. • Faixas de prioridade variam de -20 a +19, sendo a -20 a mais alta. • Apenas o administrador pode ajustar para prioridade negativa.
Escalonamento de Processos • Algoritmos de escalonamento de tempo real e de multiprocessador • Utilizam ponteiros, vetores e variáveis para chavear tarefas. • Prioridade dinâmica: tarefas recentemente alocados tem prioridade reduzida e tarefas alocadas há mais tempo tem prioridade aumentada
Escalonamento de Processos • Escalonamento de Tempo Real: - Diminuir o tempo de espera de uma tarefa ser selecionada para um processador. - Tarefas normais não podem provocar a preempção de tarefas tempo real - São escalonadas por meio do algoritmo round robin ou FIFO.
Escalonamento de Processos • Escalonamento de Multiprocessador - Tarefas em fila de execução por processo em geral terão alta afinidade de processador - Entretanto, poderia permitir que um ou mais processadores fique ociosos - Para evitar isso, migra-se tarefas de um processador para outro. - Escalonador tenta selecionar aquelas tarefas cujos desempenhos serão menos afetados por trocar de processador.
Escalonamento de Processos • Escalonamento Earliest Deadline First (EDF) - As tarefas são periódicas e independentes - O tempo de execução de cada tarefa é conhecido e constante. - ordenação das tarefas segundo os seus deadlines absolutos - a tarefa com maior prioridade é a que tem o deadline di mais próximo do tempo atual
Comandos • ps – mostra todos os processos em execução • pstree – mostra a hierarquia existente entre os processos ativos no sistema • nice - configura a prioridade da execução de um comando/programa • renice - configura a prioridade de um processo que já esteja em execução • top – versão dinamica
Referencias • Meira, Marcos Vinícios de. (2008) “Política de Escalonamento de Processos em Linux”. In Campo Dig.Pages 56-64. • Tanenbaum, Andrews S. (2009) “Sistemas Operacionais Modernos”,3th Edição. Pearson Prentice Hall, São Paulo. • Zanuz, L., Meneghel, M., Macon, F. and Borba, M.(2001) “Escalonador Linux” http://lzanuz.sites.uol.com.br/escalonamento.htm • Duarte, A. (2009) “Sistemas Operacionais. Gerencia de Processos: Escalonamento de Processos” http://www.slideshare.net/alexandrend/escalonamento-de-processos, Setembro. • Teixeira, Márcio A.(2009) “Sistemas Operacionais: Escalonamento de Processos” http://189.57.119.178/~marcio/ifsp/SO/Escalonamento.pdf.pdf, Dezembro.