Next:
Aula 1 - Introdução
{
Aula 1 - Introdução
Plano da aula 1
Motivação
Motivação para o estudo de sistemas operacionais
O que é um sistema operacional
O que é um sistema operacional?
Funções de um SO
Características dos SO atuais
História dos sistemas operacionais
Evolução do computador acadêmico típico
Fase inicial: relação $máquina/$homem-hora alta
Fase atual: relação $máquina/$homem-hora baixa
Organização do curso
Organizac,a o do curso
Aula 2 - Introdução à Programação Paralela Assíncrona
Motivação
Motivação
Paralelismo
Programação Paralela
Modo de execução
Modelo de Programação
Hardware de mono-processadores
Núcleos de multiprogramação
Sistema operacional tradicional
Paralelismo
Programação Paralela: Conclusões
Programação Paralela Assíncrona
Programação Paralela Assíncrona
Porque PP assíncrona?
Expressão do Paralelismo
Expressão do Paralelismo
O Comando COBEGIN
Grafo de Precedências
Exemplos de Programas Paralelos
Somas
Sistema Operacional em Batch com SPOOL
Aninhamento
Semântica de Programas Paralelos
Conflitos e Semântica
Programa IncDec Compilado para um Monoprocessador
Compartilhamento de um monoprocessador
Uma computação do programa IncDec compilado
Semântica de programas paralelos
Implementação de ações atômicas
Atomicidade em Linguagens de Alto Nível
Comandos conflitantes
Atomicidade em Linguagens de Alto Nível
Quais números este programa pode imprimir?
Resumo
Resumo
Aula 3 - Regiões Críticas
Regiões Críticas
O Par Produtor-Consumidor: Processos
O Par Produtor-Consumidor: Buffer
Exclusão Mútua
Exclusão Mútua
Buffer com exclusão mútua
Buffer com sincronização interna: uso simplificado
Buffer com sincronização interna: programação sujeita a bloqueios
Deadlocks
Buffer com sincronização interna: programação com espera ocupada
Liberação do Processador
Camas
Buffer com Liberação do Processador
Leitores e Escritores
O Problema dos Leitores e Escritores
Leitores e Escritores: solução sujeita a starvation - 1
Leitores e Escritores: solução sujeita a starvation - 2
Starvation
Imposição de Políticas de Escalonamento
Programação de um Servidor de Impressora
Servidor de Impressora: Solução com Erro
Servidor de Impressora: Solução ``correta''
Servidor de Impressora: SJF
Escalonador SJF
Resumo e Conclusões
Resumo e Conclusões
Exercícios - 1
Quicksort paralelo
Comparação e Troca em paralelo
Leitores e Escritores equânime
Furo no escalonamento SJF
Prioridades dinâmicas
Ponte levadiça
Transações
Aula 4: Exemplos
Buffer equânime
Buffer equânime
Buffer equânime: solução
Buffer equânime: o buffer
Fila com tickets
Buffer equânime: comentários
Pool de recursos idênticos
Pool de recursos idênticos
Pool de recursos: solução para clientes que pedem diversos recursos
Pool de Recursos: comentários
Prioridades dinâmicas: ``Aging''
Pool de buffers
Pool de buffers: solução
Aging Queues
Árvore-B
Árvores-B: Solução
Árvores-B: Solução (cont)
Aula 5 - Núcleos de Multiprogramação
Introdução
Introdução
Interrupções em PCs
O Controlador de Interrupções
Interrupções: Tratamento pelo Hardware
Interrupções: Tratamento por Software
Co-rotinas
Co-rotinas
Co-rotinas e Interrupções
Multiplexação do Processador
Interface de um núcleo simples
Co-rotinas e processos
Multiplexação do Processador entre as co-rotinas
Estruturas de Dados
Criação de processos e coStart
Escalonamento e fim dos processos
Chaves e Camas
Chaves
Camas
Resumo e Conclusões
Conclusões
Aula 6 - Exercícios
Exercício 1
Quicksort Paralelo - Algoritmo
Quicksort Paralelo - Análise
Exercício 2
Comparação e Troca: Algoritmo
Exercício 3
Leitores e escritores: solução equânime
Leitores e escritores: solução equânime (cont)
Exercício 4
Escalonamento SJF
Exercício 5
Recurso Dedicado
Exercício 6
Ponte Levadiça
Exercício 7
Transações
References
About this document ...
Osvaldo Sergio F. de Carvalho
Wed Mar 19 14:56:39 EST 1997