Infra-estrutura de Software
- Aula de Revisão Hugo Calazans
Luiz Carlos D’Oleron
(Intro-Q4) Tabela de processo
•
•
•
•
•
•
•
Identificador
Valores dos registradores
Espaço de endereçamento
Prioridade
Quando foi a última executação
Tempo acumulado de processamento
Ponteiro para o bloco do próximo processo
(Intro-Q5) Threads e Processos
• Idéia Chave:
– A mudança de contexto entre as threads de um
mesmo processo ocorre de maneira muito mais
rápida do que a mudança de contexto entre
processos
(Escal-Q2) I/O e CPU bound
• I/O-bound
– Requisitam muitos serviços de entra e saída
• Exemplo: Processos extremamente interativos tais
como os processadores de texto
• CPU-bound
– Requisitam muitos serviços da CPU
• Exemplo: Softwares renderizadores de imagens
(Escal-Q3) Batch X Interativos
• Processos Batch
– Execução de uma série de programas (jobs) sem a
interação humana
– Exemplo: Mainframes e Impressão de documentos
• Processos Interativos
– Processos que passam boa parte do tempo no
estado bloqueado (aguardando inputs dos
usuários)
– Inerentemente I/O bounded
(Escal-Q6) Quantum
• Período de tempo no qual um dado processo
pode ser executado em um sistema
preemptivo multitarefa
• Quantum pequeno:
– Maior sensação de paralelismo
– Perda de tempo em mudanças de contexto
• Quantum grande:
– Menor overhead
– Ruim para os processo interativos
(Escal-Q8) MFQ
• Multilevel Feedback Queue
• Idéia central: maior prioridade a processos curtos
e I/O bound
• Funcionamento:
– Híbrido entre FIFO e round-robin
• Round-robin na fila de level mais baixo
• Observação importante:
– O que acontece se um processo entrar em estado
bloqueado?
(Memória-Q1) Memória virtual
• Quais as vantagens de se ter memória virtual?
(Memória-Q2) Localidade
• O que o princípio da localidade tem a ver com
a hierarquia de memória?
(Memória-Q3-Q4) Relocação
• Para que a relocação de código em memória é
usada?
• Quais as técnicas que você conhece para fazer
relocação de código em memória? Explique
cada uma delas.
(Memória-Q7) Paginação
• Para que serve a paginação? Como funciona?
Como ocorre a fragmentação neste sistema?
(Memória-Q8) Segmentação
• Para que serve a segmentação? Como
funciona?
(I/O-Q1) Definições gerais
• Defina porta, barramento, controlador e
device driver.
(I/O-Q2) Interrupt handler
• O que é um interrupt handler?
(I/O-Q3-Q4) I/O e Round-robin
• O que ocorre quando um processo requisita
I/O num escalonamento round-robin?
• No caso de um processo requisitar I/O num
escalonamento round-robin, existe alguma
possibilidade dele não ser colocado no estado
“esperando”? Justifique sua resposta.
(I/O-Q5-Q6) Tipos de I/O
• O que é I/O isolado? E I/O mapeado em
memória?
• O que é I/O programado, I/O por interrupção
e I/O por DMA?
Dúvidas?
• Email da monitoria:
– [email protected]
Download

[IF677] Roteiro para a aula de revisão