Community Edition 77 - Linux Magazine Online

linuxmagazine.com.br

Community Edition 77 - Linux Magazine Online

Expediente editorial

Diretor Geral

Rafael Peregrino da Silva

rperegrino@linuxmagazine.com.br

Editores

Flávia Jobstraibizer

fjobs@linuxmagazine.com.br

Kemel Zaidan

kzaidan@linuxmagazine.com.br

Editora de Arte

Larissa Lima Zanini

llima@linuxmagazine.com.br

Colaboradores

Alessandro Faria, Alexandre Borges, Alexandre Santos,

Augusto Campos, Daniel Kottmair, Marcel Hilzinger,

Markus Junginger, Karsten Günther, Petros Koutoupis ,

Sebastian Kummer, Stefan Wintermeyer, Tim Schürmann.

Tradução

Emersom Satomi e Michelle Ribeiro

Editores internacionais

Uli Bantle, Andreas Bohle, Jens-Christoph Brendel,

Hans-Georg Eßer, Markus Feilner, Oliver Frommel,

Marcel Hilzinger, Mathias Huber, Anika Kehrer,

Kristian Kißling, Jan Kleinert, Daniel Kottmair,

Thomas Leichtenstern, Jörg Luther, Nils Magnus.

Anúncios:

Rafael Peregrino da Silva (Brasil)

anuncios@linuxmagazine.com.br

Tel.: +55 (0)11 3675-2600

Penny Wilby (Reino Unido e Irlanda)

pwilby@linux-magazine.com

Amy Phalen (América do Norte)

aphalen@linuxpromagazine.com

Hubert Wiest (Outros países)

hwiest@linuxnewmedia.de

Diretor de operações

Claudio Bazzoli

cbazzoli@linuxmagazine.com.br

Na Internet:

www.linuxmagazine.com.br – Brasil

www.linux-magazin.de – Alemanha

www.linux-magazine.com – Portal Mundial

www.linuxmagazine.com.au – Austrália

www.linux-magazine.es – Espanha

www.linux-magazine.pl – Polônia

www.linux-magazine.co.uk – Reino Unido

www.linuxpromagazine.com – América do Norte

Apesar de todos os cuidados possíveis terem sido tomados

durante a produção desta revista, a editora não é responsável

por eventuais imprecisões nela contidas ou por consequências

que advenham de seu uso. A utilização de qualquer material

da revista ocorre por conta e risco do leitor.

Nenhum material pode ser reproduzido em qualquer meio,

em parte ou no todo, sem permissão expressa da editora.

Assume-se que qualquer correspondência recebida, tal como

cartas, emails, faxes, fotografi as, artigos e desenhos, sejam

fornecidos para publicação ou licenciamento a terceiros de

forma mundial não-exclusiva pela Linux New Media do Brasil,

a menos que explicitamente indicado.

Linux é uma marca registrada de Linus Torvalds.

Linux Magazine é publicada mensalmente por:

Linux New Media do Brasil Editora Ltda.

Rua São Bento, 500

Conj. 802 – Sé

01010-001 – São Paulo – SP – Brasil

Tel.: +55 (0)11 3675-2600

Direitos Autorais e Marcas Registradas © 2004 - 2011–:

Linux New Media do Brasil Editora Ltda.

Impressão e Acabamento: RR Donnelley

Distribuída em todo o país pela Dinap S.A.,

Distribuidora Nacional de Publicações, São Paulo.

Atendimento Assinante

www.linuxnewmedia.com.br/atendimento

São Paulo: +55 (0)11 3675-2600

Rio de Janeiro: +55 (0)21 3512 0888

Belo Horizonte: +55 (0)31 3516 1280

ISSN 1806-9428

Impresso no Brasil

Iniciativas criativas

Em tempos de computação em nuvem e computação móvel, conforme

já escrevi alhures, há uma enxurrada de oportunidades para estabelecer

negócios bem sucedidos no mercado – algo que não se restringe ao

mercado nacional, inclusive. Empresas “de garagem” nunca foram tão

requisitadas como hoje. Há um gigantesco déficit na cadeia de produção

de programas para dispositivos móveis, ao mesmo tempo que vários conjuntos

de ferramentas e lojas de aplicativos bem estruturadas estão disponíveis

(gratuitamente) para quem quiser criar e comercializar aplicativos.

Seguindo o mantra do mercado capitalista moderno, a tônica de iniciativas

em torno do desenvolvimento desses aplicativos é: procure uma

necessidade e atenda-a com excelência. Simples assim. O homem hodierno,

entretanto, NÃO sabe realmente quais são as suas necessidades,

especialmente no que tange a software. Assim, cabe ao desenvolvedor e/ou

ao empreendedor observar atentamente o comportamento de grupos de

usuários: eles vivem dando dicas sobre recursos que gostariam de ver em

seus sistemas, gadgets , celulares, smartphones , tablets etc., em redes sociais

e fóruns especializados em tecnologia. Muitas vezes, entretanto, eles não

sabem o que querem, mas quando se deparam com “a coisa” funcionando,

imediatamente alegam que era isso que “sempre” quiseram. Para quem

vive de tecnologia, como saber qual ideia vai “pegar”? Como identificar as

necessidades que nem mesmo os próprios clientes estão cientes de existir?

Infelizmente (ou não), não há uma resposta definitiva para essa questão,

mas existem várias “pistas”: primeiramente, vale a pena considerar

as necessidades básicas do ser humano no que tange à obtenção de

informações. Como fazer para acessar o serviço de home banking para

pagar aquela conta que vence hoje? Como obter os dados do balanço

da empresa para aquela reunião em outro continente, quando os dados

armazenados no pendrive USB foram corrompidos durante o transporte?

É meia-noite e as fraldas acabaram (em uma cidade de 10 mil habitantes);

existe um serviço de disque-fraldas com entrega expressa nessa região?

Se observarmos os exemplos acima, cada um deles é um problema

clamando por uma solução simples de usar, confortável, intuitiva,

flexível, sempre disponível e de baixo custo. Mais importante ainda,

temos que nos despir de preconceitos e ideias preconcebidas, e pensar

de maneira criativa para resolvê-los.

Por outro lado, ocorre frequentemente que aplicativos despretensiosos,

que podem mesmo ser classificados na categoria dos “inutilitários”,

acabem por emplacar estrondosamente. Um exemplo clássico disso

é um aplicativo simples para o Android e o iPhone chamado Talking

Tom Cat, no qual um gato é capaz de repetir tudo que se fala para ele

com uma voz engraçada, pode arranhar a tela do aparelho, tomar leite

e receber carinho. Apesar de não ter nenhuma utilidade prática, o

programa é muito divertido, e sua versão paga já foi comprada milhares

de vezes! Investir no desenvolvimento de aplicativos diferentes e

divertidos, mesmo que aparentemente inúteis, é pensar criativamente.

São iniciativas como essa, que fazem o diferencial e podem levar ao

sucesso. Aproveite a enxurrada de dispositivos móveis para dar asas à

sua criatividade: isso pode render mais do que você imagina!

EDITORIAL

Rafael Peregrino da Silva

Diretor de Redação

Linux Magazine #77 | Abril de 2011

3


ÍNDICE

CAPA

Práticos portáteis 35

Entre os dispositivos móveis, os tablets fi guram no topo da lista

de desejos de quem deseja mobilidade com praticidade.

A guerra dos tablets 36

O iPad é um dos muitos produtos da Apple no qual a concorrência

encontra difi culdades para competir. Contudo, examinamos algumas

alternativas genuínas que estão chegando e conquistando o mercado.

Galáxia portátil 40

Muitos encaram o Galaxy Tab da Samsung como o único

tablet páreo para o iPad em termos de qualidade e recursos.

Colocamos esse computador de 7 polegadas à prova.

Aplicativos em alta 43

A Intel quer uma fatia do bolo das lojas online de aplicativos

com seu AppUp Center, que mantém o foco nos netbooks

Android na bandeja 46

Por meio de algumas unidades para demonstração e vídeos no YouTube

durante a Consumer Electronics Show (CES), o Google forneceu um “tiragosto”

da próxima versão do Android. Com o lançamento do SDK dessa

versão, há fi nalmente informações detalhadas a respeito do sistema.

6 www.linuxmagazine.com.br


Linux Magazine 77 | ÍNDICE

COLUNAS

Klaus Knopper 10

ANÁLISE

Sob o olhar da Zarafa - parte I 56

Charly Kühnast 12

Zack Brown 14

Augusto Campos 16

Kurt Seifried 18

Alexandre Borges 22

NOTÍCIAS

Geral 24

➧ Projeto GNU quer criar alternativa ao Skype

➧ Projeto Debian anuncia primeiro mirror security.

debian.org da América do Sul

➧ HP disponibiliza versão 2.1 do SDK do WebOS

➧ Microsoft abre loja virtual no Brasil

Linux 2.6.38 tem aumento de desempenho

CORPORATE

Notícias 26

➧ Executivo da Canonical e líder do Debian em projeto conjunto

➧ Nova plataforma de aplicações da Red Hat

inclui solução de virtualização

➧ Aplicativos para dispositivos móveis infringem licenças livres

➧ IBM inaugura laboratório de pesquisa e centro

de soluções no Rio de Janeiro

Dificuldades para implementar uma solução de email na empresa

onde trabalha? A diretoria quer recursos avançados e anda sugerindo

até o MS Exchange? Aprenda como deixar seu diretor feliz com Linux!

Encolhimento digital 60

A maioria dos discos rígidos possui dados duplicados

ou até mesmo triplicados. O LessFS usa um método

sofi sticado para remover esses rastros do seu disco.

Real versus virtual 63

A tecnologia da realidade aumentada, além de fascinar

qualquer ser humano, é um assunto emergente.

Neste artigo, veremos seus princípios básicos.

Visão de raio-x 68

Que componentes fazem parte de seu computador? A

ferramenta lshw revela detalhes do hardware que você talvez

não encontre nem mesmo na especifi cação do fabricante.

Entrevista com Gilberto Mautner 28

Com a evolução das tecnologias que tornam possível

oferecer cada vez mais serviços nas nuvens, é natural que

a plataforma ganhe cada vez mais adeptos. Mas ao mesmo

tempo, cresce também a desconfi ança e o receio com

questões ligadas à segurança e acesso aos dados online.

TUTORIAL

Toque perfeito 48

Coluna: Jon “maddog” Hall 30

Coluna: Alexandre Santos 32

Coluna: Rafael Peregrino 34

REDES

Macio como manteiga 72

A partir da versão 2.0 do Android, os desenvolvedores agora têm acesso

à funções multitoque. Mas é preciso cuidado ao manipular a API .

VoIP com Asterisk – parte VI 52

O sistema telefônico ultrapassado, presente até pouco tempo atrás nas

empresas, é prolífico em cobranças: cada novo recurso ativado requer

uma nova ativação de serviço, com o preço adicionado ao pagamento

mensal. É hora de mudar. É hora de criar sua própria central VoIP.

SERVIÇOS

O Btrfs tem conquistado especialistas, com

recursos avançados como subvolumes, snapshots

e redimensionamento dinâmico de volume.

Editorial 03

Emails 08

Linux.local 78

Preview 82

Linux Magazine #77 | Abril de 2011

7


CARTAS

Emails para o editor

Permissão

de escrita

sanja gjenero – www.sxc.hu

Coluna do Charly

Dentre muitas coisas interessantes

nas edições da Linux Magazine,

estou sempre ansioso para ver qual

utilitário o Charly irá apresentar em

sua coluna mensal. Das muitas já

apresentadas (todas muito simples,

mas que facilitam muito a vida de

um administrador de sistemas), a

ferramenta CSSH (apresentada na

Linux Magazine 75) me deixou

eufórico. Extremamente poderosa, irá

me ajudar muito na administração de

servidores, switches, roteadores etc.

Parabéns Charly pelos ótimos artigos.

Adriano Matos Meier

Resposta

Realmente Adriano, a ferramenta

CSSH é tão poderosa, que

pretendemos abordá-la em artigos

mais completos e abrangentes,

apresentando mais dos fantásticos

recursos que ela possui. Pode

ter certeza de que já estamos

trabalhando nisso!

Open VPN

Sou leitor da Linux Magazine e

gostaria de sugerir artigos sobre VPN,

mais especificamente abordando o

OpenVPN e o OpenSWAN, suas

características e diferenças.

Antonio Luis Navas Rodrigues.

Resposta

Antonio, agradecemos a sua sugestão!

O OpenVPN em particular é uma

ferramenta da qual gostamos muito

e costumamos abordar sempre

suas novidades, seu uso e recursos

em artigos da Linux Magazine.

Como exemplo, confira o artigo

“Segredos sem fio”, publicado na

Linux Magazine 07 e que aborda

a criação de túneis criptografados

com OpenVPN. Certamente vamos

publicar mais artigos sobre esta

fantástica ferramenta!

GTK

Gostaria, em primeiro lugar, de parabenizá-los

pela Linux Magazine.

Sou assinante da revista e gostaria

de fazer uma sugestão de artigos

relacionados à programação GTK,

especialmente focado em linguagem

C com GTK.

Obrigado!

João Vieira

Resposta

Caro João, agradecemos a sua sugestão.

Vamos procurar, em edições

futuras, publicar mais artigos

contendo programação com GTK,

pois diversos de nossos leitores são

desenvolvedores GTK e procuram

por este tipo de material. Aguarde!

Escreva para nós! ✉

Sempre queremos sua opinião sobre a Linux Magazine e nossos artigos. Envie seus emails para

cartas@linuxmagazine.com.br e compartilhe suas dúvidas, opiniões, sugestões e críticas. Infelizmente, devido ao

volume de emails, não podemos garantir que seu email seja publicado, mas é certo que ele será lido e analisado.

8

www.linuxmagazine.com.br


Coluna do Augusto

COLUNA

Escolhas: cada

um tem a sua

Quando não há uma opção nativa e livre para GNU /

Linux de um determinado software, nada como uma

solução multiplataforma para contornar a situação. Com

sorte, podemos obter boas surpresas no fi nal.

Quando se trata de escolher aplicativos para adotar

ou mesmo para receber apoio no desktop

baseado em GNU/Linux, as alternativas em

código aberto contam com a simpatia e a preferência

de quase todos os usuários.

Ao mesmo tempo, a ausência de suporte a alguns

aplicativos relativamente populares já foi uma explicação

frequente para a não adoção do desktop Linux

– especialmente entre usuários que não são especialmente

sensíveis à questão da liberdade das licenças dos

softwares que usam, e os escolhem com base em outras

demandas ou critérios de preferência.

No que diz respeito ao atendimento das demandas

deste contingente de usuários, e a sua possível adição

subsequente à fatia de mercado que representa a plataforma

GNU/Linux (aumentando assim a atratividade

para mais desenvolvedores e prestadores investirem

nela), a tendência dos últimos anos quanto a aplicativos

multiplataforma ou supra-plataforma é portanto

bastante positiva.

Afinal, quando a camada superior da plataforma de

aplicações é o navegador web, o desktop Linux está muito

bem servido, com versões nativas dos navegadores que

há anos definem o conceito de aderência a padrões web,

desempenho e estabilidade. Assim, a popularização dos

chamados aplicativos “da nuvem”, incluindo pacotes de

ferramentas para automação de escritório, comunicadores,

agregadores etc., já serviu para tornar o sistema mais

palatável para uma parcela maior de usuários.

Os aplicativos Java também cumpriram em parte este

papel mas, como muitos usuários do sistema de Imposto

de Renda de Pessoa Física podem atestar, as diferenças

entre as configurações padrão das diversas distribuições

populares tornaram bem mais difícil (mesmo quando

havia boa vontade específica por parte dos desenvolvedores

e estrutura de suporte) transformar em realidade

a promessa de aplicativos interoperáveis que instalem

e sejam executadas com facilidade.

Uma novidade relativamente recente que surgiu

no radar e ainda não foi detectada por muitos, são os

aplicativos em Adobe AIR. O que é possível fazer com

eles é um pouco limitado, pois em sua essência um

aplicativo AIR continua sendo uma web app (aplicativo

web), mas em compensação, a instalação costuma ser

simples e o suporte ao Linux é natural, do ponto de vista

do desenvolvedor.

Existem vários títulos interessantes feitos em AIR e

já disponíveis para Linux. Os meus favoritos são o TweetDeck,

um cliente para o serviço do Twitter, e o Zinio

Reader, uma interessante implementação de assinatura

e leitura de versões digitais de revistas impressas. Mas há

vários outros conceitos interessantes sendo explorados:

pesquise por nomes como Klok (gestão de tarefas), Snackr

(um jeito diferente de acompanhar feeds) e outros

títulos do AIR Marketplace.

Na minha opinião, nenhuma alternativa é melhor

que bons aplicativos nativos – e se eles forem de código

aberto, melhor ainda. Mas quando há ausência destes,

a existência de suporte por modelos multiplataforma é

apreciada pelos usuários e, felizmente, às vezes também

serve para estimular o desenvolvimento de equivalentes

em código aberto. ■

Augusto César Campos é administrador de TI e, desde 1996, mantém

o site BR-linux.org, que cobre a cena do Software Livre no Brasil

e no mundo.

16

www.linuxmagazine.com.br


Coluna do Alexandre

COLUNA

Aprenda com o

boot do Linux

Entenda como o kernel Linux faz o endereçamento de

memória através das mensagens de boot do sistema.

Talvez seja possível que o leitor nunca tenha prestado

atenção no boot do Linux e na riqueza de

detalhes que o mesmo oferece, e que, ao mesmo

tempo, também apresenta algumas informações

enigmáticas que podem não ter qualquer relevância

para a maioria dos usuários que utilizam o sistema

operacional para produzir resultados. Entretanto, são

muito importantes para aqueles que realizam trabalhos

relacionados ao kernel.

Existem muitas formas de examinar as mensagens oferecidas

pelo kernel durante o boot do Linux, sendo possível

utilizar o comando more /var/log/messages ou também

dmesg | more para tal. É evidente que tentar explicar todo

o boot em uma coluna é algo impossível, porém podemos

comentar um ou outro ponto aqui. Exemplos:

Como o leitor já sabe através

de seu auto-aprendizado,

processadores x86 têm dois

modos de operação: Real

e Protegido, sendo que no

primeiro, o mesmo somente

pode acessar 1Mb de memória

RAM e, logo em seguida,

esta operação é trocada para

modo Protegido através da

função start_kernel() que se

encontra em init/main.c .

BIOS-provided physical RAM map:

BIOS-e820: 0000000000000000 - 000000000009f800

(usable)

BIOS-e820: 000000000009f800 - 00000000000a0000

(reserved)

Como o leitor já sabe através de seu auto-aprendizado,

processadores x86 têm dois modos de operação: Real e

Protegido, sendo que no primeiro, o mesmo somente

pode acessar 1Mb de memória RAM e, logo em seguida,

esta operação é trocada para modo Protegido através

da função start_kernel() que se encontra em init/

main.c . Sugiro, caso não tenha o código-fonte do kernel

em sua máquina, visualizar o mesmo em http://lxr.

linux.no/linux/ ou ainda se quiser, pode obtê-lo usando

a sequência (Debian ou Ubuntu):

# apt-get install git-core

# git clone git://git.kernel.org/pub/scm/linux/

kernel/git/torvalds/linux-2.6.git linux-2.6

# git pull (apenas se estiver interessado nas

atualizações constantes do kernel)

Por isto, justamente enquanto o kernel está no modo

Real, ele utiliza (através do código em arch/x86/kernel/

setup.c ) alguns serviços de interrupção da BIOS (no

caso acima, serviço 15 e função 0xe820 – que dá nome

ao que o leitor lê na saída acima) para obter um mapa

da memória, que será utilizado pelo kernel [1] . É útil

notar que o kernel aproveita esta passagem pelo modo

Real do processador para coletar diversas informações

e salvá-las inicialmente na primeira página física de

memória (que é dividida, em geral 4096 bytes, definido

com uma macro em include/asm/page.h ) para, mais

tarde, após chavear para modo Protegido, salvar estes

dados nas estruturas de dados do kernel.

Por falar nas estruturas de dados do kernel, é provável

que você observe outras linhas interessantes no boot:

22

www.linuxmagazine.com.br


887MB LOWMEM available

Zone PFN ranges:

DMA 0x00000010 -> 0x00001000

Normal 0x00001000 -> 0x000377fe

HighMem 0x000377fe -> 0x00080000

A memória é normalmente dividida em partes e justamente

no momento do boot é que o kernel calcula

estas porções (que ele nomeia como sendo zonas). Esta

zona mostrada acima (887 MB, que poderia ser qualquer

número entre 16MB e 896Mb) é utilizada pelo código

do kernel (função kmalloc() ). Esta utilização é possível

já que o kernel pode fazer um mapeamento um-pra-um

do endereço físico da RAM para o endereço lógico do

kernel, apenas defasadas com um offset.

Como o próprio kernel, em sistemas x86, faz uma

divisão de 3Gb para processos do usuário e 1Gb para

ele próprio (o kernel x86 pode endereçar mais de 4Gb

devido às extensões), esta diferença (1GB – LOWMEM)

é justamente o quanto o kernel usa para suas estruturas

de dados (mencionadas acima).

A região que está abaixo dos 16Mb é para uso do

DMA ( Direct Memory Access ) e de uso dos dispositivos

ISA. A memória acima dos 896Mb é conhecida como

HIGHMEM sendo que para o kernel utilizá-la é gerado

um endereçamento virtual mapeando algumas destas

áreas acima de 1Gb para regiões abaixo de 1Gb (neste

caso já não há mais esta paridade um-pra-um com a

memória física e provavelmente seja usada as funções

kmap() ou ainda vmalloc() ). Como dito antes, o uso comum

é para processos do usuário e não para o kernel em si.

Fica fácil perceber que algumas poucas linhas do

boot do kernel nos trazem muitos conceitos, e destes,

surgem outros assuntos bastante reluzentes que podem

trazer dicas de como o kernel funciona. No próximo

mês eu mostrarei outras pequenas curiosidades a respeito

do boot do Linux. Até mais. ■

Mais informações

[1] Documentação sobre interrupções

da BIOS: http://poli.cs.vsb.cz/

misc/rbint/ix/index.html

Alexandre Borges (alex_sun@terra.com.br, twitter: @ale_sp_brazil) é Especialista

Sênior em Solaris, OpenSolaris e Linux. Trabalha com desenvolvimento,

segurança, administração e análise de desempenho desses

sistemas operacionais, atuando como instrutor e consultor. é pesquisador

de novas tecnologias e assuntos relacionados ao kernel.

Linux Magazine #77 | Abril de 2011

23


NOTÍCIAS

➧ Projeto GNU quer criar

alternativa ao Skype

O projeto GNU anunciou planos para o GNU Free

Call, que irá oferecer comunicação segura para o

público em geral e deseja ser tão onipresente e

utilizável quanto o serviço de VoIP Skype. Os desenvolvedores

afirmam que o aplicativo será livre,

gratuito e estará disponível em todas as plataformas,

incluindo smartphones.

Ao contrário do Skype, este novo sistema utilizará

o protocolo peer-to-peer (ponto-a-ponto) SIP, que

necessita apenas de uma rede simples. De acordo

com o anúncio, ela adicionará uma dose substancial

de segurança à comunicação: não haverá necessidade

de nenhum provedor centralizado de serviços e

nenhum “protocolo binário secreto e inseguro que

possa conter vulnerabilidades ocultas”.

O projeto será construído sobre o GNU SIP Witch,

um serviço de ligação e registro de protocolo

SIP. Ao invés de utilizar qualquer provedor ou serviço

centralizado, isso permite múltiplos pontos encontrarem

uns aos outros e a se conectarem. O anúncio

declara que atuar como uma rede VoIP organizada,

sem nenhum controle central, permitirá que a rede

continue funcionando, mesmo que parte substancial

dela esteja isolada. O projeto está sendo coordenado

por Haakon Eriksen e projetado por David Sugar.

O anúncio encoraja a participação dos usuários e

sugere três formas de contato. A primeira é o site do

GNU Telephony. Há duas listas de email: a primeira

para o SIP Witch, sipwitch-devel@gnu.org , e a outra para

questões gerais e de projeto, a sipwitch-devel@gnu.org . ■

➧ Projeto Debian anuncia

primeiro mirror security.

debian.org da América do Sul

O projeto Debian anunciou no início de março a disponibilidade

do primeiro mirror (servidor espelho)

security.debian.org oficial da América do Sul. O

security.debian.org carrega todas as atualizações de segurança

das versões stable e oldstable do kernel Debian.

Em combinação com o recurso de GeoDNS utilizado

pelo Debian, isso deve aumentar drasticamente a

velocidade de download para os usuários nessa região

geográfica. “Este é um avanço muito bem vindo para

uma melhor cobertura mundial em relação a servidores

dedicados oficiais do security.debian.org administrados

pelo projeto Debian” afirmou Martin Zobel Helas,

membro do time de administração do Debian.

“O Debian tem muitos usuários na América do Sul e

estamos felizes por podermos contribuir com o projeto Debian

através de hardware e banda de Internet para distribuir

localmente um conteúdo que estava disponível apenas no

hemisfério norte”, declarou Carlos Carvalho do C3SL.

O C3SL, responsável pela iniciativa, é o Centro de

Computação Científica e Software Livre, um centro de

pesquisa da Universidade Federal do Paraná. ■

➧ HP disponibiliza versão

2.1 do SDK do WebOS

A HP disponibilizou no dia 18 de março, a versão

2.1 do SDK de seu sistema embarcado. A nova

versão é compatível com os aplicativos criados

para o Palm Pixi, mas incorpora novas funções

que serão incorporadas por padrão na versão 3.0

do sistema, como o Just Type, o Exhibition e o

Synergy. De forma a tornar os programas compatíveis

com a nova safra de smartphones que serão

lançados pela empresa, os aplicativos devem ser

otimizados para serem exibidos em telas de 320

x 400 pixels.

O WebOS é o sistema embarcado baseado

em Linux da HP, que foi adquirido junto com a

compra da Palm, pela empresa e que possibilita

a criação de aplicativos de maneira relativamente

fácil através de programação web com HTML,

Javascript e CSS, mas que permite também o

uso de linguagens como C e C++.

A empresa já declarou anteriormente que

deseja expandir o uso do sistema para computadores

pessoais, notebooks e tablets. ■

24

www.linuxmagazine.com.br


VRE

Gerais | NOTÍCIAS

➧ Microsoft abre loja

virtual no Brasil

A Microsoft abriu sua loja virtual própria no país,

a Microsoft Store . Presente em mais 16 países,

a loja brasileira é a primeira da América Latina,

segundo informaram alguns sites. Nela, os

consumidores poderão encontrar a maioria dos

programas mais populares da empresa. Também

é possível que os compradores façam comparações

entre os produtos e escrever resenhas com

suas avaliações.

Não há venda física dos produtos e a entrega se

dá através de download. O Windows 7 Ultimate,

versão mais completa do sistema operacional mais

recente da empresa sai por apenas R$ 669,00, mas

por conta de uma promoção de lançamento, em

compras superiores a R$ 150,00, é possível parcelar

o valor em até 10 vezes sem juros, no cartão

de crédito. ■

Linux 2.6.38 tem aumento

de desempenho

A nova versão do kernel Linux, 2.6.38, já está disponível,

oferecendo aos usuários um aumento do desempenho

sobre as versões anteriores.

O novo kernel vai um passo além do que os desenvolvedores

forneceram na versão 2.6.37 removendo o último

kernel lock que bloqueava o desempenho do sistema.

“Há muitas melhorias de desempenho na versão 2.6.38, o

Transparent Hugepages (que permite alocações de quantidades

grandes de memória) é uma das características

mais notáveis” afirmou Tim Burke, vice-presidente de

engenharia da Red Hat em entrevista ao site Internet-

News.com. “Entre outras características da nova versão,

estão o agrupamento automático dos processos (deixando

o escalonamento mais justo), a escalonabilidade no

tráfego de rede, e o VFS (camada do kernel abaixo dos

sistemas de arquivos) recebeu melhoria de escalonabilidade

e um cache de de diretórios. ■

Você está com a cabeça nas nuvens?

Nós também.

PHISHING

BASEADO EM SOFTWARE LIVRE

FILTRO DE ENTRADA E SAÍDA

RE LIVR

AÍDA

FLEXÍVEL E CUSTOMIZÁVEL

CLIENTES 100% SATISFEITOS

AntiSpam SaaS UNODATA

30 DIAS

GRÁTIS!

ENVIE UM E-MAIL PARA

LINUXMAGAZINE@UNODATA.COM.BR

E GANHE + 1 MÊS GRÁTIS DE ANTISPAM

Para empresas que não querem ou não

podem administrar sua infra-estrutura de e-mail

o AntiSpam SaaS UNODATA é uma ótima opção.

Disponível em Software, nuvem e Appliance

3 em 1 - AntiSpam, AntiVírus e AntiFraude

Instalação em menos de 15 minutos

Linux Magazine #77 | Abril de 2011

(11) 3522-3011 Acesse www.unodata.com.br e veja nossos casos de sucesso.

25


Coluna do Alexandre Santos

CORPORATE

Linux e a evolução

das espécies

A teoria da evolução das espécies aplicada ao Linux.

Há algumas semanas eu estava demonstrando as

novidades do meu desktop Ubuntu 10.10 durante

uma aula e um aluno me perguntou por que

cada vez que ele me encontrava eu tinha uma versão diferente

de Linux instalada na minha máquina. A resposta

seria bem simples se a pergunta não estivesse carregada

com dúvidas sobre a maturidade do sistema operacional.

Não é novidade que sou um grande defensor do

GNU/Linux e, para responder a essa pergunta, não poderia

ser diferente. A resposta é simples: assim como a

evolução das espécies exige a adaptação dos seres para

sobrevivência, a evolução das tecnologias também é

definida pela capacidade de resiliência do ecossistema.

Se observarmos bem ao nosso redor, veremos milhares

de diferentes espécies, cada qual adaptada a um

ambiente diferente, com características diferentes, mas

carregando códigos genéticos (kernels) muito parecidos.

Podemos concluir que a teoria da evolução das espécies

de Darwin [1] nos mostra que força não é o fator

essencial para a sobrevivência, muito menos inteligência.

Para conseguir passar pela seleção natural e seguir

em frente, a capacidade de adaptação é o que garante

a sobrevivência das espécies.

Com o Linux, funciona da mesma maneira. O sistema

operacional não é o mais forte – não do ponto de vista financeiro

– e não necessariamente precisa possuir as mais

A beleza evolutiva do

Linux se dá em razão da

facilidade que cada um de

nós possui em criar uma nova

distribuição que atenda a

uma necessidade peculiar.

brilhantes mentes trabalhando em sua evolução, mas sem

dúvida, se olharmos para a árvore genealógica do Linux

[2] , veremos distribuições que entraram em extinção (Conectiva,

Jurix, linux-ft etc.), outras que evoluíram de um

ascendente comum como a RedHat, Suse ou Slackware e

algumas espécies que acabaram de nascer sem se basear em

outros sistemas como o Android, o QubesOS e o Quirky.

A beleza evolutiva do Linux se dá em razão da facilidade

que cada um de nós possui em criar uma nova distribuição

que atenda a uma necessidade peculiar. O sistema operacional

aberto, permite tanto a criação de uma interface

movida a gestos, que facilitará a vida de deficientes físicos,

até a facilidade de adaptação para se trabalhar com aplicativos

multitouch ou multi-sensores sendo executados em

variados dispositivos conectáveis ou não a Internet. Alguns

destes aplicativos ainda estão por existir, mas o mais fascinante

de tudo isso é a possibilidade deles mudarem vidas.

Da hereditariedade, mutação, recombinação genética e

transferência de código dessas distribuições surgirá, quem

sabe em breve, uma espécie ultra-adaptável chamada Linux-sapiens,

com a única certeza de que a diversidade

continuará a existir em prol da evolução darwiniana. ■

Mais informações:

[1] Evolução: http://pt.wikipedia.

org/wiki/Evolu%C3%A7%C3%A3o

[2] Árvore genealógica do Linux: http://

en.wikipedia.org/wiki/List_of_Linux_distributions

[3] Distribuições demais: http://www.oreillynet.com/linux/blog/2007/01/so_many_

distros_so_little_time.html

Alexandre Santos (alexos@br.ibm.com) é gerente de estratégia e marketing

de System z da IBM Brasil.

34

www.linuxmagazine.com.br


A invasão dos tablets

Práticos portáteis

Entre os dispositivos móveis, os tablets fi guram no topo da lista de

desejos de quem deseja mobilidade com praticidade.

por Flávia Jobstraibizer

CAPA

A

evolução dos dispositivos portáteis multifuncionais

cresce a olhos vistos. Desde os e-readers e

os primeiros tablets dos anos 2000, muita coisa

mudou. Nos tablets que atualmente invadiram o mercado,

podemos encontrar recursos tais como: ler livros

e revistas digitais, navegar na Internet, efetuar ligações

telefônicas, tirar fotos, escutar e armazenar músicas,

fazer videoconferências e muitas outras coisas.

Para os profissionais de tecnologia, os tablets que possuem

sistemas operacionais livres são uma fonte inesgotável de

diversão, conhecimento e informação, pois tais dispositivos

são abertos e configuráveis, além de permitirem uma ampla

gama de customizações e modificações personalizadas.

O popular iPad está ficando para trás no que diz respeito

às vantagens de outros tablets “abertos” do mercado.

Isso se deve ao fato de que o popular e pioneiro tablet

da Apple não permite grandes modificações e possui diversos

bloqueios que diariamente fazem com que seus

usuários procurem opções livres – e menos burocráticas

– no mercado. Pensando nisso, nesta edição da Linux

Magazine , você vai conhecer diversas alternativas ao

iPad, das mais simples às mais rebuscadas.

Entre as opções impressionantes que o mercado de

tablets nos oferece atualmente, está o Samsung Galaxy

Tab, que traz o Android – sistema operacional livre da

gigante Google – como sistema operacional, e que por

ser livre, é outro ponto decisivo no momento da compra

de um destes dispositivos. Não deixe de conferir o teste

realizado por nossa equipe neste excelente aparelho.

Programar para o Android, também é uma das facilidades

abordadas nesta edição, em um artigo que irá

introduzi-lo no mundo da programação Android para

tablets, agora em sua versão 3.0.

Para quem deseja usufruir ao máximo da capacidade

do seu equipamento, obter aplicativos dos mais variados

tipos certamente será um dos seus principais pontos de

interesse. Sendo assim, não deixe de conferir o artigo sobre

a AppUp Center , loja de aplicativos online da Intel,

que possui uma imensa variedade de softwares livres e

comerciais para tablets, smartphones e netbooks.

Se voce é mais uma entre tantas pessoas que desejam

arduamente um tablet, ou um fã aficcionado do

tablet que já possui, aproveite esta invasão!

Boa leitura! ■

Matérias de capa

A guerra dos tablets 36

Galáxia portátil 40

Aplicativos em alta 43

Android na bandeja 46


TUTORIAL | VoIP com Asterisk - parte VI

Asterisk descomplicado

TUTORIAL

VoIP com

Asterisk – parte VI

O sistema telefônico ultrapassado, presente até pouco tempo atrás nas empresas, é prolífi co

em cobranças: cada novo recurso ativado requer uma nova ativação de serviço, com o preço

adicionado ao pagamento mensal. É hora de mudar. É hora de criar sua própria central VoIP.

por Stefan Wintermeyer

Na edição 76 da Linux Magazine

, apresentamos recursos

como controle remoto, estacionamento

de chamadas e temporização

com includes. Nesta sexta

parte do tutorial, vamos abordar o

universo dos ISDNs. Mãos à obra!

Beleza americana

A conexão entre o ISDN ( Integrated

Services Digital Network ou Rede

Digital Integrada de Serviços) e o

Asterisk não pode ser considerada

um caso de amor. Considerando

principalmente que o Asterisk é

utilizado em linhas analógicas com

cabos de cobre. E curiosamente aí

está a origem do software. Ainda

hoje a principal instalação do Asterisk,

nos Estados Unidos, se dá em

linhas analógicas. Isso esclarece porque,

para esse grupo de usuários, a

tecnologia VoIP significa, em geral,

um grande salto de qualidade. Em

muitos países europeus, pelo contrário,

há mais de 20 anos, utiliza-se

ISDN em larga escala, mesmo em

pequenos escritórios.

Analogamente, o novo sistema Asterisk

deve ser conectado não apenas

como VoIP, mas também com ISDN.

Ele funciona tanto com placa ISDN,

como através de um modem ISDN,

conectado em uma entrada USB

do computador, quanto como uma

appliance ISDN-to-SIP. Vamos nos

limitar neste momento à sua variante

mais empregada, que corresponde

à placas ISDN. Será útil o conhecimento

acerca do padrão ISDN [1] ,

e em particular sobre as diferenças

entre BRI ( Basic Rate Interface ) e

PRI ( Primary Rate Interface ).

Placas ISDN entre

10 e 1000 euros

Infelizmente há tantas placas ISDN

quanto areia no mar – placas PRI

a preços exorbitantes e placas BRI

com valores mais em conta, entre

10 e 30 euros, em leilões de lojas virtuais.

A questão sobre qual a melhor

placa ISDN não é tão simples de

se responder. Ainda mais levandose

em conta que uma placa de 30

euros de uma pequena loja pode

ser tão boa quanto uma de 1000

euros de um estabelecimento especializado.

Entre tantos fabricantes,

considera-se que o melhor produto

se encontra em grandes lojas ou nas

melhores embalagens.

Uma diferença objetiva se encontra,

certamente, no grau de dificuldade

na instalação do driver.

E a tendência é de que, quanto

mais barata uma placa ISDN, mais

demorada é a instalação. Produtos

mais caros vêm geralmente com

scripts de instalação relativamente

melhores, baixados da Internet, que

rapidamente atualizam e finalizam

a instalação mesmo de versões mais

antigas do Asterisk.

52

www.linuxmagazine.com.br


VoIP com Asterisk - parte VI | TUTORIAL

Exemplo: a

placa Digium

Este artigo naturalmente não tem a

pretensão de explicar o processo de

instalação para todas as placas ISDN

disponíveis no mercado. Como exemplo,

vamos tratar da placa Digium

B410P [2] , cujas quatro entradas

ISDN satisfazem as necessidades de

pequenos escritórios ou de usuários

domésticos. A placa controla até

mesmo o cancelamento de eco [3]

do hardware, não sobrecarregando

a CPU e proporcionando qualidade

na compensação do eco ( quadro 1 ).

Embora a Digium produza e

revenda vários tipos de placas, não

se pode dizer com certeza, se para

cada atualização do Asterisk, será

possível encontrar rapidamente um

driver funcional. A oferta de atualizações,

por parte da Digium, é o

único caminho viável para que os

administradores de sistema utilizem

sempre uma nova versão do Asterisk.

Compilando o Asterisk

Nas primeiras partes desse tutorial, já

tratamos da instalação do Asterisk. O

funcionamento de uma placa ISDN

demanda, contudo, um complicado

trabalho de configuração. As instruções

a seguir requerem um sistema

Debian recém instalado como base.

Atenção: a placa ISDN deve antes

ser conectada ao computador.

Acesse o sistema como usuário root

e execute os comandos:

apt-get update

apt-get -y upgrade

shutdown -r now

Tenha certeza de que o sistema

esteja funcionando com um kernel

atualizado.

Após reiniciar a máquina, entre

novamente como usuário root e execute

os pacotes necessários para a

compilação ( listagem 1 , linha 1 ). Os

comandos da segunda linha são usados

para obter drivers atualizados de

servidores da Digium. Em seguida,

compile e instale os pacotes Zaptel

( linhas 3 e 4 ). O último make executa

o download do pacote MISDN e

instala o driver para a placa ISDN.

As linhas 5 e 6 compilam o servidor

Asterisk. O make-config é executado

em seguida, com o intuito de que o

Debian seja configurado para carregar

automaticamente o Asterisk no

processo de inicialização.

Placa ISDN

configurada por script

Para o reconhecimento de uma placa

ISDN recém instalada, execute

o script /usr/sbin/misdn-init scan .

Será exibido algo como:

[OK] found the following devices:

card=1,0x4

[ii] run “/usr/sbin/misdn-init

config” to store this information

to /etc/misdn-init.conf

Caso o sistema tenha reconhecido

corretamente a placa, é possível

permitir que seja efetuada, com a

execução do utilitário /usr/sbin/

misdn-init config , a configuração

automática dos dados no arquivo /

etc/misdn-init.conf . A configuração

da placa deve se restringir, neste

passo, à seção intitulada Port settings

. Nela, são listadas as opções

disponíveis.

Se você quiser que a placa funcione

com um dispositivo multifuncional

e que este esteja conectado

à sua porta 1, deverá então constar

na configuração a linha te_ptmp=1 .

Caso deseje incluir na mesma porta,

um aparelho de fax, deve-se retirar

o caracter de comentário da linha

option=1,master_clock . A última linha

contém uma interrupção que

designa um maior nível de depuração.

Ela não causa problemas, então

convém deixá-la como debug=1 .

Em seguida, especifique no arquivo

/etc/asterisk/misdn.conf , os

dados do Asterisk para a porta. Deixe

Quadro 1: Olá, eco!

O problema do eco, uma característica

da própria voz, é tão antigo

quanto o telefone. Um circuito

híbrido comparece quase sempre

como uma causa em telefonia

analógica. Nesse caso, o contato

é feito com dois fi os bidirecionais,

em vez de quatro, em que cada

par se responsabilizaria por uma

direção. E em um transporte de

informações realizado com dois

fi os, é comum que ocorra superposição

– no caso, o fenômeno

do eco. Uma pessoa pode perceber

o eco, mas isso só acontece

se ele for alto o sufi ciente e vier

com certo atraso. Isso acontece

porque cada pessoa ouve a própria

voz e o cérebro, por conta de

um sistema otimizado de cancelamento

de eco.

Normalmente, o sistema de telefonia

seria responsável pelo cancelamento

de eco do aparelho. Por ser o último

na cadeia do sistema, geralmente

deixa-se o problema por conta do

Asterisk. Se ele é o único sistema de

telefonia empregado – mesmo que

se opere somente com dispositivos

digitais –, deve-se resolver o problema

por conta própria.

No caso do Asterisk, o cancelamento

de eco, tanto para placas

ISDN quanto para placas analógicas,

pode ser efetuado por meio de

software, caso não haja suporte na

própria placa. É preferível um cancelamento

de eco executado pela

própria placa, por ser um caminho

mais fácil e também para não sobrecarregar

a CPU. E, para a maioria

das conversas simultâneas, o

cancelamento via software é de fato

o recurso mais conveniente.

O desagradável é que o modo de

confi guração varia de acordo com

o fabricante. Com o Digium, a coisa

é relativamente simples: um simples

echocancel=yes resolve o problema.

Para placas mais complicadas,

torna-se necessário estudar o código

de confi guração desta.

O cancelamento de eco mediante

software livre não é menos exigente.

Linux Magazine #77 | Abril de 2011

53


TUTORIAL | VoIP com Asterisk - parte VI

Listagem 1: Instalando os pacotes necessários

TUTORIAL

01 apt-get -y install build-essential libncurses5-dev libcurl3-dev libvorbis-dev libspeex-dev unixodbc

unixodbc-dev libiksemel-dev linux-headers-`uname -r` flex bc pciutils libnewt-dev libusb-dev

02 cd /usr/src && wget http://downloads.digium.com/pub/asterisk/asterisk-1.4-current.tar.gz && wget

http://downloads.digium.com/pub/zaptel/zaptel-1.4-current.tar.gz && tar xvzf asterisk-1.4-current.tar.gz

&& tar xvzf zaptel-1.4-current.tar.gz

03 cd zaptel-1.4.8

04 ./configure && make && make install && make b410p

05 cd /usr/src/asterisk-1.4.17

06 ./configure && make && make install && make samples && make config

comentadas todas as linhas e entre,

ao final, com os seguintes comandos:

[isdn]

ports=1

context=from-isdn

msns=*

Nesse exato momento, reinicie

o sistema com um shutdown -r now

para testar se o Asterisk e os drivers

da placa foram inicializados perfeitamente.

Os quatro leds próximos

à porta ISDN da placa devem se

acender. Logo que o cabo for conectado

à primeira porta ISDN,

deve o seu led permanecer constantemente

aceso.

Olá, mundo ISDN!

Após a configuração da placa, devemos

testá-la com um “Olá, mundo!”,

como descrito na listagem 2 . Quando

qualquer sistema do tipo MSN

executar uma chamada para essa

conexão, o Asterisk será acionado,

executará a frase “Olá, mundo!”, e

fechará, em seguida, o programa.

Listagem 2:

extensions.conf

01 [from-isdn]

02 exten => _X.,1,Answer()

03 exten =>

_X.,n,Playback(hello-world)

04 exten => _X.,n,Wait(1)

05 exten =>

_X.,n,SayDigits(${EXTEN})

06 exten => _X.,n,Hangup()

Para isso, será suficiente a seguinte

entrada em seu arquivo de configurações

extensions.conf :

[from-isdn]

exten => 1234567,1,Dial(SIP/2000)

quando, por exemplo, você desejar

que seu MSN receba as chamadas

de seu telefone interno SIP.

Caso você queira encaminhar

todas as chamadas provenientes

de telefones internos, no contexo

[meu-telefone] , que apresenta um 0

em seu começo, coloque a seguinte

linha no arquivo ``/etc/asterisk/

extensions.conf@:

[meu-telefone]

exten => _0X.,1,Dial(mISDN/

g:isdn/${EXTEN:1})

Observe que, para chamadas internacionais,

deve-se remover o :1

e substituí-lo por um zero. Com o

zero, normalmente utilizado para

identificar chamadas de telefones

fixos, há, porém, um problema: a

listagem de ligações de seu telefone.

Receba uma chamada por meio

de sua rede ISDN, indique corretamente

o número da chamada em

seu telefone SIP e o grave também

em seu telefone. Ao tentar retornar

a ligação por meio da lista de chamadas

de seu telefone, ocorrerá uma

falha. A seguinte entrada, em seu

arquivo extensions.conf resolverá

o problema:

[from-isdn]

exten => _X.,1,Set(CALLERID(num)

=0${CALLERID(num)})

exten => _X.,n,Dial(SIP/2000)

Na próxima edição da Linux Magazine

, você irá conhecer o funcionamento

dos telefones analógicos e

também sobre como trabalhar com

fax. Até lá! ■

Mais informações

[1] ISDN: http://de.wikipedia.

org/wiki/Integrated_

Services_Digital_Network

[2] Digium B410P: http://www.

digium.com/en/products/

digital/b410p.php

[3] Cancelamento de eco:

http://en.wikipedia.org/

wiki/Echo_cancellation

Sobre o autor

Stefan Wintermeyer é o autor do

Livro do Asterisk, da editora Addisson

Wesley e primeiro DCAP (Digium

Certifi ed Asterisk Professional)

alemão. Ele auxilia clientes, por

meio da Amooma GmbH (http://

www.amooma.de), a implementar soluções

com Asterisk.

Gostou do artigo?

Queremos ouvir sua opinião.

Fale conosco em

cartas@linuxmagazine.com.brazine.com

r

Este artigo no nosso site:

http://lnm.com.br/article/5050

/505

54

www.linuxmagazine.com.br


NOVO GUIA DE TI

VoIP com

2011

Asterisk - parte VI | TUTORIAL

GUIA de TI 2011

GUIAdeTI

anuário 2011

COMO REDUZIR CUSTOS

E AUMENTAR A EFICIÊNCIA

DO SEU NEGÓCIO

CATÁLOGO

COMPLETO

de soluções

para plataformas

Open Source

Cloud Computing,

Computação Móvel,

SOA, SaaS, Middleware,

PMI: as tecnologias e tendências

mais relevantes para o

mercado de TI

Desempenho

Estabilidade

Segurança

Flexibilidade

#03 2011


R$ 79,90

29,90


WWW.GUIADETI.COM.BR

Linux Magazine #77 | Abril de 2011

Catálogo de soluções

Cloud Computing

Computação móvel

SAAS

SOA

PMI

ITIL

Middleware

Segurança

Todas as tecnologias e tendências mais

relevantes para o mercado de TI.

ADQUIRA O SEU

NAS MELHORES BANCAS

OU EM NOSSA LOJA VIRTUAL:

LNM.COM.BR/SHOPPING

55


Real versus virtual | ANÁLISE

Realidade aumentada

Real versus virtual

A tecnologia da realidade aumentada,

além de fascinar qualquer ser humano,

é um assunto emergente. Neste artigo,

veremos seus princípios básicos.

por Alessandro de Oliveira Faria (Cabelo)

ANÁLISE

A

tecnologia de realidade aumentada,

é definida como a

sobreposição, no ambiente

real, de objetos virtuais e tridimensionais

gerados por computador por

meio de algum dispositivo tecnológico

de videocaptura. Esta tecnologia

disponibiliza uma interação

sem necessidade de treinamento,

pois o usuário pode trazer para o

ambiente real os objetos virtuais,

incrementando e aumentando a

visão do mundo real. Isso somente

é possível com técnicas de visão

computacional juntamente com

computação gráfica.

Os objetos virtuais introduzidos

no ambiente real podem ser manipulados

com as próprias mãos, assim,

proporcionando ao usuário uma interação

inovadora e atrativa. Na figura

1 , confira uma representação gráfica

do recurso e interatividade com a

tecnologia de realidade aumentada.

Os principais recursos da tecnologia

de realidade aumentada são:

➧ Combinar elementos virtuais com

o ambiente real.

➧ Interatividade e processamento

em tempo real

➧ Ser concebida em três dimensões.

Meu primeiro contato com realidade

aumentada teve início em setembro

de 2008, quando conheci o

fantástico projeto Levelhead [1] criado

pelo designer e programador Julian

Oliver, o jogo open source é baseado

em um cubo real que utiliza somente

bibliotecas de visão computacional

de código aberto para reproduzir o

cubo virtual no monitor. Foi preciso

um final de semana para baixar

os códigos-fontes e compilá-los com

todas as dependências. A jogabilidade

resume-se a entrar e sair de portas

utilizando memória e inteligência

espacial, o que o levará para outros

ambientes onde será necessário resolver

alguns quebra-cabeças.

ARToolKit

Existem diversas bibliotecas e tecnologias

tanto de código aberto, como

proprietárias, para o uso de realidade

aumentada (openCV, Bazar e outras).

Entretanto, uma quantidade significativa

de trabalhos de software livre são

baseados ou derivados da biblioteca

ARToolKit ( figura 2 ), uma biblioteca

livre escrita em C, desenvolvida pelo

Dr. Hirokazu Kato. Atualmente utilizada

por pesquisadores do Laboratório

Tecnológico de Interface Humana,

na Universidade de Washington. A

biblioteca surgiu com o objetivo de

facilitar a construção de aplicações

de realidade aumentada (RA), sendo

assim, o seu funcionamento utiliza

recursos de visão computacional

e processamento de imagens para

prover os recursos de RA.

O que encanta nesta tecnologia, e

a complexidade do desenvolvimento

das aplicações, ou seja, calcular precisamente,

em tempo real, o ponto

de observação do usuário, para somente

então projetar corretamente os

objetos virtuais no mundo real. Este

é o principal objetivo da biblioteca

ARToolKit, rastrear rapidamente e

calcular a posição real da câmera

e de seus marcadores de referência

possibilitando que o programador

acrescente objetos virtuais sobre es-

Linux Magazine #77 | Abril de 2011

63


ANÁLISE | Real versus virtual

Figura 1: Esquema de funcionamento

da realidade aumentada.

tes marcadores no mundo real, sem

sacrifícios nem magia negra.

Para o perfeito funcionamento

desta tecnologia, em primeiro lugar

é preciso transformar o quadro

capturado no video ao vivo, em

uma imagem com valores binários

e, somente então, examiná-la para

encontrar regiões quadradas. Ao

encontrar um quadrado, a imagem

no seu interior é comparada com

algumas imagens pré-cadastradas.

Existindo uma similaridade suficiente

com a imagem, utiliza-se o

tamanho conhecido do quadrado

e a orientação do padrão encontrado,

para calcular a posição real da

câmera em relação à posição real

do marcador.

Instalação da

biblioteca ARToolkit

Efetue o download da versão 2.72.1

do código fonte do projeto no SourceForge

[2] e d escompacte o pacote

com o tradicional comando tar :

$ tar -zxvf ARToolKit-2.72.1.tgz

compilação na íntegra, execute o

comando make .

Se todos os passos foram concluídos

com sucesso, entre no diretório

/bin para testar os exemplos (sugiro

o binário videoTest ). Antes crie a variável

do ambiente ARTOOLKIT_CONFIG

para definir as configuração do seu

dispositivo de captura:

$ export ARTOOLKIT_CONFIG=”v4l2src

device=/dev/video0 use-fixedfps=false

!

ffmpegcolorspace ! capsfilter

caps=video/x-raw- rgb,bpp=24,

width=960,height=720 ! identity

name=artoolkit ! fakesink”

Se tudo estiver em perfeito funcionamento,

será apresentado uma

janela cujo conteúdo será o video

ao vivo da sua webcam.

Calibre seu dispositivo

As propriedades padrão da biblioteca

ARToolKit estão localizadas no

arquivo de parâmetro do dispositivo

de captura. Este arquivo é denominado

camera_para.dat e encontra-se

no diretório ARToolKit/bin/Data . O

arquivo presente no projeto, apresenta

um padrão que abrange um

amplo conjunto de dispositivos de

videocaptura. Porém, sugiro a calibragem

da câmera conforme as

instruções a seguir.

Para iniciar o processo de calibragem,

em primeiro lugar devemos

imprimir os arquivos calib_cpara.

pdf e calib_dist.pdf . O arquivo calib_cpara.pdf

é uma grade de linha.

Imprima este arquivo na escala onde

preferencialmente as linhas fiquem

separadas com uma distância exata

de 40mm.

O arquivo calib_dist.pdf possui

uma matriz de 6x4 pontos e, como

ilustrado no arquivo pdf anterior,

também deverá ser impresso na escala

onde as distâncias entre os pontos

são exatamente 40mm. Ambos

os arquivos deverão ser impressos

em papel cartonado ou colados em

superfícies não flexíveis.

A calibragem do dispositivo de

captura é obtida a partir das posições

do ponto central, distorções da lente

e da distância focal da câmera. Sendo

assim, o binário calib_dist é utilizado

para calcular o ponto central da

imagem e a respectiva distorção da

lente. De forma complementar, o

programa calib_param calcula a distância

focal da câmera. Como todo

excelente trabalho de código aberto,

os fontes estão disponíveis para estudo

e aprendizado. Vale a pena mencionar

que devemos primeiro executar

o programa calib_dist para depois

executar o calib_cparam .

O primeiro passo é executar o

calib_dist e logo em seguida posicionar

a folha impressa (arquivo

calib_dist.pdf ) de tal modo que to-

Entre na pasta ARToolKit recém-criada

e execute o comando

./configure seguido das respostas

( 5 ,n ,n ,) onde 5 representa a utilização

da biblioteca GStreamer para acesso

aos dispositivos de videocaptura, n

caso o sistema operacional seja de

64 bits, n novamente para não gerar

informações de debug e y se estiver

trabalhando com uma placa NVIDIA

ou ATI. Finalmente, para iniciar a

Figura 2: A biblioteca ARToolkit é uma das grandes responsáveis pelos

calculos necessários ao projeto.

64 www.linuxmagazine.com.br


Real versus virtual | ANÁLISE

dos os pontos estejam visíveis. Então,

clique com o botão esquerdo

do mouse para congelar a imagem.

Após o congelamento, pressione o

botão esquerdo do mouse sobre a

imagem e desenhe um retângulo

em torno de todos os pontos da

imagem (segurando o botão do

mouse pressionado). Começando

pelo ponto localizado no canto

superior esquerdo da imagem e

prossiga até que todos os pontos

tenham sido desenhados. Repita

este procedimento de 5 a 10 vezes

em vários ângulos. Termine

a operação pressionando o botão

direito do mouse ou a tecla [ESC] .

O programa começará a calcular

os valores de distorção da câmera.

Para se certificar dos parâmetros

e cálculos da operação, pressione

o botão esquerdo do mouse para

mostrar as imagens capturadas,

com as linhas vermelhas desenhadas,

passando pelos pontos de

calibragem. Se tudo estiver em

pleno funcionamento, as linhas

deverão se cruzar no centro de

cada um destes pontos. Cada vez

que o botão esquerdo do mouse é

pressionado, a próxima imagem

capturada é mostrada ( figura 3 ).

Agora partiremos para o programa

calib_cparam , que como mencionado

anteriormente, é usado para encontrar

a distância focal da câmera, além de

outros parâmetros. Para continuarmos,

execute o programa e informe

as coordenadas do centro e o fator

de distorção disponibilizado pelo

aplicativo calib_dist .

Coloque a impressão do arquivo

calib_cpara.pdf diante da câmera de

tal modo que a imagem fique o mais

perpendicular possível ao eixo ótico

da câmera. Nele também todas as

linhas devem ser visualizadas.

Basta pressionar o botão esquerdo

do mouse para capturar a

imagem. Logo a seguir será exibida

uma linha branca horizontal

na imagem. Movimente a linha

branca até cobrir a linha preta no

topo e pressione [ENTER] . A linha

movimenta-se para cima ou

para baixo ao utilizar as teclas de

seta para cima ou para baixo. A

linha pode ainda ser rotacionada

no sentido horário e anti-horário

usando-se as teclas de setas para a

direita e para a esquerda. Repita

esse processo com todas as linhas

verticais e horizontais por 5 vezes.

Ao terminar, informe o nome do

arquivo ( figura 4 ).

Para utilizar o arquivo de calibragem

recém-criado, basta copiá-lo

para a pasta Data com o nome camera_para.dat

ou alterar no códigofonte

a variável char *cparam_name .

Agora, para testar o funcionamento

da realidade aumentada, execute o

programa simpleTest e veja o resultado

ao apresentar o arquivo pattHiro.

pdf impresso para a câmera.

O aplicativo ExView exibe a visão

externa da câmera e também projeta

em tempo real seu movimento em 3

dimensões. Para executar este aplicativo,

digite o comando ./exview na

pasta bin ( figura 5 ).

Para trabalhar com outros padrões,

utilize o programa mk_patt .

Ao executá-lo, aponte o dispositivo

de captura para o padrão e rotacione

até os dois lados vermelho e verde

aparecerem em torno do padrão.

Os lados vermelhos do quadrado

devem posicionar-se no topo e à

esquerda do quadrado. Logo em

seguida, clique no botão esquerdo

do mouse e informe o nome do arquivo

padrão.

Motores de

renderização

Figura 3: As linhas vermelhas devem

passar pelos pontos do

arquivo impresso.

Os motores de renderização são bibliotecas

e componentes que facilitam

a projeção em 3 dimensões de

objetos ou cenários criados em editores

tridimensionais (Blender, por

exemplo). Embora o uso de motores

de renderização não sejam obrigatoriamente

necessário, facilitam (e

muito) a vida do programador. Claro

que nada impede o uso do OpenGL

junto à biblioteca ARToolKit, Open-

CV ou Bazar.

A escolha do motor ( engine ) de

renderização determinará o sucesso

ou o fracasso do projeto. Pois, no

que tange à visão computacional,

todo processamento deve ser bem

distribuído e projetado. Projetar

objetos em 3 dimensões na web,

em games ou apresentações, requer

esforço computacional distinto. Por

exemplo, um motor de renderização

para games pode apresentar

uma qualidade inferior, uma vez

que existem outras tarefas matemáticas

a serem cumpridas (efeitos

abstratos como fogo e explosões resultantes

de tiros). A seguir, listo 4

entre os muitos motores de renderização

existentes.

Figura 4: O processo de calibragem,

embora demorado, permite

ao programa calcular a

posição do objeto virtual

em relação ao real.

Linux Magazine #77 | Abril de 2011

65


ANÁLISE | Real versus virtual

IrrAR [3]

Motor de renderização multiplataforma,

performático e de código

aberto. Ideal para criação de jogos,

pois é baseado na Irrlicht, que além

de suportar arquivos do Quake, suporta

outros diversos formatos. Este

motor permite o processamento de

efeitos abstratos como neve, fumaça,

fogo, superfícies aquáticas e outros.

Logo chegaremos a conclusão que

ele utiliza grande parte do seu processamento

com efeitos e sendo assim,

talvez não proporcione uma renderização

tão realista em tempo real.

FLARToolkit [4]

É um porte do código fonte da

biblioteca ARToolKit para o Action

Script 3.0 (Flash), feito pelo japonês

Saqoosha sob licença livre. O projeto

carrega todas os recursos do projeto

em que se baseia: detecta movimento,

reconhece uma determinada “marca”

e projeta um cenário ou objeto 3D.

Utiliza a renderização baseada no Papervision3D

e movimenta os objetos

de acordo com movimentos reais. Este

motor não apresenta altíssima qualidade,

pois foi projetado para ser executado

no ambiente web (navegador);

esta tecnologia deve estar preparada

para qualquer tipo de equipamento e

velocidade de conexão [5] .

AndAR

É um projeto que tenho orgulho

de divulgar, pois foi devido a minha

solicitação e contato com o autor, que

este, abriu seu código fonte. AndAR

é um projeto também baseado na

biblioteca ARToolKit. Mesmo criado

para equipamentos portáteis, apresenta

um excelente desempenho. O autor

projetou com excelência a abstração

da biblioteca com JNI e assim, escreveu

muito bem o software.

osgART [6]

A biblioteca osgART facilita o

desenvolvimento de aplicativos de

realidade aumentada. Ela agrupa as

funções de detecção e rastreamento

de marcadores do ARToolKit junto aos

recursos de construção de modelos

virtuais da biblioteca OpenScene-

Graph. A OSGART apresenta alta

qualidade na renderização dos objetos

virtuais, suporte à reprodução de

video e técnicas de renderização de

sombras. Um boa escolha para aplicativos

voltados para apresentações.

Utilizando a osgART

Como seria muito extenso detalhar

a instalação e utilização de todas as

tecnologias mencionadas nesse texto,

decidi explicar a biblioteca osgART

pelo fato de demonstrar excelente

qualidade de renderização. Sendo

assim, para iniciar o trabalho, devemos

primeiramente baixar, compilar

e instalar o pacote OpenSceneGraph.

O artigo toma como referência a

versão 1.2, porém, não é obrigatório

o uso desta. O principal motivo da

utilização dessa versão é somente

manter a compatibilidade com os

estudos do projeto Levelhead, e

também obedecer à versão requerida

para a biblioteca osgART. Para

iniciar, faça o download no link

http://www.artoolworks.com/dist/

osgart/release/1.0/osgART-1.0.tar.

bz2 e em seguida execute:

$ tar-xfzj osgART-x.x.tar.bz2

$ cd osgART/bin

Agora compile a biblioteca substituindo

o trecho abaixo pela localização

do ARToolKit como parâmetro

do comando make .

$ make -f GNUmakefile ARTOOLKIT_

PATH=”[path da biblioteca

ARToolKit]”

Figura 5: Se tudo for feito corretamente,

o ExView exibirá um

cubo como o visto acima.

E os modelos 3D? O pacote

osgExport é um plugin do Blender

que exporta os modelos desejados

para o formato osg ( figura 6 ).

Esse plugin, é um módulo escrito

em Python e pode ser obtido na

página oficial do software [7] ou

para os usuários openSUSE, disponibilizo

um rpm no meu repositório

[8] . Se resolver efetuar o

download na pagina oficial, basta

salvar o arquivo osgexport-2.42.py

no diretório [local-do-blender]/

blender/.blender/scripts .

Em seguida, abra o modelo que

deseja exportar e clique em File/

Export/OpenSceneGraph (.OSG) .

Será exibida uma janela de diálogo

onde devemos informar a localização

completa do arquivo a ser salvo

e clique no botão Export . Utilize o

programa osgconv que acompanha o

pacote OpenSceneGraph compilado

e instalado anteriormente, para converter

o arquivo .osg para .ive . Esta

extensão é apenas a versão binária

do arquivo .osg . Vale a pena mencionar,

que para conferir o arquivo

.osg , podemos utilizar o programa

osgview que também pertence ao

pacote OpenSceneGraph.

Agora, finalmente veremos o resultado

de todo este trabalho: entre

no diredório bin do projeto recémcompilado

osgART e execute o programa

osgARTsimpleNPR usando como

parâmetro seu arquivo .ive e o tamanho

e a posição (X Y Z). Lembre-se

que a variável ambiental ARTOOLKIT_

CONFIG deve existir com as devidas

configurações, conforme mencionado

anteriormente.

./osgart_example models/

cubo-neti.ive 80 0 0 5

Divirta-se vendo o seu objeto ganhar

vida na tela do seu computador! ■

66 www.linuxmagazine.com.br


Real versus virtual | ANÁLISE

Figura 6: O osgEXPORT permite que você exporte objetos do Blender para

utilizá-los em seus projetos de realidade aumentada.

Mais informações

[1] Projeto Levelhead: http://selectparks.net/~julian/levelhead/

[2] ARToolkit: http://sourceforge.net/projects/artoolkit/

[3] IrrAR: http://sourceforge.net/projects/irrar/

[4] FLARToolkit: http://saqoosha.net/category/flash/flartoolkit/

[5] Teste do FLARToolkit: http://www.netitec.com.br/alessandro/ra

[6] OSGART: http://osgart.org/

[7] osgEXPORT: http://projects.blender.org/projects/osgexport/

[8] Repositório openSUSE do Cabelo: http://download.

opensuse.org/repositories/home:/cabelo:/osgexport/

Sobre o autor

Alessandro Faria é sócio-proprietário da NETi TECNOLOGIA, fundada em Junho de 1996

(http://www.netitec.com.br) e especializada em desenvolvimento de software e soluções

biométricas. Consultor Biométrico na tecnologia de reconhecimento facial, atuando na área de

tecnologia desde 1986. Leva o Linux a sério desde 1998 com desenvolvimento de soluções opensource,

é membro colaborador da comunidade Viva O Linux e mantenedor da biblioteca opensource

de vídeo captura, entre outros projetos.

Gostou do artigo?

Queremos ouvir sua opinião.

Fale conosco em

cartas@linuxmagazine.com.br

Este artigo no nosso site:

http://lnm.com.br/article/5049

Linux Magazine #77 | Abril de 2011

67


ANÁLISE | Visão de raio-x

Listagem de hardware

ANÁLISE

Visão de raio-x

Que componentes fazem parte de seu

computador? A ferramenta lshw revela detalhes

do hardware que você talvez não encontre

nem mesmo na especifi cação do fabricante.

por Karsten Günther

Qualquer tipo de hardware

detectado pelo kernel e seus

módulos deixarão traços nos

arquivos de log ou nos

pseudo arquivos de sistemas /proc e

/sys. Obter essas informações manualmente

pode ser um processo

que tomará muito tempo; sendo

assim, algumas distribuições tentaram

– com sucesso variado – tirar

esse ônus dos ombros dos usuários.

Em contraste a essas ferramentas, o

lshw [1] trabalha bem em qualquer

plataforma e exibe os resultados de

uma forma inteligente.

O nome lshw é o acrônimo para

list hardware (listar hardware) e o

aplicativo descobre todos os detalhes

dos componentes do hardware,

como CPU, módulos de memória ou

interfaces IDE, que podem incluir

placas de som, placas gráficas ou

drives externos. A ferramenta pode

ser executada em linha de comando

e você precisará configurar algumas

opções para controlá-la ( tabela 1 ).

O primeiro grupo de opções controla

o formato da saída. Por padrão,

as saídas do lshw são em texto plano

para um terminal, a partir do qual é

Figura 1 A interface gráfi ca lshw-gtk facilita o acesso à árvore de informações;

no entanto, esta não oferece suporte a todas as opções

que estão disponíveis na ferramenta em linha de comando.

inicializado ( listagem 1 ), o que é prático

se você precisar arquivar a saída

ou processá-la automaticamente (por

exemplo, filtrar e processar as linhas

de saída: lshw … | grep size …).

A opção -xml fornece um completo

e interessante documentado

formatado em XML, que é útil para

arquivamento em base de dados. Páginas

HTML são preferíveis se você

precisa de uma saída que seja mais

amigável para leitura, sendo assim,

a opção -html (em minúsculo) deve

ser usada, nesse caso. O parâmetro

-X inicializa uma interface gráfica.

Para uma rápida visão geral, em

vez das incrivelmente detalhadas

informações que o lshw exibe por

padrão, você pode usar as opções

-businfo e -short.

Detalhes

Sem privilégios de root , o lshw tem apenas

acesso limitado as informações do

sistema, então a saída de dados é igualmente

pobre e deixa de exibir muitos

detalhes importantes. Normalmente,

você irá notar que será necessário

alterar seu acesso para o usuário root

( sudo lshw ) para executar o comando.

68 www.linuxmagazine.com.br


Visão de raio-X | ANÁLISE

Opção

-html

-xml

-short

-businfo

Descrição

Gera saída em HTML

Gera saída em XML

Exibe um pequeno sumário

Gera saída com informações de barramento

-X Usa a interface gráfi ca

Ação

-c, -C, -class class

-disable test

-enable test

-quiet

-sanitize

-numeric

Descrição

Tabela 1 Opções importantes do lshw

Exibe informações de classe

Não executa testes

Executa testes

Esconde a barra de status

Esconde informações confi denciais

Exibe Ids numéricos

Classe

address

bridge

bus

communication

disk

display

generic

input

memory

multimedia

network

power

printer

processor

storage

system

tape

volume

Tabela 2 Classes

Descrição

As várias opções permitem que

você modifique a saída para refletir

suas necessidades. Para fazer isso,

use classes ( tabela 2 ) e execute alguns

testes ( tabela 3 ).

A opção -sanitize diz ao lshw para

substituir informações confidenciais

(como números seriais e endereços

IP) pela string [REMOVED] , ou removido,

em português. Essa opção será

util se você quiser passar informações

para um terceiro, como por exemplo,

se você precisa fazer uma pergunta

em um fórum.

A opção -quiet evita que o lshw

envie a saída da classe que ele está

testando no momento para o terminal

e a opção -numeric faz exatamente o

contrário: ela exibe os IDs númericos

de dispositivos PCI, USB e outros.

O utilitário lshw exibe a saída para

classes individuais em uma estrutura

de árvore. Os “nós” são marcados

com uma das quatro palavras-chaves:

➧ CLAIMED – (solicitado ou reclamado):

um driver adequado existe

e está carregado (o lshw frequentemente

exibe a informação para isso

diretamente).

➧ UNCLAIMED – (não solicitado

ou não reclamado): classes para

as quais (atualmente) não existem

drivers.

➧ ENABLE – (habilitado): classes

com drivers totalmente operacionais

(o lshw requentemente exibe a

informação para isso diretamente).

➧ DISABLE – (desabilitado): existe

um problema com o driver.

Para interpretar os detalhes, você

precisa que as saídas das seções size

(tamanho) e capacity (capacidade)

dependem da classe. Elas diferem dependendo

se você estiver analisando

uma CPU ou dispositivo de armazenamento

( storage ). A palavras-chave

serial está relacionada aos números

seriais dos dispositivos como discos

rígidos, chips de memória, processadores

ou placas-mãe. Ela exibe o

endereço MAC para dispositivos de

rede e o GUID (identificador único)

das partições.

Discos rígidos com múltiplas partições

lógicas aparecem várias vezes:

como partições lógicas e nas partições

estendidas que as contém. O

lshw resume os recursos das classes

na opção capabilities (recursos);

novamente aqui a interpretação depende

do tipo de dispositivo.

Interface gráfica

Uma interface gráfica está disponível

para o lshw , chamada de lshw-gtk .

Para inicializar a interface gráfica

diretamente, digite seu nome ou

inclua a opção -X no lshw . Uma visualização

gráfica, em formato de

árvore, das informações coletadas

pelo lshw é o resultado exibido. A

informação está aninhada em três

camadas e um clique duplo leva

você a próxima camada.

Esse processo somente funciona

para os itens exibidos em negrito, na

tela, que é a forma que o lshw utiliza

para indicar que o item subordinado

existe. A esquerda, a janela exibe as

informações. A interface gráfica não

Endereços de memória para extensões de memória de vídeo ou ROM

PCI-to-PCI, AGP, PCMCIA

Barramentos, sem nenhum hardware conectado

Modem e porta serial

Drivers (incluindo fíicos)

Componentes gráfi cos (sem o display)

Outros componentes

Teclados, mouses e joysticks

RAM, BIOS e fi rmware

Som, TV e placas de vídeo

Bluetooth, Ethernet, FDDI e WLAN

Baterias e fontes de energia

Impressoras e e dispositivos multifuncionais

Controladora de CPU e RAID

Controladora IDE e SCSI

Tipo de sistema: Laptop, Desktop, Servidor ou Computador

Dispositivos DAT/DDS

Sistemas de arquivos e partições

Linux Magazine #77 | Abril de 2011

69


ANÁLISE | Visão de raio-x

Listagem 1: Comando lshw

01 # lshw

02 ...

03 *-multimedia

04 description: Audio device

05 product: Azalia Audio

Controller

06 vendor: Silicon Integrated

Systems [SiS]

07 physical id: f

08 bus info: pci@0000:00:0f.0

09 version: 00

10 width: 32 bits

11 clock: 33MHz

12 capabilities: pm

bus_master cap_list

13 configuration: driver=HDA

Intel latency=0

maxlatency=11 mingnt=52

14 resources: irq:18

memory:d4200000-d4203fff

15 ...

16 *-usb:1

17 description: USB Controller

18 product: USB 1.1 Controller

19 vendor: Silicon

Integrated Systems [SiS]

20 physical id: 3.1

21 bus info: pci@0000:00:03.1

22 version: 0f

23 width: 32 bits

24 clock: 33MHz

25 capabilities: bus_master

26 configuration:

driver=ohci_hcd latency=32

maxlatency=80

27 resources: irq:21

memory:d4205000-d4205fff

28 *-usb:2

29 description: USB Controller

30 product: USB 2.0 Controller

31 vendor: Silicon Integrated

Systems [SiS]

32 physical id: 3.3

33 bus info: pci@0000:00:03.3

34 version: 00

35 width: 32 bits

36 clock: 33MHz

37 capabilities: pm debug bus_

master cap_list

38 configuration: driver=ehci_

hcd latency=32

maxlatency=80

39 resources: irq:22

memory:d4206000-d4206fff

40 ...

Teste

cpuid

cpuinfo

device-tree

dmi

ide

isapnp

pci

pcmcia

memory

network

scsi

Descrição

Analisa o ID da CPU

Dados da CPU

suporta todos as opções de linha de

comando e você precisa testar para

localizar entradas específicas.

Conclusão

Com algum conhecimento básico de

hardware e um pouco de paciência,

o lshw acaba sendo uma ferramenta

útil, pois possui controles simples. O

usuário tem acesso a uma quantidade

enorme de informações sobre o

hardware utilizado na máquina local

e, em alguns casos, o utilitário revela

informações que as especificações do

fabricante deixaram de mencionar.

Além disso, ter uma boa conexão

de Internet é aconselhável para que

você possa usá-la para preencher as

lacunas, mas o lshw já inclui uma

generosa documentação de ajuda

feita por especialistas, em suas saídas.

O acesso a interface gráfica é fácil

em um primeiro momento, mas, se

depois você precisar executar a ferramenta

em múltiplas máquinas,

descobrirá que a linha de comando

oferece uma abordagem mais elegante

e completa.

Depois de conectar um novo hardware,

a detecção com o lshw rapidamente

criará uma nova entrada em

sua base de dados de informações de

hardware, que não poderia ter sido

criada se o mesmo tivesse falhado.

Árvore de dispositivos OpenFirmware (PowerPC)

Extensões DMI/SMBIOS

Dispositivos legados IDE e ATAPI

Extensões ISA PnP

Dispositivos PCI e AGP

Extensões de cartão PCMCIA e PC

Quantidade de memória heurética

Interfaces de rede

Dispositivos SCSI reais e simulados

spd Detecção de presença de dispositivo serial [2]

usb

Tabela 3 Testes

Todos os dispositivos USB

O programa apenas mostrará o que

o hardware revela sobre si próprio,

sendo assim, os dados nem sempre

estarão completos. No caso da placa

ATI Radeon X1600, usada na máquina

em meu laboratório, por exemplo, o

lshw informou os dados corretos do

produto para a porta padrão, mas

somente a observação ATI Technologies

Inc , ou seja, o nome do fabricante,

para a segunda. Novamente,

você precisa interpretar os detalhes

corretamente se quiser obter resultados

significativos. ■

Mais informações

[1] Website do lshw: http://

ezix.org/project/

wiki/HardwareLiSter

[2] Detecção de presença de

dispositivo serial: http://

en.wikipedia.org/wiki/

Serial_presence_detect

Gostou do artigo?

Queremos ouvir sua opinião.

Fale conosco em

cartas@linuxmagazine.com.br

Este artigo no nosso site:

http://lnm.com.br/article/5037

70 www.linuxmagazine.com.br


Visão de raio-X | ANÁLISE

Tem novidade na Coleção Academy!

Principais comandos de configuração

de um roteador Cisco

Temas e configurações avançadas

Segurança, dicas, truques

e resolução de problemas

Em março de 2010, a Cisco apresentou a plataforma de roteadores CRS-3, alegadamente a mais veloz do mundo

(por enquanto), com um poder de processamento de 322 Terabits por segundo (Tbps).

Este é o tipo de tecnologia que é desenvolvida a cada minuto, e que nos permite usufruir de ferramentas como

áudio e vídeos online, transmissão de televisão via Internet, computação em nuvens, e tantas outras.

Conhecer como funciona um roteador – peça chave no processo de transmissão de dados de um ponto a outro

– e saber como configurá-lo para que desempenhe sua função com eficiência pode ser um grande diferencial na

hora de lançar-se ao mercado em busca de um novo desafio. A demanda por profissionais com este conhecimento

já está aí. O desafio agora é preparar-se adequadamente para supri-la. Este livro tem por objetivo apresentar

ao leitor comandos e técnicas de configuração básica de roteadores Cisco visando atingir alguns objetivos

específicos, tornando o profissional apto a instalar e configurar um roteador de maneira clara e precisa.

Disponível no site www.LinuxMagazine.com.br

Linux Magazine #77 | Abril de 2011

71


SERVIÇOS

Calendário de eventos

Evento Data Local Informações

Web Security Forum 09 e 10 de abril São Paulo, SP

Seminário de

Cloud Computing

www.websecforum.com.br/

evento/

13 de abril São Paulo, SP www.ideti.com.br/cloud/

8º CONTECSI 1 a 3 de junho São Paulo, SP

LinuxCon Brasil 2011

17 e 18 de

novembro

São Paulo, SP

http://www.tecsi.fea.usp.br/

eventos/contecsi/

http://events.linuxfoundation.

org/events/linuxcon-brazil

Índice de anunciantes

Empresa

Pág.

Tecla 02

Plusserver 04, 05

Canonical 09

Othos 11

Central Server 13

UOL Host 15

WatchGuard 17

Globo.com 20, 21

Zarafa 23

Unodata 25

Impacta 31

Konsultex 33

Senac 51

F13 67

Bull 83

Sony 84

Nerdson – Os quadrinhos mensais da Linux Magazine

80

www.linuxmagazine.com.br


O Shell Script

continua presente na

rotina de nove entre

dez administradores

de sistemas.

Mas qualquer um

também pode

beneficiar-se

de seu poder.

Linux Magazine Especial

Shell Script

CHMOD

SSH

Rsync

PASSWD

Ifconfig

Yum

Cron

Su/Sudo

Wireless

Aprenda a usar o

terminal de maneira

fácil e descomplicada.

Adquira o seu

exemplar nas bancas

de todo o país

ou pelo site da

Linux Magazine.

w w w . L i n u x M a g a z i n e . c o m . b r


Linux Magazine #78

PREVIEW

Segurança

O que você pode fazer para proteger

seus dados, sua conexão e seu computador

contra invasões?

A detecção de invasão em sua rede ou

sistemas, a formulação de testes específicos

e políticas internas para prevenção

de ataques e o gerenciamento

de informações críticas que devem ser

mantidas em segurança, são os destaques

desta edição. ■

Ubuntu User #22

Ubuntu 11.04

O novo Ubuntu 11.04, codinome Natty

Narwhal, está saindo do forno. Muitas

mudanças são esperadas e previstas para

este lançamento. Entre elas, podemos

destacar o novo modo de organização

da área de trabalho, que agora utiliza

o Unity, interface de usuário padrão

adotada pela versão 10.10 para netbooks,

embora o Gnome continue ativo e funcional

no sistema. Os recursos multitouch

também vêm aperfeiçoados e com

muitas novidades.

82 www.linuxmagazine.com.br

More magazines by this user
Similar magazines