Both use a multi-process structure. What does that mean? Each program on your computer (iTunes, Your browser, etc) use a process. A process is basically a house. Each house has its own lot, with a default amount of acreage, which you can add to if you want. And each house/process has a certain number of people living there. And the acreage is the memory that the program can use or has access to.
So here is how firefox works:
Firefox runs in one process. So that is one house, with a default acreage (or memory). Every time you open a new tab, you still have just one house with one more resident. Maybe you add some land. Let's say you have 10 people living in that one house, or 10 tabs open in firefox. Sure you have more land, but eventually there is gonna be a conflict over who owns what and how much land each of them should have between them. This is known as a browser crash. And when all the tabs/residents are under one roof, when one blows up, it hurts everybody and crashes all your tabs. So running all the tabs in one process can be bad, especially if one of them crashes.
So Chrome and IE8 use a multi process approach. Each tab has its own house with its own land. So whenever a house/tab has a conflict, its pretty isolated and the other tabs are unaffected.
That is the theory. Chrome does this perfectly. My tabs rarely crash, but when they do, all my other tabs stay open and the browser putters along as if nothing happened. Well, IE8 needs to take a few lessons from Chrome.
A tab crashed in IE8, and I had three tabs total open. I tried to close the tab. No luck. I finished my business in the other tabs, and tried to close the browser. It 'hung' trying to close the problem tab. So then I go to the task manager (Ctrl + Alt + Del), and find the iexplorer.exe process. There are a couple of them, because, as I said earlier, this is a multi-process browser, so each tab gets its own process. Well, I do what I always do when a problem has a major meltdown. I kill the process. Thankfully, IE8 is soooo advanced, it knows when a tab is having a problem, so it reopens the process. So basically, I'm in the task manager, just trying to close the processes faster than IE8 can reopen them. Finally I close both processes, and manage to close the process before IE8 can fully reopen them, and finally close out my browser.
Stupid IE8. Chrome has a built in task manager just for Chrome (Right click on your chrome window and select 'Task Manager'). It allows you to see which tabs are doing what, how much bandwidth and processing power they are using. If a tab becomes completely unresponsive, you can easily find which tab and close it. With IE8, you have to use the windows task manager (Ctrl + Alt + Del) which offers ZERO assistance as to which process is related to which tab (each process and tab is named iexplorer.exe) Once again, I say BRILLIANT microsoft.
Sure IE8 is loads better than IE7 and lightyears beyond IE6. But in terms of speed and reliability, Chrome has got IE whooped! And a new study just came out that shows that 97% of Chrome users have the most recent (and most secure) version of Chrome, thanks to their super-silent update. Whereas Firefox is 84% and the other browsers are 15%-30% below firefox. So you tell me which browser is best.
This was a great post, Adam. I like your explanation. I didn't know all the why's, but I prefer chrome over the other browsers I use - by a long shot! The only thing is, I wish all applications could use chrome. Most seem to be able to, but once in awhile I run into one that can't seem to figure out that I'm using a better browser and they want me to find a different one. I have to say that I like all things google and chrome is no exception!