Ciência da Computação Sistemas Operacionais Gerência de memória

A memória virtual é uma técnica que permite mapear um grande espaço de endereçamento lógico em uma memória física menor, possibilitando elevar o grau de multiprogramação e aumentar a utilização da CPU. A memória virtual é comumente implementada pela paginação por demanda. Considere uma instrução de 3 endereços como ADD A, B, C (some o conteúdo de A e B e coloque o resultado em C). Estes são os passos para executar esta instrução:

1. carregue e decodifique a instrução ADD

2. carregue A

3. carregue B

4. some A e B

5. armazene a soma em C

Está correto afirmar que,

  • A.

    quando um processo é interrompido por um erro de página, seu estado (registradores, código de condição, contador de instruções) não é salvo, por isso ele não consegue ser reiniciado exatamente no mesmo local e estado.

  • B.

    um erro de página pode ocorrer em qualquer referência à memória. Se o erro ocorrer na carga da instrução, no entanto, este gera um erro fatal, cancelando a execução do processo e, consequentemente, da aplicação.

  • C.

    a paginação deve ser completamente transparente para o processo do usuário e permite que processos sejam executados mesmo que seus requisitos de memória excedam a memória física.

  • D.

    se houver falha ao se tentar armazenar em C (porque C está em uma página que não se encontra correntemente na memória) a instrução é recarregada e reiniciada automaticamente, e o sistema operacional emite a mensagem “page fault”.

  • E.

    se um erro de página ocorrer enquanto um operando estiver sendo carregado, a instrução pode ser executada sem sua decodificação, pois seu mnemônico está registrado na memória.