Este documento descreve uma aula prática sobre sistemas operacionais utilizando um simulador chamado SOsim. A aula inclui seis exercícios práticos simulando processos na memória e abordando tópicos como criação de processos, tipos de processos, PCB, estatísticas, log de execução e suspensão/eliminação de processos.
5. Simulador SOsim
00:44
O SOsim é um simulador com recursos visuais
que tem como principal objetivo apresentar os
conceitos e técnicas encontrados nos Sistemas
Operacionais multiprogramáveis modernos
[Machado and Maia 2002]
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
6. Simulador SOsim
00:44
Desenvolvido na linguagem Pascal utilizando paradigma de orientação a objetos,
por [Maia 2001] como trabalho de mestrado. A ferramenta que possibilita através
de uma interface gráfica a assimilação de alguns dos conceitos abordados em sala
de aula na disciplina de Sistemas Operacionais.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
9. 00:44
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
Qual seria o contexto ideal?
10. CPU-Bound x I/O-Bound
00:44
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
O ideal é ter no sistema uma mistura de
processos cpu-bound com processos i/o-bound. Se
todos os processos forem cpu-bound, o processador
será o gargalo do sistema. Se todos forem i/o-bound,
o processador ficará parado enquanto todos os
processos tentam acessar os periféricos.
11. Escalonamento de Processos
00:44
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
Quando um ou mais processos
estão prontos para serem
executados, o sistema
operacional deve decidir qual
deles vai ser executado
primeiro, a parte do S.O.
responsável por essa decisão é
chamada escalonador
12. Algoritmo de Escalonamento
00:44
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
Não preemptivo
# O processo executa até o fim, sem ser interrompido;
Preemptivo
# O processo executa em fatias de tempo determinadas pelo S.O.
13. Prática 1: Criação de Processos
00:44
a) Práticas de simulação
#Execute o simulador SOsim e identifique as quatro janelas
que são abertas na inicialização.
#Crie um processo: janela Gerência de Processos / Criar –
janela Criação de Processos / Criar.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
14. Prática 1: Criação de Processos
00:44
b) Análise Prática
#Na janela Gerência de Processos, observe algumas informações
sobre o contexto de software do processo como PID, prioridade,
estado do processo e tempo de processador.
#Na janela Gerência de Processador, observe o processo
transacionando entre estados.
#Na janela Gerência de Processador, movimente a barra de Clock
de UCP e observe as variações ocorridas.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
15. Prática 1: Criação de Processos
00:44
c) Questão teórica
#Com base na observação do comportamento do processo
criado, identifique se o processo é I/Obound ou CPU-
bound? Justifique a resposta.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
16. Prática 2: Tipos de Processos
00:44
a) Práticas de simulação
#Reinicialize o simulador.
#Crie um processo do tipo CPU-bound: janela Gerência de
Processos / Criar – janela Criação de Processos / Criar (tipo de
processo deve ser CPU-bound).
#Crie outro processo do tipo I/O-bound: janela Gerência de
Processos / Cria – janela Criação de Processos / Criar (tipo de
processo deve ser I/O-bound).
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
17. Prática 2: Tipos de Processos
00:44
b) Análise Prática
#Na janela Gerência de Processos, observe as mudanças de estado
dos dois processos.
#Na janela Gerência de Processador, observe o comportamento
dos processos e as mudanças de contexto em função do tipo I/O-
bound e CPU-bound.
#Na janela Gerência de Processos, compare a taxa de crescimento
do tempo de processador dos dois processos.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
18. Prática 2: Tipos de Processos
00:44
c) Questão teórica
#Analise os efeitos gerados no caso de redução do tempo
gasto na operação de E/S pelo processo I/O-bound.
#O que é possível observar?
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
19. Prática 3: PCB
00:44
a) Práticas de simulação
#Reinicialize o simulador.
#Crie dois novos processos: janela Gerência de Processos /
Criar – janela Criação de Processos / Criar.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
20. Prática 3: PCB
00:44
b) Análise Prática
#Na janela Gerência de Processos, observe as informações
sobre o contexto de software e hardware dos processos
criados.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
21. Prática 3: PCB
00:44
c) Questão teórica
#Identifique quais informações do PCB são estáticas ou
dinâmicas e quais fazem parte do contexto de software e do
contexto de hardware.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
22. Prática 4: Estatísticas
00:44
a) Práticas de simulação
#Reinicialize o simulador.
#Ative a janela de Estatísticas em Console SOsim / Janelas /
Estatísticas
#Crie dois novos processos: janela Gerência de Processos /
Criar – janela Criação de Processos / Criar
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
23. Prática 4: Estatísticas
00:44
b) Análise Prática
#Na janela Estatísticas, observe as informações: número de
processos, estados dos processos e processos escalonados.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
24. Prática 4: Estatísticas
00:44
c) Questão teórica
#Observe que em alguns momentos existem processos no
estado de pronto porém nenhum em estado de execução.
#Explique o porquê dessa situação.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
25. Prática 5: Log de Execução dos Processos
00:44
a) Práticas de simulação
#Reinicalize o simulador.
#Ative a janela de Log em Console SOsim / Janelas / Log
#Crie dois novos processos do tipo CPU-bound: janela Gerência
de Processos / Cria – janela
#Criação de Processos / Criar (tipo de processo deve ser CPU-
bound).
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
26. Prática 5: Log de Execução dos Processos
00:44
b) Análise Prática
#Na janela Log, observe as informações sobre as mudanças
de estado dos processos observando o tempo que cada
processo permanece nos estados de Execução e Pronto.
#Reinicalize o simulador parametrizando com um valor de
fatia de tempo diferente observe as diferenças na janela Log
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
27. Prática 5: Log de Execução dos Processos
00:44
c) Questão teórica
#Analise comparativamente a concorrência de dois processos
CPU-bound executando em dois sistemas operacionais que
se diferenciam apenas pelo valor da fatia de tempo.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
28. Prática 6: Suspensão e Eliminação de Processos
00:44
a) Práticas de simulação
#Reinicalize o simulador.
#Crie dois novos processos: janela Gerência de Processos /
Cria – janela Criação de Processos / Criar
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
29. Prática 6: Suspensão e Eliminação de Processos
00:44
b) Análise Prática
#Na janela Gerência de Processos, observe as informações
sobre o contexto de software dos processos criados.
#Na janela Gerência de Processador, observe a concorrência
no uso do processador pelos dois processos.
#Compare percentualmente os tempos de uso do processador
entre os dois processos
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
30. Prática 6: Suspensão e Eliminação de Processos
00:44
b) Análise Prática
#Suspenda temporariamente um dos processos na janela
Gerência de Processos / Suspender.
#Observe os estados dos processos, a concorrência no uso do
processador e novamente compare percentualmente os
tempos de uso do processador entre os dois processos.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
31. Prática 6: Suspensão e Eliminação de Processos
00:44
b) Análise Prática
#Libere o processo do estado de espera (suspenso) na janela
Gerência de Processos / Prosseguir.
#Elimine um dos processos na janela Gerência de Processos /
Finalizar
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
32. Prática 6: Suspensão e Eliminação de Processos
00:44
c) Questão teórica
#Ao se eliminar um processo em estado de suspenso, o
processo não é eliminado imediatamente.
#Reproduza essa situação no simulador e explique o porquê
da situação.
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
34. Gerência da Memória Virtual
00:44 37
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
35. 00:44
I.C.C.: Aula Prática - SISTEMAS OPERACIONAIS (Simulando Processos na Memória)
O que acontece se aumentarmos a
prioridade de um processo?
Testem!