Não sei se todo mundo viu que hoje o Google está anunciando seu navegador chamado Google Chrome. A notícia foi vazada ontem porém oficialmente hoje é o dia. A questão aqui é talvez muito mais importante do que parece pois o Google Chrome pode e mudar o jeito tradicional de usar a internet.

google chrome logo

O anúncio foi através de uma história em quadrinhos, nada convencional, porém muito ilustrativa. Pena ainda ser em inglês (você pode acessar aqui) mas vou dar uma breve explicação de como o Chrome funciona e o que traz de novidade. Fiz isso traduzindo o texto original com alguns comentários. Vamos lá.

Parte 1. Arquitetura.

Google Chrome comics 1

As páginas mais usadas hoje na internet são na verdade mais aplicações do que uma simples coleção de texto.

Quando os navegadores e todo seu conceito foram criados anos atras, a realidade era outra, ninguém assistia e carregava vídeos, batia papo ou jogava online. Ou seja, a utilidade da internet mudou mas o conceito do navegador não foi alterado. Por isso que hoje temos que instalar plugins Flash entre outros para poder navegar em uma simples página de um jornal.

A idéia do Chrome é criar um novo navegador partindo do zero, com foco neste novo modelo de utilização da internet voltado para as aplicações e seus usuários.

Premissas do Chrome:

1. Ser mais estável e evitar perdas de documentos importantes por causa da interferência de outras páginas abertas.

2. Ser mais rápido que os navegadores atuais inicializando e carregando páginas com aplicações javascript.

3. Ser mais seguro e ter uma arquitetura que evite os conhecidos “malwares” através de falhas conceituais dos navegadores atuais.

4. Ter uma interface mais simples e eficiente mesmo com tantas funções implementadas.

5. Ter código fonte aberto para que o conceito das premissas acima sejam espalhados, compartilhados e assimilados por toda a comunidade de desenvolvedores e utilizadores da internet.

Arquitetura de Múltiplos Processos

Google Chrome comics 2

Todos navegadores atuais são um simples programa representado por um simples processo. Você pode usar diversas abas do Firefox ou Internet Explorer, executando diferentes aplicações. Todas elas são na verdade um processo dentro do seu computador. Se qualquer problema ocorrer e interromper o navegador, todas as suas diversas aplicações serão fechadas ao mesmo tempo.

Google Chrome comics 3

A arquitetura do Chrome envolve um gerenciador de processos que controla diversas aplicações representadas em abas. Cada aplicação em uma aba é um processo isolado com memória, javascript, recursos e cópia das informações globais de utilização.

Fragmentação de Memória

Google Chrome memory comicsNos navegadores atuais cada aba aberta ocupa um espaço na memória do seu computador. Quando você tem diversas abas e ocupa muita memória pode fechar uma para liberar recursos.

O problema é que todos sabemos que isso não funciona muito bem e os navegadores são comedores de memória pois como eles como não gerenciam bem seus recursos, isso acaba por ocasionar fragmentação da memória livre.

Explicando melhor, quando você abre uma nova aba, se a memória exigida não couber no espaço disponível, mais memória livre é ocupada. Muita gente conhece os desfragmentadores de disco rígido e o problema aqui com a memória RAM é exatamente o mesmo. Os navegadores atuais acabam por utilizar muita memória por não saber usar direito e chega a um ponto que a navegação fica lenta e pesada.

No Google Chrome, quando você fechar uma aba, como o controle de recursos é exclusivo dela, todos recursos ocupados são novamente disponibilizados. Com isso o gerenciamento da memória livre fica muito mais otimizado pois só ocupa realmente o que usa e desocupa o que não usa. Desta forma tem mais controle sobre a utilização dos recursos do seu computador.

Google Chrome comics bad apps

Além disso o Chrome possui um “Gerenciador de Tarefas” semelhante ao do Windows onde você pode monitorar a utilização de recuros de cada aba aberta e ver qual página de aplicação ocupa mais memória ou banda da internet por exemplo.

Isso é importantíssimo para poder separar e julgar as melhores páginas de aplicações da internet, ver qual delas foi desenvolvida da melhor maneira e assim descartar as que ferem seu computador através da má utilização de recursos.