Sistemas Operacionais e
Sistemas Operacionais e
Introdução à
Introdução à
Programação
Programação
Módulo 1 – Sistemas
Módulo 1 – Sistemas
Operacionais
Operacionais
Laboratório 1
Laboratório 1
Objetivos:
Objetivos:
1. Usar comandos básicos para visualização e manipulação de
1. Usar comandos básicos para visualização e manipulação de
processos
processos
2. Entender o escalonamento de processos no Linux
Laboratório 1
Laboratório 1
Usar a interface de linha de comando:
Usar a interface de linha de comando:
i) Após logar, executar o aplicativo “Konsole”, em :
i) Após logar, executar o aplicativo “Konsole”, em : Menu->Ferramentas->Konsole
Menu->Ferramentas->Konsole
ii) A tela que se apresenta parece a de um computador em
ii) A tela que se apresenta parece a de um computador em
modo texto. Tudo o que for digitado no prompt será
modo texto. Tudo o que for digitado no prompt será
interpretado pelo shell
interpretado pelo shell
O shell é o interpretador de comandos, e funciona como uma interface em modo
Laboratório 1
Laboratório 1
Usar comandos básicos para manipulação de
Usar comandos básicos para manipulação de
processos:
processos:
Processos são programas em execução no Linux
Processos são programas em execução no Linux
O Linux é multiprogramado: pode existir mais de um processo
O Linux é multiprogramado: pode existir mais de um processo
em execução ao mesmo tempo
em execução ao mesmo tempo
i) para ver os processos em execução, use o comando “
i) para ver os processos em execução, use o comando “toptop”. ”. Observe as informações mostradas, tentando entendê-las.
Observe as informações mostradas, tentando entendê-las.
ii) O comando
ii) O comando toptop mostra os processos mais ativos (que mais mostra os processos mais ativos (que mais usam o processador). Para listar todos os processos
usam o processador). Para listar todos os processos
existentes deve-se usar o comando “
existentes deve-se usar o comando “ps axps ax”. Compare as ”. Compare as informações mostradas pelo
informações mostradas pelo psps com aquelas obtidas com com aquelas obtidas com
top
Laboratório 1
Laboratório 1
Uso de “
Uso de “toptop”:”:
estatísticas globais Processos mais ativos (mais usam CPU)
Laboratório 1
Laboratório 1
Uso de “
Uso de “toptop”: significados das informações mostradas”: significados das informações mostradas
Usuário dono PID (identificador de processo) Prioridades Memórias alocadas Tempo total de uso de CPU Uso de CPU recente Uso da memória principal
Laboratório 1
Laboratório 1
Usar comandos básicos para manipulação de
Usar comandos básicos para manipulação de
processos:
processos:
Uma listagem do “
Uma listagem do “ps axps ax” segue abaixo:” segue abaixo:
Cada processo é identificado por um número dentro do sistema
Cada processo é identificado por um número dentro do sistema
operacional, chamado de
operacional, chamado de PIDPID ( (Processo IdentifierProcesso Identifier). ). O
Laboratório 1
Laboratório 1
Usar comandos básicos para manipulação de
Usar comandos básicos para manipulação de
processos:
processos:
Uma listagem do “
Uma listagem do “ps auxps aux” segue abaixo:” segue abaixo:
“
“ps auxps aux” mostra algumas informações adicionais: ” mostra algumas informações adicionais: uso do uso do processador e memória, e usuário dono.
Laboratório 1
Laboratório 1
Usar comandos básicos para manipulação de
Usar comandos básicos para manipulação de
processos:
processos:
Exercício
Exercício: procure os processos pertencentes a você (usuário : procure os processos pertencentes a você (usuário “
“alunoaluno”). Use o comando “”). Use o comando “ps auxps aux”.”.
iii) Um processo pode ser terminado (“morto”) com o comando
iii) Um processo pode ser terminado (“morto”) com o comando
“
“killkill”. Deve-se especificar o PID do processo a ser terminado”. Deve-se especificar o PID do processo a ser terminado
Exercício
Exercício: localize processos “: localize processos “bashbash” pertencentes a seu ” pertencentes a seu usuário, e mate-os com “
Laboratório 1
Laboratório 1
Usar comandos básicos para manipulação de
Usar comandos básicos para manipulação de
processos:
processos:
Exercício
Exercício: identifique informações sobre os processos : identifique informações sobre os processos
atualmente existentes em seu computador e responda o
atualmente existentes em seu computador e responda o
seguinte:
seguinte:
i) qual o processo que mais usa o processador recentemente ?
i) qual o processo que mais usa o processador recentemente ?
ii) que processo mais usa memória ?
ii) que processo mais usa memória ?
Iii) qual o processo mais antigo (rodando faz mais tempo) ?
Iii) qual o processo mais antigo (rodando faz mais tempo) ?
iv) qual processo usou mais tempo de processador desde o
iv) qual processo usou mais tempo de processador desde o
instante de sua criação ?
instante de sua criação ?
v) que usuário é dono do maior número de processos ?
Laboratório 1
Laboratório 1
Qantos processos podem existir ?
Qantos processos podem existir ?
i) Obtenha o programa “
i) Obtenha o programa “crashcrash”, que está em ”, que está em
http://www.sj.cefetsc.edu.br/~msobral/SOP/lab2
http://www.sj.cefetsc.edu.br/~msobral/SOP/lab2
ii) Execute-o, acompanhando as informações sobre novos
ii) Execute-o, acompanhando as informações sobre novos
processos criados.
processos criados.
iii) Use outros programas enquanto
iii) Use outros programas enquanto crashcrash é executado. Use é executado. Use um editor de texto ou um navegador (ou ambos !)
um editor de texto ou um navegador (ou ambos !)
iii) O programa
iii) O programa crashcrash criou processos indefinidamente ? Ou há criou processos indefinidamente ? Ou há um limite no número de processos que podem existir ao
um limite no número de processos que podem existir ao
mesmo tempo ?
Laboratório 1
Laboratório 1
Processos IO bound e CPU bound:
Processos IO bound e CPU bound:
Exercício
Exercício: identifique processos IO bound e CPU bound, : identifique processos IO bound e CPU bound, usando os comandos “
usando os comandos “toptop” ou “” ou “ps auxps aux”. Quantos processos ”. Quantos processos de cada tipo existem em seu computador ?
Laboratório 1
Laboratório 1
Processos IO bound e CPU bound:
Processos IO bound e CPU bound:
i) Faça o download do programa “
i) Faça o download do programa “fominhafominha”, que está em ”, que está em
http://www.sj.cefetsc.edu.br/~msobral/SOP/lab2/
http://www.sj.cefetsc.edu.br/~msobral/SOP/lab2/
ii)
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
Laboratório 1
Laboratório 1
Processos IO bound e CPU bound:
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 ?