Organização mais comum Pode ser organizado da seguinte forma:
Todo SO é executado como um único programa em ●
Um programa principal que invoca a rotina de modo núcleo serviço requisitada. SO escrito como uma coleção de rotinas ● Um conjunto de rotinas de serviço que executam as chamadas de sistema. Um erro em uma rotina interrompe todo SO ● Um conjunto de rotinas utilitárias que ajudam as Difícil manutenção do código rotinas de serviço.
PROF: JOSÉ COUTO JÚNIOR
ESTRUTURAS DE SO SISTEMAS DE CAMADAS
THE → Primeiro sistema de camadas (1968)
● Sistema em lote simples ● As camadas superiores chamavam as camadas inferiores Outra generalização do conceito de camadas estava presente no sistema MULTICS ● Descrito em uma série de anéis concêntricos ● Anéis internos mais privilegiados ● Chamadas de sistema para invocar métodos mais internos Todas as camadas fazem parte do núcleo
PROF: JOSÉ COUTO JÚNIOR
ESTRUTURAS DE SO MICRONÚCLEOS
Apenas o micronúcleo é executado em modo núcleo
Módulos pequenos → melhor manutenabilidade ● Restante executado como processos de usuário Maior confiabilidade do SO Erros derrubam o módulo, mas não o SO Redução de erro ● Ex: erro no driver de áudio Dominantes em sistemas de tempo real, industriais, de aviação e militares
PROF: JOSÉ COUTO JÚNIOR
ESTRUTURAS DE SO CLIENTE SERVIDOR
Duas classes de processos Servidores podem estar na mesma máquina do
cliente ou em máquinas distintas ● Servidores: prestam algum serviço ● Clientes: usam os serviços prestados Muitas vezes, a camada mais baixa é a do micronúcleo Comunicação realizada por troca de mensagens
PROF: JOSÉ COUTO JÚNIOR
ESTRUTURAS DE SO MÁQUINAS VIRTUAIS
Máquinas independentes executando serviços Termo Hipervisores se refere a monitores de
distintos máquinas virtuais Uma única máquina física pode executar muitas ● Ex:VMware, KVM (Línux),VirtualBox (Oracle) e máquinas virtuais Hyper-V (Microsoft) Cada máquina virtual pode ter um SO diferente Maior confiabilidade Menor custo com Hardware → um hardware para “n” máquinas
PROF: JOSÉ COUTO JÚNIOR
ESTRUTURAS DE SO EXONÚCLEO
Em vez de clonar máquinas (máquinas virtuais), divide-
as para dar a cada usuário um subconjunto dos recursos ● MV 1 – blocos de disco 0 a 1023 ● MV 2 – blocos de disco 1024 a 2047 O exonúcleo (camada inferior) ● Alocará recursos para as máquinas virtuais ● vai garantir que nenhuma máquina acesse o espaço da outra Poupa uma camada de mapeamento