Um processador executa programas no modo de usuário ou no modo kernel. E conforme você usa seu PC, seu processador alterna regularmente entre os dois, dependendo do que está fazendo. Mas o que é o modo de usuário e o modo de kernel, e qual é a diferença entre os dois?

Vamos ver o que são esses modos e por que uma CPU precisa alternar entre eles.

O que é "Modo de usuário" no Windows?

Crédito da imagem: Hertzsprung /Creative Commons

Quando você inicializa um programa no Windows, ele é iniciado no modo de usuário. Sempre que um programa em modo de usuário deseja ser executado, o Windows cria um processo para ele. Um processo é apenas um programa que um processador está executando ou que o Windows programou para ser executado. E sempre que o Windows cria um processo, ele também cria um espaço de endereço virtual para esse processo.

UMA espaço de endereço virtual é a coleção de endereços lógicos (não físicos) que o Windows atribui a um processo. Os processos podem usar esses endereços para armazenar dados na memória física.

Além disso, os espaços de endereço virtual são isolados. Portanto, o espaço de endereço virtual de um processo não interfere no espaço de endereço de outro processo. E como os programas em modo de usuário têm espaços de endereço separados, se um programa travar, ele trava sozinho e não desativa outros programas ou todo o sistema operacional com ele.

Relacionado: Dicas para ajudar a corrigir o erro de tela azul do Windows 10

Outra maneira de descrever aplicativos de modo de usuário é usar o termo “menos privilegiado”. O Windows restringe os aplicativos de modo de usuário de acessar recursos críticos do sistema diretamente, tornando-os menos privilegiados. Por exemplo, se um aplicativo deseja acessar o hardware, ele deve passar pelo kernel do sistema operacional usando chamadas de sistema.

Simplificando, programas de aplicativos como videogames são executados no modo de usuário. Eles são menos privilegiados, então não têm acesso irrestrito aos recursos do sistema. Cada aplicativo de modo de usuário tem seu próprio espaço de endereço. Um aplicativo não pode alterar o espaço de endereço de outro aplicativo. Consequentemente, se um aplicativo travar, isso não afetará outros programas em execução no computador.

Relacionado: Sinais de alerta que seu computador está prestes a travar (e o que fazer)

O que é "Modo Kernel" no Windows?

Crédito da imagem: Bobbo /Wikimedia Commonms

Antes de discutirmos o modo Kernel, primeiro temos que saber o que é um "kernel" e como ele funciona com o Windows.

O kernel é o cérebro de um sistema operacional. É o principal componente de software do qual todos os outros componentes do sistema operacional dependem. O kernel gerencia o hardware do computador, programa quais processos são executados no computador e quando, e lida com as interações entre o hardware e o software do aplicativo.

Resumindo, o kernel é a parte de código mais privilegiada em execução no sistema. Isso porque é o código que interage diretamente com o hardware. Todos os outros programas que desejam usar os recursos de hardware devem solicitar acesso por meio do kernel.

Quando um programa aplicativo está sendo executado no Modo de usuário e deseja acessar um hardware como a webcam, ele precisa solicitar o kernel usando uma chamada de sistema. Para atender a essas solicitações, a CPU, no momento da execução do programa, passa do Modo Usuário para o Modo Kernel.

Após o término da execução de um processo, a CPU volta ao Modo de Usuário e inicia a execução do próximo processo agendado. Isso é chamado de “Alternância de contexto”.

Qual é a diferença entre o modo de usuário e o modo de kernel?

A principal diferença entre o modo de usuário e o modo kernel é o nível de privilégio que cada modo oferece. No modo de usuário, os aplicativos têm menos privilégios. Eles não têm acesso direto aos recursos de hardware e também não podem escrever nos espaços de endereço de outros aplicativos.

Relacionado: Como usar o gerenciador de dispositivos para solucionar problemas do Windows 10

O código executado no modo Kernel tem privilégios elevados. Ele não só tem acesso direto ao hardware do computador, mas todos os programas em execução no modo kernel, incluindo o sistema operacional, também compartilham um espaço de endereço. Então, se um programa em O modo kernel trava, pode derrubar todo o sistema operacional com ele. Para garantir que tais travamentos não ocorram, o Windows permite apenas que alguns processos sejam executados no modo kernel.

O Windows adota uma abordagem em camadas para separar os programas do usuário dos recursos do sistema

O Windows usa um modelo em camadas para determinar o nível de privilégio dos processos. Os aplicativos que residem na camada mais externa são aqueles com o privilégio de aluguel. No centro dessas camadas está o kernel. Como consequência, o kernel tem acesso ilimitado aos recursos do sistema operacional.

A abordagem em camadas também protege a funcionalidade vital do sistema operacional. Quando os programas na camada superior travam aleatoriamente, isso não afeta o sistema operacional. Por outro lado, quando o kernel trava, todo o sistema operacional fica inativo.

Por que o Windows trava? Os 9 motivos mais comuns

Por que o Windows continua travando? Aqui estão os motivos mais comuns para travamentos do Windows e várias dicas para corrigi-los.

Leia a seguir

CompartilhadoTweetO email
Tópicos relacionados
  • janelas
  • janelas
Sobre o autor
Fawad Murtaza (69 artigos publicados)

Fawad é um escritor freelance em tempo integral. Ele adora tecnologia e comida. Quando não está comendo ou escrevendo sobre o Windows, está jogando videogame ou sonhando acordado em viajar.

Mais de Fawad Murtaza

Assine a nossa newsletter

Junte-se ao nosso boletim informativo para dicas de tecnologia, análises, e-books grátis e ofertas exclusivas!

Clique aqui para se inscrever