Sistemas Operacionais

Propaganda
Sistemas Operacionais - 5
Kernel
Prof. M. Sc. Flávio Viotti
[email protected]
Kernel



Definição: “Conjunto de rotinas que
fornecem serviços aos usuários, às suas
aplicações e também ao próprio
sistema”
Também conhecido como núcleo do
sistema;
É importante não confundir núcleo do
sistema com aplicações, utilitários ou
interpretador de comandos.
Kernel

Principais funções:










Tratamento de interrrupções e exceções
Criação e eliminação de processos e threads
Sincronização e comunicação entre processos e
threads
Escalonamento e controle dos processos e threads
Gerência de memória
Gerência do sistema de arquivos
Gerência de dispositivos de E/S
Suporte a redes locais e distribuídas
Contabilização do uso do sistema
Auditoria e segurança do sistema
Estrutura do Sist. Operacional
Aplicativos
Utilitários
Núcleo do
Sistema Operacional
Hardware
System Call
Chamadas ao núcleo do sistema
System Call
Aplicação
Biblioteca
Núcleo do
Sistema Operacional
Hardware
5 – Processo
 Estrutura do Processo
Contexto de
Software
Contexto de
Hardware
Programa
Espaço de
Endereçamento
5 – Processo
 Mudança de Contexto
Sistema Operacional
Processo A
Processo B
executando
Salva registradores do
Processo A
Carrega registradores do
Processo B
executando
Salva registradores do
Processo B
Carrega registradores do
Processo A
executando
5 – Processo
 Características da Estrutura de um Processo
nome
PID
owner (UID)
registradores
gerais
prioridade de
execução
data/ hora
de criação
registrador PC
Contexto de
Software
Contexto de
Hardware
registrador SP
tempo de
processador
quotas
Programa
privilégios
Espaço de
Endereçamento
endereços de memória
principal alocados
registrador
de status
5 – Processo
 Bloco de Controle do Processo (PCB)
ponteiros
Estado do processo
Nome do processo
Prioridade do processo
Registradores
Limites de memória
Lista de arquivos abertos
..
..
..
..
5 – Processo
 Lista de PCBs nos Estados de Pronto e Espera
Lista de
processos
em estado
de pronto
..
..
.
..
.
..
..
.
..
.
PCB# 5
PCB# 1
.
..
..
..
.
.
..
..
..
.
.
..
..
..
.
PCB# 9
PCB# 2
PCB# 4
Lista de
processos
em estado
de espera
5 – Processo
 Mudanças de Estado do Processo
Estado de Execução
d
b
a
c
Estado de Espera
Estado de Pronto
5 – Processo
 Mudanças de Estado do Processo
Estado de Execução
Estado de Espera
Estado de Pronto
Estado de Espera
Estado de Pronto
residente
não residente
5 – Processo
 Mudanças de Estado do Processo
Estado de Execução
Estado de Espera
Estado de Término
Estado de Pronto
Estado de Criação
5 – Processo
 Processos Foreground e Background
(a) Processo Foreground
entrada
saída
terminal
terminal
(b) Processo Background
entrada
arquivo
de entrada
saída
arquivo
de saída
5 – Processo
 Pipe
saída do
Processo A
entrada do
Processo A
saída do
Processo B
entrada do
Processo B
Processo A
Processo B
5 – Processo
 Processos CPU-bound x I/O-bound
E/ S
E/ S
UCP
UCP
tempo
(a) CPU-bound
tempo
(b) I/ O-bound
Download