Sistemas Operacionais e Introdução à Programação Módulo 1 Sistemas Operacionais 1
Objetivos: Laboratório 1 1. Usar comandos básicos para visualização e manipulação de processos 2. Entender o escalonamento de processos no Linux 2
Usar a interface de linha de comando: i) Após logar, executar o aplicativo Konsole, em : Menu->Ferramentas->Konsole ii) A tela que se apresenta parece a de um computador em modo texto. Tudo o que for digitado no prompt será interpretado pelo shell O shell é o interpretador de comandos, e funciona como uma interface em modo texto 3
Usar comandos básicos para manipulação de processos: Processos são programas em execução no Linux O Linux é multiprogramado: pode existir mais de um processo em execução ao mesmo tempo i) para ver os processos em execução, use o comando top top. Observe as informações mostradas, tentando entendê-las. ii) O comando top mostra os processos mais ativos (que mais usam o processador). Para listar todos os processos existentes deve-se usar o comando ps ax. Compare as informações mostradas pelo ps com aquelas obtidas com top. 4
Uso de top top : estatísticas globais Processos mais ativos (mais usam CPU) 5
Uso de top top : significados das informações mostradas PID (identificador de processo) Usuário dono Prioridades Memórias alocadas Uso de CPU recente Uso da memória principal Tempo total de uso de CPU 6
Usar comandos básicos para manipulação de processos: Uma listagem do ps ax segue abaixo: Cada processo é identificado por um número dentro do sistema operacional, chamado de PID (Processo Identifier). O PID aparece na coluna mais à esquerda. 7
Usar comandos básicos para manipulação de processos: Uma listagem do ps aux segue abaixo: ps aux mostra algumas informações adicionais: uso do processador e memória, e usuário dono. 8
Usar comandos básicos para manipulação de processos: Exercício: : procure os processos pertencentes a você (usuário aluno ). Use o comando ps aux. iii) Um processo pode ser terminado ( morto ) com o comando kill. Deve-se especificar o PID do processo a ser terminado Exercício: : localize processos bash bash pertencentes a seu usuário, e mate-os com kill kill. O que aconteceu? 9
Usar comandos básicos para manipulação de processos: Exercício: : identifique informações sobre os processos atualmente existentes em seu computador e responda o seguinte: i) qual o processo que mais usa o processador recentemente? ii) que processo mais usa memória? Iii) qual o processo mais antigo (rodando faz mais tempo)? iv) qual processo usou mais tempo de processador desde o instante de sua criação? v) que usuário é dono do maior número de processos? 10
Qantos processos podem existir? i) Obtenha o programa crash crash, que está em http://www.sj.cefetsc.edu.br/~msobral/sop/lab2 ii) Execute-o, acompanhando as informações sobre novos processos criados. iii) Use outros programas enquanto crash é executado. Use um editor de texto ou um navegador (ou ambos!) iii) O programa crash criou processos indefinidamente? Ou há um limite no número de processos que podem existir ao mesmo tempo? 11
Processos IO bound e CPU bound: Exercício: : identifique processos IO bound e CPU bound, usando os comandos top top ou ps aux. Quantos processos de cada tipo existem em seu computador? 12
Processos IO bound e CPU bound: i) Faça o download do programa fominha fominha, que está em http://www.sj.cefetsc.edu.br/~msobral/sop/lab2/ ii) Execute-o, e em seguida observe-o com o programa top. Como ele se comporta quanto ao uso do processador (CPU)? iii) Abra um editor de texto, e digite algo enquanto fominha está sendo executado. O editor parece ser afetado pelo fominha? iv) Crie mais dois processos fominha, e use o programa top para verificar seus usos do processador. Quanto da capacidade do processador cada um deles consegue usar? 13
Processos IO bound e CPU bound: iv) Repita o uso do editor de texto enquanto os processos fominha estão em execução. Você consegue usar o editor de texto, ou ele está muito lento? v) Obtenha o programa lento, que está na mesma URL do programa fominha. Execute-o uma vez e verifique suas informações com o programa ps aux. Como ele se comporta quanto ao uso do processador? vi) Execute vários processos lento, e investigue o uso do processador com o programa top. Qual o impacto do lento no uso do processador? Vii) Como você classificaria os programas lento e fominha, com respeito ao uso do processador? Por que? 14