Sistemas em Tempo Real


       RTAI – REAL TIME
     APPLICATION INTERFACE


Araceli N. Teixeira
Fco. Eugênio de Freitas
Sumário
    Sistemas real-time.


    RTAI – Características.


    Arquitetura.


    Módulos.


    Programação.


...
Sistemas real-time
    Definição




É um sistema destinado à execução de
múltiplas tarefas onde o tempo de
resposta a um...
Sistemas real-time
    Tipos




Existem dois gêneros de RTOS:
   - tipo hard RTS;
   - tipo soft RTS).

A severidade da ...
RTAI - Características
• Desenvolvido por:
- Dipartimento di Ingeneria Aerospaziale, Politecnico di
  Milano pelo Professo...
RTAI - Características
    Para facilitar a programação de


    sistemas de tempo-real, RTAI provê
    um módulo, o LXRT...
Arquitetura
Arquitetura
  Consiste essencialmente em:


– Uma camada de abstracção do hardware:
  • Recebe e despacha as interrupções...
Módulos RTAI
  Cada módulo disponibiliza um conjunto de funções.

• RTAI
  – Inicia/Termina o RTAI; Gestão das interrupçõe...
Programação
RTAI
   – rt_startup_irq(…); rt_shutdown_irq(…); rt_enable_irq(…); rt_disable_irq(…);
         • Funções de ge...
Programação
• SCHED
    – Semáforos
           • rt_typed_sem_init(…);
                       – Cria um semáforo de um dos...
Projeto – Num Futuro...
Upcoming SlideShare
Loading in …5
×

Rtai Apresentacao

1,847
-1

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,847
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
40
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Rtai Apresentacao

  1. 1. Sistemas em Tempo Real RTAI – REAL TIME APPLICATION INTERFACE Araceli N. Teixeira Fco. Eugênio de Freitas
  2. 2. Sumário Sistemas real-time.  RTAI – Características.  Arquitetura.  Módulos.  Programação.  Projeto. 
  3. 3. Sistemas real-time Definição  É um sistema destinado à execução de múltiplas tarefas onde o tempo de resposta a um evento (externo ou interno) é pré-definido; não importando se o tempo é elevado ou não.
  4. 4. Sistemas real-time Tipos  Existem dois gêneros de RTOS: - tipo hard RTS; - tipo soft RTS). A severidade da perda pelo não cumprimento das tarefas num determinado intervalo de tempo os distingue.
  5. 5. RTAI - Características • Desenvolvido por: - Dipartimento di Ingeneria Aerospaziale, Politecnico di Milano pelo Professor Paolo Mantegazza em 2000. • Objetivo: - RTAI provides deterministic and preemptive performance in addition to allowing the use of all standard Linux drivers, applications and functions. • Linux como uma tarefa no executivo tempo real: - Funciona como a tarefa de prioridade inferior; - Nunca pode desligar as interrupções ou prevenir que seja interrompido.
  6. 6. RTAI - Características Para facilitar a programação de  sistemas de tempo-real, RTAI provê um módulo, o LXRT, e uma API que permitem a programação de sistemas de tempo-real a partir do espaço do usuário, através de chamadas de sistema.
  7. 7. Arquitetura
  8. 8. Arquitetura Consiste essencialmente em:  – Uma camada de abstracção do hardware: • Recebe e despacha as interrupções; • Emula o controlo de interrupções para o Linux. – Um conjunto de serviços: • IPC, semáforos, escalonador tempo-real, API POSIX, funções para processos linux ... • Cada um destes componentes é um módulo do kernel:  – rtai;  – rtai_shm, rtai_sched, rtai_pthread, lxrt, ...
  9. 9. Módulos RTAI Cada módulo disponibiliza um conjunto de funções. • RTAI – Inicia/Termina o RTAI; Gestão das interrupções. • SCHED – Tarefas; Temporização; Semáforos; RPC; Mensagens; Caixas de Mensagens; • LX(Linux)RT(RTAI) – Disponibiliza funcionalidades do RTAI a processos Linux. • SHM e FIFO – Memória partilhada e Filas de mensagens. • POSIX – Implementa threads POSIX no RTAI.
  10. 10. Programação RTAI – rt_startup_irq(…); rt_shutdown_irq(…); rt_enable_irq(…); rt_disable_irq(…); • Funções de gestão das rotinas de interrupção. • SCHED – Temporização • rt_set_oneshot_mode(); – Ativa modo de temporização não periódico. • rt_set_periodic_mode(); – Ativa modo de temporização não periódico. • start_rt_timer(…); – Ativa o timer. • rt_get_cpu_time_ns(); – Devolve o tempo actual do sistema. – Tarefas • rt_task_make_periodic(…) – Declara uma tarefa que executa periodicamente. • rt_task_wait_period() – Tarefa esperar para ser ativada no seu próximo período. • rt_task_delete() – Remove uma tarefa tempo-real.
  11. 11. Programação • SCHED – Semáforos • rt_typed_sem_init(…); – Cria um semáforo de um dos tipos: counting, binary, resource. • rt_sem_delete(…); – Elemina um semáforo • rt_sem_wait(…); – Espera para adquirir um semáforo • rt_sem_signal(…); – Liberta um semáforo • LX(Linux)RT(RTAI) • rt_task_init_schmod(…); – Inicia o escalonador. • rt_make_hard_real_time(…); – Atribui a uma thread Linux capacidades de execução em tempo-real hard. • rt_make_soft_real_time(…); – Atribui a uma thread Linux capacidades de execução em tempo-real soft. • POSIX • pthread_create(); – Cria uma thread. • pthread_joint(); – Espera que uma thread termine. • pthread_exit(); – Termina a thread.
  12. 12. Projeto – Num Futuro...
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×