revista linux 004

48
Jogos: Puzzle Pirates, FreeCiv Book Review: Ruby, for teams... Agosto / Set 07 :: Número 4 Controle o seu desktop com o seu telemóvel através de bluetooth. Entrevista com Vasco Costa O programador português do jogo FreeCiv fala-nos da sua experiên- cia em programação de jogos open source. L L i i n n u u x x n n o o G G e e r r a a l l • Tudo o que queria saber sobre criptografia... • Um dia sem X • Escolhendo uma distribuição Linux • A Internet Assimétrica • Open Source na prática • Paravirtualização • Concentrando-nos no Utilizador Final Jogue um dos melhores FPS no seu sistema ope- rativo favorito. C C S S e e m m L L i i n n u u x x

Upload: tugas

Post on 10-Jun-2015

518 views

Category:

Documents


0 download

DESCRIPTION

Revista Linux 004Tudo sobre Linux em Português Moderno

TRANSCRIPT

Page 1: Revista Linux 004

JJooggooss:: Puzzle Pirates, FreeCiv BBooookk RReevviieeww:: Ruby, for teams...

Agosto / Set 07 :: Número 4

Controle o seu desktop com o seutelemóvel através de bluetooth.

Entrevista com Vasco CostaO programador português do jogoFreeCiv fala-nos da sua experiên-cia em programação de jogosopen source.

LLiinnuuxx nnoo GGeerraall•• TTuuddoo oo qquuee qquueerriiaa ssaabbeerr ssoobbrree ccrriippttooggrraaffiiaa......•• UUmm ddiiaa sseemm XX•• EEssccoollhheennddoo uummaa ddiissttrriibbuuiiççããoo LLiinnuuxx•• AA IInntteerrnneett AAssssiimmééttrriiccaa•• OOppeenn SSoouurrccee nnaa pprrááttiiccaa•• PPaarraavviirrttuuaalliizzaaççããoo•• CCoonncceennttrraannddoo--nnooss nnoo UUttiilliizzaaddoorr FFiinnaall

Jogue umdos melhoresFPS no seusistema ope-rativo favorito.

CCSS eemm LLiinnuuxx

Page 2: Revista Linux 004
Page 3: Revista Linux 004

Revista Linux

3 Número 4 :: www.revista-linux.com

Coordenador de Projecto/EditorJoaquim Rocha

Colaboradores PermanentesDuarte Loreto, Joaquim Rocha, Luís Rodrigues, PedroGouveia, Ruben Silva, Valério Valério

ColaboradoresAvi Alkalay, Gustavo Homem, Mayko Nestor, PedroGaspar

RevisoresHelena Grosso

WebsiteLuís Rodrigues, Joaquim Rocha, Pedro Gouveia

DesignJoaquim Rocha, Ruben Silva

Contacto: [email protected]

Linux é uma marca registada de Linus Torvalds.A mascote Tux foi criada por Larry Ewing.

A Equipa

EEddiittoorriiaallomo todos os leitores de-vem ter reparado, nãohouve edição de Ju-

nho/Julho. Tal deveu-se à faltade disponibilidade da equipaque compõe o núcleo de colabo-radores permanentes. Todos seencontravam a trabalhar ou agozar umas merecidas férias.Esclarecida a nossa ausência,estamos agora de volta com aedição Agosto/Setembro, quenão tem um tema principal, mascuja qualidade não considera-mos de todo inferior às ediçõesanteriores.É notória também uma grandecolaboração de colegas brasilei-ros nesta edição – como nuncativemos antes. Tal só prova auniversalidade da revista em ter-ritório lusófono que contribui pa-ra uma melhor comunicação en-tre as diferentes comunidades.Temos recebido alguns emailscom pedidos de divulgação detecnologia (programas, projec-tos, etc.) mas só devemos fazê-lo por meio de artigos. Assim,se alguém quiser divulgar umprojecto, pode escrever um arti-go sobre ele, seguindo as re-gras no site oficial, e enviar-nos.

Convém também explicar nestaaltura o porquê da restrição dapublicidade da lista de empre-sas a empresas portuguesas: OLinux e demais software opensource não têm ainda tanta di-vulgação/uso em Portugal comonoutros países (esta foi umadas razões pela qual a RevistaLinux foi criada). Por outras pa-lavras, Portugal ainda está mui-to dependente das tecnologiasde uma empresa grande, nor-malmente associada a cifrõesbrilhantes. Ao haver um espaçona revista com as escassas em-

presas portuguesas dedicadasao software livre, estamos a indi-car a eventuais clientes que taisempresas existem e podem as-segurar um melhor serviço comas melhores tecnologias. Se co-locássemos a lista ao dispor,por exemplo, das empresas bra-sileiras, certamente metade daspáginas da revista seriam parapublicitar essas empresas.Quem nos dera a nós não ha-

ver sequer a lista de empresasportuguesas por essa razão –só indicaria que chegámos a umnível bom de divulgação dosoftware livre.

Pedindo mais uma vez a com-preensão dos leitores pela nos-sa ausência, espero que gos-tem de mais uma edição da Ver-

dadeira Revista Portuguesa deLinux.

Com os melhores cumprimentos,

Joaquim Rocha

Com o apoio do Núcleo de Estu-dantes de Engenharia Informáti-ca da Universidade de Évora

C

Page 4: Revista Linux 004

Revista Linux

4Número 4 :: www.revista-linux.com

TTuuddoo oo qquuee qquuee-rriiaa ssaabbeerr ssoobbrreeccrriippttooggrraaffiiaa......Uma descrição da criptogra-fia para clarificar o seu con-ceito. pág. 8

NNúúmmeerroo 44

Novidades do Kernel

Book Review

Jogos:FreeCivPuzzle Pirates

Entrevista:Pedro Costa

Kernel Pan!c

Soluções Open Source

Agenda de Eventos

55

3377

33884422

3300

4455

4477

4488

UUmm ddiiaa sseemm XXA solução para quando,por alguma razão, não te-mos acesso ao ambientegráfico? pág. 11EEssccoollhheennddoo uummaaddiissttrriibbuuiiççããoo LLiinnuuxxConceitos a saber sobre o tipode distribuição a adoptar.pág. 14

BBllooggoossffeerraaUma reflexão sobreo "jornalismo" pes-soal em forma depágina web. pág. 17

AA IInntteerrnneettAAssssiimmééttrriiccaaO estado da internetportuguesa actual.

pág. 19CCoommoo jjooggaarrCCSS nnoo LLiinnuuxxFinalmente poderáaprender como jogareste fantástico FPSem Linux. pág. 22

OOppeenn SSoouurrcceennaa pprrááttiiccaaUma oppinião sobre osoftware open source ac-tual. pág. 24

PPaarraavviirrttuuaalliizzaaççããooCCoonncceeiittooss bbaassee ssoobbrree vviirrttuuaalliizzaa-ççããoo..

BBlluueePPaaddAgora pode controlar o seu Linuxcom um telemóvel através destaaplicação inovadora.

pág. 36

pág. 26

pág. 28

CCoonncceennttrraannddoo--nnoossnnoo UUttiilliizzaaddoorr FFiinnaallUma visão diferente compara onde orientar o Linux.

pág. 33

Page 5: Revista Linux 004

Revista Linux :: Kernel

5 Número 4 :: www.revista-linux.com

ste é o quarto artigo nasérie sobre o desenvolvi-mento de controladores

de vídeo para Linux. Este artigodescreve como uma aplicaçãopode determinar quais as entra-das e saídas que estão disponí-veis num dado dispositivo e se-leccionar quais as que pretendeutilizar.

Em muitos casos, o adaptadorde vídeo não tem muitas op-ções de Entrada e Saída. O con-trolador de uma câmara, por ex-emplo, fornecerá a câmara e na-da mais. Noutros casos, a situa-ção é mais complicada. Umaplaca de TV pode ter entradasmúltiplas correspondentes aosvários conectores na placa, po-de ainda ter múltiplos sintoniza-dores capazes de funcionar in-dependentemente. Algumas ve-zes estas entradas têm caracte-rísticas diferentes, umas podemser capazes de sintonizar um le-que mais variado de standardsde vídeo que outras. O mesmose pode afirmar para as saídas.

Claramente, para uma aplica-ção ser capaz de utilizar a totali-dade de um dispositivo, terá de

ser capaz de encontrar as entra-das e saídas disponíveis e sercapaz de seleccionar quais asque deseja operar. Para esseefeito, a API vídeo4Linux2 for-nece três chamadas ioctl() paratratar as entradas e três equiva-lentes para as saídas. Os con-troladores devem implementaras três (para cada funcionalida-de que corresponde ao hardwa-re). Os controladores devemtambém ser capazes de forne-cer valores por omissão razoá-veis. O que um controlador nãodeve fazer é limpar a informa-ção das entradas e saídas quan-do a aplicação termina, tal comoos outros parâmetros de vídeo,em que essas configurações de-vem permanecer inalteradas.

Standards de vídeo

Antes de entrarmos nos deta-lhes sobre entradas e saídas, te-mos de ver os standards de ví-deo. Estes standards descre-vem como o sinal de vídeo é for-matado para a transmissão, re-solução, frame rate, etc. São ge-ralmente definidos por entida-des reguladoras nos várioas paí-

ses. Existem três tipos princi-pais de standartds de vídeo:NTSC (usado principalmente naAmérica do Norte), PAL (na mai-oria da Europa, África e Ásia) eSECAM (França, Rússia e par-tes de África). Existem ainda va-riações nos standards entre osvários países que usam o mes-mo, alguns dispositivos podemser mais ou menos flexíveis nosuporte destas pequenas varia-ções.

A camada V4L2 representa osstandards de vídeo com o tipov4l2_std_id (que é uma másca-ra de 64bits). Cada um dos stan-dards é um bit na máscara. As-sim, o “standard” japonês NTSCé V4L2_STD_NTSC_M com ovalor 0x1000, a sua varianteV4L2_STD_NTSC_M_JP tem ovalor 0x2000. Se um dispositivoconsegue processar todas asvariantes do NTSC, pode sim-plesmente colocar o tipo aV4L2_STD_NTSC que tem to-dos os bits relevantes activa-dos. Conjuntos equivalentes debits existem para as variantesPAL e SECAM. Mais informa-ção online (1).

E

NNoovviiddaaddeess ddooKKeerrnneell

ppaarrttee 44:: EEnnttrraaddaass ee ssaaííddaasspor Luís Rodrigues

Imag

emor

igin

alda

auto

riade

De'N

ick'n

ise

Page 6: Revista Linux 004

Revista Linux :: Kernel

6Número 4 :: www.revista-linux.com

Para o User Space, a V4L2 for-nece um comando ioctl() VIDI-OC_ENUMSTD que permite àaplicação inquirir que standardssão implementados pelo disposi-tivo. O controlador não necessi-ta de responder às questões di-rectamente, simplesmente ne-cessita de actualizar o campo tv-norm da estrutura video_devicecom todos os standards que su-porta. O comando VIDI-OC_G_STD usado para inquirirque standard está activo numdado momento é também trata-do pela camada V4L2 atravésdo retorno do valor no campocurrent_norm na estrutura vide-o_device. O controlador deve,aquando da inicialização, actua-lizar o campo current_norm pa-ra reflectir a realidade. Algumasaplicações podem ficar “confu-sas” se não estiver activo ne-nhum standard.

Quando uma aplicação desejaactivar um dado standard utilizaa chamada VIDIOC_S_STD,que é passada ao controladorcom:

int (*vidioc_s_std)

(struct file *file,

void *private_data,

v4l2_std_id std);

O controlador deve programar ohardware para utilizar um dadostandard e retornar zero (ou umcódigo de erro negativo). A ca-mada V4L2 tratará da actualiza-ção do current_norm para o no-vo valor.

A aplicação pode necessitar desaber qual o tipo do sinal de ví-deo de entrada. A resposta é for-necida pelo VIDIOC_-QUERYSTD, que chega ao con-trolador com:

int (*vidioc_querystd)

(struct file *file,

void *private_da-

ta,v4l2_std_id *std);

O controlador deve preenchereste campo com o maior deta-lhe possível. Se o hardware nãofornece essa informação, o cam-po std deve indicar quais osstandards que podem estar pre-sentes.

Todos os dispositivos de vídeodevem suportar (ou pelo menosafirmar que suportam) no míni-mo um standard. Os standardsde vídeo fazem pouco sentidopara as câmaras que não estãoligadas a um regime regulatórioespecífico. Dado que não existenenhum standard para “Eu souuma câmara e posso fazer tudoo que quiser” alguns dos contro-ladores de câmara afirmam re-tornar dados PAL ou NTSC.

Entradas

A aquisição de vídeo iniciar-se-á ao enumerar as entradas dis-poníveis com o comando VIDI-OC_ENUMINPUT. Na camadaV4L2 transformar-se-á numachamada ao controlador com:

int (*vidioc_enum_input)

(struct file *file, void

*private_data, struct

v4l2_input *input);

Nesta chamada, o campo filecorresponde ao dispositivo de ví-deo aberto e o private_data éum campo privado actualizadopelo controlador. A estrutura in-put é onde a informação real épassada e tem alguns camposde interesse:

• __u32 index: é o número daentrada à qual a aplicação pre-tende aceder; este é o únicocampo a ser definido pelo userspace. Os controladores devematribuir números às entradas co-meçando com zero e seguindoa partir daí. Uma aplicação quepretenda saber toda a informa-ção acerca das entradas variá-veis deverá chamar VIDIOC_E-NUMINPUT começando com ze-

ro e seguindo a partir daí; assimque o controlador devolve EIN-VAL, a aplicação sabe que che-gou ao final da lista. O índice ze-ro deverá existir para todos osdispositivos com entradas.

• __u8 name[32]: o nome da en-trada definido pelo controlador.Em casos simples pode ser “câ-mara” ou algo igualmente sim-ples. Se um dispositivo tem múl-tiplas entradas o nome deverácorresponder ao que está im-presso no conector.

• __u32 type: o tipo da entrada.Neste momento existem dois:V4L2_INPUT_TYPE_TUNER eV4L2_INPUT_TYPE_CAMERA.

• __u32 audioset: descreve queentradas de áudio podem ser as-sociadas com entradas de ví-deo. As entradas de áudio sãoenumeradas pelo índice tal co-mo as entradas de vídeo, masnem todas a combinações deáudio e vídeo podem ser selecci-onadas. Este campo é uma más-cara de bits com o bit activadopara cada entrada de áudio quefunciona com a entrada de ví-deo que está a ser listada. Senenhuma entrada de áudio é su-portada, ou se apenas uma en-trada pode ser seleccionada, ocontrolador pode colocar estecampo a zero.

• __u32 tuner: se esta entrada éum sintonizador (o tipo éV4L2_INPUT_TYPE_TUNER)este campo irá conter o númerodo índice corrrespondente aodispositivo sintonizador. A lista-gem e controle dos sintonizado-res serão apresentados numapróxima oportunidade.

• v4l2_std_id std: descreve questandars de vídeo são suporta-dos pelo dispositivo.

• __u32 status: dá o estado daentrada. O conjunto de opçõespode ser encontrada na docu-

Page 7: Revista Linux 004

Revista Linux :: Kernel

7 Número 4 :: www.revista-linux.com

mentação do V4L2 (2). Cada bitactivado no status descreve umproblema, pode incluir falta deenergia, ausência de sinal, en-tre outros.

• __u32 reserved[4]: campo re-servado. Deve ter o valor zero.

Normalmente, o controlador de-verá colocar os valores dos cam-pos acima e retornar zero. Se oíndice está fora do intervalo deentradas suportadas deve serdevolvido -EINVAL.

Quando uma aplicação quer al-terar a entrada, o controlador de-verá receber a chamada a vidi-oc_s_input():

int (*vidioc_s_input)

(struct file *file,

void *private_data,

unsigned int index);

O significado do index tem omesmo significado que antes(identifica a entrada desejada).O controlador deve programar ohardware para utilizar a entradaescolhida e retornar zero. Ou-tros valores de retorno possívelsão -EINVAL (para índice inváli-do) ou -EIO (para problemas dehardware). Os controladores de-vem implementar esta chamadamesmo que apenas suportemuma entrada.

Existe também uma chamadapara descobrir qual a entradaque está activa:

int (*vidioc_g_input)

(struct file *file,

void *private_data,

unsigned int *index);

Aqui o controlador coloca o *in-dex com o número o índice daentrada activa.

Saídas

O processo de enumerar e se-leccionar as saídas é muito simi-

lar ao das entradas, assim adescrição será mais breve. Achamada que suporta a enume-ração é:

int (*vidioc_enumoutput)

(struct file *file, void

*private_data struct

v4l2_output *output);

Os campos da estruturav4l2_output são:

• __u32 index: o valor do índicecorespondente à saída. Este ín-dice funciona da mesma manei-ra que o índice de entrada: co-meça em zero e continua a in-crementar.

• __u8 name[32]: o nome da saí-da.

• __u32 type: o tipo da saída.Os tipos de saídas suportadassão V4L2_OUTPUT_TYPE_MO-DULATOR para um moduladorde TV analógico, V4L2_OUTPUT_TYPE_ANALOG para uma saí-da de vídeo analógica e,V4L2_OUTPUT_TYPE_ANALOGVGAOVERLAY para dispo-sitivos analógicos de VGA.

• __u32 audioset: conjunto desaídas de áudio que funcionamcom esta saída de vídeo.

• __u32 modulator: o índice domodulador associado a este dis-positivo (para dispositivos como typo V4L2_OUTPUT_TYPE_MODULATOR).

• v4l2_std_id std: os standardsde vídeo suportados por estasaída.

• __u32 reserved[4]: campos re-servados, devem ter o valor ze-ro.

Estas são as chamadas para ob-ter e definir a saída corrente, es-pelham as chamadas de entra-das:

int (*vidioc_g_output)

(struct file *file,

void *private_data,

unsigned int *index);

int (*vidioc_s_output)

(struct file *file,

void *private_data,

unsigned int index);

Qualquer dispositivo que supor-te saída de vídeo deve ter astrês chamadas de saída defini-das mesmo que só seja possí-vel uma saída.

Com estes métodos criados,uma aplicação V4L2 pode deter-minar quais as entradas e saí-das disponíveis num dado dispo-sitivo e escolher entre eles. A ta-refa de determinar qual o tipode dados de vídeo que passaentre estas entradas e saídas éalgo mais complicado. No próxi-mo artigo serão apresentadosos diferentes formatos de dadosde vídeo e como negociar como user space.

Os artigos apresentadosnesta secção são tradu-ções autorizadas de arti-gos relacionados com okernel do Linux do jornalonline Linux Weekly News- http://www.lwn.net .

Sobre esta secção

(1) http://v4l2spec.bytesex.org/spec/r7410.htm#V4L2-STD-ID(2) http://v4l2spec.bytesex.org/spec/r7058.htm#INPUT-STATUS

Ver na Web

Page 8: Revista Linux 004

Revista Linux :: Teoria

8Número 4 :: www.revista-linux.com

riptografia vem do gregoe significa “escrita escon-dida”. Bem, ainda não te-

mos a tecnologia dos filmes defantasia onde um pergaminhoaparentemente em branco reve-la um mapa do tesouro quandoexposto ao luar, mas a criptogra-fia simula isso transformando ainformação em algo ilegível ouaparentemente sem valor. Muitofácil: se eu rabiscar bem umcheque de 100.000 € ele tam-bém perde o seu valor por ficarilegível.

O difícil é o inverso: tornar legí-vel o ilegível, e é aí que está amagia da criptografia.

O primeiro lugar onde alguémpensaria em usar criptografia se-ria na guerra, para comunicarestratégias de movimentação atropas distantes, espionagem,etc. Se o inimigo intercepta es-sa comunicação, principalmentesem o primeiro saber, ganha aguerra. Por isso, quem primeiroestudou técnicas de criptografiaforam os militares, governos einstituições de pesquisa secre-tas. Os seus principais interes-ses focavam-se em duas coi-sas: como criptografar melhor ecomo descriptografar as mensa-gens do inimigo (criptoanálise).

Na Era da Informação e Inter-net, a criptografia tem um papelcentral porque viabiliza uma co-municação segura. Mais até:não teríamos uma Era da Infor-mação se a criptografia não fos-se de uso dominado por qual-quer cidadão, simplesmente por-que o mundo comercial não en-traria nessa onda de trocar infor-mação (e fazer negócios) por re-des abertas se não houvesseum meio de garantir confidencia-lidade.Trata-se de um tema muito vas-to, fascinante, com muitos des-dobramentos tecnológicos. En-tão vamos somente preocupar-mo-nos em entender aqui o vo-cabulário desse mundo.

Criptografia de Chave-Simétrica

A criptografia digital já era usa-da secretamente desde 1949por militares e governos. Emmeados da década de 1970 aIBM inventou o padrão DES (Da-ta Encription Standard) de cripto-grafia, que passou a ser larga-mente utilizado até aos dias dehoje. A partir daí tudo mudou.Como exemplo do seu funciona-mento: se a Paula quer enviaruma mensagem secreta para aTatiana, ela deve fazer isto:

Mensagem + ChaveSimétrica =MensagemCriptografada

Então, a MensagemCriptografa-da é enviada para a Tatiana poruma rede aberta que, para a lerterá que fazer o seguinte:

MensagemCriptografada + Cha-veSimétrica = Mensagem

Uma analogia a estas equaçõesseria como se ambas trocassemcaixas que abrem e fechamcom uma chave (a chave simé-trica) que contém cartas secre-tas. Para a Tatiana abrir a caixada Paula, terá que usar uma có-pia da chave que a última usoupara fechá-la.

O que representamos pela so-ma (+) é na verdade o algoritmode cifragem (ou o mecanismoda fechadura) que criptografa edescriptografa a mensagem. Ho-je em dia, esses algoritmos temgeralmente o seu código fonteaberto, e isso ajudou-os a torna-rem-se mais seguros ainda,pois foram limpos e revistos aolongo dos anos por muitas pes-soas de várias partes do mundo.

A Chave Simétrica é umasequência de bits e é ela quedefine o nível de segurança da

C

TTuuddoo oo qquuee qquueerriiaa ssaabbeerrssoobbrree ccrriippttooggrraaffiiaa......ee ttiinnhhaa mmeeddoo ddee ppeerrgguunnttaarr Im

agem

orig

inal

daau

toria

debe

bop7

17

por Avi Alkalay Artigo adaptado paraPortuguês-Europeu

Page 9: Revista Linux 004

Revista Linux :: Teoria

9 Número 4 :: www.revista-linux.com

comunicação. Ela deve ser sem-pre secreta. Chama-se simétri-ca porque todos os interessa-dos em comunicar-se devem teruma cópia da mesma chave.

O DES com chave de 56 bits po-de ser quebrado (a Mensagem-Criptografada pode ser lida semse conhecer a chave), e outroscifradores de chave simétrica(symmetric-key, ou private-key)mais modernos surgiram, como3DES, AES, IDEA, etc.

O maior problema da criptogra-fia de chave simétrica é que oremetente envia a chave secre-ta ao destinatário através deuma rede aberta (e teoricamen-te insegura). Se um intruso adescobrir, poderá ler todas asmensagens trocadas. Mais ain-da, comprometerá a comunica-ção entre todo o conjunto depessoas que confiavam nessachave.

Criptografia de Chave PúblicaEstes problemas foram elimina-dos em 1976 quando WhitfieldDiffie e Martin Hellman trouxe-ram à tona os conceitos da crip-tografia de chave pública tam-bém conhecida por criptografiapor par de chaves ou de chaveassimétrica. Trata-se de uma re-volução no campo das comuni-cações, tão radical quanto é omotor a combustão para o cam-po de transportes. Eles descobri-ram fórmulas matemáticas quepermitem que cada usuário te-nha um par de chaves de cripto-grafia matematicamente relacio-nadas, uma privada e outra pú-blica, sendo a última, como opróprio nome diz, publicamentedisponível para qualquer pes-soa. Estas fórmulas tem a im-pressionante característica de oque for criptografado com umachave só pode ser descriptogra-fado com o seu par. Então, nonosso exemplo, Paula agora en-viaria uma mensagem para Tati-ana da seguinte maneira:

Mensagem + ChavePública(Tati-ana) = MensagemCriptografada

E Tatiana leria a mensagem as-sim:

MensagemCriptografada + Cha-vePrivada(Tatiana) = Mensagem

E Tatiana responderia para Pau-la da mesma forma:

Resposta + ChavePública(Pau-la) = RespostaCriptografada

Ou seja, uma mensagem cripto-grafada com a chave pública deuma, só pode ser descriptografa-da com a chave privada da mes-ma, então a primeira pode ser li-vremente disponibilizada na In-ternet. E se a chave privada daPaula for roubada, somente asmensagens para a Paula estari-am comprometidas.O cifrador de chave pública tidocomo mais confiável é o RSA(iniciais de Rivest, Shamir eAdleman, seus criadores).A criptografia assimétrica permi-tiu ainda outras inovações revo-lucionárias: se a Tatiana querpublicar um documento e garan-tir a sua autenticidade, pode fa-zer:

Documento + ChavePrivada(Ta-tiana) = DocumentoCriptografa-do

Se um leitor conseguir descripto-grafar este documento com achave pública da Tatiana signifi-ca que ele foi criptografado coma chave privada da Tatiana, quesomente ela tem a posse, o quesignifica que somente a Tatianapoderia tê-lo publicado. Nasceassim a assinatura digital.

Infraestrutura para Cha-ves Públicas

O PGP (Pretty Good Privacy) foio primeiro sistema de seguran-ça que ofereceu criptografia dechave pública e assinatura digi-

tal de qualidade para as mas-sas. Ficou tão popular que setornou o padrão OpenPGP eposteriormente recebeu váriasimplementações livres. É larga-mente usado até hoje, principal-mente em troca de e-mails. Asua popularização exigiu quehouvesse uma forma para aspessoas encontrarem as chavespúblicas de outras pessoas, quemuitas vezes nem eram conheci-das pelas primeiras. No começodos tempos do PGP, havia sitesonde as pessoas publicavam assuas chaves públicas para asoutras as encontrarem. Talvezesta fosse a forma mais rudi-mentar de PKI ou Public Key In-frastructure. PKI é um conjuntode ferramentas que uma comu-nidade usa justamente para aclassificação, busca e integrida-de das suas chaves públicas. Éum conjunto de ideias e não umpadrão nem um produto. Concei-tos de PKI estão hoje totalmen-te integrados em produtos de co-laboração como o Lotus Notesda IBM, e seu uso é transparen-te ao usuário.

Certificados Digitais

Como pode a Tatiana ter certe-za que a chave pública da Pau-la que ela tem em mãos e queestá prestes a usar para enviaruma mensagem segura, é real-mente da Paula? Outra pessoa,agindo de má fé, pode ter criadouma chave aleatória e tê-la pu-blicado como sendo da Paula.Podemos colocar isso de outraforma: como posso ter certezaque estou acedendo realmenteao site do meu banco e não aum site impostor que quer rou-bar a minha senha e o meu di-nheiro? Não gostaria de confiarnos meus olhos só porque o siterealmente se parece com o demeu banco. Haveria alguma for-ma mais confiável para garantirisso?

Em 1996, a Netscape, fabrican-

Page 10: Revista Linux 004

Revista Linux :: Teoria

10Número 4 :: www.revista-linux.com

te do famoso browser, atacoueste problema juntando o quehavia de melhor em criptografiade chave pública, PKI (atravésdo padrão X.509), mais parceri-as com entidades confiáveis, einventou o protocolo SSL (Secu-re Socket Layer ou TLS, seu su-cessor). Foi graças a este pas-so que a Internet tomou um ru-mo de plataforma comercialmen-te viável para negócios e mudouo mundo.

Para eu mandar a minha senhacom segurança ao site do ban-co e poder movimentar a minhaconta, o site precisa primeiro deme enviar a sua chave pública,que vem assinada digitalmentepor uma outra instituição degrande credibilidade. Em linhasgerais, os fabricantes de brow-sers (Mozilla, Microsoft, etc) ins-talam nos seus produtos, na fá-brica, os certificados digitaisdessas entidades, que são usa-das para verificar a autenticida-de da chave pública e identida-de do site do banco. Este, porsua vez, teve que passar porum processo burocrático junto aessa entidade certificadora, pro-vando ser quem diz ser, para ob-ter o certificado.

O SSL descomplicou esta ma-lha de credibilidade, reduzindo onúmero de instituições emquem podemos confiar, distri-buindo essa confiança por todosos sites que adquirirem um certi-ficado SSL.

Na prática funciona assim:1 :: Acedo pela primeira vez aosite de uma empresa que pare-ce ser idônea.2 :: Ele pede o número do meucartão de crédito.3 :: Se o meu browser não recla-mou a segurança desse site,posso confiar nele porque...4 :: ...o site usa um certificadoemitido por uma entidade naqual eu confio.Pode-se verificar os certificados

que o fabricante do browser ins-talou, acedendo às suas configu-rações de segurança. O leitorvai encontrar lá entidades comoVeriSign, Thawte, Equifax, Geo-Trust, Visa, entre outros.

Segurança Real daCriptografia

Quanto maior for a chave decriptografia (número de bits)mais difícil é atacar um sistemacriptográfico. Outros factores in-fluenciam na segurança, comoa cultura em torno de manterbem guardadas as chaves priva-das, qualidade dos algoritmosdo cifrador, etc. Este último as-pecto é muito importante e temde ser estabilizado num bom ní-vel alto, porque esses algorit-mos têm sido produzidos nummodelo de software livre, o quepermite várias boas mentes au-ditá-los e corrigir falhas ou méto-dos matemáticos fracos.

A segurança real de qualqueresquema de criptografia não foicomprovada. Significa que, teori-

camente, qualquer um que tivermuito recurso computacional dis-ponível pode usá-lo para que-brar uma mensagem criptografa-da. Teoricamente. Porque esta-ríamos a falar de centenas decomputadores interconectadostrabalhando para esse fim. Naprática, hoje isso é intangível, ebasta usar bons produtos decriptografia (de preferência osbaseados em software livre),com boas práticas de adminis-tração, e teremos criptografia re-almente segura à nossa disposi-ção.

Avi Alkalay foi, por alguns anos, responsávelpela segurança corporativa da IBM Brasil, e játrabalhou praticamente com todas as tecnologiasda web. Hoje é arquiteto de soluções e consultorde Linux, Padrões Abertos e Software Livre na

IBM.

Sobre o Autor

Page 11: Revista Linux 004

Revista Linux :: Prático

11 Número 4 :: www.revista-linux.com

Imag

emor

igin

alda

auto

riade

Rafi

Abra

mov

UUmm ddiiaa sseemm XXpor Luís Rodrigues

á alguma vez pensou serpossível sobreviver sem oseu ambiente gráfico?

Imagine que na actualização dasua distribuição de Linux preferi-da o pacote do Xserver está cor-rompido e não consegue acederao X. O Linux tem um grandeconjunto de aplicações de linhade comandos, umas utilizam abiblioteca curses e/ou o frame-buffer para as suas interfaces.Assim poderá ouvir música, na-vegar na Internet, etc enquantoespera calmamente por uma no-va versão da actualização como X a funcionar.Segue uma lista de aplicaçõesorganizada pelas secções queconsideramos mais importantespara um utilizador de computa-dor da actualidade. Esta listanão é, nem pretende ser, umalista exaustiva de todas as apli-cações por cada secção, vistoque isso seria impossível deconcretizar.

Navegar na Internet

Quando o X não funciona, emgeral, a primeira preocupação énavegar na Internet. Assim, estaé a primeira secção que iremosapresentar. Muitas das páginasda actualidade fazem uso doAJAX e CSS, essas não funcio-narão convenientemente mas to-das as outras (em princípio) es-tarão navegáveis.Existem vários browsers em mo-

do de texto: Lynx (1) , Links (2) ,w3m (3) e elinks (4).O Lynx e o w3m são bastantesimplistas não suportando fra-mes nem tabelas. O Links supor-ta praticamente todo o standardHTML4.0 excepto CSS, masnão é activamente desenvolvi-do. O elinks é um fork do linksactivamente desenvolvido quesuporta frames, tabelas, algu-mas das funcionalidades doCSS e ECMAScript. A minha su-gestão para navegação é assimo elinks.

Email

Para além da poder utilizar a in-terface web (utilizando o elinks),pode ainda utilizar o clientePOP3 ou IMAP. Para tal, exis-tem duas opções: O Pine (5) ouo Mutt (6).O Pine foi desenvolvido pelaUniversidade de Washington, éfreeware e suporta practicamen-te tudo o que se espera de ummoderno cliente de email. OMutt está sob a licença GPL e,tal como o Pine, suporta a maio-ria das funcionalidades que seespera de um cliente de e-mail.Tem a vantagem de poder inte-grar um filtro de SPAM.A escolha entre estas duas apli-cações é mais complicada, sen-do um pouco uma questão degosto. Eu prefiro o mutt, logo, éesse que aconselho.

Chat

Após a navegação e o email apreocupação que se segue é ochat. Existem vários clientes pa-ra os vários protocolos disponí-veis. Para Jabber/GTalk existeo freetalk (7), para AIM temos oNaim (8) e para IRC o IRSSI(9). Ter uma aplicação a correrpor cada conta que o utilizadortem pode tornar-se chato alémde desperdiçar muita memória,tal como o Pidgin (10), que juntaao nível gráfico diversos proto-colos, temos o Finch para a con-sola. Então, o melhor cliente autilizar é o Finch dado que su-porta praticamente todos os pro-tocolos existentes.

Ler RSS

Para todos os leitores que subs-crevem muitas RSS têm à suadisposição um excelente clientede consola: o Raggle (11). Estetem uma interface limpa e intuiti-va, é muito rápido e quase nãoocupa memória. Pode ainda im-portar o seu ficheiro OPML utili-zando uma opção da linha decomandos ficando com todas assuas feeds à disposição.

Gestão de Ficheiros

Se não está a navegar, conver-sar ou a ler/escrever e-mail pro-vavelmente estará a navegar pe-la sua drive. O Midnight Com-

J

Page 12: Revista Linux 004

Revista Linux :: Teoria

12Número 4 :: www.revista-linux.com

mander (12) é a ferramenta ide-al para esta tarefa. Tem uma in-terface similar ao Norton Com-mander e é muito fácil de utili-zar.

Imagens

Até agora, tem sido fácil supor-tar um dia sem X. O que aconte-ce se alguém enviar uma ima-gem espectacular das suas féri-as em África que o leitor temmesmo de ver? A solução é utili-zar uma aplicação de framebuf-fer que utiliza a SVGAlib que dápelo nome ZGV (13).

Vídeo

Para vídeo pode utilizar oMPlayer (14) que tem várias op-ções de saída de vídeo. Desdeo típico framebuffer até a utilizarcaracteres em modo texto paracodificar a imagem (aalib).

Música

Não ter X não que dizer que oleitor não possa ouvir as suasmúsicas preferidas. O Cplay(15) é um leitor extremamenteleve excelente para o ajudar asobreviver no seu dia-a-dia semX. Para controlar o volume doáudio pode sempre utilizar o al-samixer (se tem o ALSA instala-do – o que é bastante provável– o alsamixer estará tambéminstalado).

Edição de Texto

Para a edição de texto existemduas grandes opções: vim (16)e emacs (17). Geralmente, todaa gente já os conhecem e, nor-malemnte, têm uma opinião mui-to forte. Para não fomentar essadiscórdia, não irei sugerir ne-nhum deles deixando ao leitoressa escolha.

P2P

Na sociedade da informação emque nos inserimos, uma das ac-ções mais importantes é a parti-lha de informação. Para parti-lhar informação nada melhorque um protocolo P2P, como éo caso do Bittorrent. Um dos me-lhores clientes é o Rtorrent (18).É uma aplicação baseada na lib-curses com uma utilização dememória quase desprezável. ORtorrent é capaz de competir fa-cilmente com o uTorrent ao ní-vel da utilização de memória evelocidade. O único problema(para algumas pessoas) é o fac-to deste utilizar um esquema deatalhos de teclado parecido aoemacs, o que torna a curva deaprendizagem algo elevada.

Gravação de CDS

Agora que o leitor já se está ahabituar a não usar o X, por quenão gravar cds com o bashburn(19)? O bashburn é uma aplica-ção de consola que faz a interfa-ce entre as aplicaçõesque realmente ge-rem/gravam cds, nome-adamente cdrtools edvd+rw-tools, entre ou-tras.

Gestão de Janelas

Suponho que o leitor seestá a questionar comoé possível a gestão dejanelas sem X. Não tero X a funcionar não quedizer que não possa serpossível ter à sua dispo-sição janelas para me-lhor trabalhar com assuas aplicações de con-sola. O Twin (20) é umaaplicação que usa a lib-curses que permiteabrir subterminais den-tro de um ambiente cur-ses. O Twin permite tero elinks, mutt, raggle ouqualquer outra aplica-ção de consola abertana mesma tty.

Existe ainda uma outra aplica-ção que é o screen (21) quetambém permite a gestão de di-versas janelas numas única tty,na minha opinião o twin, vistoque é mais “gráfico” do que oscreen.

Será mesmo possível sobrevi-ver um dia sem X? Quando co-mecei a utilizar Linux o X nãoera o que é hoje e muitas vezesservia apenas para ter um con-junto de terminais (xterm) aber-tos a correr várias aplicações.Actualmente é mais complicadodado que a maioria dos utiliza-dores estão habituados às suasaplicações terem cores brilhan-tes e à fácil integração no ambi-ente de trabalho.Deixo, no entanto, o desafio aoleitor mais intrépido: tente pelomenos um dia recordar os “bonsvelhos tempos” em que o Linuxnão tinha o GNOME e o KDE!

(1) http://lynx.browser.org/(2) http://links.sourceforge.net/(3) http://w3m.sourceforge.net/(4) http://elinks.or.cz/(5) http://www.washington.edu/pine/(6) http://www.mutt.org/(7) http://www.gnu.org/software/freetalk/(8) http://naim.n.ml.org(9) http://www.irssi.org/(10) http://pidgin.im/(11) http://www.raggle.org/(12) http://www.ibiblio.org/mc/(13) http://www.svgalib.org/rus/zgv/(14) http://www.mplayerhq.hu/(15) http://mask.tf.hut.fi/~flu/cplay/(16) http://www.vim.org/(17) http://www.gnu.org/software/emacs/(18) http://libtorrent.rakshasa.no/(19) http://bashburn.sourceforge.net/(20) http://linuz.sns.it/~max/twin/(21) http://www.gnu.org/software/screen/

Ver na Web

Page 13: Revista Linux 004
Page 14: Revista Linux 004

Revista Linux :: Teoria

14Número 4 :: www.revista-linux.com

importante começar pordizer que todas as distri-buições Linux, incluíndo

as comerciais — Red Hat Enter-prise Linux, SUSE Linux, Xan-dros, etc — e não-comerciais —Debian, Slackware, Gentoo, etc— atendem a maioria das ne-cessidades reais. Escolher umamelhor entre elas é mais umaquestão de gosto pessoal dotécnico que já a conhece do quepelas suas funcionalidades.Mas uma empresa precisa pe-sar mais aspectos — além dogosto — para garantir uma esco-lha estratégica de benefícios delongo prazo.

Suporte e Certificação

Todas as distribuições Linux em-pacotam, de uma forma ou deoutra, mais ou menos os mes-mos softwares Open Source (oKernel, Apache, Samba, bibliote-cas, Gnome, KDE, etc), mas so-

mente as chamadas distribui-ções enterprise incluem suportejunto ao seu produto.Para um usuário, suporte signifi-ca:

1 :: Um parceiro disponível acurto e a longo prazo, paratransferir riscos operacionaisEste é o ponto mais importante.As empresas não querem correrriscos — especialmente os ris-cos inerentes ao Open Source.

2 :: Acesso rápido a actualiza-ções de qualidadeNo geral, as empresas têm re-cursos limitados para compilar,testar e integrar atualizações desoftware Open Source.

3 :: Acesso a um grande nú-mero de fabricantes indepen-dentes de hardware (IHV) e desoftware (ISV) certificados edisponibilidade de soluçõescomplexas pré-testadas

Uma parte crítica de qualquerprojecto de TI consiste em corre-lacionar a certificação entre osseus componentes (hardware,storage, middleware, SO, etc).A característica mais importantee valorizada que uma distribui-ção pode prover, mais do queas tecnologias embutidas noSO, é a sua capacidade de criarecossistemas de hardware esoftware homologado.

Modelo de Subscriçãoversus Preço por Licença

Empresas que vendem softwarecomercial (como a Microsoft,IBM, Oracle, etc) vão permitir ouso dos seus produtos somenteapós a compra de um direito deuso. Esses “direitos comprá-veis” são hoje em dia chamadosde licença comercial.O software contido em qualquerdistribuição Linux é sem custo.Os programadores desses

É

Imag

emor

igin

alda

auto

riade

Gre

gory

Barto

n

EEssccoollhheennddoo uummaaddiissttrriibbuuiiççããoo LLiinnuuxx

por Avi Alkalay

Artigo adaptado para Português-Europeu

Page 15: Revista Linux 004

Revista Linux :: Teoria

15 Número 4 :: www.revista-linux.com

softwares licenciaram o seu tra-balho sob a GPL, BSD, MozillaPublic, IBM Public ou algumaoutra licença Open Source, quegarante a qualquer um o direitode usar e redistribuir o softwaresem ter que pagar por isso.

É errado dizer que se “compra”uma distribuição Linux (ou umalicença de seu uso). Não se po-de comprá-la. Na prática ela jáé sua. É como dizer que umusuário irá comprar o conteúdode um site. Não há nada materi-al para adquirir. Por outro lado,o que se pode dizer é que estáa assinar-se um serviço que pro-vê assistência técnica, acesso aactualizações e ingresso numecossistema de produtos que in-ter-operam de uma forma pré-testada e certificada — os pon-tos de suporte referidos anterior-mente.Então, empresas que fazem dis-tribuições enterprise (como RedHat, Novell, Xandros) vendemesse serviço e não o software,porque o último é gratuito.

Escolhendo a Melhor Dis-tribuição

Há duas formas responsáveis emaduras de usar distribuição Li-nux nas operações de TI deuma empresa:1 :: Adquirir a subscrição deuma distribuição enterpriseglobal como as vendidas pelaRed Hat e NovellA subscrição junta o softwareOpen Source a um suporte deescala global, criando um ambi-ente estável e favorável para oflorescimento de um ecossiste-ma de ISVs e IHVs certificados.

2 :: Usar distribuições gratui-tas como Debian ou Slackwa-re e adquirir serviços de su-porte de uma companhia localindependenteIsto pode trazer mais risco porcausa da operação de suportenão-global e pela falta de inte-

gração entre o empacotamentodo software e o seu suporte, oque leva a um ecossistema fra-co ou inexistente de ISVs eIHVs.

Em termos de flexibilidade técni-ca e escolha de fornecedor —pontos que coincidem nos cus-tos —, as duas opções sãoiguais. Todos os benefícios dasegunda opção estão presentesna primeira, enquanto que nasegunda há uma ausência dosaspectos de ecossistema deISVs e IHVs da primeira.Para uma empresa que precisade tomar decisões pragmáticas,parece fazer mais sentido adqui-rir directamente um produto co-mo o RHEL e SLES, que juntasuporte ao software na fonte, doque manualmente integrá-losem níveis regionais. A segundaopção, com Debian etc, tambémtem sido escolhida com sucessopor empresas principalmente dosector público, e trazem benefí-cios sociais e económicos ge-rais por manterem o dinheiro acircular dentro do país.

As empresas devem prestaratenção aos seguintes pontos,mais ou menos por esta ordem,quando estão a escolher umadistribuição Linux para correr assuas aplicações de negócio:

1 :: Com qual fabricante dedistribuição eu tenho melho-res relacionamentos comerci-ais ?2 :: Qual o fabricante que tem omelhor preço de subscrição pe-lo valor oferecido ?3 :: Qual a distribuição que osmeus técnicos conhecem me-lhor ?4 :: Qual a distribuição que é su-portada e certificada por quemme fornece produtos de hardwa-re e software ?5 :: A não ser que se saiba mui-to bem o que se está a fazer, asempresas devem ser responsá-veis e usar distribuições enterpri-

se.

Para empresas que precisamde escolher rapidamente umadistribuição, há duas opções en-terprise que tem um forte ecos-sistema e implementação nomercado: Red Hat Enterprise Li-nux e Novell SUSE Linux Enter-prise. Algumas diferenças entreelas têm-se tornado cada vezmaiores ao longo do tempo, en-quanto que a maioria tem con-vergido ou desaparecido. Vejauma comparação na tabela.

Outras Distribuições En-terprise

Há alguns provedores de distri-buições Linux com um modelode negócio similar ao adoptadopela Red Hat e pela Novell. Asmais famosas são Ubuntu (tecni-camente baseado no Debian),Mandriva (fusão da Conectiva,Mandrake e outras), Xandros(também baseado no Debian),para citar algumas. Estas estãofocadas em prover um produtoglobal de tal forma que o supor-te e os serviços possam ser dis-ponibilizados automaticamenteou num modo de self-service.Há uma lei intrínseca do merca-do que busca o equilíbrio dispo-nibilizando duas opções de es-colha. Uma opção pode ser boa(na verdade não há opção quan-do só um caminho existe), duasopções maduras é melhor, en-quanto que três ou mais opçõesjá é muita coisa para o mercadodigerir. E parece que o mercadojá definiu suas duas escolhasmaduras com a Novell e RedHat.

Mesmo que estas e outras distri-buições para empresas tenhamprodutos melhores, elas terãoque investir uma quantidadeconsiderável de energia paraconstruir um ecossistema deISVs e IHVs. Mais do que isso,ISVs e IHVs terão que fazeruma pausa nas suas operações

Page 16: Revista Linux 004

Revista Linux :: Teoria

16Número 4 :: www.revista-linux.com

Ver nota biográfica sobre o autor napágina 10

para ouvir o que estas novasdistribuições têm a oferecer.

Ecossistema é tudo o que impor-ta. Um produto com um bomecossistema pode facilmente tor-nar-se melhor que um excelenteproduto sem ecossistema. Pro-vavelmente este é o aspectomais importante a considerarquando uma companhia esco-

lhe uma distribuição.

Não se pode dizer que certa dis-tribuição é melhor que todas asoutras. Devem sempre colocar-se na balança aspectos pragmá-ticos visando uma boa aderên-cia à sua empresa ou a um cer-to projecto.

Page 17: Revista Linux 004

Revista Linux :: Teoria

17 Número 4 :: www.revista-linux.com

BBllooggoossffeerraam blog é um website qualquer cujo conteú-do é organizado como um diário (log, em in-glês), ou seja, por datas e em ordem crono-

lógica.O nome apareceu quando “web log” virou “weblog”que, numa brincadeira, se transformou em “weblog”, para por fim se popularizar em “blog”.A cultura dos blogs tem um dicionário próprio:

Post: um artigo, uma publicação que pode contertexto, imagens, links, multimédia, etc. Um post temum título, data e hora e é categorizado sob um oumais assuntos como “tecnologia”, “vinhos”, “via-gens”, “poesia”, etc., definidos pelo dono do blog.Este usa geralmente uma linguagem mais directa edescontraída, e pode ser tão longo quanto um ex-tenso artigo, ou ter só três palavras. Um blog éuma sequência de posts.Comentário: Visitantes do blog podem opinar sobreos posts e este é um lado muito importante da inte-ractividade dos blogs.Permalink: um link permanente, o endereço directode um post específico.Trackback e Pingback: um post que faz referênciaa outro post, talvez noutro blog.Feed: Há ferramentas que permitem ler váriosblogs de forma centralizada, sem ter que visitá-losseparadamente. O feed é uma versão mais purado blog, contendo somente os últimos posts em for-mato XML (RSS ou ATOM) e serve para alimentaressas ferramentas. Podcasts nada mais são doque feeds contendo média, ao invés de só texto.Blog é um nome mais actual para o que se costu-mava chamar de “home page”. A diferença é queantes da era dos blogs, uma pessoa que quisesseter um website pessoal, tinha um enorme trabalhopara publicar conteúdo de páginas, que geralmen-te eram estáticas, não interativas, e francamente,sem graça. Era um processo manual que exigia al-gum conhecimento técnico e por isso eram geral-mente técnicos que publicavam o conteúdo na web.

Com a padronização do conteúdo por ordem crono-lógica em posts, surgiram uma série de ferramen-tas e serviços de blogging, sendo os mais conheci-dos o Blogger, WordPress, LiveJournal e Mova-bleType.Eles facilitaram a publicação de textos, links, multi-média de forma organizada e apelativa e a web fi-cou muito mais interessante. Se antigamente umescritor precisava de ter contacto com editoras pa-ra publicar trabalhos, hoje qualquer pessoa é umescritor em potencial. E, sim, os blogs revelaraminúmeros ótimos escritores – alguns viraram cele-

bridades –, só porque agora eles tem acesso auma plataforma de publicação independente e di-recta: a Internet.Os bloggers (pessoas que possuem e escrevemem seus blogs) visitam e lêem outros blogs, fazemcomentários, criam links e referenciam-se uns aosoutros, criando uma espécie deconversa distri-buída.

A consolidaçãoda cultura dos blogs fez surgir algunsserviços como Technorati, Truth Laid Bear, Ping-o-matic, Digg, que tem a habilidade de seguir a con-versa. Mais ainda, eles conseguem medir a popula-ridade de um blog ou de um assunto e calcular asua vitalidade na web. Usando extensamente idio-mas XML como XHTML, RDF, RSS e ATOM, elesconseguem “avisar” um post de que foi referencia-do noutro blog, ajudando o primeiro a publicar auto-maticamente um pingback ou trackback, mostran-do quem o referenciou e como.

A Blogosfera é o fenómeno sócio-cultural materiali-zado nessa malha de interações dinâmicas e se-mânticas entre os blogs e seus autores.Como diz Doc Searls no seu Mundo de Pontas, aInternet é uma grande esfera oca com a superfícieformada por pontas interconectadas. Bem, nós so-mos as pontas e ela é oca porque não há nada nomeio que limite a nossa interacção. Esta metáforaexplica como os bloggers ganharam voz activa nasociedade livre da Internet, onde falam bem dequem gostam e denunciam quem ou o que nãogostam. Sendo público e interativo, qualquer assun-to verídico e bem conduzido tem potencial de viraruma bola de neve ao ponto de iniciar um escânda-lo político, obrigar uma empresa a admitir que devefazer um recall de produtos defeituosos, ou dar in-formações muito precisas sobre o míssil que caiuno bairro durante uma guerra (warblog).

Várias empresas têm usado blogs como forma dese aproximarem dos seus clientes. A sua lingua-gem descontraída, não-institucional e principalmen-te interactiva derruba barreiras e potencializa comu-nidades. Bons blogs corporativos passaram a ser apeça chave do ciclo de desenvolvimento de produ-tos, como plataforma de divulgação das próximasnovidades e ponto de recepção directa de opiniõesde usuários.Do que está à espera para ingressar na Blogosfe-ra?

U

por Avi Alkalay

Ver nota biográfica sobre o autor napágina 10

artigo adaptado paraPortuguês-Europeu

Page 18: Revista Linux 004
Page 19: Revista Linux 004

Revista Linux :: Teoria

19 Número 4 :: www.revista-linux.com

uma época em que se fa-la diariamente sobre "ban-da larga", a situação de

assimetria a esta associada nãoé totalmente clara para a maio-ria dos utilizadores. É fácil en-contrar hoje em dia serviços deacesso à Internet com elevadodébito unidireccional, ou seja nosentido ISP -> cliente. De facto,é habitual contratar débitosdownstream de 8,16,20 ou mes-mo 24 Mbps. No entanto, quan-do se fala de débitos upstream,ou seja no sentido cliente ->ISP, o cenário parece ser maisnebuloso. Por um lado, as cam-panhas de divulgação raramen-te fazem referência ao valor deupstream - assume-se que o cli-ente final não é sensível a estefactor. Por outro, não é fácil,saindo dos serviços standard cu-jos débitos são limitados, teruma noção imediata dos custosenvolvidos, visto que as tabelasde preços não são em geral pú-blicas. Apesar disto, a necessi-dade de débitos upstream supe-

riores aos actuais é um facto,consequência natural da evolu-ção tecnológica das PME e doacesso generalizado a softwareservidor de grande qualidadedisponível em domínio público(1,2). A capacidade de disponibi-lizar informação de forma inde-pendente liberta as empresasdas demoradas “interacções”com o suporte técnico dos ISP edeve fazer parte do roteiro paraa inclusão das PME portugue-sas. Nesse sentido, responda-mos às três questões mais fre-quentemente colocadas quandose discute o presente assunto.

1) Porque é que os débitos deupstream são tão baixos nosserviços ADSL e Cabo em Por-tugal?

As razões são várias:

a) As tecnologias são assimétri-cas por natureza (3,4) ... o queno entanto não parece justificar

as classes de tráfego tal comoestão definidas em Portugal. Asnormas ADSL, mesmo as inici-ais, suportam até 1Mbit de ups-tream e é conhecido que pelomenos parte dos DSLAMs exis-tentes em Portugal o permitem.Nas soluções de Internet por Ca-bo a mesma coisa se passa(4,5).

b) O limite no upstream é o “tra-vão” do tráfego P2P nacional.Ao aumentar este limite o tráfe-go P2P vai aumentar imediata-mente e os ISP poderão não es-tar particularmente interessadosnisto (questões legais, tráfegotrocado no GigaPix (12), ...).

c) Os circuitos com upstreamssuperiores a 1024Kbps, que emPortugal são vendidos invaria-velmente como circuitos dedica-dos, são extremamente dispen-diosos (um circuito G.SHDSL2Mbit simétrico pode custar en-tre 300 e 700 EUR mensais de-

N

AA IInntteerrnneettAAssssiimmééttrriiccaa

por Gustavo Homem

Page 20: Revista Linux 004

Revista Linux :: Teoria

20Número 4 :: www.revista-linux.com

pendendo da capacidade nego-cial da empresa e da quantida-de de serviços contratados). Poresta razão, os ISP acreditamque estão a proteger este mer-cado ao limitarem os débitosupstream do ADSL (11).

d) Os ISP possuem serviços dedatacenter/alojamento e ao limi-tarem os débitos de upstreamestão a proteger este negócio,impedindo os clientes de se tor-narem mais autónomos a nívelde disponibilização de serviçose conteúdos.

2) É expectável que a situa-ção vá mudar de futuro?

A situação só poderá mudarquando os ISP se aperceberemde que:

a) Os clientes pretendem maiorflexibilidade na utilização que fa-zem do serviço de Internet quecontratam, incluindo alojamentolocal de serviços e acesso remo-to a informação interna.

b) Ao tentarem proteger certossegmentos de negócio (ver aci-ma) os ISP estão a eliminar ou-tros segmentos. Por exemplo,há muitos clientes potencialmen-te interessados em pagar umserviço um pouco mais caro,com um melhor upstream masque nunca estarão interessadosnos serviços dedicados cujo pa-tamar de custo lhes é inacessí-vel. Dada a diferença de custos,este tipo de cliente (tipicamentePME) acaba por se manter noserviço mais básico, o que con-duz a perda de negócio para oISP. Repare-se que, mesmo a

ser disponibilizado com upstre-ams melhorados, um serviçoADSL/Cabo nunca terá o mes-mo "nível de serviço" que um cir-cuito dedicado (débito garanti-do, contenção, taxa de disponibi-lidade, prazos de reparação,etc), pelo que a diferença decustos continuará a fazer senti-do1.

c) Não se pode aumentar indefi-nidamente o débito downstreamsem aumentar o upstream, vistoque todo o tráfego TCP está su-jeito ao respectivo tráfego deACK (acknowledge (7)) que fluino sentido inverso. Isto podeser rigorosamente calculado emfunção dos tamanhos dos paco-tes enviados. No entanto umsimples teste com ferramentasuniversalmente acessíveis(wget, iptraf) permite obter que:

%tcp upstream rate ~ 1,84 %

de onde se obtém as relações:2 Mbps => 36.80 kbps4 Mbps => 73.61 kbps8 Mbps => 147.22 kbps16 Mbps => 294.45 kpbs20 Mbps => 368,06 kbps24 Mbps => 441,67 kbps

Os valores acima referem-se adébitos efectivos a nível IP (ouseja, os débitos calculados pe-las aplicações) medidos sobreum serviço ADSL.

Para se poderem comparar comos débitos anunciados pelosISP com os débitos efectivos énecessário descontar os overhe-ads dos protocolos subjacentes:Ethernet para serviço de Cabo ePPP+Ethernet+ATM para servi-

ços ADSL (6,12).

No entanto, a existência deoverheads não afecta a relaçãoentre os valores, pois afecta am-bos os lados da "equação" aci-ma.

Daqui se conclui que, por exem-plo, o serviço 24/400 vendidoaté há pouco tempo por um ISPnacional (9) era matematicamen-te impossível, porque a taxa má-xima atingível em download es-tá limitada pelo débito de upstre-am disponível que ficará satura-do antes de se atingir o valormáximo downstream. A situa-ção foi entretanto corrigida poraumento de taxa de upload dis-ponível. Conclui-se ainda quemesmo com um serviço 20/400o utilizador só poderá usufruirde 20Mbps em download, senão estiver a efectuar nenhumaespécie de upload, pois a linhaserá totalmente tomada pelospacotes de ACK. Caso contrá-rio, a performance downstreamcairá para valores muito inferio-res.

A Netcabo foi o primeiro ISP atomar a iniciativa de aumentaras taxas de upstream disponibili-zando o serviço Netcabo Procom débitos 8Mb/1Mb (8). Se-guiram-se muito recentemente aVodafone e a Clix (ADSL).

3) Que alternativas economi-camente viáveis existem paraaumentar a taxa de upstream?

Enquanto a situação de merca-do não se altera, uma alternati-va a contratar um serviço dedi-cado é contratar N vezes o servi-

1 De facto, é importante referir que os parâmetros de largura de banda anunciados para os serviços ADSL/Caborepresentam valores máximos teóricos apenas possíveis em situações de baixo congestionamento. No caso dosserviços ADSL a largura de banda anunciada é garantida apenas entre o CPE e o DSLAM, estando a partir daísujeita à taxa de contenção, que é o quociente entre o débito disponível DSLAM <-> ISP e a soma dos débitos CPE<-> DSLAM. No caso da Internet por cabo, não há sequer qualquer garantia de débito, visto que a largura de banda épartilhada continuamente por todos os CPE ligados ao mesmo canal.

2 Este tipo de configuração designa-se habitualmente por multi homing.

Page 21: Revista Linux 004

Revista Linux :: Teoria

21 Número 4 :: www.revista-linux.com

Ver na Web

(1) http://www.linux.com(2) http://www.apache.org(3) http://en.wikipedia.org/wiki/ADSL(4) http://en.wikipedia.org/wiki/Cable_internet(5) http://en.wikipedia.org/wiki/DOCSIS(6) http://tldp.org/HOWTO/ADSL-Bandwidth-Management-HOWTO(7) http://en.wikipedia.org/wiki/Transmi...ntrol_Protocol(8) http://www.tvcabo.pt/Internet/SpeedProMais.aspx(9) http://acesso.clix.pt/(10) http://en.wikipedia.org/wiki/Round_robin_DNS(11) http://www.isp-planet.com/news/2005/cerf_f2c.html(12) http://www.oplnk.net/files/WhitePaper_EncapsOverheads.pdf(13) http://www.fccn.pt/index.php?module=pagemaster&PAGE_user_op=view_page&PAGE_id=8

ço de melhor upload disponível,à custa de algum investimentoem tempo de configuração2.

Por exemplo, um serviço com 2Mbits pode “conseguir-se” comdois serviços Netcabo Pro8Mb/1Mb tendo em conta que:

- é necessário ter um servidorou router com 2 interfaces de re-de- é necessário configurar DNSround robin (10) – vários Ips pa-ra o mesmo hostname- só se conseguem obter 2Mbitsno somatório do tráfego; cada li-gação individual está limitada a1Mb mas estatisticamente con-seguem-se os 2Mbits

Abreviaturas:

CPE Customer Premises Equip-ment. Equipamento instalado nocliente: modem/router de aces-so à Internet.DSLAM Digital subscriber lineaccess multiplexer. Agrega as li-gações de múltiplos clientesDSL num único link.ISP Internet Service Provider.Fornecedor de serviços InternetP2P Peer to peer. Tráfego Inter-net “ponto-a-ponto” ou seja di-recto entre diferentes utilizado-res sem depender de um servi-dor central.

Gustavo Homem é o director técnico da AnguloSólido, uma empresa especializada em servi-ços profissionais open source. Mais informa-ções em http://www.angulosolido.pt

Sobre o autor

Page 22: Revista Linux 004

Revista Linux :: Prático

22Número 4 :: www.revista-linux.com

ounter-Strike é o FPS Online mais jogadoem todo o mundo.Counter-Strike, mais conhecido por CS, foi

jogado pela primeira vez em 1999 pouco depois deHalf-Life entrar no mercado. Desde essa data atéaos dias de hoje, CS tem sido um dos jogos maisjogados em todo o mundo, responsável pela popu-larização das Lan-Houses em todo o mundo. Sen-do considerado um “desporto” para muita gente,este jogo movimenta muito dinheiro, havendo vári-os patrocínios de marcas conhecidas (como a NVI-DIA e a Intel), e mesmo jogadores a receber um or-denado fixo para jogar.

Ao longo do tempo, as versões do CS foram evo-luindo: desde a primeira versão até às versões dehoje houve muitas mudanças. CS é um mod parao popular jogo Half-Life. Como foi referido anterior-mente, pouco tempo depois do lançamento do Half-Life, Minh "gooseman" Le e Jess Cliffe criaram aprimeira versão do CS. Desde então, têm vindo aevoluir progressivamente até à versão 1.6, sendoque a partir desta o jogo passou a ser apenas joga-do no Steam (ver caixa sobre o Steam). Recente-mente, em Novembro de 2004, saiu o novo Half-Li-fe 2 e com ele uma nova versão do CS (chamadoCounter-Strike: Source). Contudo, são muitos os jo-gadores que ainda jogam CS 1.6 pois, apesar doCS: Source ter um grafismo muito melhor, o Game-Play do CS 1.6 é significativamente mais interes-sante.

Como jogar CS, HL e outros

1 – Instalar o WINE (1) em Ubuntu Feisty (7.04)

Imag

emor

igin

alda

auto

riade

lady

phoe

nix1

999

CCoommoo jjooggaarr CCSSeemm LLiinnuuxx

por Pedro Gaspar com o apoio de hdd.com.pt

$ sudo wget http://wine.budgetdedicated.com/

apt/sources.list.d/feisty.list -O

/etc/apt/sources.list.d/winehq.list

Debian Etch (4.0)

$ sudo wget http://wine.budgetdedica-

ted.com/ apt/sources.list.d/etch.list

-O /etc/apt/sources.list.d/winehq.list

$ sudo apt-get update

$ sudo apt-get install wine

2 – Instalar o WineCVS em Ubuntu e Debian

$ apt-get install cvs build-essential

bison flex-old libasound2-dev

x-window-system-dev libpng12-dev libj-

peg62-dev libfreetype6-dev libxrender-

dev libttf2 libttf-dev msttcorefonts

libfontconfig1-dev

Outras distribuições

$ wget http://winecvs.linux-gamers.-

net/

WineCVS.sh

$ sh WineCVS.sh

3 – Instalar os tipos de letra da MicrosoftOs tipos de letra da Microsoft são necessários por-que o steam requer o tahoma.ttfEstes tipos de letra (2) devem ser descompacta-dos e colocados dentro da directoria ~/.wine/dri-ve_c/windows/fontsNota: Caso esta directoria não exista, o leitor deveexecutar qualquer aplicação com o WINE para queela seja criada, ou simplesmente executar winecfg

C

Page 23: Revista Linux 004

Revista Linux :: Prático

23 Número 4 :: www.revista-linux.com

(comando para configurar o WINE)

4 – Instalar o SteamAntes de mais, o leitor deve fazer download do ste-am a partir de (3).Agora, através da consola, execute o seguinte co-mando dentro da directoria para onde fez o downlo-ad do Steam: wine SteamInstall.exeNota: Muitas das distribuições existentes já supor-tam a abertura dos ficheiros .exe pelo duplo cliquedo rato. Caso a sua distribuição ainda não os su-porte, a forma de o fazer explicada anteriormenteé a única possívelAgora deverá aparecer no ecrã uma janela igual àda Figura 1. Os passos da instalação são intuiti-vos, pelo que não consideramos que seja necessá-rio entrar em detalhes.

No fim da instalação, o Steam deve executar-seautomaticamente fazendo de imediato updates.Depois desta etapa, deve aparecer uma nova jane-la perguntando se pretende criar uma nova conta,ou fazer login com uma já existente.Depois de fazer o login, aparecerá a primeira jane-la do steam com uma página em branco. Isso de-ve-se a um bug que ainda não foi corrigido e tantoa primeira página do steam como os “motd” apare-cerão assim ao entrar nos servidores.Agora o leitor deve dirigir-se ao separador “Osmeus jogos” e aí aparecem todos os jogos a que asua conta tem direito.Jogos que funcionam usando o WINE *:• Half-Life• Half-Life 2• Counter-Strike: 1.6• Counter-Strike: Source• Day of Defeat: Source

Erros conhecidos:

- Steam bloqueia caso o kernel seja inferior ao2.6.15Solução: Executar uname -r na consola e, caso okernel seja inferior ao 2.6.15, actualizar para ummais recente.

- O jogo paralisa ao inícioPossível solução: executar o winecfg e no separa-dor áudio escolher as drivers OSS

- O jogo desaparece da barra de tarefas quandose faz Alt+TabPossível Problema: Isso normalmente acontecequando se está a jogar e se muda de aplicação pa-ra o SteamSolução: killar o processo, para evitar que esta situ-ação ocorra novamente. Aconselhamos que, aoexecutar o jogo, se feche o steam para o trayicon.

- Ao iniciar um jogo ocorre um erro deste género :“The registry was in use by another process”Possível razão: Isto normalmente acontece quan-do o jogo é mal fechado, killado ou simplesmenteacontece sem razão aparente.Solução: No steam no separador “Os meus jogos”clique com o botão direito no jogo em questão e cli-quem nas propriedades do mesmo. Depois, no se-parador “Local Files”, terá um botão chamado “Ve-rify integrity o game cache” em que deverá carre-gar. Este processo irá demorar alguns minutos,mas depois de concluído o jogo deve correr na per-feição.

* Estes são os únicos jogos que confirmamos que joguem, no entanto, certamente que haverá muitosoutros que também funcionam.

Figura 1

(1) http://www.winehq.org/site/download(2) http://corefonts.sourceforge.net/(3) http://www.hdd.com.pt/902733

Ver na Web

Steam é uma aplicação de gestão de direitos di-gitais criada pela Valve que tende a combater apirataria e a fornecer actualizações automáticasaos jogos por ele geridos. Esta aplicação permi-te também comprar jogos sem precisar de ace-der a nenhuma página, ou receber correio comos Cds, pois no fim de pagar o jogo (via cartãode crédito ou outros) é feito o download do jogopara o PC.

Sobre o Steam

Page 24: Revista Linux 004

Revista Linux :: Teoria

24Número 4 :: www.revista-linux.com

O primeiro a propor aideia de Open SourceSoftware (OSS) foi Ri-

chard Stallman na década de70, que a formalizou com a aju-da de alguns advogados na fa-mosa licença GPL. Ninguém seinteressou ou sequer ouviu falardisso, até que em meados dadécada de 90 tudo mudou coma vertiginosa popularizacção doLinux, sistema operacional OSS.O termo popular “Software Li-vre” não é a melhor tradução deOpen Source Software, cuja de-signação correcta é Software deCódigo Fonte Aberto. É impor-tante notar isto porque muitasvezes o termo é erradamenteassociado à ideia de não-propri-etário, ou não-comercial. A ver-dade é que um software podeter o seu código fonte abertomas ser comercial e/ou proprie-tário e vice-versa, portanto sãoconceitos que não devem serconfundidos.

A ideia é simples: eu escrevoum programa e o leitor pode co-piá-lo à vontade sem nem se-quer me notificar. Pode inclusi-ve modificá-lo e redistribuí-lo,contanto que também mantenhaas suas modificações abertas einforme qual a origem e os auto-

res anteriores do software.Isso não quer dizer que teremosdiversas versões desconexasdo mesmo software, num dadomomento. Cada modificaçãopassa por um processo muitobem organizado de aceitaçãoou rejeição, onde boas melhori-as retornam à base e são incor-poradas à nova versão dosoftware. Na verdade, actual-mente, a maioria dessas contri-buições não é mais feita por indi-víduos, mas por empresas detecnologia.É comum – e errado – pensarque OSS significa a morte de to-do o software de código fecha-do. Isso não acontece porque atendência é para que as gran-des inovações continuem a serexploradas pelo modelo fecha-do. Imagine um mundo hipotéti-co que ainda não conhece edito-res de folhas de cálculo. É natu-ral que, ao lançar esse produto,o seu inventor opte pelo modelode código fonte fechado, paramaximizar os seus lucros atra-vés do total controlo da sua in-venção. Contudo, conforme es-sa invenção se populariza, de-senvolve um mercado e adquireconcorrentes. O OSS surge co-mo uma das formas – a maisinovadora – para repensá-la. OOSS inova ao reimplementar o

que outros inventaram e explora-ram anteriormente. Recente-mente, porém, a indústria come-çou a usar OSS directamentepara lançar certas inovações,justamente pelo seu poder deagregar comunidades e criarecossistemas.

Também é comum – e errado –acreditar que se o software emsi é gratuito, elimina-se por com-pleto os gastos. Mas haverásempre a necessidade deum su-porte confiável. O OSS altera oeixo do valor agregado dosoftware, movendo-o do softwa-re em si (que não custa nada),para o serviço de suporte.No seu processo de amadureci-mento, a única diferença práticaentre um software OSS e outrode código fonte fechado é a or-dem pela qual as coisas aconte-cem. Um fabricante comercial te-rá que criar estrutura e suporteregional antes de vender o pro-duto. Já no OSS, ofertas de su-porte só surgem (espontanea-mente) depois deste gozar deuma boa gama de usuários.Mas seja qual for a ordem, a úni-ca coisa que garante maturida-de a qualquer software ou pro-duto é um ciclo de desenvolvi-mento–uso–suporte, que estimu-la mais desenvolvimento. So-

O

OOppeenn SSoouurrcceennaa pprrááttiiccaa

por Avi Alkalay

Artigo adaptado paraPortuguês-Europeu

Page 25: Revista Linux 004

Revista Linux :: Teoria

25 Número 4 :: www.revista-linux.com

mente essa maturidade garantea aceitação do produto em em-presas responsáveis. E hoje osOSSs como o Linux, o Apache,o OpenOffice.org, o Samba eoutros já gozam desse ecossis-tema cíclico de uma forma vas-ta, global e vigorosa.

Hoje, o OSS tem aplicaçõesmais maduras em infraestruturae alguns nichos de middleware.Por sua vez, os softwares de có-digo fonte fechado apresentammaior desenvoltura de mercadonas funcionalidades de maior va-lor agregado ao negócio (ERPs,CRMs ou processos empresari-ais). Isto porque estas funcionali-dades têm uma amplitude me-nor de usuários, o que inviabili-

za o surgimento de suporte es-pontâneo – factor vital para amaturidade do OSS.A indústria tem procurado umbalanço saudável para misturarcomponentes fechados comOSS, a fim de maximizar o seubenefício sem abrir mão da ma-turidade de ponta a ponta. Pro-va disso é que tem sido cadavez mais comum a implantaçãode ERPs maduros – geralmentede código fechado – sobre plata-formas abertas maduras – comodistribuições Linux com suporte.

A receita para o melhor balançoé insistir no uso de PadrõesAbertos. Por garantirem uma in-teroperabilidade fácil entre ca-madas abertas e de código fe-

chado, o uso de padrões ampliaas escolhas e a liberdade daempresa que compra TI paracompor a melhor mistura do mo-mento, com opções OSS e/oude código fechado.

Ver nota biográfica sobre oautor na página 10

Page 26: Revista Linux 004

Revista Linux :: Teoria

26Número 4 :: www.revista-linux.com

m TI, a virtualização éusada para simplificar, es-conder ou mascarar deta-

lhes de funcionamento infra-es-truturais de um hardware ousoftware. Faz com que um com-ponente se comporte ou emuleoutro tipo de equipamento. En-tão, o que se executa sobre aplataforma virtualizada passa adar mais foco à sua super-estru-tura ou lógica de negócio.Isto torna-se de mais fácil com-preensão quando classificamosalguns tipos interessantes de vir-tualização:• Driver de Dispositivo. Escondedetalhes de um dispositivo espe-cífico criando uma representa-ção virtual de um dispositivo ge-nérico. É uma das formas maispopulares de virtualização.• Virtualização de Hardware. Ge-ralmente um software que simu-la todos os aspectos de um com-putador, incluindo firmware edispositivos.• Virtualização de Sistema Ope-racional. Ou simplesmente SO.Provê APIs genéricas que po-dem ser usadas por uma ou vári-as aplicações simultaneamente.É uma das virtualizações maiscompletas, mais usadas e me-nos associadas à ideia de virtua-lização.• Virtualização de Servidor deAplicações. Idêntica em todosos aspectos à do SO, mas pro-vê APIs e serviços de ordemmais abstracta. Os SOs moder-nos como o Linux e o Windowsjá incluem esta camada comoparte das funcionalidades queprovêem. Como exemplo, te-mos J2EE e várias outras APIsno universo Linux e .NET no

mundo Windows.• Grid. Pode ser visto como umnovo SO cujas APIs simplificam,escondem e automaticamentegeram uma malha de recursoscomputacionais heterogéneos edistribuídos.

Há outros tipos de virtualização,mas o importante agora é enten-der que os principais objectivosdo uso de virtualização são a in-dependência e a separação lógi-ca entre camadas de funcionali-dades diferentes, uma melhorgestão de políticas de seguran-ça e um melhor aproveitamentode recursos computacionais.

Este último ganhou uma maiorexpressão nos últimos anos,abrindo mão exaustivamente daVirtualização de Hardware emuitas vezes negligenciando ou-tros tipos de virtualização – es-pecialmente a do SO – que po-de trazer os mesmos benefíciosde forma mais simples e barata.A Virtualização de Hardware éespecialmente prática porquepermite manejar o que antesera metal e silício físico, comose fosse agora um software, gra-vável numa mídia, transportávelpela rede, etc. Mas a separaçãológica entre hóspede e hospe-deiro não lhes permite cooperarde forma mais eficiente. Por ex-emplo, o hospedeiro não conse-gue ter a mínima idéia de comoseu hóspede está usando a me-mória física. Assim, pode haverum re-trabalho em coisas co-muns como gerência de memó-ria virtual, etc.A princípio, a Paravirtualizaçãoparece uma Virtualização de

Hardware, mas propõe que oSO hóspede “saiba” que está aviver sobre uma camada virtuale possa interagir com ela. Istoimplica alterações no SO hós-pede, mas garante uma coope-ração sem precedentes entre asduas camadas.O datacenter do futuro – vislum-brado com tecnologias de para-virtualização do presente – serátodo virtual. O que hoje estánum servidor físico dedicado, es-tará num servidor virtual dedica-do, sobre um servidor físico de-dicado. Simplesmente porque aperda de performance da para-virtualização tende a zero e por-que se ganha muita flexibilidadena gerência.A máquina paravirtual passa aser um líquido que se adapta aqualquer recipiente, pode ser mi-grada a quente com milissegun-dos de indisponibilidade real, ar-mazenada em backup ou fazerparte de um esquema de altadisponibilidade de máquinas vir-tuais. Agora só a imaginação éo limite.O primeiro SO moderno que im-plementou estas modificaçõesfoi o Linux, com o projeto Xen.A ideia espalhou-se, o mercadode virtualização gostou e fabri-cantes como VMWare e Micro-soft aderiram a ponto de mudaras suas estratégias nesse sec-tor, sendo que, actualmente, háum diálogo bem sucedido na in-dústria sobre padronização dasinterfaces hóspede-hospedeiro.

Ver nota biográfica sobre oautor na página 10

E

PPaarraavviirrttuuaalliizzaaççããoopor Avi Alkalai

Artigo adaptado paraPortuguês-Europeu

Page 27: Revista Linux 004
Page 28: Revista Linux 004

Revista Linux :: Teoria

28Número 4 :: www.revista-linux.com

ão podíamos iniciar esteartigo sem antes definiro conceito de utilizador fi-

nal:O “utilizador Final” é simples-

mente aquele utilizador quequer que as coisas funcionemautomaticamente, sem interven-ção de linhas de comando e deuma forma prática para seu usono dia-a-dia.Utilizador, do latim usuariu, éaquele que possui ou desfrutaalguma coisa pelo direito de uso.Do ponto de vista do programa-dor um “utilizador Final” é a pes-soa que utiliza o sistema no seudia-a-dia. O programador cria osistema mas o utilizador é sem-pre o outro, aquele que utiliza.

Migração

Devemos também ter em contaque este utilizador já tem um co-nhecimento prévio de um siste-ma operacional proprietário eque existe um tempo de aprendi-zagem, em que se aprendeupor necessidade, por não haveruma alternativa ao sistema ope-racional a ser utilizado comoexiste hoje em dia.Por isso mesmo, podemos utili-zar este tempo de aprendiza-gem para fazer com que este uti-lizador utilize o sistema operati-

vo GNU/Linux (1)?

Distribuições como o FamelixGNU/Linux (2) desenvolvido poruma Faculdade (3) no sul doBrasil fez isso.

Transformou com base em di-versas distribuições (Debian (4)Kurumin (5), e Knoppix (6)), umsistema operativo GNU/Linuxnum ambiente similar ao do Win-dows XP (7).Existem também outras distribui-ções como o Freedows (8) e oBlanes (9) que são interfacesgráficas que podem ser instala-das em qualquer distribuiçãoGNU/Linux.

Como é referido num dos princi-pais objectivos do projecto Fa-melix/GNU/Linux: “Desenvolveruma distribuição de modo a queo utilizador final esteja habitua-do a trabalhar até ao momentoem que o mesmo já esteja aptoa escolher a sua própria distri-buição, de acordo com as suasnecessidades.”

Porém, esta situação originauma grande discussão entre osprogramadores GNU/Linux, poisalguns acreditam que o GNU/Li-nux deve ter a sua própria identi-dade, com as suas característi-

cas intocáveis, e outros crêemque se o GNU/Linux for pareci-do com o Sistema operativoWindows facilita a migração doutilizador deste para um sistemaoperativo GNU/Linux.

Acreditando que o utilizador fi-nal esteja já cansado de apren-der devido ao seu investimentode tempo e dinheiro para apren-der o que já sabe, é viável consi-derar a alternativa de criar umGNU/Linux de acordo com o co-nhecimento que o utilizador pos-sui.Não cabe a nós, programado-res, criticarmos e decidirmos is-to, cabe ao próprio utilizador de-cidir qual o tipo de GNU/Linuxutilizar.Além de esquecer que todosnós diariamente vivemos o pa-pel de utilizador, o programadoresquece também que este utili-zador – indeciso, amedrontado,receoso de nos fornecer e con-seguir informações, hostilizadopor algumas equipas por serconsiderado alguém com poucoconhecimento de informática –é a pessoa para o qual o siste-ma se destina. Sem ele, o traba-lho de um programador não te-ria o mesmo valor, aliás, talveznem existisse trabalho.

N

CCoonncceennttrraannddoo--nnoossnnoo UUttiilliizzaaddoorr FFiinnaall

por Mayko Nestor

Imag

emor

igin

alda

auto

riade

Stef

anKo

opm

ansc

hap

artigo adaptado paraPortuguês-Europeu

Page 29: Revista Linux 004

Revista Linux :: Teoria

29 Número 4 :: www.revista-linux.com

Utilizadores como os descritosacima tentam todos os dias ob-ter respostas pela Internet emFóruns, ou até mesmo por e-mail para programadores, solici-tando alguma ajuda ou propon-do alguma solução. E muitosdestes programadores, por te-rem criado algum projecto, sen-tem-se prepotentes e respon-dem (quando respondem) aosutilizadors com dúvida:

Ex:- Você tentou procurar no Goo-gle?- Não tenho tempo para respon-der, estou com muito trabalhono projecto...- RFM. (Read the ******* Manu-al. - Leia a ***** do Manual.)...- Descarregue o manual no link:x... (Esse é raro)

Existem utilizadores sem muitoconhecimento que tentam fazeralgumas perguntas sobre o fun-cionamento de algum sistema efazem esta pergunta de umamaneira banal, (para os olhosdo programador) que este res-ponde de forma grosseira e defi-nitiva, para que o utilizador nãoresponda ou não peça mais aju-da.

Ex:- O meu computador não acen-de a luzinha do “Scrool Lock”quando eu o pressiono, ele estácom algum problema no siste-ma operativo?

É uma pergunta muito simplesde ser respondida (como: o seuteclado deve estar com algumproblema, ou algo assim), contu-do um programador, quando re-cebe uma mensagem como es-ta, responde duma tal maneiraque rebaixa o utilizador, fazen-do com que este nunca mais uti-lize esse sistema.

Devemos pensar, quando pen-samos em difundir o SistemaOperacional GNU/Linux, que de-

vemos atender o nosso público,os utilizadores e, se estes nãotêm o tratamento adequado nasrespostas às suas dúvidas, co-mo iremos alcançá-los nos seuscomputadores?

Não podemos julgar os nossosutilizadores. Na verdade, nãodevemos julgar ninguém pelassuas atitudes. Além do mais, co-mo julgaríamos alguém que ti-vesse a atitude de tentar apren-der perguntando ao próximo?

Infelizmente, os programadoresGNU/Linux têm muito que apren-der quando se trata de tratamen-to ao utilizador, não há um trata-mento adequado para com oconsumidor de seu sistema, es-te deve baixá-lo, instalá-lo semquestionamentos. Se houver, deforma alguma deve perguntarao programador.Mas não são todos os programa-dores que agem desta maneira,um exemplo são os programado-res do Ubuntu GNU/Linux (10),pois estes tem um sistema derespostas aos utilizadores queentende as necessidades dosmesmos e tratam cada utiliza-dor do seu sistema como se fos-se único.

Não poderia ser este o motivodesta distribuição ter sido difun-dida tão rapidamente entre osutilizadores de computador?

Este artigo não pretende atingirnenhum programador, nem dis-tribuição. Foi escrito somentepara ajudar aos programadoresa entender o que um utilizadorpassa antes de aprender o queele espera utilizando uma distri-buição GNU/Linux, e visa ape-nas melhorar a aceitação destesistema operativo que todos es-tão interessados em ter nosseus computadores, ou pelo me-nos tentam.

(1) http://www.linux.org(2) http://www.famelix.com.br(3) http://www.fameg.edu.br(4) http://www.debian.org(5) http://www.guidohardware.com.br(6) http://www.knopper.de(7) http://www.microsoft.com(8) http://www.freedows.com.br(9) http://www.blanes.com.br(10) http://www.ubuntu.org

Ver na Web

Mayko Nestor Meier, possui graduação emAdministração - Sistemas de InformaçõesGerenciais pela FAMEG - Faculdade Metro-politana de Guaramirim (2005). Atualmenteé técnico em desenvolvimento de sistemasnesta Faculdade. Tem experiência na área

de Ciência da Informação, com ênfase em Desenvolvimentode Sistemas Operacionais. Participa Ativamente do ProjetoFamelix, Sistema Operacional Famelix GNU/Linux é uma dis-tribuição criada com a finalidade de oferecer um ambiente si-milar ao Windows XP ("Linux com cara de XP"), de tal manei-ra que facilite a migração de usuários do sistema operacionalproprietário a um sistema livre, e que se possa aproveitar osconhecimentos já adquiridos pelos usuários.(www.famelix.com.br)

Sobre o Autor

Page 30: Revista Linux 004

Revista Linux :: Entrevista

30Número 4 :: www.revista-linux.com

nosso convidado destaedição para a secção deentrevista é Vasco Cos-

ta. Constando deste número oartigo sobre o jogo Freeciv, afi-gura-se esta como sendo a me-lhor altura para entrevistarmosum dos seus actuais administra-dores, que é português!

Revista Linux: Como tomou co-nhecimento do projecto Free-civ?Vasco Costa: Foi quando eu es-tava a estudar na universidade.Era Verão, eu tinha imenso tem-po livre, já tinha jogado todos osmeus jogos de computador. Pe-guei no disco de uma distribui-ção de Linux e percorri a listade jogos de A a Z. Tinha jogadoo Civilization da Microprose nosecundário e achei interessantevoltar a pegar num jogo assim.Desta vez ia poder jogar atravésda Internet com outras pessoasno Linux.

RL: Desde quando está envolvi-do na equipa de desenvolvimen-to do Freeciv?VC: O Freeciv começou a serdesenvolvido em 1995. Eu co-mecei a programar para o pro-jecto em 1998. Faço parte daequipa de administração desde2001.A nossa equipa de desenvolvi-mento é internacional. Temospessoas da Europa, Américas,

Oceania e Ásia. Dezenas depessoas, sem acesso de escritaao repositório público de dados,contribuem para o projecto. Te-mos trinta e oito membros comacesso de escrita ao repositório.Destes trinta e oito, sete são aequipa de administração.

RL: Que papel assume dentroda equipa e qual a área do jogoem que mais está envolvido?VC: Já fiz um pouco de tudo.Programei o cliente gráficoGTK+, resolvi problemas no có-digo de rede, mexi no código domotor do jogo para tornar as re-gras mais flexíveis e configurá-veis, dei início à tradução do in-terface para Português e colo-quei a nossa nação e bandeirano jogo. Ajudei as pessoas, queestavam a tentar fazer o jogofuncionar melhor em Windows eMac OS X, a resolver proble-mas. Ajudei na manutenção dowebsite e dos serviços de rede.Nos últimos anos, as minhas ta-refas têm sido principalmenteadministrativas e de suporte aoprojecto: mudança dos conteú-dos web para a plataforma CMSMediaWiki, arranque dos fórunspara utilizadores, mudança deCVS para SVN. A nossa cargade serviços era claramente ex-cessiva e a nossa gente estavasobrecarregada. Incentivei o out-sourcing de serviços não nuclea-res ao projecto para fornecedo-

res como SourceForge.net,Gna.org e Wikia.com de modo anão bloquear o desenvolvimen-to. Conseguimos fazer outsour-cing dos serviços críticos comoo repositório de dados e os con-teúdos web. Contudo, o nossoserviço de servidores públicosde jogo sofreu um colapso porfalha de hardware.

RL: Há algum momento duranteo seu envolvimento no Freecivem que se tenha sentido especi-almente contente, designada-mente com a conclusão de al-gum sub-projecto ou implemen-tação de alguma funcionalida-de?VC: Vários, por exemplo:- A primeira vez que consegui jo-gar um jogo completo, com o cli-ente gráfico que tinha feito.- Quando me deram acesso deescrita ao repositório.- Quando vi o interface traduzi-do para Português, após o esfor-ço de várias pessoas.- Quando vi o nosso fórum deutilizadores ultrapassar os 100utilizadores registados. Agora te-mos mais de 2000.

Fora das tarefas do projecto:- Quando dois dos nossos joga-dores, que se conheceram atra-vés do nosso jogo, decidiramdar o nó e tiveram crianças.

RL: Consegue conciliar facil-

EEnnttrreevviissttaa ccoommVVaassccoo CCoossttaaO

entrevista conduzida porDuarte Loreto

Page 31: Revista Linux 004

Revista Linux :: Entrevista

31 Número 4 :: www.revista-linux.com

mente a vida pessoal e profissio-nal com o seu envolvimento noFreeciv?VC: Nos últimos anos eu, bemcomo todos os administradores,temos tido mais responsabilida-des na nossa vida profissional.No meu caso, isso levou a quetivesse de deixar de lado as ta-refas mais intensivas que eugosto, como a programação emC neste projecto, para outraspessoas. Tento ajudar naquelastarefas que os outros programa-dores de C normalmente nãogostam de fazer, mas que elesou os nossos jogadores preci-sam e que têm tendência a ficarpara o fim ou a nunca ser feitas.Tento contribuir nos meus tem-pos livres e férias, que são cadavez mais reduzidos, à medidaque assumo mais responsabili-dades na minha vida pessoal eprofissional. Dado que isto temsido problema para os adminis-tradores em geral, tivemos umaquebra de ritmo no desenvolvi-mento do projecto.Conseguimos recentementeatrair uma nova geração de pro-gramadores. Por isso, tenhoconfiança no futuro deste projec-to. Estamos sempre abertos amais gente e ideias novas.

RL: O seu envolvimento no Fre-eciv contribuiu ou trouxe de al-guma forma benefícios durantea sua licenciatura ou, posterior-mente, para a sua vida profissio-nal, nomeadamente pela experi-ência de áreas de desenvolvi-mento, gestão de equipas ou detrabalho em equipa com equi-pas remotas?VC: A experiência que obtiveem desenho de interfaces, pro-gramação e administração de re-des, bem como auto-gestão temsido de grande ajuda. Na empre-sa em que trabalhei anterior-mente, é política usar software li-vre ou aberto sempre que possí-vel. Os sócios não só erambons líderes de pessoas e co-municativos, como possuidores

de saber técnico, abertos a no-vos e melhores modos de fazertrabalho. O facto de eu já ter ex-periência na comunidade aju-dou-me a conseguir a entrevis-ta. Quem conhece a comunida-de sabe que nós somos pesso-as motivadas para o trabalho,que não precisam de muito es-forço de gestão para obter resul-tados. Como diz o ditado: quemcorre por gosto não cansa.Tenho recorrido cada vez maisao trabalho remoto com outraspessoas. Certos gestores de-monstram algum grau de abertu-ra a esta forma de trabalho. Infe-lizmente, penso que muitos ges-tores ainda têm a mentalidadeenraizada numa era pré-Inter-net, em que as pessoas têm ho-rários fixos para trabalho em lo-cais fixos. Apoiam-se em méto-dos subjectivos e qualitativos deavaliação. Querem ver a caradas pessoas, vê-los de corpopresente para ficarem descansa-dos que se está a trabalhar defacto.Nos projectos de software livrenós reconhecemos trabalho pro-duzido, usamos métricas quanti-tativas como linhas de código,índices de actividade, funcionali-dades implementadas, bugs cor-rigidos. Sabe-se que para atin-gir resultados de qualidade emsoftware, é necessário dar tem-po para este amadurecer. Queàs vezes é preciso sair de frentedo PC, mudar de ambiente, pa-ra as ideias surgirem. Pensoque existiu mais disciplina de de-senvolvimento e engenharia desoftware pura e dura nos projec-tos de software livre, que nosprojectos de software tradicionalem que participei. Para não fa-lar que, devido à dimensão donosso mercado, as equipas dedesenvolvimento são tradicional-mente mais pequenas cá quenos projectos de software livre.

RL: Costuma também jogar Fre-eciv com frequência ou limita otempo de jogo ao necessário pa-

ra testar e detectar bugs?VC: Não jogo mais. É demasia-do viciante. Se jogasse não ti-nha tempo para fazer mais na-da! [Risos]

RL: A decisão de integração doFreeciv com o "GGZ Gaming Zo-ne" deveu-se apenas à expecta-tiva de atrair mais jogadores/di-vulgar o projecto ou teve outrosmotivos?VC: Os nossos jogadores ado-ram servidores públicos em quepodem jogar contra outras pes-soas. Os nossos servidores pú-blicos entraram em colapso porfalha de hardware, temos de ar-ranjar um substituto menos cen-tralizado, mais resistente a fa-lhas.

RL: Quais são algumas das futu-ras funcionalidades que pode-rão vir a ser implementadas noFreeciv?VC: - Serviço de jogos descen-tralizado.- Gráficos melhorados.- Editor de jogo integrado.- Cliente SDL completo.- Cliente para Mac OS X quenão necessite de X-server insta-lado.- Mais campanhas e cenáriosde jogo.- Suporte IPv6.- Suporte para zoom do mapa.- Música e som melhorados.

RL: Têm algum tipo de estatísti-cas ou valores aproximados quevos permitam saber qual a per-centagem de utilizadores em ca-da uma das diferentes platafor-mas suportadas (ou, pelo me-nos, entre Linux/UNIX, Windowse Mac)? Se sim, esses valoresestão de acordo com as vossasexpectativas?VC: Sim. Temos estatísticasdas pessoas, que se tentam li-gar a servidores de jogo atravésda Internet. Ficamos surpreendi-dos por a maioria dos nossosutilizadores, ao contrário de hádois anos atrás em que havia

Page 32: Revista Linux 004

Revista Linux :: Entrevista

32Número 4 :: www.revista-linux.com

mais gente com Linux, utilizar aplataforma Windows. Porquêmais gente com Windows? O jo-go está mais fácil de instalar elançar. Também penso que aspessoas estão fartas de com-prar PCs novos com placas grá-ficas 3D topo de gama para jo-gar um jogo de estratégia. Pen-so que não temos mais utilizado-res de Mac OS X devido a nãotermos um cliente gráfico nativo,fácil de instalar, que não neces-site de X-server instalado. O cli-ente gráfico mais utilizado aindaé o GTK+ que eu desenvolvi ori-ginalmente e depois converti pa-ra GTK+ 2.x.Disponibilizo umas estatísticasbaseadas no sistema operativode jogadores que se tentaram li-gar aos servidores públicos noprimeiro semestre dos últimostrês anos.

RL: Pessoalmente, acha que hámercado económico para jogoscomerciais que tenham uma ver-são Linux? Por que acha que amaioria das produtoras ignoraesta plataforma?VC: Sim, penso que existe mer-cado para jogos comerciais pa-ra Linux.No desenvolvimento de softwa-re os custos estão na concep-ção e produção, sendo os cus-tos de replicação quase nulos.Compreendo as razões das pro-dutoras. Se eu fosse uma produ-tora tentaria alcançar a maior

audiência possível, com os me-nores custos de desenvolvimen-to de software. Algumas pen-sam que conseguem isto utili-zando DirectX. Assim já podemvender para Windows e Xbox.Pensam que o esforço de fazerversões para outras plataformasé inusitado. E é inusitado se fo-rem usados os canais tradicio-nais de distribuição, como ven-der jogos em caixas na FNAC,para depois ficarem na pratelei-ra.

RL: Qual considera ser a maiorlimitação técnica ao desenvolvi-mento de mais jogos para Li-nux, quer comerciais, querOpen Source? Ou acha que étudo uma questão de política eeconomia?VC: Não é apenas política eeconomia. As APIs de multimé-dia no Linux são fracas. Precisa-

mos de mais APIs desoftware livre e abertomulti plataforma, fáceis deusar, que também funcio-nem em Windows, MacOS X e nas consolas. Pre-cisamos de melhores dri-vers para 3D.

RL: Acha que os jogos on-line de mundos persisten-tes (MMORPG's) são o fu-turo dos jogos, em que osactuais jogos offline estãocondenados a desapare-

cer, ou há espaço para ambosos tipos?VC: Penso que os jogos offlinecontinuarão a existir, mas omeio de aquisição por excelên-cia será a Internet. O modelo

das caixas na prateleira não fazsentido. A ideia que um jogo éalgo que se faz uma vez parater poucos patches só faz senti-do para jogos simples. Jogoscomplexos, com elevados cus-tos de desenvolvimento, que osjogadores jogam de forma inten-siva, adaptam-se melhor a ummodelo de subscrição mensal.

RL: Pessoalmente, que jogoscostuma jogar, sem ser o Free-civ? Algumas recomendações(jogos que corram em Linux nati-vos ou através de Wine/Cede-ga/Crossover Office)?VC: De estratégia: “Europa Uni-versalis III” e “Galactic Civilizati-ons II : Dread Lords” na platafor-ma Windows. “Wesnoth” na pla-taforma Linux.Cada vez tenho menos tempopara estes jogos intensivos deestratégia. Adoro os velhos clás-sicos das máquinas de jogos.Jogo um bocado, divirto-me, edesligo. Esses posso jogar emqualquer plataforma, graças aoMAME.

RL: Por último, para ficar comoindicação para os nossos leito-res, há algum conselho queache adequado transmitir a estu-dantes (ou outros) que estejamtentados a iniciar contribuiçõespara o mundo Open-Source?VC: Encontra algo que queirasmudar ou adicionar ao teusoftware favorito. Trabalha, sub-mete o teu trabalho a quem dedireito. Aceita críticas construti-vas. Não esperes glória ou reco-nhecimento imediato.

Vasco Costa, 29 Anos. Estudante de Doutora-mento em Computação Gráfica no Instituto Supe-rior Técnico.

Sobre o entrevistado

Page 33: Revista Linux 004

Revista Linux :: Prático

33 Número 4 :: www.revista-linux.com

a cadeira de Computa-ção Ubíqua da Licencia-tura em Engenharia Infor-

mática na Univerdade de Évorao projecto final da cadeira teriaque ser proposto pelos alunos.Assim, e após várias ideias des-cartadas por nós (Joaquim Ro-cha e Valério Valério), numa ex-planada de um jardim de Évorasurgiu a ideia de desenvolverum software para dispositivos re-motos, nomeadamente telemó-veis, que permitisse o controloremoto de um computador.

A ideia por detrás deste softwa-re é a de o utilizador poder confi-gurar que teclas quer pressionarno telemóvel e que teclas do PCsão simuladas. A utilização docomando estaria, obviamenteorientada a controlar apresenta-ções, filmes e música mas qui-semos estender o uso dosoftware e permitir também con-trolar jogos. Ou seja, qualquerpessoa poderia usar o seu tele-móvel como comando de jogose não precisar do teclado ou decarregar consigo um “gamepad”.Para a comunicação escolhe-mos usar o bluetooth, assim, es-colhemos o nome BluePad parao nosso sofware.

O BluePad, após a sua avalia-ção na cadeira, foi lançado soba licença GNU GPL e está ago-ra disponível a todos na sua pá-gina oficial (1).

No PC

O BluePad é dividido no progra-ma para computador e no pro-grama para telemóvel.O programa para computadorfoi escrito em Python usando omódulo PyGTK para produzirum interface GTK.A simulação das teclas é conse-guida através do envio de identi-ficadores das teclas para módu-lo “uinput” do kernel. Este módu-lo é usado por exemplo por joys-ticks e simula teclas interagindocom a janela que está em foco.A comunicação por bluetooth é

manipulada no PC usando o mó-dulo PyBluez.

No telemóvel

O programa para telemóvel foiescrito em J2ME o que permite,juntamente com os outras técni-cas de programação, a sua utili-zação em várias plataformas.A manipulação da comunicaçãopor bluetooth foi conseguidaatravés da API JSR 82.É no telemóvel que o utilizadorescolhe tanto as teclas do tele-móvel que deseja atribuir a umafuncionalidade, como as teclasdo computador.Então, quando o utilizador pres-siona uma tecla configurada, éenviada ao computador a infor-mação com o código da teclaque o este deve simular.

N

BluePad no PC

BBlluueePPaaddpor Joaquim Rocha e Valério Valério

Page 34: Revista Linux 004

Revista Linux :: Prático

34Número 4 :: www.revista-linux.com

Instalação

Para a instalação no telemóvelpode fazer download (2) dos fi-cheiros .jar e .jad que permitema fácil instalação e cuja explica-ção deverá vir no manual do te-lemóvel a instalar.

No caso do computador, parasistemas baseados em Debian(Ubuntu, Alinex, etc.) pode fazerdownload do pacote “deb” (3) efacilmente instalá-lo.Para outras distribuições não émais difícil, basta fazer downlo-ad do código-fonte (4) e correr oscript “bluepad”.

Uso

Após inicializar o BluePad (porexecução do script ou atravésdo menu do GNOME) e quer oseu ambiente gráfico seja oGNOME ou KDE, deverá apare-cer uma janela a pedir a pas-sword de root. Tal permissão énecessária devido à simulaçãodas teclas do PC ser consegui-da através do módulo “uinput”do kernel. Neste momento deve-rá aparecer o “splash” do progra-ma e a seguir o ícone do Blue-Pad aparece no tray do seu ges-tor de janelas.

Ao clicar com o botão direito dorato em cima deste para ver omenu onde deverá escolher aopção “Preferences”.

Uma janela muito simples surgi-rá então e deverá clicar no bo-tão “Find” para depois seleccio-nar o seu telemóvel do menu“drop-down” – será de lembrarque deverá ter o bluetooth doseu telemóvel previamente acti-vo – e clicar em “Connect”.Se a ligação correu bem, apare-cerá um balão com o nome dodispositivo ao qual o seu PC seencontra ligado e o ícone dotray deverá ficar azul (significan-do que está conectado a um dis-positivo remoto).

No telemóvel, após escolher alíngua e aceder ao menu princi-pal, deverá escolher a última op-ção: “Selec. Dispositivo”.Após a busca lhe devolver a lis-ta de dispositivos no alcance dotelemóvel, escolha o correspon-dente ao seu PC e escolha a op-ção “Ligar ao disp.”.A máquina vistual do Java doseu telemóvel dever-lhe-á pedirpermissão para a conexão e,após dar a permissão, deveráestar ligado ao seu PC.

A magia

Voltando ao menu principal,existem três categorias princi-pais para controlo do seu PC:Apresentações;Filmes;Jogos.

Dentro de cada uma destas,pressionando as teclas configu-radas do telemóvel, as teclascorrespondentes do PC serão si-muladas neste último, controlan-do a janela que está no focus.Mas, desta forma, para que exis-tem categorias distintas? A lógi-ca de existência de categoriassão, basicamente, o poder tertrês configurações de acções/te-clas em simultâneo. De outra

forma, se fosse controlar um fil-me após ter controlado umaapresentação teria que configu-rar de novo as teclas para o fil-me...

Em cada categoria, os ícones(que são originários do conjuntode ícones Tango para GNOME)descrevem as acções e as te-clas do telemóvel que a desem-penham estão escritas à frentedestes.Caso pretenda configurar as te-clas do PC ou do telemóvel,pressione a tecla corresponden-te ao “Menu” (o nome “menu”pode variar conforme o modeloe marca do telemóvel) e esco-lha que teclas quer configurar –PC ou Telemóvel. Então ser-lhe-á apresentado um interface tipo“roda-da-sorte” onde pode esco-lher as teclas configuráveis.

Problemas

Como projecto novo que é, nãopoderiam deixar de existir al-guns problemas. Temos algunsproblemas de multi-thread devi-do à natureza do GTK+.Como o projecto foi desenvolvi-do primariamente sobre e parao ambiente GNOME, tambémexistem alguns problemas de in-tegração com o KDE, que espe-

Ecrã de menus no telemóvel

Perfil de filmes/música

Page 35: Revista Linux 004

Revista Linux :: Prático

35 Número 4 :: www.revista-linux.com

ramos serem resolvidos breve-mente.Alguns jogos mais elaboradostambém parecem ignorar os in-puts dados através do BluePad,problema que desconhecemosa razão e que será por isto mes-mo, desafiante.

Conclusão

O BluePad encontra-se na suafase “jovem” onde alguns aspec-tos necessitam ser melhoradosmas apresenta-se já como algoútil e pronto a ser usado, aindaque com algumas limitações.O número de downloads logonos primeiros dias deixou-noscontentes e recompensados pe-lo nosso trabalho, esperamosque aumentem.Será de extrema importância acolaboração que quem estiverinteressado com testes em tele-móveis que não constem na lis-ta que se apresenta no site ofici-al do projecto.Outro tipo de colaboração serãotraduções para outras línguasou o simples feedback a anunci-ar o seu uso (por exemplo empalestras), que sempre nos en-coraja a continuar o desenvolvi-mento.

A configurar as teclas A escolher um tecla

(1) http://bluepad.sourceforge.net(2) http://downloads.sourceforge.net/bluepad/bluepad_0.1_mobile.tar.gz?use_mirror=dfn&filesize=101397(3) http://downloads.sourceforge.net/bluepad/bluepad_01-Debian_i386.deb?use_mirror=dfn&filesize=78752(4) http://downloads.sourceforge.net/bluepad/bluepad_0.1_computer.tar.gz?use_mirror=dfn&filesize=70244

Ver na Web

Page 36: Revista Linux 004

Revista Linux :: Eventos

36Número 4 :: www.revista-linux.com

ela primeira vez em Portu-gal vão ser distinguidosos programadores de

Software Livre nacionais, noConcurso Nacional Software Li-vre (CNSL). Vão ser avaliados epremiados os projectos deSoftware livre desenvolvidos porportugueses.

Este concurso é organizado pe-lo Núcleo de Estudantes de En-genharia Informática da Univer-sidade de Évora(1), em colabo-ração com várias personalida-des e empresas do mundo doSoftware Livre, sendo este parteintegrante do evento Open Del-ta aLANtejo 2007(2). Com oCNSL pretende-se não só divul-gar o Software Livre em Portu-gal, mas também promover oseu desenvolvimento e distin-guir os seus produtores. Incenti-var a partilha de conhecimentoentre os participantes visando in-cutir espírito de entreajuda é ou-tra das metas.

Podem participar no CNSL to-dos os programadores desoftware livre que tenham nacio-nalidade portuguesa, é possívelconcorrer com projectos pesso-ais, com projectos em equipasaté 3 elementos, ou com umacontribuição para um projectode larga escala. Por exemplo,um programador que tenha feitoum novo módulo, uma nova fun-cionalidade, plugin, etc, para oFirefox pode concorrer noCNSL. Existem no site do con-curso regras (3) bem definidaspara a participação no mesmo.

Em caso de dúvida é possívelconsultar uma FAQ (4) ou con-tactar a organização do concur-so através do fórum (5) do even-to Open Delta aLANtejo.

Como a credibilidade é um dosfactores chave, foi designadoum júri composto por diversas

personalidades internacionaisde renome no meio para avaliaros projectos a concurso (ver cai-xa júri).Todos os projectos a concursoserão divulgados no site doevento e na Revista Linux, mas,acima de tudo, os candidatos te-rão a oportunidade de mostraras suas criações aos gurus doSoftware Livre. Os que recebe-rem melhor cotação serão apre-sentados no evento Open DeltaaLANtejo, para além de ganha-rem bons prémios (ver caixa pré-mios CNSL).

A pré-inscrição (6) no concursoé obrigatória e deverá ser feitaaté ao dia 18 de Setembro de2007. A entrega dos projectosdeverá ser feita até dia 23 domesmo mês.

Alex Beregszászi - Programador do Mplayer e FFmpeg.Damien Sandras - Criador do software de VoIP Ekiga.Dario Rapisardi - Programador do GNU/Linex. (http://rapisardi.org/)Gael Duval - Criador da famosa distribuição Mandrake e da novadistribuição Ulteo.Isaac Clerencia - Programador do jogo Battle for Wesnoth.(http://people.warp.es/~isaac/blog/)Jon 'maddog' Hall - Presidente da Linux Internacional.Jono Bacon - Responsável pela comunidade mundial do Ubuntu ecriador do software de gravação e edição de áudio - Jokosher.Marcelo Tosatti - Red Hat e responsável pela versão 2.4 do kerneldo Linux.Mirco Müller - Participa nos projectos OpenGL, Cairo, GTK+,gstreamer entre outros. (http://macslow.thepimp.net/)

Júris

(1) www.neei.uevora.pt(2) www.alantejo.uevora.pt(3) Regras do CNSL(4) FAQ do CNSL(5) www.alantejo.uevora.pt/2007/forum(6) Pre-inscrição CNSL

Ver na Web

Ppor Valério Valério

Page 37: Revista Linux 004

Revista Linux :: Book Review

37 Número 4 :: www.revista-linux.com

BBooookk RReevviieewwEveryday Scripting with Rubyfor Teams, Testers and You

por Joaquim Rocha

Ficha Técnica:

Autor: Brian Marick

Editora: Pragmatic Bookshelf

ISBN: 0-9776166-1-4

Idioma: Inglês

Nº Páginas: 310

Edição: 1º Edição (Janeiro 2007)

assaram-se 12 anos des-de que Yukihiro Matsu-moto lançou a primeira

versão do Ruby. Agora que oRuby conseguiu a popularidadeem massa, cada vez mais genteestá a aprender esta nova, e tal-vez estranha, linguagem. Entreoutras funcionalidades, o Rubyé muito adequado para desen-volver scripts ultra-rápidos eaprender como escrever estes éo principal objectivo deste livro.

O livro foi escrito à volta de qua-tro interessantes projectos quelhe ensinam desde o básico doRuby até alguns aspectos úteisdesta linguagem. Estes projec-tos são um verificador de desins-talação, um sistema de controlode versão, um seleccionador deinformação de páginas web eum monitor de sistema para vigi-ar programas que estão a correrno sistema e enviar informaçõesatravés de e-mail ou mensa-gens instantâneas.

Ainda que o gráfico na contraca-pa do livro diga que este estádestinado a utilizadores entre onível de principiante e de experi-ente, consideramo-lo especial-

mente bom para principiantes.Arriscaríamos mesmo dizer queo livro é até adequado para osprincipiantes mais inexperientesdevido ao facto de Brian Marickexplicar como instalar a lingua-gem, usar uma consola do siste-ma bem como a programaçãoorientada a objectos, etc...O autor consegue tudo isto semrecorrer a outras linguagens. Is-to, ainda que seja muito bom pa-ra principiantes, pode por vezesaborrecer um pouco os progra-madores mais experientes masnão será nada com que estesnão consigam lidar.

Brian Marick guia-nos atravésdo livro usando uma linguagemsimples e directa, por vezescom um ligeiro sentido de hu-mor para acalmar as coisas. Elenão só ensina como usar a lin-guagem mas também encorajaos leitores a usá-la referindo-sea eventuais “bugs” e outras coi-sas que possam parecer estra-nhas a principiantes.Outra boa característica é a or-ganização dos capítulos “RubyFacts”: estes são como resu-mos que introduzem brevemen-te alguns conceitos como no ca-

pítulo 10 - “Ruby Facts: RegularExpressions”..

O livro pretende que o leitor vápraticando ao longo deste comolivro prático que é. Não se ensi-nam aqui conceitos profundos eextensos, nem sequer há umaintrodução relembrando a histó-ria do Ruby. Assim, este é um li-vro prático, directo e “pronto ausar” sendo o seu alvo principalos “testers” que poderão quererautomatizar algum do seu traba-lho.

Concluindo, apesar do facto donome do livro acabar com “forTeams, Testers and You”, todoele parece ter sido escrito a pen-sar nos “testers”. Recomenda-mos este livro especialmente pa-ra principiantes que queiramaprender o Ruby como sua pri-meira linguagem de programa-ção e para pessoas que não co-nhecem o Ruby e queiramaprender de modo rápido comoescrever scripts. Assim, atribuí-mos a este livro uma classifica-ção geral de 4/5.

P

Page 38: Revista Linux 004

Revista Linux :: Jogos

38Número 4 :: www.revista-linux.com

Imag

emda

auto

riade

Ales

sand

ro

FFrreeeecciivvpor Duarte Loreto

er o líder de uma civiliza-ção. Gerir a sua expan-são desde os primórdios

do desenvolvimento tecnológicoaté à conquista do espaço. Lu-tar contra outras civilizações ouformar alianças e pactos de não-agressão. Explorar, conquistar,descobrir... Para quem conhecee gosta do Civilization, jogar Fre-eciv será um prazer, o voltar àsorigens. Mesmo para quem nãojogou esses jogos que marca-ram uma época, mas é fã de jo-gos de estratégia, encontraráaqui horas de divertimento.

A História do Freeciv

O jogo Civilization original come-çou por ser um jogo de tabuleiro(1), lançado no mercado no iní-cio da década de 80. Este jogode estratégia em tabuleiro teveposteriormente algumas expan-sões, com óptima aceitação den-tro do seu mercado.

Em 1991 foi lançado o Civilizati-on (2), jogo de computador, pa-ra o DOS, Mac, Amiga e AtariST. Em 1994 saiu uma versãomelhorada para Windows e ver-sões para SNES e Sega Gene-sis.

Tanto pela disponibilização em

várias plataformas, como pelaqualidade do jogo em si, do co-nhecido Sid Meyer, este tornou-se num sucesso, que teve vári-as expansões e novas versões.

Em 1995, três estudantes de in-formática dinamarqueses queri-am poder jogar este mesmo jo-go em Linux mas não existia ne-nhuma versão para este siste-ma operativo. Descobriram naInternet um projecto de imple-mentação em Open Source dojogo, chamado OpenCiv, e queestava a ser desenvolvido emPython. No entanto, este projec-to estava pouco evoluído e ostrês amigos decidiram iniciar asua própria implementação, emcódigo C.

Assim nasceu o Freeciv (3),“Porque a Civilização deveriaser Livre” (no original “BecauseCivilization should be Free”).

Em 1996, poucos meses depoisde iniciado o desenvolvimento,foi tornada pública a primeiraversão. O jogo foi evoluindo ecriada uma comunidade em tor-no do mesmo. Os programado-res iniciais acabaram por seafastar do projecto mas estecontinuou, cheio de vida, atéaos dias de hoje.

As Funcionalidades doFreeciv

Neste momento, a versão está-vel do Freeciv é a 2.0.9, estan-do em fase avançada de teste oque vai ser a nova versão, a2.1.0. Iremos sempre falar daversão 2.1.0, visto esta incorpo-rar novos desenvolvimentos inte-ressantes e também porque aactual versão beta4 se encontraestável ao ponto de ser a maisutilizada.

O jogo encontra-se disponívelem várias plataformas, nomea-damente Linux, várias versõesde UNIX, Amiga, Windows e Ma-cOSX. Adicionalmente, encon-tra-se traduzido em dezoito idio-mas, entre eles o Português.

O Freeciv tem um conjunto deregras compatíveis com as doCivilization II e do III, dispondode mais de 50 unidades diferen-tes e mais de 100 nações sobcuja bandeira jogar. Outra funci-onalidade relevante é o sistemade nevoeiro de jogo, em que ca-da jogador apenas consegue vi-sualizar o terreno que controla,tornando invisíveis as movimen-tações das civilizações adversá-rias.

S

Page 39: Revista Linux 004

Revista Linux :: Jogos

39 Número 4 :: www.revista-linux.com

O conjunto de gráficos (tilesets)pode ser alterado, para quemdeseja que o seu jogo tenha umaspecto diferente. A aplicaçãodos gráficos apenas afecta aversão local, mesmo em jogosem rede, visto que apenas aaparência do jogo muda, perma-necendo inalteradas todas as re-gras. Existem vários conjuntosde gráficos disponíveis no site(4).

Estão ainda disponíveis na pági-na do Freeciv, na secção Extras(5), mapas diversos e Mod-packs. Estes últimos são conjun-tos de alterações que além deterem gráficos diferentes, têmtambém conjuntos de regrasque diferem das do Civ II ou III.Esta página tem ainda pacotescom ficheiros de som, instalá-veis à parte, e outros utilitáriosdiversos.

O Freeciv permite que joguematé 30 jogadores simultanea-mente, numa mistura de huma-nos e inteligência artificial. Paraequilibrar o jogo, permite tam-bém definir o tamanho do mapade jogo, podendo este ser umaréplica da terra ou um mapa ge-rado aleatoriamente. Além decombater abertamente os adver-sários, é também possível utili-zar a diplomacia para forjar ali-anças, trocar segredos tecnoló-gicos, subornar ou roubar.

No caso de se optar pelo multi-jogador, este pode ser alcança-do quer numa rede interna(LAN), quer jogando através daInternet, num servidor de jogos.Iremos falar mais sobre estapossibilidade na secção seguin-te.

Jogar Freeciv

Dependendo da forma como sequiser jogar, existem alguns pro-cedimentos iniciais que diferem.Depois, a forma de jogar é sem-pre a mesma, existindo quatroformas de o fazer: sozinho con-

tra vários adversários controla-dos pelo computador; contra ou-tras pessoas em rede local; con-tra outras pessoas num servidorpúblico do Freeciv; contra ou-tras pessoas na Internet atravésdo GGZ Gaming Zone.

Ao iniciar-se o Freeciv, o primei-ro ecrã que surge apresenta asvárias opções disponíveis. Inici-ar um novo jogo, iniciar um ce-nário, ler um jogo gravado, ligar-se a um jogo em rede ou ligar-se à GGZ Gaming Zone.

A escolha de um novo jogo oude um cenário abre um ecrã on-de é possível ajustar várias va-riáveis (a maioria acessível atra-vés de um botão para “mais op-ções”), entre elas o número totalde adversários. Aceitando os pa-râmetros, é aberta a janela paraque o jogador seleccione a na-ção que vai representar e qual oseu nome.

Se o jogador seleccionar imedia-tamente a sua nação e avançar,irá jogar sozinho contra adversá-rios controlados pelo computa-dor. No entanto, se desejar jo-gar contra outras pessoas nasua rede local, basta aguardarque estes iniciem o Freeciv nosseus computadores e seleccio-nem jogar em rede local. O joga-

dor inicial irá surgir automatica-mente como servidor local e osrestantes podem juntar-se ao jo-go. Tudo isto tem de ser feito an-tes de se seleccionar a naçãoque se vai utilizar.

Para jogos em rede, há duas op-ções: uma é jogar na rede local,em que se existir algum servidorna rede local este é apresenta-do automaticamente na janela.Seleccionando esse servidor,passa-se para a fase de selecci-onar a nação. Para jogar na In-ternet, é possível juntar-se a umjogo que esteja prestes a come-çar, num servidor público. Estesjogos são anunciados na páginade Metaserver do Freeciv (6), eé onde este vai automaticamen-te buscar os servidores existen-tes para mostrar ao jogador. Re-centemente, os servidores públi-cos deixaram de estar disponí-veis devido a uma falha críticade hardware na máquina que su-portava estes servidores de jo-go.

Por último, é ainda possível,apenas a partir da versão 2.1.0,jogar pela Internet utilizando osistema de jogos online disponi-bilizado pelo GGZ – Gaming Zo-ne (7). Num cliente compiladocom suporte para o GGZ, noecrã inicial está disponível um

Page 40: Revista Linux 004

Revista Linux :: Jogos

40Número 4 :: www.revista-linux.com

botão que permite “Ligar à Ga-ming Zone”. Depois basta se-guir as instruções. Esta é a alter-nativa ao jogo pela Internet combase no Metaserver do Freeciv.

Independentemente dos adver-sários serem reais ou inteligên-cia artificial, todo o resto do jogose desenrola da mesma forma.Cabe ao jogador seleccionar anação que vai representar e oseu nome, enquanto líder dessacivilização.

O jogo propriamente dito come-ça com apenas uma parte do ce-nário visível. O jogador dispõede cinco unidades, dois colo-nos, dois trabalhadores e um ex-plorador. Os colonos podem serutilizados para fundar cidadesou realizar trabalhos de altera-ção do terreno, construção deestradas, etc. Os trabalhadorespodem realizar todas as tarefasdos colonos excepto fundar cida-des. O explorador consegue per-correr terreno mais rapidamentepara descobrir o que está “es-condido” pelo nevoeiro.

A primeira decisão do jogadorserá então onde fundar as suascidades. A partir daí, definirquais as prioridades produtivase na pesquisa tecnológica irão

influenciar o desenvolvimentoda civilização. Certas unidadesou edifícios apenas podem serconstruídos se a nação tiver jáconhecimento sobre determina-das tecnologias.

A forma como se realiza a ex-pansão no terreno terá tambéminfluência. No momento em quese tomar conhecimento com ou-tras civilizações, torna-se possí-vel fazer guerra ou iniciar con-tactos diplomáticos (caso já setenha tecnologia para construirunidades de diplomatas) comvista à criação de alianças.

Com os avanços tecnológicos,além de maior escolha de edifíci-os e unidades para construir, de-corre também a possibilidadede construir uma “Maravilha doMundo”. Todas as civilizaçõesque cumprirem os pré-requisitostecnológicos poderão iniciar aconstrução de uma Maravilha.Apenas a primeira civilização aterminá-la ficará com ela. CadaMaravilha dá um bónus para acivilização que a detiver, aindaque algumas destas se venhama tornar obsoletas com posterio-res avanços tecnológicos.

Além de uma gestão mais ma-cro de onde fundar cidades, que

edifícios construir em cada cida-de, etc., há ainda um determina-do nível de micro-decisões so-bre as quais o jogador pode, op-cionalmente, debruçar tambéma sua atenção, tais como definirrotas privilegiadas de trocas co-merciais e níveis de impostos,com as suas naturais con-sequências, também influencia-das pelo estilo de regime políti-co adoptado pela sua nação.

Existem três finais possíveis pa-ra o jogo nos conjuntos de re-gras base. Se, após guerras,apenas sobreviver uma civiliza-ção, esta é declarada vencedo-ra. Outra possibilidade de vitóriaé ser o primeiro a colocar no es-paço uma nave que cheguecom sucesso ao sistema solarAlfa Centauri, sendo necessáriorealizar a pesquisa da tecnolo-gia para a construção dos com-ponentes e a construção dosmesmos. O último final possívelé o de, chegando-se ao ano2000 DC sem que nenhuma dascondições anteriores se tenhaverificado, se atribuir uma pontu-ação a cada civilização, basea-da no seu desenvolvimento, ex-pansão e poder, e dar a vitória àcivilização com mais pontos.

O Freeciv é razoavelmente com-plexo, mas sem se tornar umador de cabeça. Permite obtermuitas horas de prazer, princi-palmente quando jogado onlinecontra outros jogadores. Prepa-rem-se, no entanto, para sofrergrandes derrotas nos primeirostempos.

Para facilitar a compreensão dojogo e dar melhores possibilida-des aos iniciados, o projectopossui um Manual Introdutório(8) e um Manual de Jogo (9).Adicionalmente, quer na páginaWeb quer no próprio cliente dejogo, existe bastante documen-tação sobre os vários tipos deterreno, unidades, edifícios, Ma-ravilhas, tecnologias e demaisquestões, bem como dicas deestratégia.

Page 41: Revista Linux 004

Revista Linux :: Jogos

41 Número 4 :: www.revista-linux.com

Para quem gosta de jogos base-ados em turnos, de estratégia, eprocura desafios com diferentespessoas, terá no Freeciv horasde divertimento. A sua comuni-dade de jogadores e programa-dores garantirá um suporte e de-senvolvimento continuado, comnovas funcionalidades, por mui-to tempo. Poderá contactar ouconviver com alguns elementosdessa comunidade no IRC (ser-vidor irc.freenode.org, canal#freeciv) ou nos fórums (10).

(1) http://en.wikipedia.org/wiki/Civilization_(board_game)

(2) http://en.wikipedia.org/wiki/Civilization_(computer_game)

(3) http://www.freeciv.org

(4) http://freeciv.wikia.com/wiki/Tilesets

(5) http://freeciv.wikia.com/wiki/Extras

(6) http://meta.freeciv.org/metaserver.phtml

(7) http://www.ggzgamingzone.org

(8) http://freeciv.wikia.com/wiki/Introduction_to_Freeciv

(9) http://freeciv.wikia.com/wiki/Game_Manual

(10) http://forum.freeciv.org/

Ver na Web

A coluna de Jogos Open Source dedica-se

a apresentar jogos que sigam a filosofiado

código abertoe liberdade, conseguindo no

entanto manter um nível qualitativo seme-

lhante ao de ofertas comerciais. Porque os

pinguins livres tambémse sabem

divertir

sem gastar dinheiro!

Page 42: Revista Linux 004

Revista Linux :: Jogos

42Número 4 :: www.revista-linux.com

PPuuzzzzlleePPiirraatteesspor Duarte Loreto

oda a acção decorre numambiente que se asseme-lha ao descrito em históri-

as sobre os tempos de piratarianos mares das Caraíbas. Maseste jogo está longe de ter vio-lência. É sim um jogo que mistu-ra os puzzles e paciências comjogos e actividades de cariz soci-al. Vamos embarcar neste diver-tido mundo da pirataria! Ahrrr!

Obter o Puzzle Pirates

Na página oficial (1) existemlinks para se obter o jogo ou jo-gar imediatamente. A segundaopção realiza primeiro a instala-ção caso o jogo não esteja ain-da instalado. A página de down-load detecta automaticamente osistema operativo do utilizador eoferece a opção adequada.

O Puzzle Pirates foi desenvolvi-do em Java e funciona na gene-ralidade dos sistemas, desdeque estes tenham o Java 1.4.2ou superior. Como é um jogoque não recorre a grandes efei-tos gráficos, os requisitos míni-mos de equipamento são umPentium II a 500Mhz com256Mb de RAM. Adicionalmen-te, o tamanho total do downloadsão cerca de 50Mb.

Uma vez o jogo instalado, ao ini-ciar-se uma sessão é necessá-rio indicar o utilizador e senhapara a nossa conta. Caso nãotenhamos uma, podemos criá-lano momento, gratuitamente.Existem vários servidores de jo-go, denominados “oceanos”.Uma nova conta é alocada a umoceano de forma aleatória. Ca-so o jogador esteja a criar umaconta com o objectivo de jogarcom outras pessoas que conhe-ce, deverá certificar-se de quealtera o oceano pré-definido pa-ra aquele que lhe interessa.Existe ainda um tipo de oceanoem que para evoluir o pirata pa-ra uma conta paga existem algu-mas diferenças. Caso ponderea hipótese de vir a pagar para jo-gar, será aconselhável ler a sec-ção sobre subscrições e dub-blons, na página do jogo (2).

O passo seguinte é criar um pi-rata. Cada conta pode ter atétrês piratas. A personalizaçãoda aparência do pirata é algo li-mitada, dado o estilo gráfico dojogo. Além da sua aparência físi-ca, é nesta fase que definimos onome do pirata, que outras pes-soas irão ver. Terminada a cria-ção do pirata (ou, em vezes se-guintes, selecção de um já exis-

tente), entramos no jogo propria-mente dito.

Jogar Puzzle Pirates

Com franqueza, o grafismo des-te jogo não é nada de maravilho-so. Todo ele é feito com gráfi-cos em 2D com uma perspecti-va isométrica, sem qualquer ten-tativa de foto-realismo. Na ver-dade, todos os gráficos acabampor ter uma aparência de bandadesenhada, num misto de cómi-co com “fofinho”. Claramenteum formato que apela a um gru-po muito distinto de jogadores,quando comparado com a maio-ria dos jogos online tradicionaisocidentais.

Posta esta questão de lado, po-deremos observar que toda a ini-ciação do jogador neste novomundo é extremamente acom-panhada. São sugeridos váriostutoriais para nos apresentar asfuncionalidades e regras do jo-go, além de nos introduzirem aalguns dos puzzles mais co-muns. Cada tutorial dura normal-mente cerca de 5 a 15 minutosa completar. Adicionalmente,existe um bom manual de jogona página (3), além de existiruma “Enciclopédia do Pirata”,

T

Page 43: Revista Linux 004

Revista Linux :: Jogos

43 Número 4 :: www.revista-linux.com

chamada YPPedia (4).

Seguindo os tutoriais, chega-mos ao cerne do que é este jo-go. Temos a parte de jogo pro-priamente dito, nos puzzles, e aparte social, nas roupas, esqua-dras (uma transposição do con-ceito de guildas) e jogos sociais.

Cada actividade de pirataria con-siste num puzzle diferente.Quanto melhor for a execuçãode um pirata num determinadopuzzle, mais este contribui paraa capacidade de navegação oucombate do navio em que está.Os três puzzles mais comunsconsistem em bombear água pa-ra fora do navio (bildge), concer-tar buracos (carpentry) e mane-jar as velas (sailing). Um piratainiciado irá por norma executaruma ou várias destas funçõesnum navio de outro pirata, ob-tendo em contrapartida uma par-te do resultado da pilhagem con-seguida. Com a prática vai-seganhando um nível de “fama”em cada puzzle, nível este quepode ser visto pelos outros joga-dores, existindo inclusivamenteuma lista dinâmica com os me-lhores a cada momento.

E como são estes puzzles? “Sai-ling” é uma espécie de tetris,em que caiem peças num poçoe o jogador deverá dispô-las porforma a eliminar blocos específi-cos, de acordo com cores. “Car-pentry” consiste na colocaçãode peças de diversas formasem “buracos”, sendo a pontua-ção tanto maior quanto melhoraproveitadas forem as peças(evitar sobreposições, etc.).“Bildge” é um puzzle em que te-mos uma secção do ecrã cheiade esferas de várias cores e aspodemos apenas trocar de posi-ção com as vizinhas para elimi-nar conjuntos num estilo “4 em

linha”.

Para além destes três puzzles,existem outros. Na verdade, sãocerca de quinze e esporadica-mente são adicionados novos.Mas é aqui que entra uma das li-mitações de se ter uma contagratuita. Alguns dos outros puzz-les apenas podem ser jogadosem dias específicos da semana,ao passo que quem tem umaconta paga os pode jogar todosos dias.

Na vertente social existem duasáreas. Uma prende-se com apersonalização do pirata, especi-ficamente no que toca à roupaque este tem vestida e a espa-da que utiliza nos seus comba-tes. A maioria da roupa, especi-almente a mais bonita, está re-servada apenas a quem temcontas pagas. Aos piratas comconta gratuita, são reservadasas roupas mais simples.

A outra vertente social é a dosjogos sociais, nas tascas das vá-rias ilhas. Aqui o pirata pode de-gladiar-se com outros piratasem jogos de Espadinha, Copas,Poker, “Drinking” e “TreasureHunt” (estes dois últimos nãosão jogos de cartas). Estes tor-neios podem ser jogados “a di-nheiro” e são um bom destinopara os dobrões de ouro ga-nhos nas pilhagens ou a traba-

A bordo de um navio

Esta empresa nasceu em 2001, nos E.U.A. O seu primeiro projectofoi o desenvolvimento do Puzzle Pirates. Iniciaram-no também em2001 e no final de 2003 o jogo entrou em produção. Posteriormen-te, a empresa lançou um segundo jogo, denominado “Bang Howdy”e está a desenvolver um terceiro, “Whirled”, além de ter um kit paraque qualquer pessoa possa criar mini-jogos que ficam albergadosnos servidores da empresa (Game Gardens).

A ThreeRings é adepta do Open Source (6). Além de disponibilizaralgumas das APIs e projectos internos em Open Source, contribuipara vários projectos já existentes. Os jogos são desenvolvidos emmáquinas Debian e os servidores de produção são FreeBSD, utili-zando mySQL como base de dados. A maioria dos seus desenvolvi-mentos são na linguagem de programação Java.

Sobre a ThreeRings (5)

Page 44: Revista Linux 004

Revista Linux :: Jogos

44Número 4 :: www.revista-linux.com

A coluna de Jogos Comerciais dedica-se a

apresentar jogos que não sigam a filosofia do

código aberto e liberdade, mas que de uma for-

ma (binários nativos) ou de outra (emulação)

possam ser jogados em Linux. Normalmente es-

tes serão jogos de elevado relevo no mercado,

quer em volume de jogadores, quer de prémi-

os. Porque os pinguins não estão excluídos do

divertimento comercial!

lhar para a Marinha. Durante os tornei-os, existe uma área de conversação ex-clusiva entre os adversários. Alguns des-tes jogos também não se encontramsempre disponíveis aos piratas com con-ta gratuita, existindo dias específicos pa-ra quem tem contas gratuitas.

E que tipo de vida pode um pirata levarneste mundo? Pode-se perder pelas tas-cas, a jogar às cartas e na conversa...Pode decidir tornar-se num pirata quenavega e pilha, ganhando assim dinhei-ro para si ou para a sua esquadrilha. Oupode tornar-se num mercador, quertransportando bens entre ilhas vivendodo lucro, quer abrindo lojas nas ilhas, co-mercializando aí os bens que produziu(existem puzzles para produzir bens).

Mais uma vez, os piratas com conta gra-tuita estão limitados nas suas carreiras.Para se comprar um navio e deste seser capitão, é necessário ter uma contapaga. O mesmo se passa para se alu-gar uma loja.

Em Jeito de Conclusão

O Puzzle Pirates é um jogo bastante di-vertido. Os seus puzzles são simples decompreender, difíceis de dominar. Umagrande vantagem é que se pode jogarpor apenas 30 minutos e depois desligar.

As limitações impostas sobre as contasgratuitas não são muito pesadas. Nãoretiram de todo o prazer da experiêncianem mesmo de recorrentemente se jo-gar. Ainda assim, para quem realmentese empenhe e deseje ir mais além no jo-go, uma mensalidade de 10€ não é ca-ra, comparando com as mensalidadesda maioria dos restantes jogos online.

A maior parte da sua comunidade apre-senta um agradável grau de maturidadee isto reflecte-se principalmente nos jo-gos de cartas, possivelmente uma razãoboa o suficiente para de vez em quandose jogar Puzzle Pirates. Ahrrrr!

Puzzle de carpintaria

(1) http://www.puzzlepirates.com

(2) http://www.puzzlepirates.com/Pricing.xhtml

(3) http://www.puzzlepirates.com/DocumentationIndex.xhtml

(4) http://yppedia.puzzlepirates.com/Main_Page

(5) http://www.threerings.net/

(6) http://www.threerings.net/code/

Ver na Web

Page 45: Revista Linux 004

Revista Linux :: Kernel Pan!c

45 Número 4 :: www.revista-linux.com

KKeerrnneellPPaann!!cc

secção administrada porValério Valério

Se os restaurantes funcionas-sem como a Microsoft:

Cliente: Empregado!

Empregado: Olá, o nome é Bille vou ser o seu empregado. Háalgum problema?

Cliente: Há uma mosca na mi-nha sopa!

Empregado: Experimente a co-mer outra vez, talvez a sopanão esteja aí desta vez.

Cliente: Não, continua aqui.

Empregado: Talvez seja da for-ma com que você está a usar asopa. Tente comê-la com umgarfo desta vez.

Cliente: Mesmo usando um gar-fo, a mosca continua aqui.

Empregado: Talvez a sopa sejaimcompatível com a tijela; que ti-po de tijela é essa?

Cliente: É uma tijela de SOPA!

Empregado: Hmmm, assim de-via funcionar. Talvez seja umproblema de configuração; co-mo é que a sopa foi aí coloca-da?

Cliente: Você trouxe-me a sopanuma tijela grande e depois co-locou-a aqui... mas o que é queisso tem a ver com estar umamosca na sopa!?

Empregado: Consegue-se lem-brar de tudo o que fez antes deter dado conta da presença damosca na sopa?

Cliente: Sentei-me e pedi a So-pa do dia!

Empregado: Já considerou fa-zer upgrade para a última Sopado Dia?

Cliente: Vocês têm mais do queuma Sopa do Dia cada dia?

Empregado: Sim, a Sopa do Diamuda a cada hora.

Cliente: Bem, qual é a Sopa doDia agora?

Empregado: A Sopa do Dia actu-al é sopa de legumes.

Cliente: Ok. Traga-me uma so-pa de legumes e a conta. Já es-tou a ficar atrasado.

O empregado sai e volta comuma tijela de sopa e a conta.

Empregado: Aqui está. A sopa ea sua conta.

Cliente: Mas isto é sopa de to-mate!

Empregado: Sim, a sopa de le-gumes ainda não estava pronta.

Cliente: Bem, eu estou tão esfo-meado que como qualquer coi-Um cafutador

Page 46: Revista Linux 004

Revista Linux :: Kernel Pan!c

46Número 4 :: www.revista-linux.com

Kern

elPa

n!c

éa

secç

ãom

ais

bem

-di

spos

tada

RL,c

onta

mos

com

ole

itor

para

ato

rnar

aind

am

elho

r.Pa

raiss

oen

viepi

adas

ouim

agen

sen

graç

adas

para

vdv1

00@

gmai

l.com

.

sa.

O empregado vai-se embora.

Cliente: Está um mosquito naminha sopa!

A conta:Sopa do Dia ..................... $5.00Actualização para uma nova So-pa do Dia ......................... $2.50Apoio ao cliente pelo emprega-do ..................................... $2.00

Um engenheiro de hardware,um programador e um gestor deprojectos estão a passear na ho-ra de almoço no jardim da em-presa e vêm uma lâmpada mági-ca. Um esfrega a lâmpada eaparece um génio.

O génio diz: "Como me liberta-ram da lâmpada, vou-vos conce-der três desejos, um a cada um!"

Engenheiro de Hardware: Euquero estar agora no pacífico acomandar um iate onde toda atripulação é constituida por rapa-rigas bem roliças.

O génio levanta a mão e puf! Oengenheiro desaparece!

Programador: Eu gostaria de es-tar agora no Havai a ser massa-jado por duas raparigas da quali-dade da tripulação do iate!

"Concedido!", diz o génio.

O gestor de projectos coça oqueixo e diz: "Hmmm, eu queroaqueles dois nos escritórios as-sim que a hora de almoço aca-bar!"

Dez sinais que indicam que asua mulher está a ter um "affair"online:10. A altas horas da noite elasenta-se nua;9. Depois de desligar a sessão,fuma sempre um cigarro;8. Tem um "disco rígido" de bor-racha que ela guarda secreta-mente numa gaveta;7. De manhã, o ecrã do compu-tador está todo embaciado;6. Adquiriu uma grande técnicaem escrever só com uma mão;5. Faz comentários sarcásticossobre o seu pequeno "software";4. Batom no rato;3. Quando fazem amor, ela diz:"Aspas, barra, enter, insert!";2. Você não se lembra de lheter tirado aquelas fotos que es-tão na pasta "web_cam";1. O problema da impressoraera uma peça de langerie encra-vada.

Se a Microsoft fabricasse carros:- O livro para o dono do carro te-ria 1300 páginas e pesaria 3 qui-los;- Nos test-drives, algumas "fea-tures" do carro não estariam dis-

poníveis: exceder os 20 Km/H,fazer marcha-a-trás, ar-condicio-nado, piscas...- A garantia diria a letras peque-nas que o carro não tinha sidofeito para viajar;- Quando se abrisse a porta docarro pela primeira vez, aparece-riam os termos da garantia;- Haveria um indicador luminosode "Falha geral no veículo";- A viatura só poderia andar em5% das estradas e 10% do tem-po sem falhar;- O volante teria que ser reinsta-lado a cada 6 meses.

Page 47: Revista Linux 004

Revista Linux :: Empresas

47 Número 4 :: www.revista-linux.com

SSoolluuççõõeess OOppeenn SSoouurrcceeEsta secção quer-se como uma listagem de empresas portuguesas que oferecem soluções em softwareopen source sobre Linux.

Se quiser adicionar a sua empresa a esta lista, envie um email para [email protected] com oassunto "Lista de Empresas". Deverá incluir o nome da empresa, contacto, logotipo, página web, local dasede e os serviços oferecidos através de palavras-chave.

[email protected] Lisboa e-commerce, formação,migração,soluções web,...

Empresa Contacto Sede Serviços

www.dri.pt

www.angulosolido.pt

[email protected] Lisboa migração, redes,servidores, ...

[email protected] Lisboaformação e certificação,soluções empresariais,consultoria, migração,outsourcing, ...

www.caixamagica.pt

[email protected] Lisboaconsultoria, desenvolvimento(Perl e PHP), integração desistemas (CRM e CMS), mi-gração; outsourcing, ...www.log.pt

[email protected] Gondomarcibercafé, redes, migração,servidores, formação, de-senvolvimento de software,soluções opensource, ...www.linuxkafe.com

[email protected] Lisboaconsultoria, administraçãode sistemas, comunicações,internet, software, hardwa-re, formaçãowww.microskills.eu

Page 48: Revista Linux 004

Revista Linux :: Agenda de Eventos

48Número 4 :: www.revista-linux.com

[email protected] Almancil - Loulésoluções opensource, migra-ção, consultoria, integraçãode sistemas(CRM e CMS),web development, e-com-merce, redes, hardware, ...

www.ecomsis.com

[email protected] MatosinhosConsultoria, implementaçãode soluções Desktop e Ser-vidor em Linux, VoIP,Software à Medida, Hardwa-re e Software

www.vmn.pt

EEvveennttoossOOppeenn SSoouurrcceeEsta é uma listagem de eventos relacionados com Linux e Open Source na Europa e em países de línguaportuguesa.

Para divulgar um evento envie um email para [email protected] com o assunto "Lista deEventos". Deverá incluir o nome, a data do início e do fim, local e página web do evento.

OSiM 07http://osimconference.com 18-19 Setembro 07 Madrid, Espanha

Open aLANtejo | 07http://alantejo.uevora.pt

19-21 Outubro 07 Évora, Portugal

I Fórum Software Livrehttp://www.softwarelivre.com.pt

12-13 Outubro 07 Lisboa, Portugal