Real Time Linux. Walter Fetter Lages

Documentos relacionados
Sistemas Operacionais de Tempo-Real. Out/2007 Aleksey Victor Trevelin Covacevice 1

Xenomai Short Intro. Paulo Pedreiras DETI/University of Aveiro. Sistemas Tempo-Real Out/2013 (Rev. 1 - Out/2015)

Universidade Federal de Pernambuco Centro de Informática. Aluno: Anderson L. S. Moreira Orientador: Paulo R. R.

ESTUDO DE CASO WINDOWS VISTA

Breve introdução ao Real Time Application Interface (RTAI)


Sistemas Operacionais. Patrícia Megumi Matsumoto Luciana Maria Gregolin Dias

ESTRUTURA DE UM SISTEMA OPERACIONAL

Programação Concorrente Processos e Threads

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron

SISTEMA OPERACIONAL & SOFTWARE LIVRE

Sistemas Embarcados. Introdução. Características de sistemas embarcados. Software embarcado

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

Abordagens de Escalonamento na Perspectiva da Engenharia

Webinar Freescale Desenvolvimento de sistemas embarcados em Linux com a Thunderboard 11/12/2013

Projeto de Sistemas de Tempo Real

Máquinas virtuais. Máquina virtual de um processo. Máquinas virtuais (3) Máquina virtual de sistema. Máquinas virtuais (1) VMware para Windows e Linux

Sistemas Embarcados Android

Universal Serial Bus USB

4 Estrutura do Sistema Operacional Kernel

Sistemas Operacionais Aula 06: Threads. Ezequiel R. Zorzal

Prof. Victor Halla. Unidade IV FUNDAMENTOS DE SISTEMAS

Sistemas Operacionais

Introdução. Sistemas Operacionais

Sistemas Embarcados Android

Arquiteturas de Software

Introdução a Computação 07 Sistemas operacionais. Márcio Daniel Puntel marcio.puntel@ulbra.edu.br

Sistemas Operacionais

Capítulo 8. Software de Sistema

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar

Escalonamento no Linux e no Windows NT/2000/XP

Estrutura, Processos e Threads

Sistemas Operacionais Introdução

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura

8 Threads. 8.1 Introdução

Gabriel Oliveira do Nascimento Rogério Libarino Aguilar. UFF - Universidade Federal Fluminense

Sistemas Operacionais

Virtualização: VMWare e Xen

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

LINUX. Lapro I Profa. Fernanda Denardin Walker. - Aula 2 - Material adaptado de: Isabel Mansour, Marcia Moraes e Silvia Moraes SISTEMA OPERACIONAL

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação

Programmable Interval Timer

Aula 2 Modelos computacionais

Adaptações do Linux para Suportar Aplicações com Requisitos de Tempo Real

Sistemas Operacionais Introdução

Sistema de Controle de Versão - CVS

Administração de Sistemas Livres. Prof. Lais Farias Alves

Sistema Operacional Ex: Complexo Computador multiusuário com vários terminais Tem que administrar todos os pedidos de usuários e assegurar que eles

Visão Geral de Sistemas Operacionais

Sistemas Operacionais

Sistemas Operacionais. Roteiro. Hardware. Marcos Laureano

Windows NT 4.0. Centro de Computação

Apresentação da disciplina. Sistemas Operacionais I N. A disciplina. O Professor. Áreas de atuação na pesquisa. Referências bibliográficas básicas

Aula 3. Sistemas Operacionais. Prof: Carlos Eduardo de Carvalho Dantas

O que é o Android? O que é o Android

Sistemas de Tempo Real

Introdução à Ciência da Computação

Sistemas Operacionais

Software livre: solução ou problema? Autores: Prates, C. F., Souza, C. H. F. B., Castro, C. V., Vilela, D. R. G., Almeida, N. M

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais

Figura 01 Kernel de um Sistema Operacional

Processos e Threads (partes I e II)

Noções de Software. André Aziz Francielle Santos

ENG1000 Introdução à Engenharia

SFD Carla Souza Otacílio Lacerda

Acronis Backup & Recovery 10

Principais Sistemas Operacionais. Prof. Fernando Nakayama de Queiroz

Sistema Operacional LINUX

Capítulo 1. Introdução

SISTEMAS OPERACIONAIS

Ciclo de Vida de um Processo

Distribuições de Linux embarcado. O mercado de Linux embarcado. Distribuição Linux: desktop x embarcados. Projeção do mercado de Linux embarcado

SISTEMAS OPERACIONAIS

No mercado atual, podemos encontrar vários tipos de sistemas operacionais que fazem parte das seguintes classes:

Udesc/Ceplan Bacharelado em Sistemas de Informação Sistemas Operacionais. Prof. Alexandre Veloso

Administração de Sistemas Operacionais

Sistemas Operacionais

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

SISTEMAS OPERACIONAIS 2007

VirtuOS vrs para usuários da vrs. 3.01a R.10

TempOS: faça seu próprio sistema operacional à mão, e do zero!

Concurso Público para provimento de cargo efetivo de Docentes. Edital 20/2015 CIÊNCIA DA COMPUTAÇÃO I Campus Rio Pomba

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

Integração de Sistemas Embebidos MECom :: 5º ano

ANÁLISE DE DESEMPENHO DA PARALELIZAÇÃO DO CÁLCULO DE NÚMEROS PRIMOS UTILIZANDO PTHREAD E OPENMP 1

Inicialização rápida da instalação SUSE Linux Enterprise Server 11 SP1

Virtualização e kernel, vistos por dentro

Sistemas Operacionais

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Transcrição:

Real Time Linux Walter Fetter Lages w.fetter@ieee.org Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica Programa de Pós-Graduação em Engenharia Elétrica ELE213 Programação de Sistemas de Tempo Real Copyright (c) Walter Fetter Lages p.1

Introdução Linux é um kernel de sistema operacional de uso geral Otimizado para desempenho médio para todos os processos Resolução do timer 100Hz no 80x86 100Hz, 250Hz ou 1000Hz a partir da versão 2.6.x 1024Hz no Alpha Escalonamento não tempo real Real Time Linux Adaptação do Linux para tempo-real Alterações na resolução do kernel Alterações no escalonamento Copyright (c) Walter Fetter Lages p.2

Variantes de Linux Tempo Real Hard real time RT-Linux RTAI Xenomai PREEMPT_RT Firm real time KURT Soft real time Linux/RK RED-Linux SMART-Linux ART Linux Linux-SRT Qlinux Copyright (c) Walter Fetter Lages p.3

RT-Linux Desenvolvido por Victor Yodaiken e Michael Barabanov no NMT Executa o kernel do Linux como a tarefa de menor prioridade Substitui os CLIs, STIs e IRETs do kernel padrão do Linux por macros (virtualização) Kernel do Linux completamente preemptível Tratadores de interrupção nunca são atrasados por tarefas não tempo real As últimas versões suportam programação em tempo real ao nível de usuário (LXRT) Copyright (c) Walter Fetter Lages p.4

RT-Linux RT-Linux e tarefas de tempo real são módulos do kernel Escalonamento baseado em prioridades Tarefa de Tempo Real 1 Escalonamento Tarefa de Tempo Real n Processo do Linux 1 Escalonamento Escalonamento Processo do Linux n Kernel do Linux Interrupções de Software Kernel de Tempo Real do RT-Linux Hardware Interrupções de Hardware Copyright (c) Walter Fetter Lages p.5

Real Time Application Interface Desenvolvido por Paolo Mantegazza no Instituto Politécnico de Milão a partir do RT-Linux Utiliza o conceito de HAL e pipeline de interrupções Mais ênfase a aplicabilidade do sistema do que à índices de desempenhos teóricos Suporta programação em tempo real a nível de usuário (LXRT) e ponto flutuante desde as primeiras versões Copyright (c) Walter Fetter Lages p.6

RTAI Chaveamento entre RTAI e kernel padrão Se o RTAI não está montado o kernel normal do Linux é utilizado Suporta SMP Interface estilo POSIX threads Diversos escalonadores disponíveis Copyright (c) Walter Fetter Lages p.7

Xenomai Framework para portar sistemas de tempo real proprietários para o Linux Versão 1 executava sobre o RT-Linux, RTAI ou LinuxThreads Componente standalone do RTAI Suporte a diversas APIs Versão 2 independente do RTAI Suporta (incentiva) tarefas de tempo real no espaço do usuário Copyright (c) Walter Fetter Lages p.8

Xenomai Sistema com dois kernels Linux como domínio de menor prioridade do ADEOS Modo primário, kernel do Xenomai Modo secundário, kernel do Linux Tarefas de Tempo Real Processos do Linux Nativa POSIX psos+ uitron VXRT VxWORKSRTDM Kernel do Xenomai Kernel do Linux Abstração de Hardware ADEOS Copyright (c) Walter Fetter Lages p.9

PREEMPT_RT RT-Linux, RTAI e Xenomai não foram aceitos para o kernel do Linux A idéia de ter um subsistema com prioridade maior do que o kernel não é natural kernel do Linux não preemptível e muitos patches seriam necessários PREEMPT_RT foi desenvolvido inicialmente por Ingo Molnár e posteriormente por Thomas Gleixner Pequenos patches para tornar o kernel preemptível Copyright (c) Walter Fetter Lages p.10

PREEMPT_RT O PREEMPT_RT são os patches ainda não aceitos para tornar o kernel totalmente preemptível Utiliza as mesmas APIs do Linux convencional Sem o PREEMPT_RT o programa não executa em tempo real Em alguns casos possível executar um programa convencional, sem qualquer modificação, em tempo real Utiliza dos drivers do Linux As tarefas do Linux precisam ser consideradas no escalonamento Copyright (c) Walter Fetter Lages p.11