Baixe o app para aproveitar ainda mais
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.
Compartilhar