Programa de disciplina:
- Sistemas de Tempo
Real, o que são?
Sistemas de tempo real hard
Sistemas de tempo real soft
O
porquê do amplo uso dos Sistemas de Tempo Real
Sistemas de Tempo Real Reactivos
Sistemas de Tempo Real Incrustados
Características de um Sistema de Tempo
Real
Modularidade
Diversidade
Manutenção
Extensibilidade
Manipulação de Números Reais
Fiabilidade e Segurança
Controlo de Processos Concorrentes
Facilidades de Tempo Real
Interface com Hardware
Implementação eficiente
Determinismo
Pior caso
Aquisição de Informação - A validação
dos dados
Ciclo de produção de um programa
As Linguagens de Programação para Tempo
Real
Programação em pequena escala e
programação em grande escala.
Panorâmica sobre Ada, Modula-2, occam2 e
C++
Convenções lexicais
Tipos de dados
Estruturas de controlo
Subprogramas
Encapsulamento
Compilação por módulos
Tipos de dados abstractos
Reusabilidade
Ambientes de suporte
Tolerância a Faltas
Fiabilidade, Falhas e Faltas
Prevenção de Faltas e Tolerância a
faltas
Programação N versões
Redundância de SW e de HW
Blocos de recuperação em SW
Medição da fiabilidade
Confiança no funcionamento
Excepções e sua manipulação
Programação concorrente
Representação de processos ao nível da
linguagem
Utilização de primitivas de
sincronização
Monitores
Rendez-vous
Espera selectiva
Acções atómicas
Recuperação
Gestão de Recursos Partilhados
Utilização
Interblocagem
Facilidades de Tempo Real
Acesso ao Relógio
Temporizadores
Metas e Escalonamento
Sistemas Operativos e Núcleos de Tempo
Real
Noção de Sistemas Operativos
Núcleos multi-tarefa
Introdução aos sistemas operativos
Noções básicas de Arquitectura
Motivação
Funcionalidade dos Sistemas Operativos
Tipos de sistemas operativos
Gestão de processos
Escalonamento
Sistemas Distribuídos
Noções básicas
Suporte de linguagem á distribuição
Nós virtuais em Ada
Algoritmos distribuídos
Comunicação em sistemas distribuídos
Comportamento no tempo de protocolos de
comunicação
Processamento de faltas
Técnicas de mascaramento de falhas
Noção de sincronização de relógios
Sincronização interna
Sincronização externa
Erro de leitura
Exemplos
Técnicas de tolerância a faltas em
sistemas distribuídos
Replicação activa
A máquina de estados distribuída
Arquitecturas
MARS e Delta-4