Linux e sistemas embarcados

download Linux e sistemas embarcados

If you can't read please download the document

Transcript of Linux e sistemas embarcados

Tipos Linux tradicionalLinux embarcadoCaractersticas InterfacesEscritrio, multimdia, desenvolvimento, jogos, etc.Interface personalizada para a aplicao que ser empregada.Utilitriosls, cp, mv, rm, mkdir, cd, rmdir, wget, joe, ssh, gcc, httpd, etc.Implementaes mais leves, que consomem menos recursos e memria.Bibliotecaslibxml, libvorbis, zlib, libstdc++, etc.Biblioteca Cglibc (Biblioteca GNU C)uClibc (muito mais leve, e otimizada para UCPs sem MMU)KernelKernel completo, com todos os drivers, para a maioria do hardware.Kernel customizado, com os drivers realmente necessrios.

???Pgina ??? (???)09/06/2008, 02:08:52Pgina / Linux e sistemas embarcados

Ricardo Jurczyk Pinheiro

O que um sistema embarcado?

Sistema onde o computador completamente encapsulado e dedicado ao dispositivo ou sistema que ele controla. (Wikipedia)

Sistema que usa microprocessadores ou microcontroladores.

Foco de uso muito especfico.

Aplicao salva em memria de somente leitura.

Restries de tamanho e/ou de consumo de energia.

Alguns esclarecimentos

Microcontrolador Um microprocessador otimizado para controlar dispositivos eletrnicos.

Firmware - Software que controla diretamente o hardware.

Homebrew Desenvolvido como hobby, o popular fazido por eu.

Sistemas de tempo real Sistemas onde o tempo de execuo rgido.

Histria

Anos 1960 - 1o sistema embarcado.

Apollo Guidance Computer Computador de navegao usado no Projeto Apollo.

1961 1o sistema embarcado feito em larga escala.

Computador de navegao do mssil nuclear LGM-30 Mssil Minuteman.

Anos 1970 Criao do microprocessador; reduo do tamanho e do preo.

Anos 1980 Uso em larga escala de eletrnica digital torna-se a regra.

Exemplos de uso de sistemas embarcados

Avinica;

Centrais telefnicas;

Equipamentos de rede;

Impressoras;

Freios ABS;

Controle de trao;

Fornos de microondas;

Televisores;

Videogames

Palmtops;

Celulares;

Calculadoras;

CLPs industriais;

Automao comercial;

Automao industrial;

E o cu o limite!

Exemplos de microcontroladores

ARM

Coldfire (Motorola)

MIPS

PowerPC

Famlia SH (Hitachi)

Famlia Z80 (Zilog)

Exemplos de sistemas operacionais embarcados

eCos.

Windows CE.

VxWorks.

Inferno.

Free RTOS.

QNX.

Esystech X RTOS (nacional).

VirtuOS (nacional).

HardHat Linux (Montavista).

Zeroshell Linux.

ngstrm Linux.

Palm OS.

Symbian OS.

O que o Linux?

Sistema operacional de cdigo aberto, baseado em Unix.

Kernel monoltico, mantido por Linus Torvalds e muitos outros ao redor do mundo (desde 1991).

Um conjunto de programas, cada vez maior!

Verso atual do kernel: 2.6.25.6 (10/06/2008)

Licena de uso GPL.

O sistema do pinguim (Tux).

Por que usar Linux num projeto embarcado?

Cdigo-fonte disponvel e de boa qualidade.

Muitas aplicaes disponveis.

Distribuio Debian - Mais de 15.000 pacotes disponveis via Internet para serem instalados.

Portvel e escalvel.

Reduo de custos.

Suporte

Frum, listas, email, FAQs, exemplos, suporte comercial disponvel.

Exemplos de uso do Linux em sistemas embarcados

Linksys WRT54G (roteador).

Sharp Zaurus (palmtop).

Motorola A1200 (celular).

Nokia N770, 800 e 810 (Internet tablet).

Samsung Qtopia (celular).

Asus WL-700gE (roteador).

Axis 2120 (cmera).

Tom Tom Go (GPS).

BIOS das novas placas-me Asus.

Exemplos de uso do Linux em sistemas embarcados

Linksys NSLU2 (NAS).

GP2X (videogame porttil).

Fujitsu-Siemens Futro S (cliente leve).

eRead Star eBook STK-101 (leitor).

Chumby (dispositivo multi-funo).

Firmware Linux para o Apple iPod.

OpenWRT distribuio para dispositivos embarcados.

OpenMoko (celular).

H mercado para o Linux em sistemas embarcados?

Pesquisa realizada pelo site LinuxDevices: http://tinyurl.com/3jlg36

Linux tradicional x Linux embarcado

Nem tudo so flores...

O desenvolvimento constante, e com isso, tem problemas.

Necessidade de otimizar o sistema para um propsito especfico.

Muitas aplicaes, necessria uma anlise mais cuidadosa.

Questes de licena devem ser verificadas.

Suporte de qualidade mais fcil encontrado se for (bem) pago.

Alguns exemplos de uso (mais aprofundados)

Nokia Internet tablets

Rockbox.

GP2X.

Celulares com Linux.

OpenMoko.

Android.

OpenWRT.

Firmwares para equipamentos de rede.

ngstrm Linux.

Nokia Internet tablets

N770, N800 e N810.

Wi-fi, Bluetooth, cartes SD, USB, webcam, rdio FM, etc.

Comunidade homebrew bem ativa.

Verso com WiMAX.

Internet Tablet OS (Maemo - Linux)

Nokia Internet Tablets

Instituto Nokia de Tecnologia

Recife, Manaus e Braslia.

Mais de 150 profissionais.

Desenvolve tecnologia tambm para os tablets.

Canola Media center para os tablets, made in Brazil.

Rockbox

Firmware em cdigo-aberto para MP3 players.

Suportado por mais de 25 modelos, dos fabricantes:

Apple, Archos, Cowon

Creative, iRiver, Philips

Olympus, Rio, Toshiba

Extenses por plugins.

Rockbox

Suporte para vrios codecs de udio e vdeo (OGG, FLAC, JPEG, MPEG, etc)

Cross-fading.

Suporte para mais de 30 idiomas.

Interface falada (opcional).

Jogos (Doom!) e emuladores (NES e GameBoy).

E muito mais!

GP2X

Video-game porttil e player de mdia.

Herdeiro do GP32.

Baseado em Linux.

GamePark (Coria do Sul).

Criado para o mercado homebrew.

Sada para TV, carto SD, tela sensvel ao toque, suporte nativo a vdeo (DivX), adio (MP3), etc.

GP2X

Poucos jogos comerciais, muitos jogos homebrew.

Muitos emuladores.

Evoluo: Projeto Pandora.

Misto de video-game e palmtop com portas USB, carto SD, Wi-Fi, Bluetooth, acelermetros, etc.

Acelerao 3D (uso de OpenGL).

Uso de software para Linux (Debian).

Celulares com Linux

So vrios fabricantes, na maioria pouco conhecidos no mercado nacional.

A Motorola tem uma linha grande de celulares com Linux: RAZR2 V8, ROKR E2, E6, E8, MotoRIZR Z6, SCPL, A728, A732, A760, A768, A910, A1200, E680, E895, entre outros.

Celulares com Linux

Conjunto de programas livres para os Motorola EZX (E680, etc)

Consrcio da indstria (LG, Motorola, NEC, Panasonic, Samsung), operadoras de celular (Verizon), Fundao Mozilla, etc.

Objetivo: Um sistema operacional baseado em Linux para celulares.

OpenMoko

Plataforma baseada em Linux

para smartphones.

Cdigo livre (GPL)

FIC Neo1973 e Neo FreeRunner

GPS, Wi-fi, acelerao 3D, Bluetooth, 3G, acelermetros, etc.

Interface: Enlightenment - E17.

20% dos celulares tero Linux em 2013 (IT Web, 24/04/08)

Android

Sistema operacional baseado em Linux para celulares.

Open Handset Alliance

Consrcio liderado pelo Google.

34 empresas participantes.

Concurso de desenvolvimento (com prmio$).

Primeiros celulares no fim de 2008.

Artigo: http://tinyurl.com/5uhrkd

OpenWRT

Distribuio para dispositivos embarcados.

Variedade grande de dispositivos

Mais de 75 aparelhos plenamente suportados.

Inicialmente feito para o WRT54G (Linksys)

Duas verses:

White Russian (estvel) - 0.9

Kamikaze (beta) - 7.09

OpenWRT

Ganho de sinal.

DNS dinmico.

VPN.

Wake-on-LAN.

Tunelamento.

Mais estabilidade.

E muito mais.

Milhares de programas para instalar.

Vrias distros derivadas.

Opes de interfaces grficas (como o X-Wrt).

Firmwares para equipamentos de rede

3Com.

Asus.

Buffalo.

Cyclades.

D-Link.

Iomega.

Linksys.

Netgear.

Ovislink.

Planet.

Soluo adotada por fabricantes

para alguns modelos:

Firmwares para equipamentos de rede

Empresas que desenvolvem

firmwares para roteadores:

Wappro (http://www.wappro.com.br)

ApRouter (http://www.aprouter.com.br)

Alguns firmwares alternativos:

OpenWRT, DD-WRT, Tomato, Freifunk, Sveasoft, Chilispot, FON... Mais de 25 firmwares!

ngstrm Linux

Distro para palmtops e smartphones.

Interfaces:

GPE (GNOME).

Opie (KDE).

E17 (Enlightenment).

Mesmo sistema de

pacotes do OpenWRT.

ngstrm Linux

Verso alfa (ainda).

Funciona em palmtops com Windows Mobile ou Palm OS.

G(PE)^2

verso para smartphones.

E agora, Jos?

Interessou-se?

Informe-se:

http://pinguinsmoveis.com

http://www.linuxabordo.com.br

http://www.free-electrons.com

http://www.portalandroid.org

Leia MUITO, e no tenha medo do ingls.

Participe de frums na Internet.

Aventure-se, inicialmente com emuladores e depois, equipamentos reais.

Maiores informaes

Rockbox: http://www.rockbox.org

GP2X: http://www.gp2x.com

OpenEZX: http://www.openezx.org

LiMo Foundation: http://www.limofoundation.org/

OpenMoko: http://www.openmoko.org

Android: http://code.google.com/android

OpenWRT: http://www.openwrt.org

ngstrm Linux: http://tinyurl.com/yj8qo6

Fim

Questo legal:

Esta apresentao foi baseada em Criando sistemas embarcados com Linux da teoria prtica, de Marcelo Barros de Almeida (http://linuxabordo.com.br/), e tal como ela, distribuda segundo a licena Creative Commons ShareAlike 2.5, logo:

Liberada a cpia, reproduo e trabalhos derivados.

Crditos devem ser mantidos.

Trabalhos derivados devem ser compartilhados.

Texto da licena: http://tinyurl.com/492ssd

Klicken Sie, um das Format des Titeltextes zu bearbeiten

Klicken Sie, um die Formate des Gliederungstextes zu bearbeiten

Zweite Gliederungsebene

Dritte Gliederungsebene

Vierte Gliederungsebene

Fnfte Gliederungsebene

Sechste Gliederungsebene

Siebente Gliederungsebene

Achte Gliederungsebene

Neunte Gliederungsebene