O documento discute diferentes arquiteturas de sistemas operacionais, incluindo arquitetura monolítica, de camadas e de máquina virtual. A arquitetura monolítica integra todos os componentes em um único programa, enquanto a de camadas organiza em níveis hierárquicos e a de máquina virtual permite múltiplos sistemas operacionais rodando simultaneamente de forma isolada.
3. 3AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Introdução
● É formado por um conjunto de
rotinas que oferecem serviços
aos usuários, aplicações e ao
próprio sistema. Esse conjunto
de rotinas é denominado
kernel.
● É importante não confundir o
kernel com outras aplicações e
utilitários que acompanham o
SO.
Aplicativos
Utilitários
Núcleo do
sistema operacional
Hardware
4. 4AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Introdução
● O sistema operacional é diferente de uma
aplicação sequencial com início, meio e
fim.
● Os procedimentos são executados sem
uma ordem pré-definida, com base em
eventos assíncronos.
5. 5AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Introdução
● As principais funções do núcleo do sistema
operacional:
– Tratamento de interrupções e exceções;
– Criação e eliminação de processos e threads;
– Sincronização e comunicação entre processos e threads;
– Gerência de memória;
– Gerência do sistema de arquivos;
– Gerência dos dispositivos de I/O;
– Suporte a redes locais e distribuídas;
– Contabilização do uso do sistema;
6. 6AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Chamadas de sistema
● Chamadas de sistema (System Calls) são
solicitações de recursos de hardware
realizados por utilitários e aplicativos ao
SO.
● Com a finalidade de compartilhar os
recursos de forma organizada e protegida,
como proteger a memória utilizada por um
programa ou a monopolização do
processador.
7. 7AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Chamadas de sistema
● São implementadas pelo kernel do SO.
● As chamadas podem ser agrupadas
segundo sua função:
– Gerência de processos e threads
– Gerência de memória
– Gerência do sistema de arquivos
– Gerência de dispositivos
8. 8AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Modos de acesso
● Para garantir a segurança do SO, algumas
instruções somente podem ser executadas
pelo kernel, são conhecidas como
instruções privilegiadas.
● Já as instruções que podem ser
executadas por todos os aplicativos, são
conhecidas como instruções não-
privilegiadas
9. 9AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Modos de acesso
● Para garantir que somente o kernel possa
executar instruções privilegiadas, o
processador deve possuir um mecanismo
de proteção chamado de modos de
acesso.
● Na maioria dos processadores existem
dois modos de acesso:
1) Modo Usuário
2) Modo kernel (ou supervisor)
10. 10AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Proteção do sistema
● Para realizar a proteção de um sistema de
computação é necessário proteger:
– Os periféricos
– O processador
– As memórias
11. 11AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Proteção de periféricos
● Para proteger os periféricos, os programas
devem ser impedidos de acessar os
dispositivos de I/O.
● Somente o sistema operacional deve
acessar as instruções de I/O.
● A única maneira que os programas tem de
acessar os dispositivos de I/O é através de
chamadas de sistema.
12. 12AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Proteção do processador
● Em programas multi-programáveis, os
programas compartilham a utilização do
processador.
● Cada programa pode utilizar o sistema por um
tempo determinado (time slice).
● Se algum programa tiver privilégio de modificar o
time slice ele poderá monopolizar o processador.
● Para proteger o processador, todas as instruções
de alteração do time slice devem ser
privilegiadas.
13. 13AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Proteção da memória
● Para que a memória possa ser utilizada
por diversos programas de forma
protegida, um programa não pode ter
acesso à memória do outro.
● Essa proteção é feita através de um
hardware específico.
● Para saber qual a área alocada por um
programa, o hardware armazena em dois
registradores posição inicial e final da
memória alocada.
14. 14AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Arquitetura monolítica
● Na arquitetura monolítica, os módulos do
SO são compilados e linkados como um
único e grande programa executável.
● Todos os componentes do SO, estão
contidos no mesmo espaço de
endereçamento do núcleo.
● Com isso os componentes conseguem se
comunicar diretamente.
● Essa arquitetura apresenta um excelente
desempenho.
15. 15AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Arquitetura monolítica
● O fato de os componentes estarem juntos
em um único programa executável dificulta
muito a manutenção do código e correção
de erros.
● Um erro em um componente pode
comprometer todos os demais.
16. 16AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Arquitetura de camadas
● Cada camada oferece um conjunto de
funções que podem ser utilizadas apenas
pelas camadas superiores.
● Neste tipo de implementação, as camadas
inferiores são mais privilegiadas.
● As camadas são modulares.
● Uma desvantagem é a perda de
performance, pois cada camada exige uma
mudança no modo de acesso.
17. 17AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Arquitetura de máquina
virtual
● Sistema computacional formado por níveis,
onde o nível mais baixo é o hardware, e o
mais alto são as aplicações.
● O modelo de Máquina Virtual (VM), cria
um nível intermediário entre o hardware e
o SO, denominado gerência de VM.
● Neste nível são criadas VM's
independentes onde cada uma oferece
recursos de hardware virtual incluindo
modos de acesso, interrupções, I/O, etc.
18. 18AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Arquitetura de máquina
virtual
● Além de permitir vários SO's sendo
executados ao mesmo tempo, todas as
VM's são totalmente isoladas uma da
outra.
● O problema dessa arquitetura é sua
grande complexidade, devido à
necessidade de se compartilhar e
gerenciar os recursos de hardware entre
as diversas VM's.
19. 19AULA :
Campus Charqueadas
Prof. Esp. Cleber Schroeder Fonseca
Arquitetura de máquina
virtual
Hardware
Gerenciador de VM's
Ap
SO
HV
VM
Ap
SO
HV
VM
Ap
SO
HV
VM
Ap
SO
HV
VM