Conceito de anel privilegiado [fechado]

-1

O conceito de anel privilegiado é implementado pela intel em seu hardware.

No manual de desenvolvedores da Intel existem cerca de 15 instruções que precisam de certeza que o anel 0 seja executado.

Em OS-books e outros recursos, você pode ler que a maior parte do código do kernel está rodando no anel 0. Mas é difícil entender que a maioria desses códigos do kernel é dessas 15 instruções.

Será que isso diz que um sistema operacional implementa seus próprios anéis de proteção virtual? (por exemplo, talvez você possa ver o gerenciamento de memória virtual como um componente disso) Ou mais importante, o que dispara o registrador RPL para 0?

espero que você possa entender e, eventualmente, ajudar,

Thx antecipadamente

    
por benny d 10.01.2018 / 04:38

2 respostas

2

Os sistemas operacionais geralmente usam interrupções de software para implementar um sistema chamado syscall e sysret (urn). A tabela do descritor de interrupções pode definir se esse manipulador será elevado para o anel 0. É assim que o conceito de "espaço do kernel" e "espaço do usuário" é implementado.

x86 também tem um conceito mais flexível, chamado de portais de chamadas. Eles funcionam fazendo uma chamada de função, exceto como parte dessa chamada, a tabela de descritores global ou local pode alterar o toque chamado de chamada distante. A maioria dos sistemas operacionais modernos não os utiliza para compatibilidade.

    
por 10.01.2018 / 08:23
1

But it is difficult to understand that the most of these kernel code, is of these 15 instructions.

Não é. O anel 0 tem acesso total às mesmas instruções que o anel 3 possui.

O que o manual realmente significa é que o anel 0 pode usar mais 15 instruções do que o anel 3.

    
por 10.01.2018 / 07:19