Sistemas de Tempo Real › 41475

código no paco
41475
área científica
Informática / Arquitetura dos Sistemas Computacionais
créditos
6
escolaridade
ensino teórico-prático (TP) - 3 horas/semana
idioma(s) de lecionação
Português, Inglês
objectivos

1. Identificar a origem e natureza das restrições temporais impostas a sistemas computacionais pelas aplicações respectivas, e caracterizar essas restrições;

2. Conhecer e caracterizar os paradigmas de captura do estado do ambiente a controlar.

3. Identificar as causas de comportamentos temporais indesejados em sistemas computacionais.

4. Saber quando e como se deve utilizar uma infra-estrutura do tipo executivo (kernel) multi-tarefa.

5. Perceber o impacto do escalonamento de tarefas no comportamento temporal do sistema e ser capaz de utilizar as técnicas mais comuns nesse domínio.

6. Perceber a problemática da sincronização de tarefas no acesso a recursos partilhados, nomeadamente conhecer as técnicas mais comuns e o respectivo impacto sobre o comportamento temporal do sistema.

7. Conhecer os mecanismos básicos de funcionamento dos executivos de tempo-real e ser capaz de construir um pequeno executivo para aplicação em microcontroladores simples, bem como de alterar adequadamente executivos de sistemas operativos de domínio público.

competências
  • projecto de software de sistemas embutidos de controlo, por exemplo para construção de máquinas ferramentas ou outra maquinaria industrial, ou mesmo para equipamentos de telecomunicações.
  • manutenção e operação, na indústria em geral, de maquinaria ou equipamentos complexos que utilizem sistemas computacionais do tipo tempo-real;
  • prossecução de estudos de pós-graduação na área respectiva.
conteúdos

1. Restrições temporais: origem e caracterização: O conceito de tempo-real e a origem das restrições temporais; Caracterização de restrições temporais; Os problemas inerentes a comportamentos temporalmente desadequados

2. Paradigmas de captura do estado do meio a controlar: Os paradigmas de controlo por eventos e por tempo; Caracterização dos dois paradigmas; Implementação recorrendo a rotinas de interrupção ; Implementação recorrendo a um executivo multi-tarefa

3. Conceitos básicos de escalonamento: Modelos de tarefas com restrições temporais explícitas; Escalonamento de tarefas, taxonomia básica

4. Escalonamento de tarefas periódicas: Escalonamento estático cíclico; Escalonamento construído em tempo de execução a) usando prioridades fixas (Rate/Deadline-Monotonic); b) usando prioridades dinâmicas (Earliest-Deadline First)

5. Processamento de tarefas aperiódicas/esporádicas: Servidores de prioridades fixas; Servidores de prioridades dinâmicas

6. Acesso a recursos partilhados: O problema da inversão de prioridades; Herança de prioridades; Protocolo de tecto de prioridades (Priority-Ceiling Protocol); Protocolo de pilha de recursos (Stack Resource Protocol)

7. Executivos de tempo-real: Estruturas internas de executivos multi-tarefa; Implementação dos serviços básicos de gestão de tarefas

8. Outras aplicações do escalonamento tempo-real: Escalonamento de tráfego em barramentos partilhados; Escalonamento de tarefas em multiprocessadores; Outros tópicos de investigação actual

avaliação

Avaliação da componente teórica

A nota da componente teórica (NT) será a nota do exame final.

Avaliação da componente prática

A avaliação da componente prática (NP) é realizada com base num pequeno projecto desenvolvido ao longo do semestre, essencialmente nas últimas 8 semanas, incluíndo os seguintes elementos: Demonstração, apresentação, relatórios e livro de registos.

Classificação final

A classificação final (NF) na disciplina será

NF = 0.5 NT + 0.5 NP

Para efeitos de aprovação na disciplina, é obrigatória a obtenção de uma classificação não inferior a 7 (sete) valores em cada uma das componentes.

requisitos

Arquitectura de computadores I

metodologia

Os métodos utilizados no ensino de cada componente dão um papel de relevo ao aluno. Na componente teórica, as aulas contém para além de uma parte expositiva onde se transmitem os conceitos relacionados com a matéria, e uma parte de resolução de problemas ilustrativos e de discussão dos conceitos e resultados em que os alunos deverão assumir um papel interventivo. Para fomentar este papel, as intervenções dos alunos são objecto de avaliação. Por outro lado, para se promover um contacto dos alunos com o meio de investigação, recorrer-se-á à distribuição de artigos científicos seleccionados, solicitando aos alunos que apresentem um breve resumo dos artigos na aula seguinte, ou alternativamente, que façam uma breve apresentação de um tema já abordado em aulas anteriores e que lhes tenha despertado mais interesse. No que diz respeito à parte expositiva, far-se-á uso alargado de projecção de slides baseada em PC e da utilização de um quadro, fazendo-se, ainda, frequente uso da ligação à Internet.

Na componente prática, até à quarta semana será executada uma sequência de trabalhos que se destinam a fornecer um conjunto de capacidades mínimas aos alunos. Estes trabalhos não são objecto de avaliação. Apenas o projecto, desenvolvido de forma relativamente autónoma pelos alunos ao longo de oito semanas é avaliado. Independentemente do projecto constituir um importante elemento de avaliação, é fortemente promovida a partilha de experiências entre os vários alunos e potencia-se a utilização de aspectos desenvolvidos por uns grupos nos trabalhos de outros. No entanto, esta partilha só é aceite se as fontes forem devidamente referidas. Acreditamos que esta metodologia facilita o esclarecimento de dúvidas e a ultrapassagem de dificuldades por parte dos alunos e que os educa no sentido de utilizar o máximo de matéria-prima disponível para o trabalho que têm em mãos mas sempre referindo a respectiva fonte. A última semana é dedicada à apresentação dos projectos, os quais deverão ser devidamente documentados através de um relatório e de um livro de registo.

bibliografia base
Giorgio Buttazzo (2011). HARD REAL-TIME COMPUTING SYSTEMS: Predictable Scheduling Algorithms and Applications, 3rd Edition, Springer, 2011. Kopetz, H. (2011). Real-Time Systems: Design Principles for Distributed Embedded Applications, 2nd Edition, Springer, 2011 Xiaocong Fan (2015). Real-Time Embedded Systems: Design Principles and Engineering Practices, 1st Edition, Springer, 2015
bibliografia recomendada

- Giorgio Buttazzo (2011), "HARD REAL-TIME COMPUTING SYSTEMS: Predictable Scheduling Algorithms and Applications", Third Edition, Springer, 2011;

- Kopetz, H. (1997). Real-Time Systems Design Principles for Distributed Embedded Applications. Kluwer Academic Publishers, The Netherlands;

- Richard Barry (2011), “Using the FreeRTOS Real-Time Kernel – A practical guide”, Real-Time Engineers, Ltd., 2011;

- Doug Abbott (2006), “Linux for Embedded and Real-time Applications”, Second Edition. Newnes, 2006;

Este sítio web utiliza cookies sem recolher informação pessoal que permita a identificação dos utilizadores. Ao navegar neste sítio está a consentir a sua utilização.saber mais
Para que esta página funcione corretamente deve ativar a execução de Javascript. Se tal não for possível, algumas funcionalidades poderão estar limitadas.