Buscar

ATIVIDADE 2 SO

Prévia do material em texto

Atribuição de Processos - Capítulo 4
Q1. Como o código hexadecimal aqui se relaciona com as informações no compilador
janela e a janela do simulador de CPU? 
O endereço na janela de código binário é o mesmo que LAdd na janela do compilador de programa e o Código do Programa na janela cod corresponde ao código binário na janela como código Binário.
Q2. Clique no botão SHOW INSTRUCTION STATS… e anote as principais instrução usada. Isso te surpreende? Explicar.
- O MOV é a instrução mais utilizado que corresponde a 57% do total, ele é utilizado 8 vezes como a instrução mais comum na instrução da CPU na janela Compiler.
Q1. Explique brevemente o que os cabeçalhos de colunas denominados PAdd e LAdd significam. Por que são eles são diferentes?
-PAdd significa o endereço do programa (Físico).
-LAdd significa o endereço do local (Lógico).
-Eles são diferentes porque o LAdd é o acesso local na RAM (computador físico) em vez de PAdd ser o endereço na unidade de disco ou programa.
Q2. Observe os valores do PC e dos registradores BR. O que esses valores significam?
-Os valores do PC caracterizam o contador do programa, que é o endereço da próxima instrução à ser executada pelo computador.
 BR é o registro base das instruções.
1. Anote o que você observa quando os processos são executados (você precisa concentre-se nas duas visões: PROCESSOS RUNNING e PROCESSOS PRONTOS durante este período).
-O processo criado começa na seção de processos prontos e, em seguida, passa para a seção de processos em execução
FCFS Non-Preemptive - 1. Anote o que você observa.
- O terceiro processo de prioridade não é concluído. Apenas fica no 3º processo de priorização.
FCFS Preemptive - Como isso é diferente de (2) acima?
Ele permanece na prioridade 2, ou seja ele não inicia com o processo com prioridade 3, embora tenha sido criado primeiro.
Round Robin - Non-Preemptive - Anote o que você observa.
-Ele percorre todos os processos repetidamente de 1 a 4.
Registre esta informação na caixa abaixo.
A sequência dos processos em execução é 1,1,2,2,3,3 e depois repete. Então executa o processo 1,1,2,2,1,1. Os tempos gastos por cada processo em execução durante o estado de execução são para:
P1 ou 1 - 28 segundos
P2 ou 2 - 44 segundos
P3 ou 3 - 13 segundos
1. Selecione cada processo por vez e clique no botão PCB…. Observe os valores de o PC registra em cada caso e anota isso na caixa abaixo. Além disso, anote quais outras informações estão no PCB (selecione três exemplos) e explique brevemente por que essa informação é necessária.
- Para o Processo 1: R00 a R31 para o conjunto de registros é 0.
Nome do processo: P1 - isso nomeia o processo
Estado do Processo: Pronto - indica que o processo está pronto para ser executado
Nome do Programa: LOOPTEST - este é o nome do programa
para o Processo 2: R00 a R31 para o conjunto de registros é 0.
ID do processo: 4 - este é o número de ID do processo
Pai Pid: 2 - o número do ID do processo pai é do processo
Nome do Processo: P2 - o nome do processo
3. Quando o processo atualmente em execução for colocado de volta na fila pronta, selecione-o e clique no botão PCB… na fila pronta. Anote o registro do PC valor e os valores dos registros R00 a R05. Processo LoopTest (ou Processo 1):
Registo PC 53
R00 é 0, R01 é 0, R02 é 0, R03 é 1, R04 é 40, R05 é 1.
Processo LoopForeverTest2 (ou Processo 2):
Registo PC 51
R00 é 0, R01 é 1, R02 é 1, R03 é 2, R04 é 2, R05 é 2.
5. Agora, selecione a caixa de seleção Suspender na execução na visualização EXECUTAR PROCESSOS. Diminua a simulação do sistema operacional para o mínimo. Clique no botão CONTINUAR e quando o processo enfileirado é colocado de volta no estado de execução, a simulação será automaticamente suspenso. Clique no botão CONTINUAR e clique imediatamente em o botão SUSPEND (isso é o mesmo que o botão RESUME). Tome nota de os valores no registro do PC e os registros R00 a R05. Compare estes valores com os registrados em (3) e (4) acima. Processo LoopForeverTest2 (ou Processo 2):
-Registo PC 51
-R00 é 0, R01 é 1, R02 é 1, R03 é 2, R04 é 2, R05 é 2.
-Isso é o mesmo que o anterior, portanto o processo LoopTest (ou Process1) não possui um conjunto de registros.
6. Clique no botão CONTINUAR e mate o processo atualmente em execução. Clique no Botão RESUME e clique imediatamente no botão SUSPEND. Tome nota de os valores no registro do PC e nos registros R00 a R05. Compare estes valores com os de (3) e (4) acima. Brevemente explique o que tem sido acontecendo.
O processo LoopForeverTest2 (Process2) morreu para que não haja PCB a ser exibido. Para o processo LoopTest (ou Process1) não há um grupo de registros. Processo 2 estava em execução e tinha um grupo de registros, mas Process1 não tem um grupo de registrador.

Continue navegando