Qual espaço de endereço é usado nas chamadas do sistema? fisica? ou virtual?

0

Explicação

Há dois tipos de espaço de endereço virtual e físico. No modelo físico (normalmente usado pelo kernel) a memória é limitada e cada endereço corresponde aos físicos.

O virtual é usado por processos. Não há limite (exceto o devido ao tamanho do ponteiro) . Para obter mais memória, o programa simplesmente o solicita (ignorando qual quantidade pode ser solicitada) . Cada endereço é mapeado para diferentes físicos. É assim que o processo é restrito no que eles podem ler do RAM.

O problema

O raciocínio é que as chamadas do sistema usam ring0, mas ao mesmo tempo (pelo menos no linux) o estado do processo é atualizado para interruptível, sugerindo que as chamadas do sistema usem o espaço de endereço virtual. Até onde eu entendo, os anéis da CPU são sobre instruções privilegiadas, não sobre o espaço de endereçamento (como é relacionado à MMU) .

Portanto, se uma leitura fora de limite <(> devido a uma vulnerabilidade) ocorrer durante a execução de uma chamada de sistema no código do kernel. Pode retornar memória de outros processos?

    
por user2284570 18.04.2016 / 12:48

2 respostas

0

O código do modo kernel pode fazer praticamente qualquer coisa, incluindo bisbilhotar os espaços de endereço de vários processos.

Sim, o código do modo kernel usa o espaço de endereço virtual. O kernel gerencia espaço de endereçamento físico, mas ele não é executado em espaço de endereço físico.

O modo de usuário não pode ler o que quiser da RAM porque não tem como afirmar endereços físicos.

Como o modo kernel é executado com a conversão de endereço ativada, o código do modo kernel também pode apenas declarar endereços virtuais. Mas o código k-mode pode configurar as entradas da tabela de páginas para definir os endereços virtuais que traduzem para qualquer endereço físico que possa ser acessado.

    
por 05.04.2018 / 07:49
-1

As chamadas do sistema invocadas pelo kernel usam o espaço de endereço físico.
Essas chamadas do sistema invocadas pelos processos usam o espaço de endereço virtual.

    
por 19.04.2016 / 14:32