Under the hood, a quick look at browser engines

For the better part of the last 10 years, browsing the Internet for most meant using Internet Explorer. However, the recent release of Google Chrome as well as the continued popularity of Firefox, Safari and Opera have given users unprecedented choice in what software to use. But, most users don't know much about the engines and technology that actually powers their particular web browser.

Without an engine, all you'd see when you visited Neowin.net, or any other website, would be the raw HTML, CSS, and javascript that our developers use to create the site. Sure, you'd also be able to find the content hidden deep within all those tags and instructions, but not in a pleasing format and without any multimedia enhancements. The browser's engine is what takes all of that code and renders the information for you, on the fly.

Today, most of the Internet is rendered by four main browser engines. Trident, Gecko, WebKit and Presto. Neowin takes you under the hood and gives you an unbiased (but brief) overview of these engines, where they came from and who's using them.

Trident
Popular Browsers & Applications: Internet Explorer, Avant Browser, Maxathon, Microsoft Outlook, Outlook Express, AOL Browser
License: Closed-Source
Acid2 Compatible: Yes (in version VI included in Internet Explorer 8)
Acid3 Compatible: No
Operating Systems: Windows
Major Contributors: Microsoft
Share: Prior to 2004, 95% of browsers on the Internet, now approx 70%.
First Released: April 1997

First released with Internet Explorer 4.0 and still in use today, Trident was designed as a software component to allow software developers to easily (and freely) add web browsing functionality to their own Windows applications. The overwhelming majority of third party developers that integrate web browsing into their software use the Trident engine (mshtml.dll) such as Avant Browser and Maxathon as well as programs such as AOL Instant Messenger, Google Talk, Valve Steam, Pandion and many others.

However, a few notable Microsoft products no longer use Trident as their rendering engine, which may be an indication Microsoft is developing a replacement for the now 11 year old engine. Expression Web uses its own engine which Microsoft claims is the most standards-compliant on the market today. Internet Explorer Mobile also does not use Trident, but a engine custom developed for the Windows Mobile platform.

Internet Explorer 5 for Mac did not use the Trident engine, but a custom engine known as Tasman, although previous versions of Internet Explorer for Mac did use Trident. Development of Internet Explorer for Mac was halted in roughly 2003, but development of Tasman continued to a limited extent, and was later included in Office 2004 for Mac in their Entourage product.

It had been rumored that Tasman would replace Trident in Internet Explorer 7, but as of the Internet Explorer 8 beta, Trident is still Microsoft's engine of choice.

Gecko
Popular Browsers & Applications: Firefox, Camino, Flock, Thunderbird, Seamonkey, Epiphany, NVU, Netscape, K-Meleon
License: Open-Source
Acid2 Compatible: Yes
Acid3 Compatible: No
Operating Systems: Windows, Mac OS X, Linux/BSD
Major Contributors: Mozilla Corporation, Netscape (originally)
Share: Approx 20%
First Released: December 1998

Development of the Gecko layout engine began at Netscape in 1997. The original Netscape rendering engine was considered to be slow and not compliant with W3C standards, compared to the one used in Microsoft Internet Explorer at the time. Ironically, today these are two complaints now typically directed at the Trident engine used by Internet Explorer. First called Raptor, this name was changed to NGLayout due to trademark issues. Netscape later changed the name to Gecko. In July 2003, AOL (which had purchased Netscape in 1998) spun off development of the Gecko engine to the Mozilla Foundation.

Because Gecko (and the popular Firefox browser that drives it's development) are open source, other companies use it to develop their own browsers and applications. Gecko is now seen by some developers as a superior alternative to the Trident engine because it is cross platform and also lacks many of the security vurnalibilties of the more popular Trident engine.

WebKit
Popular Browsers & Applications: Safari, Chrome, Adobe AIR, iCab, Epiphany (experimental), Konqueror (KHTML)
License: Open-Source
Acid2 Compatible: Yes
Acid3 Compatible: Yes
Operating Systems: Windows, Mac OS X, Linux/BSD
Major Contributors: WebKit Foundation, Apple, Nokia, Adobe, Google, KDE Team (originally)
Share: Approx 7%
First Released: January 2003 (forked from KHTML, which was first released in October 2000)

The first applications based on KHTML were released in October 2000 by the KDE team, around their Konqueror file and web browser. WebKit was forked from the Konqueror browser's KHTML library, by Apple, Inc., for use as the engine of Safari web browser.

Google's recently released Chrome browser, along with the upcoming Android mobile phone platform, also use WebKit as their browser engine. WebKit is used on the iPhone and iPod touch to render content within the device's web browser and email software. Adobe also uses the WebKit engine to render HTML & javascript inside of Adobe AIR applications. The team behind the browser Epiphany announced in April 2008 that it will use WebKit exclusively, and stop using the Gecko layout engine. Epiphany is a web browser for the GNOME desktop used by Linux.

Presto
Popular Browsers & Applications: Opera Desktop/Mobile/Mini, Nintendo DS, Wii Internet Channel, Macromedia Dreamweaver MX and above, Adobe CS 2 and above
License: Closed-Source
Acid2 Compatible: Yes
Acid3 Compatible: Yes
Operating Systems: Windows, Mac OS X, Linux/BSD
Major Contributors: Opera Software
Share: Less than 2%
First Released: November 2002

Presto is the code name for the engine for the Opera web browser developed by Opera Software replacing the Elektra engine used in versions 4–6 of the browser. Unlike Trident, Gecko and WebKit... Preseto is available only as a part of Opera browser or related products. Neither the source or binary forms of the engine are freely available for integration into third party products.

Adobe has licensed Opera technology for use in the Adobe Creative Suite applications, however, given Adobe's recent promotion of WebKit inside of AIR, their use of Presto technology in CS should be short lived.

Report a problem with article
Previous Story

Stuck on IE6? Gmail's got your back.

Next Story

iTunes 8, iPhone 2.1, 4th gen Nano expected Tuesday

34 Comments

Commenting is disabled on this article.

A very informative article (especially as I am studying to become a software engineer & will need to know all of this). So thank you very much Marshalus I think there should be more articles like this on Neowin!

Is the Acid3 part about the released browsers? Because Presto does 84 and Gecko 71, with Gecko then somehow being labelled with a "No". Hm. Not that especially Acid3 matters all that much in the big picture with standards support. Acid2 on the other hand...

Edit: Oh, it's perhaps including the development versions? Well, in that case, Opera only gets 99 due to a previous bug in the Acid3 test.

Strange, all of a sudden the web browser has become sexy again. Microsoft have had a severe case of schizophrenia during the development of IE4 to IE7, now we can see that the browser is becoming more important that the O/S. What a turn around; it took Google to step into the mix (and it makes headline news!). Why on earth Google didn't "partner up" with a Linux distro, when they first found they had ability to print money lord only knows.

Roll on the development of the anonymous browser, the less technical user can take better control of their Internet experience.

strange to think of it like, internet explorer's trident engine has the highest market share according to the article, but the poll suggests that most people on neowin are on the gecko engine....

actually, outlook doesn't use trident, much to the dismay of newsletter senders office has it's own rendering (and it sucks)

(XerXis said @ #15)
actually, outlook doesn't use trident, much to the dismay of newsletter senders office has it's own rendering (and it sucks)


Not entirely correct... Outlook 2007 has its own independent purpously crippled HTML engine based on Word 2007's engine... before that the HTML engine used IE's engine... this is a new security change in Outlook 2007

(SharpGreen said @ #12.1)
Not necessarily. The internet channel doesn't come preloaded on Wii's.

even if the internet was included with with the Wii i would not count that as part of Opera since it aint like people 'seriously' use consoles to access the internet.

cause without a HDTV/mouse+keyboard , the internet pretty much sucks on consoles.

Just a note, it's not "Maxathon" its "Maxthon" :)
It's a great browser, totally worth using. I'd like to see Chrome go further though!

To pass the test, a browser must use its default settings, the animation has to be smooth, the score has to end on 100/100, and the final page has to look exactly, pixel for pixel, like this reference rendering.

So Firefox and Chrome both Fail the test.

(Dirk said @ #5.2)

So apparently it isn't compatible unless it gets a 100%? So Chrome isn't compatible either.

Chrome uses an older version of WebKit ... the newer versions pass the Acid3 test ...

(Quick Reply said @ #5.3)

So Firefox and Chrome both Fail the test.


Opera fails the smoothness test and hence also fails the test. Acid3 is harder than it looks eh?