Firefox e sua luta para adaptação a multi-processos

Chris Blizzard da Mozilla postou em seu blog alguns pontos interessantes sobre as futuras versões do Firefox no que se trata de processos do navegador.

Em vários casos o Firefox perde para o Chrome e até mesmo IE9, mesmo tendo avanços significantes nas novas versões. Boa parte dos problemas está na forma como o Firefox é executado: com um processo só. Tudo fica depende de um comando central no mesmo corpo, o que às vezes faz com que o programa deixe de responder. Falar em deixar de responder não siginfica travar, mas “travar virtualmente” por alguns segundos ou milésimos de segundo. Se você sente que o ato de abrir uma aba no Firefox é mais lento do que no Chrome, por exemplo, não está sozinho (a).

Como parte do projeto Electrolysis os objetivos principais a serem considerados não são benchmarks, que dão um “número” para o navegador em alguns testes automatizados comparando-o aos concorrentes. A ideia é melhorar significantemente outras áreas, mais perceptíveis para os usuários do que para os benchmarks:

  • Quanto tempo leva para um clique de mouse ser reconhecido?
  • Quando você redimensiona a janela, o processo é suave, mantendo consistência visual?
  • O navegador misteriosamente dá uma “pausa” de tempo em tempo?
  • As animações são suaves, sem pausas, mesmo que pequenas?

Essas e outras idéias medem quão responsável um navegador é no sentido de proporcionar uma experiência agradável de uso.

Boa parte desses problemas surgem porque o navegador vai ficando inchado, o trabalho do coletor de lixo é grande e quase sempre acaba interferindo no uso com algumas “pausas” do programa. Agora com processos separados, para cada aba/site/página, plugin e elementos de montagem das páginas, isso tende a ser um problema menor. Como os processos são destruídos completamente no final (ao terminar um desenho, ao fechar uma aba, etc) a memória é melhor aproveitada e a aplicação hospedeira ou “mãe” não é prejudicada.

Além de melhorar o desempenho do programa, o uso de vários processos é bom para aproveitar melhor os processadores com vários núcleos, tão comuns atualmente. Se você não puder ler em inglês, vale a pena tentar ler com um tradutor o post do Bizzard. Pelo visto as dificuldades são grandes. O projeto está na ativa pelo menos desde 2009. Pode demorar para que essas alterações apareçam no Firefox, mas algo está sendo feito. Do Firefox 4 para frente o programa passou a isolar alguns plugins, o que ainda é pouco. Uma coisa é certa: o Firefox não quer continuar sendo inflado com recursos levando a fama de comilão de memória e pesado para sempre.

Postado por
Siga em:
Compartilhe
Deixe seu comentário
Assine nossa Newsletter
Assine nossa newsletter e receba nossa seleção de conteúdo sobre tecnologia, games, IA e internet em seu email.
Veja também
Publicações Relacionadas
Img de rastreio
Localize algo no site!