Depois da Apple ter informado, em Setembro de 2013, que o iPhone 5S seria o primeiro smartphone a trazer um CPU a 64 bits, a “moda” da arquitectura a 64 bits parece ser a tendência no segmento dos dispositivos móveis (um caminho idêntico ao que aconteceu com os PCs).
Depois seguiu-se a Samsung e agora são os próprios fabricantes de CPU’s, como é o caso da Intel, que anunciou uma nova versão optimizada do Android Kitkat 4.4 para CPU’s de 64 bits.
A Intel anunciou recentemente uma nova build do Android 4.4.2 Kitkat que foi optimizada para correr em processadores Intel a 64 bits. A empresa tem como principal objectivo atrair novos fabricantes de smartphones, para que possa realizar novas parcerias.
Nesta fase inicial, é possível descarregar esta versão optimizada e correr apenas em dois equipamentos: Mini PC Intel NUC ou no Ultrabook Dell XPS 12 que trazem um CPU Celeron N2820 e um Intel Core “Haswell”, respectivamente.
No entanto, em poucas palavras, a Intel referiu discretamente que esta versão do Android poderá correr em qualquer CPU recente da empresa.
Para que se perceba melhor esta questão da arquitectura dos 64 bits, considere o seguinte exemplo:
Vamos considerar que vai a uma biblioteca e solicita todos os livros sobre bicicletas. O responsável pela biblioteca tem 32 assistentes disponíveis, que se encarregam de ir buscar um desses livros…no total o responsável pela biblioteca irá receber no máximo 32 livros.
Agora imagine que há um novo pedido para livros sobre o Pplware e que o responsável pela biblioteca tem na mesma 32 assistentes disponíveis. No total a biblioteca tem 65 livros o que implica 3 “viagens“ (consideremos o termo “ciclos” dos assistentes.
Agora imagine que o responsável pela biblioteca tem 64 assistentes disponíveis. Neste caso, sendo feito um pedido para livros sobre o Pplware, apenas serão necessárias 2 ciclos para trazer os 65 livros.
Resumo: Isto quer dizer que, com mais assistentes, a velocidade de entrega dos livros a quem solicita é ligeiramente mais rápido. Fazendo umas contas rápidas, se tivéssemos 256 livros e 32 assistentes, então seriam necessários 8 ciclos. No caso de termos 64 assistentes, apenas seriam necessário 4 ciclos.
No caso dos sistemas computacionais, o funcionamento é idêntico. Um iPhone a 32 bits apenas consegue obter 32 bits de dados por cada ciclo…já com 64 bits o sistema consegue num máximo 64 bits de dados, o que evita menos operações de transferência de dados entre disco/RAM. De referir que se um sistema de 64 bits necessitar de ir obter informação menor ou igual a 32 bits…então não haverá diferenças significativas em usar um sistema a 32 ou 64 bits.
Além do espaço de endereçamento, há outras questões importantíssimas como a precisão, inerente ao tamanho dos registos (inteiros e de vírgula flutuante), e endereços/caminhos de dados (não necessariamente na RAM, mas na ALU).
A Intel referiu ainda que está em desenvolvimento um trabalho adicional, como o objectivo de optimizar o código para que a plataforma suporte HTML 5, JavaScript, WebKit, V8, e Dalvik. Esta versão agora disponibilizada é “64-bit ready.” Como sabemos a Google ainda não disponibilizou qualquer versão oficial com suporte para 64 bits e nesse sentido podemos sempre testar esta versão optimizada para esta arquitectura.
A Intel tomou a iniciativa de acelerar o processo de transição do Android para 64bits, no entanto, a Google já trabalha nesta transição há alguns meses tendo, inclusive, aparecido alguns commits a confirmar.
A Google está a fazer a mudança de forma gradual em parte por causa dos principais fabricantes de SoCs ainda não terem lançado para o mercado um CPU 64bits, mas uma vez que a Intel tomou a iniciativa de fazer uma compilação em 64bits, é possível que a Google nos presenteie na próxima versão do Android os 64bits.
A par desta novidade, a Intel fez também saber, num evento que se realizou na Shenzhen – China, que irá lançar novos SoC Braswell (que serão os sucessores dos Bay Trail….passaremos assim dos 22nm para os 14nm e, segundo informações, esta família de SoC emitem menos calor).