Android 3.0: Linux nos tablets
Imediatamente a partir de seu lançamento, o Android tem sido uma das principais forças na disseminação do Linux e outros softwares de código aberto incluídos no seu bojo.
Ainda que parte considerável dos seus usuários possa nem mesmo suspeitar da natureza dos componentes de software envolvidos ou dos seus termos de licenciamento, essa composição baseada em componentes como o Linux, o SQLite, o WebKit e outros softwares de código aberto e uso geral produz movimentação positiva nos respectivos bastidores, incentivando o avanço de seu desenvolvimento e eventualmente gerando benefícios que podem ser usufruídos por seus usuários em outras plataformas também.
É neste sentido que o recente anúncio da versão 3.0 do Android, batizada de Honeycomb, mais atraiu minha atenção. Anunciado na primeira semana de 2011, em um evento de tecnologia realizado em Las Vegas, o Honeycomb tem uma característica específica que o distingue das demais versões do Android: foi feito para ser executado em tablets. (…) (via IBM DeveloperWorks)
android não é linux.
android não contribue com a comunidade.
android é um produto.
@bill,
Concordo contigo: Android não é Linux.
Android é um SO que usa o *kernel* Linux. E Linux é um *kernel*.
De certo modo, o Android contribui, garantindo que fabricantes de hardware façam drivers. Drivers são feitos para um kernel específico e não para o SO como pensam. Se “disponibilizam driver para Android” estão disponibilizando driver para uma versão específica do kernel. Logo, todos ganhamos.
E claro, Android é produto, assim como Ubuntu, Debian, Mandriva, Fedora, RHEL, etc. Qualquer kerl como o Linux por exemplo, não deixa de ser produto.
“Android é Linux” mas Android “não é Java”. Vai entender!
É isso então, está confirmado, Android não é Linux!
Fedora, Ubuntu, Debian, Mandriva, e até o saudoso Kurumin, também não. Afinal nenhum deles é “linux puro” precisam de softwares que rodam sobre kernel para torná-lo utilizável.
Mas o que mais concordo é que o Android é um produto, só fiquei chocado em perceber que o Debian, também, é passei lá no site deles estes dias e eles tinham links de lugar onde é possível comprar a “distribuição”. O.o
Tudo bem, posso conviver com isso
“De certo modo, o Android contribui, garantindo que fabricantes de hardware façam drivers.”
Infelizmente na prática não. O kernel que o Android usa é bastante modificado em relação ao upstream. Alguns drivers até entraram para teste, mas eram dependentes de código que não foram aceitos e acabaram removidos.
Google diz que vai começar a trabalhar mais próximo ao desenvolvimento oficial. Espero que ocorra mesmo, mas tenho minhas dúvidas.
Quantos aos fabricantes, esse parecem menos preocupados ainda. Outro dia foi publicada uma lista de tablets que utilizam Android e poucos estavam de acordo com a licença GPL.
@zer0c00l,
O Android “não é Java” por dois motivos:
a) Para utilizar a marca “Java” (que hoje pertence à Oracle), por regras já definidas no JCP (pela extinta Sun), uma máquina virtual precisa aderir à risca as especificações da máquina virtual java.
b) Para utilizar a marca “Java” a máquina virtual passar 100% no TCK (Test Compatibility Kit) da plataforma. O TCK deve ser licenciado pelo interessado (e sim, só por curiosidade, é caro)
O Android não é uma implementação 100% aderente às especificações elaboradas pela Sun, e faz isso de propósito: foram feitas otimizações específicas para a plataforma móvel. Tampouco, portanto, passaria no TCK, justamente por causa disso.
Não obstante, podemos considerar que o Android foi baseado na plataforma Java (a Google não nega isso, ao contrário do que a M$ faz com o .NET) e no OpenJDK. O Android é uma espécie de fork paralelo da plataforma Java e não é o primeiro (quem lembra do SuperWaba?).
Em tempo, a VM do Android é muito semelhante à JVM, de forma que softs pra ela podem ser escritos na linguagem Java, normalmente.
Infelizmente, se a Google está jogando “nas regras” da comunidade livre nesse caso, o mesmo não pode ser dito de ela ter jogado limpo com a comunidade java em si: mais interessante seria trabalhar junto ao JCP para criar um novo padrão de VM para dispositivos móveis: indústria e consumidores sairiam ganhando.
Ao invés disso ela resolveu fazer uma cópia da bola pra jogar sozinha.
O mesmo pode ser dito do Linux: a Google usa seu kernel, mas não apoia nem contribui com o desenvolvimento do mesmo.
Apesar de tudo isso, ambas comunidades ainda conseguem se beneficiar indiretamente com a plataforma Android: drivers são escritos para Linux e mais tecnologias e programas são desenvolvidas em java.
@zer0c00l, Android vem com Linux sim, mas acho um erro dizer que ele é Linux, pois só o kernel não oferece tudo que o Android oferece, além do mais não diferencia das distribuições GNU/Linux que se têm por aí. Quanto ao Java é outra história, só é Java o que a Sun (e agora Oracle) diz que é. É algo semelhante no que diz respeito aos sistemas GNU não serem Unix.
@Ivan, piadas a parte, vc escolheu justamente uma distribuição que não pode ser definida como Linux, leia a página deles e verá que além do Debian GNU/Linux, existem Debian GNU/NetBSD, Debian GNU/kFreeBSD, etc. Espero que vc viva feliz sabendo que Debian não é Linux (um kernel), Debian é um SO (eles dizem ser mais que um SO, pois incluem milhares de aplicações).
http://www.debian.org/ports/
alooou, android é linux! Android pega o kernel linux e altera, isso é linux. android tem um ambiente gráfico criado por terceiros rodando em cima do kernel, isso é linux. Android também tem o código aberto, isso é linux.
Por isso o Linux não avança. O pessoal briga entre si. Fragmentou demais. O ideal seria começar do zero.
@iss86
Ué. E começar do zero não seria fragmentar também?
Android um estranho no ninho!!!!! hehehe!!!
O XO-Laptop, que todos esses Netbooks e hoje até os tablets foram pensados apartir deste pequeno “Notebook” educacional agora tem o consumo de energia lá em baixo com a troca de processador. E até um melhor desempenho
Eu coloquei algumas coisas nesta noticia:
http://cafecompinguim.wordpress.com/2011/01/14/mudar-para-chip-arm-xo-laptop-para-o-uso-de-2-watts-de-energia/
@ericodc, se o Android, no lugar do kernel Linux, colocar o kernel do FreeBSD vai mudar o que para quem cria aplicações para o SO ou para os usuários que utilizam ele?
@Xinuo
Pô, o Debian traiu o movimento Linux, véio, saindo com essa outra galera. :)
O importante é que você entendeu a brincadeira.
Mas, pra não fica só na galhofa, o que quis mostrar é que se formos focar na literalidade do uso ou não do kernel, nenhuma distribuição é Linux, como a maioria de nós sabemos ele é o Kernel e sozinho não faz muito, cria apenas a estrutura para que os outros programas possam conversar com o Hardware, se começarem a pegar no pé por causa dessa questão terão que dar razão ao Stallman e passar a fala Gnu/Linux para praticamente todas as distros e assim por diante.
Eu entendo, e também estou atento às diferenças, assim como o Linux nasceu no Minix, o Android pode nascer no Linux e no futuro se tornar outra coisa, mas por enquanto, pra mim, é Linux.
Essa confusão toda é culpa do pessoal que tenta se referir a um SO pelo seu kernel, chamando de “Linux” ao invés de “GNU/Linux”. Não fica óbvio que Maemo, Mandriva, Slackware, Redhat etc. são “GNU/Linux” enquanto que o Android é só “Linux” com uma camada diferente por cima? Mas nããããããão, adotar a nomenclatura do Dr. Stallman? Ele é chato, feio e pelego, não é mesmo?
O Debian GNU/Linux é a edição específica do Debian que usa o kernel Linux.
bem, vamos lá de novo.
Android é VODA. Acostumem-se com isso. É o maior caso de sucesso entre o público em geral tanto para java quanto para linux e fazer birra por conta de bobagens não vale a pena.
Como bem explicado por outros, Android é na verdade Android/Linux e vem com uma coleção de software open-source de respeito, incluindo webkit, sqlite, sdl e diversos outros. So na área de aplicativos é que software open-source não dá as caras mesmo: pessoal do VCL bem que podia dar as caras tanto para dar um player de respeito open-source quanto para dar o troco à Apple.
Por fim, WordPress também é voda e todos websites wordpress ficam espetaculares em smartphone: este texto escrito de um Motorola Milestone com Android 2.2 via teclado virtual swype. Magnífico. Acredito agora que desktops estão fadados a serem peças de museu dentro em breve, à excessão talvez de programadores, secretárias e gamers die-hard.
É melhor software livre acompanhar as mudanças no cenário para se manter relevante.
“De certo modo, o Android contribui, garantindo que fabricantes de hardware façam drivers.”
Na verdade não. A principal plataforma no qual o Android roda é ARM, onde o sistema mais usado é Linux há tempos. Nenhuma fabricante de SoCs baseados em ARM (FreeScale, TI, etc.) ousa lançar um chip no mercado sem fornecer os drivers para Linux.
Com uma simples busca no Google é fácil provar isso com gráficos:
http://edageek.com/primages/2007q4/20071003b.gif
http://www.linuxfordevices.com/files/article056/vdc_28.jpg
http://www.linuxfordevices.com/files/article077/embedded_OS_sourcing_trends.jpg
http://www.linuxfordevices.com/files/article077/past_future_linux_use.jpg
O que não significa que o Android não seja importante pois, apesar de o Linux ser o mais popular para dispositivos embarcados em geral, no caso específico de celulares ele ainda perdia para o Symbian, e nos EUA também perdia para o Blackberry e para o Windows Mobile, e mais tarde ficou perdendo também para o iOS: http://www.wirelessinfo.com/images/upload/Image/news/2007%20Dec/canalys_analysis_global.jpg
Com o Android a esperança é que o Linux domine também o setor específico de celulares.
Quanto a reclamar que o Android seja chamado de Linux, só digo uma coisa. Quando sai a notícia de qualquer dispositivo embarcado no mercado que esteja vindo com Linux de fábrica, seja ele uma TV ou uma geladeira, ninguém reclama, apesar de ser desenvolvido no mesmo molde do Android, kernel Linux com software específico por cima. Só com o Android que ficam com essa frescura.
Lembrando que este mercado é tão importante que o Windows vai lançar uma versão para plataforma ARM, mesmo eles sendo parceiros da Intel.
Isso mostra a dimensão deste mercado.
@Marcelo,
Pode não contribuir diretamente, mas nada impede de alguém com conhecimento que obtenha o código específico do Android e traduza-o para outras opções. No código vai ter embutido o conceito e a lógica de comunicação. O restante é específico para comunicação com o tipo de processador/plataforma.
@Carlos,
Mesmo o foco dos fabricantes ser ARM, várias distribuições já possuem ports para ARM e nada impede que alguém com conhecimento traduza-o para i686, x86_64 e outros.
O Carlos disse tudo, quantas personalizações de Linux existem por aí, por que brigar com o maior case linux de sucesso em Smartphones? Por que fez sucesso?
Sobre o Google contribuir com o Linux, no começo eles fizeram um fork do kernel porque o o sistema mudava demais, já que estava em pleno desenvolvimento, o tempo que demoravam pra avaliar e incorporar o patch ao kernel demorava demais, por isso o fork.
Até a última notícia que li depois da versão 2 o Google estava contratando desenvolvedores para reintegrar as alterações do kernel modificado à árvore original e começar a trabalhar nela, já que de agora em diante o núcleo do Android estava mais estável.
E antes que alguém critique, a Red Hat´,Novell e até a Conectiva já fizeram isso no passado, só que depois viram que não compensava porque sempre tinham de ficar fazendo merge com o kernel original e readequando o fork.
@Carlos, acho que a maioria diz que o Android não é Linux, pois não proporciona a mesma experiência de um Ubuntu, que por sua vez é semelhante a experiência de um Fedora, de um Mandriva, etc.
É simples de entender! Android, Mandriva, Ubuntu, etc. são mais que um kernel. Quem quer confusão? Dizer isso não é frescura, é esclarecer algo óbvio e que causa desinformação.
Veja o @Ivan acima, quase caiu a ficha, o Android, o Ubuntu, o Mandriva USAM o kernel Linux, dizer que “SÃO” Linux é uma simplificação, para mim é um erro pois eles não são a mesma coisa.
Eu chamo esses últimos de “distros GNU/Linux” pois acho que a base do SO é o GNU com kernel Linux. Já essas outras personalizações que usam o kernel Linux não são GNU.
Se vc e o @Ivan querem jogar todo mundo no mesmo saco do Linux e não querem causar confusão, só posso dizer que é lamentável essa “cabeça-durisse” (ou seria “durice”?).
@MarcosAlex, quem está contra Android, aqui? Não vi nenhum comentário contra o Android (apenas um dizendo que a Google não contribui, o que é outra coisa).
O título da notícia está correto. “Android: Linux nos tablets”. O que está errado é pensar que Android é Linux, pois ele é algo mais do que um kernel, e ele é diferente de outros SOs que tb usam o kernel Linux, como o MeeGo ou o WebOS. Ou vão querer dizer que todos eles são iguais por usarem o mesmo kernel?
Questões de nomeclatura a parte, eu uso o software livre, gosto e torço pelas plataformas abertas, quanto mais aberto e livre, melhor. Não importa qual o kernel usado.
@Carlos, esse “setor específico de celulares” é o futuro próximo da computação pessoal. No dia em que neguinho tiver livre acesso aos mini computadores de bolso que são os smartphones atuais, os pesados desktops se tornarão muito menos comuns na casa da maioria das pessoas. Quando esse dia chegar, o Linux precisa estar lá.
Esse texto escrito de um Android, aliás. Só usando teclado swype pra entender…
@Xinuo
Você tem razão, mas o que digo é apenas o seguinte, se a questão é a nomenclatura, não tenho nada contra que passem a chamar todas as distribuições baseadas no kernel Linux de GNU/Linux quando for o caso. Se isso é importante pra você acho que deve fazer, no meu caso particular prefiro abreviar, chamar o Brasil de República Federativa do Brasil pra mim é desnecessário, por que quem me ouve ou já sabe que é esse o nome verdadeiro e completo ou não está se importando nem um pouco com isso, exceto é claro que estejamos em um ambiente acadêmico, talvez seja o caso aqui no BR-Linux? Por outro lado se o Android mudar o kernel dele de Linux para qualquer *bsd eu certamente irei parar de chama-lo de Linux e passar a me referir a ele como *bsd, ou eventualmente se for conveniente direi Android/Linux ou Android/*bsd.
Consigo olhar pelo seu ponto de vista, mas essa discussão ainda tem muito a evoluir.