SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
Sistemas em Tempo Real




Análise de Sistemas Operacionais de Tempo Real




Lila Maria Borges Silva - 268047
Líus Fontenelle Carneiro - 268040
Ricardo Bruno Martins Teixeira - 268051          1
Sistemas em Tempo Real
    Roadmap dos sistemas testados para o projeto;
■


    Análise prática dos RTOS:
■
        RTLinux;
    

        XtratuM;
    

        PaRTikle;
    

        Linux.
    




    Aspectos considerados:
■
        Teoria do funcionamento;
    

        Ambiente de desenvolvimento de aplicações;
    

        Estágio de desenvolvimento do sistema.
    

        Documentação e Suporte.
    




                                                     2
RTLinux
    Funcionamento
■




                          3
RTLinux
    Estágio de desenvolvimento:
■
        Parado;
    

        Modificação por terceiros não retornam à base;
    

        A licença atrapalha (GPL e Copyright);
    

        Falta de interesse desde a compra pela WindRiver.
    




    Documentação e Suporte:
■
        Bastante documentação descentralizada;
    

        Procedimentos de instalação, teste e deploy
    

        desatualizados;
        Suporte dado pela WindRiver e pela comunidade.
    




                                                            4
RTLinux
    Problemas:
■
        Última versão (da WindRiver) possui inconsistências;
    

        Ambiente de desenvolvimento legado;
    

        Versões funcionais baseam-se em Linux antigo;
    

        A versão testada apresentou instabilidades.
    




                                                               5
XtratuM
    Razões da mudança:
■
        Indicação por desenvolvedores do DSLab;
    

        Projeto novo, funcionamento interessante;
    

        Desenvolvimento consistente e documentado;
    

        Estabilidade;
    

        Fornece a base do ambiente real-time.
    




                                                     6
XtratuM
    Funcionamento:
■
        Nano-kernel que gerencia tempo e interrupções;
    

        Virtualiza sistemas hóspedes (domains);
    

        Suporta vários domains;
    

        Flexibilidade para diferentes situações.
    




                                                         7
XtratuM




      8
XtratuM




      9
XtratuM


Teste:   Stand-alone:




                          10
XtratuM
    Estágio de desenvolvimento:
■
        Projeto muito novo;
    

        Desenvolvimento ativo, regular e limpo;
    

        Faltam vários recursos;
    

        Promissor.
    




    Documentação e Suporte:
■
        Pouca documentação: ainda precisa ser escrita!
    

        Sem comunidade ainda envolvida com o projeto;
    

        Praticamente sem suporte.
    




                                                         11
PaRTikle
    Razões para escolha:
■
        Necessidade de um XtratuM domain;
    

        Indicado por desenvolvedores da lista do RTLinux;
    

        Desenvolvedores do XtratuM estão envolvidos.
    




                                                            12
PaRTikle
    Funcionamento:
■
        Baseado no RTLinux-GPL;
    

        Junto ao XtratuM, fornece um RTOS SL/CA;
    

        Compatível com padrão POSIX;
    

        Pode funcionar como:
    

           Módulo do Linux (série 2.6 suportada);
         ➔

         ➔ Stand-alone;

         ➔ XtratuM domain.




                                                           13
PaRTikle
    Estágio de desenvolvimento:
■
        Projeto muito novo;
    

        Desenvolvimento ativo, regular e limpo;
    

        Faltam vários recursos;
    

        Promissor.
    




    Documentação e Suporte:
■
        Pouca documentação: ainda precisa ser escrita!
    

        Sem comunidade ainda envolvida com o projeto;
    

        Praticamente sem suporte.
    




                                                         14
PaRTikle
    Problemas:
■
        Comunicação inter-domain.
    




                                           15
Linux




quot;Controlling a laser with Linux is crazy, but everyone in this room is crazy in
  his own way. So if you want to use Linux to control an industrial welding
           laser, I have no problem with your using PREEMPT_RT.quot;

                                                             -- Linus Torvalds




                                                                              16
Linux
    Razões para escolha:
■
        Problemas com suporte e documentação do XM;
    

        Sem recurso de comunicação inter-domain;
    

        Possibilidade de usar uma solução muito limpa;
    

        Não será necessário reescrever as aplicações.
    




                                                         17
Linux
    Funcionamento do Linux padrão:
■
        Condições de preempção:
    

           Execução de código no user-space;
         ➔

         ➔ Retorno de syscalls ou de interrupções para o user-space;

         ➔ Bloqueio no kernel-space via mutex ou yield explícito.


        Soluções disponíveis no próprio Linux:
    

           CONFIG_PREEMPT_VOLUNTARY;
         ➔

         ➔ CONFIG_PREEMPT (preempção não voluntária);




    Funcionamento do “Linux PREEMPT-RT”:
■
        Preempção completa do kernel;
    

           Interrupt Handlers;
         ➔

         ➔ Spinlocks e mutexes;


        Camada de eventos de clock de alta resolução;
    




                                                                       18
Linux
    Estágio de desenvolvimento:
■
        Projeto razoávelmente maduro;
    

        Envolve parte dos desenvolvedores do Linux;
    

        Boa integração com o kernel base.
    




    Documentação e Suporte:
■
        Documentação farta e completa;
    

        Suportado por uma comunidade ativa;
    

        Licença livre.
    




                                                          19
Sistemas em Tempo Real



                      Fim




Disponível para download em: http://hypercast.info/



                                                      20

Mais conteúdo relacionado

Mais procurados

Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio BucciantiLinux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio BucciantiJoao Galdino Mello de Souza
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsEvandro Júnior
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threadsSilvino Neto
 
Sistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsSistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsPedro De Almeida
 
(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05Norton Trevisan Roman
 
Sistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
Sistemas Operacionais Processos e Threads - Wellington Pinto de OliveiraSistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
Sistemas Operacionais Processos e Threads - Wellington Pinto de OliveiraWellington Oliveira
 
(ACH2044) Sistemas Operacionais - Aula 09
(ACH2044) Sistemas Operacionais - Aula 09(ACH2044) Sistemas Operacionais - Aula 09
(ACH2044) Sistemas Operacionais - Aula 09Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 04
(ACH2044) Sistemas Operacionais - Aula 04(ACH2044) Sistemas Operacionais - Aula 04
(ACH2044) Sistemas Operacionais - Aula 04Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11Norton Trevisan Roman
 
Estratégia de backup - RMAN
Estratégia de backup - RMANEstratégia de backup - RMAN
Estratégia de backup - RMANEduardo Legatti
 
Apostila 5 processos e threads
Apostila 5   processos e threadsApostila 5   processos e threads
Apostila 5 processos e threadsPaulo Fonseca
 
Gerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPUGerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPUAlexandre Duarte
 
Aula 02-processos-e-threads-tanenbaum-parte-2
Aula 02-processos-e-threads-tanenbaum-parte-2Aula 02-processos-e-threads-tanenbaum-parte-2
Aula 02-processos-e-threads-tanenbaum-parte-2Cristiano Pires Martins
 
Alta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores LinuxAlta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores Linuxelliando dias
 
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicosComputação Depressão
 
(ACH2044) Sistemas Operacionais - Aula 07
(ACH2044) Sistemas Operacionais - Aula 07(ACH2044) Sistemas Operacionais - Aula 07
(ACH2044) Sistemas Operacionais - Aula 07Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 22
(ACH2044) Sistemas Operacionais - Aula 22(ACH2044) Sistemas Operacionais - Aula 22
(ACH2044) Sistemas Operacionais - Aula 22Norton Trevisan Roman
 

Mais procurados (20)

Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio BucciantiLinux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e Threads
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threads
 
Sistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsSistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e Threads
 
(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05
 
Sistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
Sistemas Operacionais Processos e Threads - Wellington Pinto de OliveiraSistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
Sistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
 
(ACH2044) Sistemas Operacionais - Aula 09
(ACH2044) Sistemas Operacionais - Aula 09(ACH2044) Sistemas Operacionais - Aula 09
(ACH2044) Sistemas Operacionais - Aula 09
 
Processos
ProcessosProcessos
Processos
 
(ACH2044) Sistemas Operacionais - Aula 04
(ACH2044) Sistemas Operacionais - Aula 04(ACH2044) Sistemas Operacionais - Aula 04
(ACH2044) Sistemas Operacionais - Aula 04
 
(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11
 
Estratégia de backup - RMAN
Estratégia de backup - RMANEstratégia de backup - RMAN
Estratégia de backup - RMAN
 
Apostila 5 processos e threads
Apostila 5   processos e threadsApostila 5   processos e threads
Apostila 5 processos e threads
 
Gerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPUGerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPU
 
Aula 02-processos-e-threads-tanenbaum-parte-2
Aula 02-processos-e-threads-tanenbaum-parte-2Aula 02-processos-e-threads-tanenbaum-parte-2
Aula 02-processos-e-threads-tanenbaum-parte-2
 
Alta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores LinuxAlta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores Linux
 
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
 
(ACH2044) Sistemas Operacionais - Aula 07
(ACH2044) Sistemas Operacionais - Aula 07(ACH2044) Sistemas Operacionais - Aula 07
(ACH2044) Sistemas Operacionais - Aula 07
 
(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06
 
(ACH2044) Sistemas Operacionais - Aula 22
(ACH2044) Sistemas Operacionais - Aula 22(ACH2044) Sistemas Operacionais - Aula 22
(ACH2044) Sistemas Operacionais - Aula 22
 
Processamento paralelo
Processamento paraleloProcessamento paralelo
Processamento paralelo
 

Semelhante a Análise de Sistemas Operacionais de Tempo Real para Controle de Laser

Linux e zephyr conversando no mesmo SoC
Linux e zephyr conversando no mesmo SoCLinux e zephyr conversando no mesmo SoC
Linux e zephyr conversando no mesmo SoCEmbarcados
 
Distribuições Linux
Distribuições LinuxDistribuições Linux
Distribuições LinuxAlmir Mendes
 
Linux em Sistemas Embarcados - SACTA 2010 - UNIPAMPA
Linux em Sistemas Embarcados - SACTA 2010 - UNIPAMPALinux em Sistemas Embarcados - SACTA 2010 - UNIPAMPA
Linux em Sistemas Embarcados - SACTA 2010 - UNIPAMPAMarcelo Veiga Neves
 
IntroduçãO Ao Desenvolvimento Web 2
IntroduçãO Ao Desenvolvimento Web   2IntroduçãO Ao Desenvolvimento Web   2
IntroduçãO Ao Desenvolvimento Web 2Maurício Linhares
 
Desenvolvimento web no Linux
Desenvolvimento web no LinuxDesenvolvimento web no Linux
Desenvolvimento web no LinuxEduardo Rozario
 
Workshop Administração em centOS
Workshop Administração em centOSWorkshop Administração em centOS
Workshop Administração em centOSLinux Solutions
 
Aula 1 aed - introdução à computação
Aula 1   aed - introdução à computaçãoAula 1   aed - introdução à computação
Aula 1 aed - introdução à computaçãoElaine Cecília Gatto
 
SNMP - Rafael Rodriques
SNMP - Rafael RodriquesSNMP - Rafael Rodriques
SNMP - Rafael Rodriquesmarleigrolli
 
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...Joao Galdino Mello de Souza
 
Planejamento de Capacidade com ferramentas gratuitas
Planejamento de Capacidade com ferramentas gratuitasPlanejamento de Capacidade com ferramentas gratuitas
Planejamento de Capacidade com ferramentas gratuitasRodrigo Campos
 
Petic Emgetis Final
Petic Emgetis FinalPetic Emgetis Final
Petic Emgetis Finalnetimba
 
ADRL00 - Inicio Administração de Redes Linux Server
ADRL00 - Inicio Administração de Redes Linux ServerADRL00 - Inicio Administração de Redes Linux Server
ADRL00 - Inicio Administração de Redes Linux ServerSilvano Oliveira
 

Semelhante a Análise de Sistemas Operacionais de Tempo Real para Controle de Laser (20)

Linux e zephyr conversando no mesmo SoC
Linux e zephyr conversando no mesmo SoCLinux e zephyr conversando no mesmo SoC
Linux e zephyr conversando no mesmo SoC
 
Distribuições Linux
Distribuições LinuxDistribuições Linux
Distribuições Linux
 
Linux em Sistemas Embarcados - SACTA 2010 - UNIPAMPA
Linux em Sistemas Embarcados - SACTA 2010 - UNIPAMPALinux em Sistemas Embarcados - SACTA 2010 - UNIPAMPA
Linux em Sistemas Embarcados - SACTA 2010 - UNIPAMPA
 
IntroduçãO Ao Desenvolvimento Web 2
IntroduçãO Ao Desenvolvimento Web   2IntroduçãO Ao Desenvolvimento Web   2
IntroduçãO Ao Desenvolvimento Web 2
 
Iptables layer7
Iptables layer7Iptables layer7
Iptables layer7
 
Desenvolvimento web no Linux
Desenvolvimento web no LinuxDesenvolvimento web no Linux
Desenvolvimento web no Linux
 
Apresentação sobre o kernel Linux v2.0
Apresentação sobre o kernel Linux v2.0Apresentação sobre o kernel Linux v2.0
Apresentação sobre o kernel Linux v2.0
 
apresenta_linux_ceue
apresenta_linux_ceueapresenta_linux_ceue
apresenta_linux_ceue
 
Linux e Jogos (in 2011)
Linux e Jogos  (in 2011)Linux e Jogos  (in 2011)
Linux e Jogos (in 2011)
 
Introdução à Computação
Introdução à ComputaçãoIntrodução à Computação
Introdução à Computação
 
Consegi 2011: Ganeti + Puppet
Consegi 2011: Ganeti + PuppetConsegi 2011: Ganeti + Puppet
Consegi 2011: Ganeti + Puppet
 
S.o anamaria
S.o anamariaS.o anamaria
S.o anamaria
 
Workshop Administração em centOS
Workshop Administração em centOSWorkshop Administração em centOS
Workshop Administração em centOS
 
Aula 1 aed - introdução à computação
Aula 1   aed - introdução à computaçãoAula 1   aed - introdução à computação
Aula 1 aed - introdução à computação
 
SNMP - Rafael Rodriques
SNMP - Rafael RodriquesSNMP - Rafael Rodriques
SNMP - Rafael Rodriques
 
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
Planejamento de Capacidade com ferramentas Gratuítas, por Rodrigo Albani de C...
 
Planejamento de Capacidade com ferramentas gratuitas
Planejamento de Capacidade com ferramentas gratuitasPlanejamento de Capacidade com ferramentas gratuitas
Planejamento de Capacidade com ferramentas gratuitas
 
Apresentacao sobre o QNX Neutrino
Apresentacao sobre o QNX NeutrinoApresentacao sobre o QNX Neutrino
Apresentacao sobre o QNX Neutrino
 
Petic Emgetis Final
Petic Emgetis FinalPetic Emgetis Final
Petic Emgetis Final
 
ADRL00 - Inicio Administração de Redes Linux Server
ADRL00 - Inicio Administração de Redes Linux ServerADRL00 - Inicio Administração de Redes Linux Server
ADRL00 - Inicio Administração de Redes Linux Server
 

Mais de Líus Fontenelle Carneiro (16)

DSPic
DSPicDSPic
DSPic
 
Transputer
TransputerTransputer
Transputer
 
AVR
AVRAVR
AVR
 
Wavecom
WavecomWavecom
Wavecom
 
PSoC
PSoCPSoC
PSoC
 
HC11
HC11HC11
HC11
 
Blackfin
BlackfinBlackfin
Blackfin
 
ARM
ARMARM
ARM
 
Zilog
ZilogZilog
Zilog
 
Microcontroladores AVR
Microcontroladores AVRMicrocontroladores AVR
Microcontroladores AVR
 
Java Web Start
Java Web StartJava Web Start
Java Web Start
 
Rtai Apresentacao
Rtai ApresentacaoRtai Apresentacao
Rtai Apresentacao
 
Apresentacao sobre o KURT
Apresentacao sobre o KURTApresentacao sobre o KURT
Apresentacao sobre o KURT
 
Programação para Redes de Computadores: Multithread e Multicast
Programação para Redes de Computadores: Multithread e MulticastProgramação para Redes de Computadores: Multithread e Multicast
Programação para Redes de Computadores: Multithread e Multicast
 
Sistemas Distribuídos: RMI, CORBA e SOA
Sistemas Distribuídos: RMI, CORBA e SOASistemas Distribuídos: RMI, CORBA e SOA
Sistemas Distribuídos: RMI, CORBA e SOA
 
Kernel Linux
Kernel LinuxKernel Linux
Kernel Linux
 

Análise de Sistemas Operacionais de Tempo Real para Controle de Laser

  • 1. Sistemas em Tempo Real Análise de Sistemas Operacionais de Tempo Real Lila Maria Borges Silva - 268047 Líus Fontenelle Carneiro - 268040 Ricardo Bruno Martins Teixeira - 268051 1
  • 2. Sistemas em Tempo Real Roadmap dos sistemas testados para o projeto; ■ Análise prática dos RTOS: ■ RTLinux;  XtratuM;  PaRTikle;  Linux.  Aspectos considerados: ■ Teoria do funcionamento;  Ambiente de desenvolvimento de aplicações;  Estágio de desenvolvimento do sistema.  Documentação e Suporte.  2
  • 3. RTLinux Funcionamento ■ 3
  • 4. RTLinux Estágio de desenvolvimento: ■ Parado;  Modificação por terceiros não retornam à base;  A licença atrapalha (GPL e Copyright);  Falta de interesse desde a compra pela WindRiver.  Documentação e Suporte: ■ Bastante documentação descentralizada;  Procedimentos de instalação, teste e deploy  desatualizados; Suporte dado pela WindRiver e pela comunidade.  4
  • 5. RTLinux Problemas: ■ Última versão (da WindRiver) possui inconsistências;  Ambiente de desenvolvimento legado;  Versões funcionais baseam-se em Linux antigo;  A versão testada apresentou instabilidades.  5
  • 6. XtratuM Razões da mudança: ■ Indicação por desenvolvedores do DSLab;  Projeto novo, funcionamento interessante;  Desenvolvimento consistente e documentado;  Estabilidade;  Fornece a base do ambiente real-time.  6
  • 7. XtratuM Funcionamento: ■ Nano-kernel que gerencia tempo e interrupções;  Virtualiza sistemas hóspedes (domains);  Suporta vários domains;  Flexibilidade para diferentes situações.  7
  • 10. XtratuM Teste: Stand-alone: 10
  • 11. XtratuM Estágio de desenvolvimento: ■ Projeto muito novo;  Desenvolvimento ativo, regular e limpo;  Faltam vários recursos;  Promissor.  Documentação e Suporte: ■ Pouca documentação: ainda precisa ser escrita!  Sem comunidade ainda envolvida com o projeto;  Praticamente sem suporte.  11
  • 12. PaRTikle Razões para escolha: ■ Necessidade de um XtratuM domain;  Indicado por desenvolvedores da lista do RTLinux;  Desenvolvedores do XtratuM estão envolvidos.  12
  • 13. PaRTikle Funcionamento: ■ Baseado no RTLinux-GPL;  Junto ao XtratuM, fornece um RTOS SL/CA;  Compatível com padrão POSIX;  Pode funcionar como:  Módulo do Linux (série 2.6 suportada); ➔ ➔ Stand-alone; ➔ XtratuM domain. 13
  • 14. PaRTikle Estágio de desenvolvimento: ■ Projeto muito novo;  Desenvolvimento ativo, regular e limpo;  Faltam vários recursos;  Promissor.  Documentação e Suporte: ■ Pouca documentação: ainda precisa ser escrita!  Sem comunidade ainda envolvida com o projeto;  Praticamente sem suporte.  14
  • 15. PaRTikle Problemas: ■ Comunicação inter-domain.  15
  • 16. Linux quot;Controlling a laser with Linux is crazy, but everyone in this room is crazy in his own way. So if you want to use Linux to control an industrial welding laser, I have no problem with your using PREEMPT_RT.quot; -- Linus Torvalds 16
  • 17. Linux Razões para escolha: ■ Problemas com suporte e documentação do XM;  Sem recurso de comunicação inter-domain;  Possibilidade de usar uma solução muito limpa;  Não será necessário reescrever as aplicações.  17
  • 18. Linux Funcionamento do Linux padrão: ■ Condições de preempção:  Execução de código no user-space; ➔ ➔ Retorno de syscalls ou de interrupções para o user-space; ➔ Bloqueio no kernel-space via mutex ou yield explícito. Soluções disponíveis no próprio Linux:  CONFIG_PREEMPT_VOLUNTARY; ➔ ➔ CONFIG_PREEMPT (preempção não voluntária); Funcionamento do “Linux PREEMPT-RT”: ■ Preempção completa do kernel;  Interrupt Handlers; ➔ ➔ Spinlocks e mutexes; Camada de eventos de clock de alta resolução;  18
  • 19. Linux Estágio de desenvolvimento: ■ Projeto razoávelmente maduro;  Envolve parte dos desenvolvedores do Linux;  Boa integração com o kernel base.  Documentação e Suporte: ■ Documentação farta e completa;  Suportado por uma comunidade ativa;  Licença livre.  19
  • 20. Sistemas em Tempo Real Fim Disponível para download em: http://hypercast.info/ 20