O que é memória do kernel e memória do usuário? (pergunta sobre o termo página do kernel e o cache da página)

0

Hoje, li alguns documentos sobre o sistema de arquivos ( link ) . E o termo página do kernel é mencionado várias vezes neste artigo. Agora estou bastante confuso sobre o uso de memória do kernel e do usuário.

Eu entendo que o espaço de endereçamento para o kernel e usuário e entre usuários é diferente. O mapeamento virtual para físico é independente entre si. A memória mapeada para o espaço de endereço do kernel não pode ser mapeada para nenhum espaço de endereço do usuário?

E, para o artigo que mencionei acima, ele basicamente fala sobre o uso do cache de páginas. Portanto, quando o sistema operacional é solicitado a carregar alguns dados ou códigos do disco para o cache da página, de onde devem sair as páginas que contêm os dados e o código? E essas páginas podem ser acessadas pelos usuários?

    
por Xin Li 15.05.2015 / 00:39

1 resposta

2
  1. O kernel gerencia a memória, então o código do kernel tem acesso ao kernel e ao espaço do usuário. Quando se fala em "espaço do kernel", normalmente, as páginas são usadas exclusivamente pelo kernel.

  2. "Espaço do usuário" não é uma entidade única. Cada processo tem seu próprio espaço de endereçamento, possivelmente se sobrepondo parcialmente a outros processos.

  3. O cache é governado pelo kernel e não pode ser acessado pelo código de espaço do usuário. É claro que o kernel pode transferir páginas do espaço do kernel para o espaço do usuário, se necessário.

por 15.05.2015 / 02:50

Tags