[nmglug] why are web browsers so memory-heavy?

Anthony J. Bentley anthony at anjbe.name
Thu Apr 14 19:44:27 PDT 2016


Mark Galassi writes:
> The result was dreadful: you use firefox and it immediately uses all
> RAM.  Even a 1gig machine cannot work with current versions.

Yes, browsers are possibly the most apt example of Wirth’s Law in action.

> Now the standard advice given is "don't use a very old distro for
> low-RAM machines since it will miss security and other bug fixes; you
> should instead use a modern distro that's tailored for low resource".

Indeed. While performance is important, security is even more important.
I cannot in good conscience ever recommend an out of date browser.

Consider: Firefox’s PDF viewer had a severe bug that allowed malicious
or compromised ad servers to steal your SSH keys; it was only fixed in
August of last year. Every time there’s a CA breach like DigiNotar, its
certificates are blacklisted in a browser update (because the state of
HTTPS certificate revocation handling is… not good). Fundamental
weaknesses in old encryption protocols like SSLv3 and TLS 1.0 keep
getting found every few months; usually the most important defensive
action you can take is updating to the newest release of your browser.

No matter how much faster they would be, using old (and thus *necessarily*
insecure) browsers is not an option.

> The problem is that people will want a browser that's featureful enough
> (i.e. not dillo or any other simple html renderer).

Personally I use NetSurf for lightweight browsing. It’s the only browser
in my experience that runs at a bearable speed on old PowerPC machines.
That said, while it makes a valiant effort at rendering the modern web,
its JavaScript support (while improving all the time) is still
effectively nil.

When I find the time, I’d like to spend some time improving NetSurf’s
web compatibility and its security. Personally I see a lot of potential
in NetSurf because it keeps a small codebase. Part of the problem with
large browsers is they simply have too much code to be manageable.
NetSurf builds in under three minutes on my machine; Firefox takes over
70 minutes. Chromium has been building well over an hour and shows no
sign of finishing soon. (Using four cores!!!)

I don’t use Dillo much. My impression of it is not great. I even saw
this email just yesterday:
https://marc.info/?l=openbsd-ports&m=146056872032709&w=2

I suspect Mozilla’s new Servo engine will be significantly faster than
current (Gecko‐based) Firefox for at least two reasons: deprecating XUL
and distributing to multiple cores. Both of those are great steps, but
I don’t trust Mozilla to write decent code – they’ve been one of the
worst offenders for years, and I fear Servo will be no different.

-- 
Anthony J. Bentley


More information about the nmglug mailing list