Buscar

Sistemas operacionais Aula2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 37 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 37 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 37 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

CCT0011 – Sistemas Operacionais
Aula 02 – Interrupções
INTERRUPÇÕES
Sistemas Operacionais
Conceito de Interrupção e Exceção
Apesar de podermos executar muitos programas ao mesmo tempo, os processadores são 
capazes de fazer apenas uma operação de cada vez.
A multitarefa surge de uma troca de execução, muito rápida entre os aplicativos abertos, 
dando a impressão de que eles estão sendo executados ao mesmo tempo.
Permitir a execução simultânea de dois ou mais programas ou ações, exige 
compartilhamento de recursos únicos como teclado, área de display, processador e 
etc.
Todos esses recursos são importantes e essenciais as aplicações concorrentes e o 
principal é o microprocessador.
Sistemas Operacionais
Conceito de Interrupção e Exceção
Quando um programa entra em execução, suas instruções são executadas em sequência 
pelo processador.
Durante a execução alguns eventos inesperados podem ocorrer, ocasionando um desvio 
forçado no fluxo de execução.
Estes eventos são conhecidos como interrupções ou exceções.
 Sinalização de operação de E/S de dispositivo externo (interrupção)
 Problemas decorrentes da execução de instruções do programa (exceção)
Sistemas Operacionais
Conceito de Interrupção e Exceção
Ao final de cada instrução, a UC verifica a ocorrência de interrupção ou exceção
Processador interrompe o programa em execução para tratar o evento 
O desvio para uma rotina pré-definida para tratar um evento gerado por uma interrupção 
é chamada de rotina de tratamento de interrupção .
A utilização de interrupções permitiu o desenvolvimento de concorrência nos 
computadores.
Sistemas Operacionais
Tipos de Interrupção
Hardware  Pedidos de dispositivos periféricos, relógio do sistema, circuitos de 
monitoramento de energia.
Software  Uma interrupção causada por um programa (chamada ao sistema - SC). 
Exceção Ocorrem devido a utilizações indevidas de instruções ou de dados 
(divisão por zero, acesso a uma posição de memória protegida, overflow, etc.).
Sistemas Operacionais
Interrupção de Hardware
O mecanismo de interrupção permite que o hardware "chame a atenção" da CPU quando 
há algo a ser feito.
Na ocorrência da interrupção é requerido que a CPU pare momentaneamente o que está 
fazendo para atendê-la.
A interrupção permite aos dispositivos periféricos sincronizarem as suas operação com a 
CPU.
Caso não existisse, a CPU teria que ficar verificando a necessidade dos periférico em 
intervalos de tempo, gerando com isso alguns problemas.
• Desperdício de tempo de CPU;
• Eventos com diferentes taxas de sinalização (teclado x disco).
Sistemas Operacionais
Interrupção de Hardware
A ocorrência de uma interrupção força uma mudança no fluxo de controle para uma 
rotina de tratamento da interrupção correspondente (Interrupt Handler ou Interrupt 
Service Routine).
Esta rotina possui um conjunto de instruções pré-definidas, adequadas a cada tipo de 
interrupção.
Observar que as interrupções são eventos gerados assincronamente à atividade regular 
do sistema.
O sistema não sabe em que ponto no fluxo de instruções a interrupção ocorrerá.
O tempo de servir a interrupção é descontado do quantum do processo em execução 
(time slice).
Sistemas Operacionais
Interrupções Assíncronas e Síncronas
Interrupções geradas por algum dispositivo externo à CPU, são chamadas de interrupções 
de hardware ou assíncronas (ocorrem independentemente das instruções que a CPU 
está executando.
• Dispositivos de E/S (sinalização de conclusão)
• Falha de hardware (paridade de memória, erro de disco, etc.)
Interrupções síncronas,muitas vezes também chamadas de traps ocorrem em 
consequência da instrução sendo executada.
• Relógio (temporizador)  síncrona
Sistemas Operacionais
Interrupções Assíncronas e Síncronas
Um tipo importante de interrupção de hardware á a interrupção do relógio.
O relógio é um elemento de hardware que interrompe a CPU em intervalos de tempos 
fixos.
• CPU tick, clock tick ou tick.
• Alguns computadores requerem que o S.O. rearme o relógio após cada 
interrupção; em outras, o relógio rearma-se sozinho.
A interrupção de relógio é a mais prioritária, só perdendo para a interrupção de falha de 
energia. 
Sistemas Operacionais
Interrupções Assíncronas e Síncronas
O relógio permite ao sistema operacional atribuir quotas de tempos de execução (fatias 
de tempo – time slice) para cada um dos processos em um sistema multiprograma.
A cada interrupção do relógio, o tratador pode verificar se a fatia de tempo do processo 
em execução já se esgotou e, se for esse o caso, suspendê-lo e acionar 
o escalonador para que esse escolha outro processo para colocar em execução.
Uma “Rotina de Interrupção do Relógio” (Clock Interrupt Handler) é executada em 
resposta a uma interrupção do relógio. 
Sistemas Operacionais
Interrupção e Exceção
Interrupt Request e Programmable Interrupt Controller
IRQ  Canais para requisição de interrupções – um canal por periférico. 
PIC  Um controlador de interrupções é responsável pelo encaminhamento das 
interrupções dos periféricos para o processador.
Estabelece um protocolo com o processador, trocando dados necessários para 
servir a interrupção.
Sistemas Operacionais
Mecanismo de Interrupção
• O sinal de interrupção gerado para o processador;
• Ao terminar a instrução corrente o processador identifica a interrupção gerada;
• O status do programa corrente é salvo (conteúdo do PC, PSW);
• O controle do processador é transferido para a rotina de serviço;
• Rotina de tratamento salva demais conteúdos de registradores na pilha de controle e é 
executada;
• Após o término, todos os registradores são restaurados e programa interrompido 
retorna a sua execução;
• O ponto de interrupção pode ocorrer em qualquer parte do programa.
Sistemas Operacionais
Conceito de Interrupção e Exceção
Sistemas Operacionais
Tratamento de Interrupção
Para cada tipo de interrupção existe uma rotina de tratamento associada para a qual o 
fluxo de execução é desviado.
Dois métodos para tratamento de interrupções:
• Vetor de interrupção.
 Contém o endereço inicial de todas as rotinas de tratamento para cada tipo de 
evento.
• A partir de um registrador de status.
 Uma única rotina que verifica o tipo de evento e faz o tratamento adequado.
Sistemas Operacionais
Interrupção
Interrupções que são decorrentes de eventos assíncronos, sem relação com o programa 
corrente.
 Podem ocorrer múltiplas vezes num mesmo intervalo de tempo 
(simultaneamente);
 Rotina de tratamento pode desabilitar tratamento das demais interrupções;
o Interrupções mascaráveis;
 Demais interrupções podem ser enfileiradas segundo respectivas prioridades;
Sistemas Operacionais
Exceção
O termo interrupção é muitas vezes utilizado para qualquer atividade que suspenda a execução 
de uma tarefa, mesmo que seja solicitada pelo próprio programa.
Para este fim utilizaremos o termo “estado de exceção”.
Exceções são eventos síncronos, resultado direto da execução do programa corrente.
 Divisão por zero
 Overflow em operação aritmética
São previsíveis, só podem ocorrer uma de cada vez e o tratamento é equivalente ao da 
interrupção;
A rotina de tratamento para uma determinada exceção pode ser escrita pelo próprio 
programador;
Sistemas Operacionais
Inibição de Interrupções
O núcleo (kernel) do S.O. alguma vezes previne a ocorrência de interrupções durante 
atividades críticas, que poderiam resultar em dados corrompidos se estas fossem 
permitidas. 
Assim, certas instruções (ditas privilegiadas) permitem colocar o processador em um 
certo nível de execução em que ele mascara (inibe) certos valores de interrupção. 
Elas são chamadas interrupçõesmascaráveis
Sistemas Operacionais
Níveis Típicos de Interrupções
Sistemas Operacionais
Tipos de Interrupções
Estado de exceção são provocados pela própria aplicação
• Estouro aritmético
• Divisão por zero
• Instrução ilegal
• Acesso não permitido
• Chamada ao sistema
Obs.: Mascaramento de interrupções é a capacidade de inibir a ação de uma interrupção. 
As interrupções de segurança não podem ser mascaradas.
Sistemas Operacionais
Tipos de Interrupções
Interrupções podem acontecer de forma sequencial ou em cascata.
Sequencial  uma interrupção só poderá ser atendida se nenhuma outra estiver em 
atendimento.
• A rotina de serviço desabilita as interrupções
• Uma nova interrupção só será tratada após o 
retorno da anterior.
• Finalizada a rotina de serviço de interrupção, o 
processador verifica por interrupções adicionais.
Sistemas Operacionais
Tipos de Interrupções
Interrupções podem acontecer de forma sequencial ou em cascata.
Cascata  uma interrupção poderá interromper a ação de uma rotina de 
tratamento de outra interrupção.
• Interrupções têm prioridade
• Interrupções com alta prioridade interrompem 
rotinas de serviço de interrupções de menor 
prioridade.
Exemplos de prioridade: impressora  disco 
comunicação.
Sistemas Operacionais
O Fluxo de Processamento da Interrupção
Dispositivo de controle ou
outro sistema de hardware 
que permita ativar uma 
interrupção
Processador termina a execução 
da instrução corrente
Processador reconhece sinal de 
interrupção
Processador coloca PSW e PC na 
pilha de controle
Processador carrega novo valor 
do PC, baseado na interrupção
Salva informações remanescentes 
sobre o estado do processo
Processa a interrupção
Restaura a informação do estado 
do processo
Restaura o velho PSW e PC
Hardware Software
(Rotina de serviço)
Sistemas Operacionais
APLICAÇÃO
100
101
102
STACK
102
PC
estado APPSW
Passo a passo das interrupções
INSTRUÇÃO EM EXECUÇÃO
Sistemas Operacionais
APLICAÇÃO
100
101
102
STACK
102
PC
estado APPSW
Passo a passo das interrupções
OCORRE INTERRUPÇÃO
Sistemas Operacionais
APLICAÇÃO
100
101
102
102
STACK
102
PC
estado APPSW
Passo a passo das interrupções
500
ROTINA DA INTERRUPÇÃO A
SALVA PC
Sistemas Operacionais
APLICAÇÃO
100
101
102
estado AP
102
STACK
102
PC
estado APPSW
Passo a passo das interrupções
500
ROTINA DA INTERRUPÇÃO A 
SALVA PSW
Sistemas Operacionais
APLICAÇÃO
100
101
102
estado AP
102
STACK
500
PC
estado 
Rotina APSW
Passo a passo das interrupções
500
ROTINA DA INTERRUPÇÃO A 
ALTERA 
PSW e PC
Sistemas Operacionais
APLICAÇÃO
100
101
102
registradores
estado AP
102
STACK
501
PC
estado 
Rotina APSW
Passo a passo das interrupções
500
ROTINA DA INTERRUPÇÃO A 
ROTINA A SALVA 
REGISTRADORES
Sistemas Operacionais
APLICAÇÃO
100
101
102
estado AP
102
STACK
510
PC
estado 
Rotina APSW
Passo a passo das interrupções
500
ROTINA DA INTERRUPÇÃO A 
ROTINA A 
TERMINA
510
Sistemas Operacionais
APLICAÇÃO
100
101
102
102
STACK
510
PC
Estado APPSW
Passo a passo das interrupções
500
ROTINA DA INTERRUPÇÃO A 
RECUPERA PSW
510
Sistemas Operacionais
APLICAÇÃO
100
101
102
102
STACK
102
PC
Estado APPSW
Passo a passo das interrupções
500
ROTINA DA INTERRUPÇÃO A 
RECUPERA PC
510
Sistemas Operacionais
APLICAÇÃO
100
101
102
STACK
103
PC
estado APPSW
Passo a passo das interrupções
INSTRUÇÃO EM EXECUÇÃO
Sistemas Operacionais
IRQ
Num PC atual, os endereços de IRQ, esta é a configuração de endereços mais comum:
IRQ 0 - Sinal de clock da placa mãe (fixo)
IRQ 1 - Teclado (fixo)
IRQ 2 - Cascateador de IRQs (fixo)
IRQ 3 - Livre (serial 2 desativada)
IRQ 4 - Modem
IRQ 5 - Livre
IRQ 6 - Drive de disquetes
IRQ 7 - Livre (porta paralela desativada)
IRQ 8 - Relógio do CMOS (fixo)
IRQ 9 - Placa de som, placa de rede (1), placa de rede (2)
IRQ 10 - Placa de vídeo
IRQ 11 - Controlador USB (Mouse, impressora e scanner)
IRQ 12 - Porta PS/2
IRQ 13 - Coprocessador aritmético
IRQ 14 - IDE Primária
IRQ 15 - Livre (IDE Secundária desativada)
Sistemas Operacionais
Estruturas de Controle
Memória
Dispositivos
Arquivos
Processos
Tabelas de Memória
Tabelas de E / S
Tabelas de Arquivos
Tabela de Processos
Processo 1
Processo 2
Processo 3
Processo n
Processo 1
Processo n
imagem do processo
imagem do processo
Sistemas Operacionais
Resumindo
Sistema Operacional é um conjunto de programas cujas principais funções são:
Interface com usuário
Administração dos recursos
Segurança e estabilidade
Sistemas multitarefa utilizam as interrupções para promover a sensação de execução 
simultânea, mas sabemos que se trata de execução concorrente.
Sistemas Operacionais
Reflexão e Dúvidas

Continue navegando