Diferença entre o modo de usuário e o modo de kernel

Diferença de chave - Usuário Modo vs Modo Kernel
 

Um computador opera em dois modos: modo de usuário e modo de kernel. Quando o computador está executando o software aplicativo, ele está no modo de usuário. Após a solicitação do software do aplicativo por hardware, o computador entra no modo kernel. O kernel é o núcleo do sistema do computador. Posteriormente, o computador alterna frequentemente entre o modo de usuário e o modo de kernel. As tarefas mais críticas do sistema operacional estão sendo executadas no modo kernel. o diferença chave entre o Modo Usuário e o Modo Kernel é que modo de usuário é o modo em que os aplicativos estão em execução e o modo kernel é o modo privilegiado no qual o computador entra ao acessar recursos de hardware.

CONTEÚDO

1. Visão geral e principais diferenças
2. O que é o modo de usuário
3. O que é o Modo Kernel
4. Semelhanças entre o Modo Usuário e o Modo Kernel
5. Comparação lado a lado - modo de usuário versus modo de kernel em forma de tabela
6. Resumo

O que é o modo de usuário?

Quando um aplicativo de computador está em execução, ele está no modo de usuário. Alguns exemplos são aplicação de palavras, PowerPoint, leitura de um arquivo PDF e navegação na Internet. Estes são programas aplicativos para que o computador esteja no modo de usuário. Quando o processo está no modo de usuário e requer qualquer recurso de hardware, essa solicitação é enviada ao kernel. Como há um acesso limitado ao hardware nesse modo, é conhecido como modo menos privilegiado, modo escravo ou modo restrito.

Figura 02: Modos de operação

No modo de usuário, os processos obtêm seu próprio espaço de endereço e não podem acessar o espaço de endereço que pertence ao kernel. Portanto, a falha de um processo não afetará o sistema operacional. Se houver uma interrupção, isso afeta apenas esse processo específico.

O que é o Modo Kernel?

Um kernel é um programa de software usado para acessar componentes de hardware de um sistema de computador. O kernel funciona como um software de middleware para software de hardware e aplicativos / programas de usuário. O modo kernel é geralmente reservado para funções confiáveis ​​de baixo nível do sistema operacional.

Quando o processo está sendo executado no modo de usuário e se esse processo requer recursos de hardware, como RAM, impressora, etc., esse processo deve enviar uma solicitação ao kernel. Essas solicitações são enviadas por meio de chamadas do sistema. Em seguida, o computador entra no modo Kernel no modo usuário. Quando a tarefa é concluída, o modo volta ao modo de usuário do modo kernel. Essa transição é conhecida como "mudança de contexto”. O modo kernel também é chamado como modo de sistema ou modo privilegiado. Não é possível executar todos os processos no modo kernel porque, se um processo falhar, todo o sistema operacional poderá falhar.

Figura 02: Kernel

Existem vários tipos de chamadas do sistema. As chamadas do sistema de controle de processo criam processos e finalizam processos. O sistema de gerenciamento de arquivos chama ler, gravar, criar, excluir, abrir e fechar arquivos. O sistema de gerenciamento de dispositivos solicita dispositivos e libera dispositivos, obtém e define atributos de dispositivos. Também existem chamadas do sistema de manutenção de informações. Eles podem ser usados ​​para obter dados, hora e data do sistema. O recurso requerido por um processo pode ser mantido por outro processo. Portanto, os processos devem se comunicar usando as chamadas do sistema de comunicação. As chamadas do sistema de comunicação podem criar e excluir conexões, enviar e receber informações de status.

Quais são as semelhanças entre o modo de usuário e o modo de kernel?

  • O computador pode alternar entre os dois modos.

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

Modo Usuário x Modo Kernel

O modo de usuário é um modo restrito, que os programas aplicativos estão executando e inicia. Modo Kernel é o modo privilegiado, que o computador entra ao acessar recursos de hardware.
 Modos
O modo de usuário é considerado como modo escravo ou restrito. O modo kernel é o modo do sistema, o modo mestre ou o modo privilegiado.
Espaço de Endereço
No modo Usuário, um processo obtém seu próprio espaço de endereço. No modo Kernel, os processos obtêm um espaço de endereço único.
 Interrupções
No modo de usuário, se ocorrer uma interrupção, apenas um processo falhará. No modo Kernel, se ocorrer uma interrupção, todo o sistema operacional poderá falhar.
Restrições
No modo de usuário, há restrições para acessar programas do kernel. Não é possível acessá-los diretamente. No modo kernel, os programas do usuário e os kernel podem ser acessados.

Resumo - Usuário Modo vs Modo Kernel

Um computador opera no modo de usuário ou no kernel. A diferença entre o Modo de usuário e o Modo de kernel é que o modo de usuário é o modo restrito no qual os aplicativos estão em execução e o modo de kernel é o modo privilegiado que o computador entra ao acessar recursos de hardware. O computador está alternando entre esses dois modos. A alternância frequente de contexto pode diminuir a velocidade, mas não é possível executar todos os processos no modo kernel. Isso é porque; se um processo falhar, todo o sistema operacional poderá falhar.

Faça o download da versão em PDF do modo usuário versus modo kernel

Você pode fazer o download da versão em PDF deste artigo e usá-la para fins offline, conforme nota de citação. Faça o download da versão em PDF aqui Diferença entre o modo de usuário e o modo de kernel

Referência:

1.nabazan-microsoft. "Modo de usuário e modo de kernel". Documentos da Microsoft. Disponivel aqui 
2.pranitpkothari. YouTube, YouTube, 23 de fevereiro de 2015. Disponível aqui  
3. “Chamadas do sistema de explicação e tipos de chamada do sistema no sistema operacional.” , Último momento Aprendendo, Youtube, 12 de julho de 2017. Disponível aqui  

Cortesia da imagem:

1. 'esquema de anel da CPU' Por usuário: Cljk (CC BY-SA 3.0) via Commons Wikimedia