<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: SUKHRAJ NANDHRA</title>
    <description>The latest articles on DEV Community by SUKHRAJ NANDHRA (@sukhraj_nandhra_).</description>
    <link>https://dev.to/sukhraj_nandhra_</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4011212%2Fe64057c2-ed8b-4bb0-943d-8c0a6514f145.png</url>
      <title>DEV Community: SUKHRAJ NANDHRA</title>
      <link>https://dev.to/sukhraj_nandhra_</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sukhraj_nandhra_"/>
    <language>en</language>
    <item>
      <title>How Chrome Manages Hundreds of Tabs</title>
      <dc:creator>SUKHRAJ NANDHRA</dc:creator>
      <pubDate>Tue, 07 Jul 2026 18:16:03 +0000</pubDate>
      <link>https://dev.to/sukhraj_nandhra_/how-chrome-manages-hundreds-of-tabs-1hik</link>
      <guid>https://dev.to/sukhraj_nandhra_/how-chrome-manages-hundreds-of-tabs-1hik</guid>
      <description>&lt;p&gt;We often overlook this superpower of having multiple tabs open at all times. Whether it's ChatGPT, documentation, emails, music, or YouTube, switching between tabs feels almost instantaneous.&lt;/p&gt;

&lt;p&gt;I started looking into how this works after reading about the difference between &lt;strong&gt;processes&lt;/strong&gt; and &lt;strong&gt;threads&lt;/strong&gt;, where Chrome was used as an example. That led me down a rabbit hole:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;How does Chrome isolate tabs, keep them responsive, and how does it affect my RAM?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Let's figure it out.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Was Chrome Such a Big Deal?
&lt;/h2&gt;

&lt;p&gt;Before Chrome, browsers relied entirely on a &lt;strong&gt;single-process, multi-threaded architecture&lt;/strong&gt;. When Chrome was released in &lt;strong&gt;2008&lt;/strong&gt;, it was revolutionary (and still is) because it introduced a &lt;strong&gt;multi-process architecture&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead of treating the browser as one giant application, Chrome treats each webpage as an independent application that it manages.&lt;/p&gt;

&lt;p&gt;Before we dive into what happens when you search for something in Chrome, let's quickly revise what &lt;strong&gt;processes&lt;/strong&gt; and &lt;strong&gt;threads&lt;/strong&gt; are.&lt;/p&gt;




&lt;h2&gt;
  
  
  Process vs. Threads
&lt;/h2&gt;

&lt;p&gt;A &lt;strong&gt;process&lt;/strong&gt; is an independent running program with its own memory space and system resources. The operating system keeps switching between processes so that multiple applications appear to run simultaneously.&lt;/p&gt;

&lt;p&gt;For example, while you're reading this article:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Chrome is one process.&lt;/li&gt;
&lt;li&gt;Spotify is another.&lt;/li&gt;
&lt;li&gt;VS Code is probably another.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A &lt;strong&gt;thread&lt;/strong&gt; is a unit of execution inside a process.&lt;/p&gt;

&lt;p&gt;Every process can have multiple threads working together to complete different tasks. Unlike processes, threads &lt;strong&gt;share the same memory&lt;/strong&gt; of their parent process, making communication between them much faster.&lt;/p&gt;

&lt;p&gt;Imagine a factory:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The process&lt;/strong&gt; is the factory building.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The threads&lt;/strong&gt; are the employees working inside it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The building provides electricity, security, and resources, while the employees actually get the work done.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Actually Happens When You Open a New Tab?
&lt;/h2&gt;

&lt;p&gt;It's almost instant.Press &lt;strong&gt;Ctrl + T&lt;/strong&gt;, and a new tab appears, ready to help you search for funny cat videos. Behind that tiny action, however, an entire army of &lt;strong&gt;processes and threads&lt;/strong&gt; springs into action.&lt;/p&gt;

&lt;p&gt;Opening a tab isn't like opening a Word document, it's more like launching a miniature operating system.&lt;/p&gt;

&lt;h3&gt;
  
  
  Browser Process
&lt;/h3&gt;

&lt;p&gt;The &lt;strong&gt;Browser Process&lt;/strong&gt; is the main controller of Chrome. It manages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tabs&lt;/li&gt;
&lt;li&gt;Address bar&lt;/li&gt;
&lt;li&gt;Bookmarks&lt;/li&gt;
&lt;li&gt;History&lt;/li&gt;
&lt;li&gt;User interface&lt;/li&gt;
&lt;li&gt;Keyboard shortcuts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When you press &lt;strong&gt;Ctrl + T&lt;/strong&gt; or click the &lt;strong&gt;+&lt;/strong&gt; button, this process receives the request and decides what needs to happen next.&lt;/p&gt;




&lt;h3&gt;
  
  
  Network Process
&lt;/h3&gt;

&lt;p&gt;Before a webpage can be displayed, Chrome first has to fetch it from the internet. The &lt;strong&gt;Network Process&lt;/strong&gt; handles this job. It:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Connects to the website&lt;/li&gt;
&lt;li&gt;Downloads HTML&lt;/li&gt;
&lt;li&gt;Fetches CSS&lt;/li&gt;
&lt;li&gt;Retrieves JavaScript&lt;/li&gt;
&lt;li&gt;Downloads images and other assets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once everything is fetched, it passes the data to the renderer process.&lt;/p&gt;




&lt;h3&gt;
  
  
  Renderer Process
&lt;/h3&gt;

&lt;p&gt;The &lt;strong&gt;Renderer Process&lt;/strong&gt; is responsible for displaying the webpage.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Parses HTML&lt;/li&gt;
&lt;li&gt;Applies CSS&lt;/li&gt;
&lt;li&gt;Executes JavaScript&lt;/li&gt;
&lt;li&gt;Maintains the DOM&lt;/li&gt;
&lt;li&gt;Performs layout calculations&lt;/li&gt;
&lt;li&gt;Paints pixels to the screen&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Chrome does &lt;strong&gt;not&lt;/strong&gt; always create a new renderer process for every tab. Sometimes it reuses an existing one, while other times it creates a new one for better security and stability.&lt;/p&gt;




&lt;h3&gt;
  
  
  GPU Process
&lt;/h3&gt;

&lt;p&gt;Chrome often uses your graphics card (GPU) to render webpages. The &lt;strong&gt;GPU Process&lt;/strong&gt; helps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Draw graphics&lt;/li&gt;
&lt;li&gt;Render animations&lt;/li&gt;
&lt;li&gt;Enable smooth scrolling&lt;/li&gt;
&lt;li&gt;Reduce CPU workload&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This makes websites feel much more responsive.&lt;/p&gt;




&lt;p&gt;There are many more Chrome processes.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Extension Process (thank goodness extensions don't run inside every tab)&lt;/li&gt;
&lt;li&gt;Utility Processes&lt;/li&gt;
&lt;li&gt;Audio Process&lt;/li&gt;
&lt;li&gt;IPC (Inter-Process Communication) helpers&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Open &lt;strong&gt;Chrome Task Manager&lt;/strong&gt; (&lt;code&gt;Shift + Esc&lt;/code&gt;) sometime.&lt;/p&gt;

&lt;p&gt;You'll probably be surprised to see dozens of Chrome processes running even if you have only a handful of tabs open.&lt;/p&gt;




&lt;h2&gt;
  
  
  Okay... What About Threads?
&lt;/h2&gt;

&lt;p&gt;Each of these processes contains multiple &lt;strong&gt;threads&lt;/strong&gt;. Think of a thread as a worker inside a process. Instead of one worker doing everything, several workers handle different tasks simultaneously.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;One thread handles user input.&lt;/li&gt;
&lt;li&gt;Another executes JavaScript.&lt;/li&gt;
&lt;li&gt;Another performs layout calculations.&lt;/li&gt;
&lt;li&gt;Another paints graphics to the screen.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is one of the reasons Chrome feels responsive even while pages are still loading.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;A tab isn't just another webpage—it's a collection of cooperating processes and threads.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  But How Does This Help Me?
&lt;/h2&gt;

&lt;p&gt;The biggest advantage is &lt;strong&gt;crash isolation&lt;/strong&gt;. Most websites run inside their own renderer process.&lt;/p&gt;

&lt;p&gt;If one webpage crashes,enters an infinite loop or starts consuming enormous amounts of memory, only &lt;strong&gt;that process&lt;/strong&gt; is affected. The rest of your browser continues working normally.&lt;/p&gt;




&lt;p&gt;Since every renderer process has its own memory space, a malicious webpage cannot simply read data belonging to another webpage.&lt;/p&gt;

&lt;p&gt;Chrome also enforces &lt;strong&gt;Site Isolation&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Whenever possible, pages from different websites (&lt;strong&gt;different origins&lt;/strong&gt;) are placed into separate renderer processes.&lt;/p&gt;

&lt;p&gt;This makes attacks that attempt to steal information across websites significantly more difficult.&lt;/p&gt;




&lt;p&gt;On top of that, renderer processes run inside a &lt;strong&gt;sandbox&lt;/strong&gt;. A sandbox limits what a webpage can do, even if it contains malicious code.&lt;/p&gt;

&lt;p&gt;For example, it cannot freely:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Access your files&lt;/li&gt;
&lt;li&gt;Interfere with other processes&lt;/li&gt;
&lt;li&gt;Communicate directly with the operating system&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Is This the Reason Internet Explorer Was Left Behind?
&lt;/h2&gt;

&lt;p&gt;Somewhat, yes.&lt;/p&gt;

&lt;p&gt;Earlier browsers like &lt;strong&gt;Internet Explorer&lt;/strong&gt; mostly used a &lt;strong&gt;single-process architecture&lt;/strong&gt;. All tabs shared the same memory and resources.&lt;/p&gt;

&lt;p&gt;As a result:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;One bad webpage could freeze every tab.&lt;/li&gt;
&lt;li&gt;A crash in one page could crash the entire browser.&lt;/li&gt;
&lt;li&gt;Memory bugs affected everything.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Chrome changed this by isolating webpages into separate processes.&lt;/p&gt;

&lt;p&gt;The result was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Better stability&lt;/li&gt;
&lt;li&gt;Better security&lt;/li&gt;
&lt;li&gt;Better responsiveness&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Eventually, this architecture became the industry standard.&lt;/p&gt;

&lt;p&gt;Today, almost every major browser including Chrome, Edge, Firefox, Safari etc, uses some form of process isolation.&lt;/p&gt;




&lt;h2&gt;
  
  
  If Every Tab Is a Process... Does My Browser Feast on My RAM?
&lt;/h2&gt;

&lt;p&gt;If every tab created a brand-new process, then opening &lt;strong&gt;50 tabs&lt;/strong&gt; would create &lt;strong&gt;50 processes&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Wouldn't that fill up your RAM almost instantly? Thankfully, browser engineers thought of that.&lt;/p&gt;




&lt;h3&gt;
  
  
  Chrome Reuses Processes
&lt;/h3&gt;

&lt;p&gt;Chrome doesn't blindly create one new process for every tab. Whenever possible, it intelligently shares certain processes while still maintaining security.&lt;/p&gt;




&lt;h3&gt;
  
  
  Sleeping Tabs
&lt;/h3&gt;

&lt;p&gt;Modern versions of Chrome can &lt;strong&gt;put inactive tabs to sleep&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Sleeping tabs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use almost no CPU.&lt;/li&gt;
&lt;li&gt;Can have their memory reclaimed when RAM is running low.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The tab instantly wakes back up when you click it again.&lt;/p&gt;




&lt;h3&gt;
  
  
  Different Tabs Use Different Amounts of Memory
&lt;/h3&gt;

&lt;p&gt;Not every webpage is equally expensive.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A YouTube tab playing a 4K video consumes far more memory than a simple blog article.&lt;/li&gt;
&lt;li&gt;A complex web application (like Figma or Gmail) consumes much more memory than a static webpage.&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  The Operating System Helps Too
&lt;/h3&gt;

&lt;p&gt;Modern operating systems also reduce memory usage by:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Compressing memory&lt;/li&gt;
&lt;li&gt;Swapping unused memory to disk&lt;/li&gt;
&lt;li&gt;Freeing memory from suspended processes when needed&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So yes, &lt;strong&gt;opening more tabs generally increases RAM usage&lt;/strong&gt;, but browsers use several techniques to prevent memory usage from growing unnecessarily.&lt;/p&gt;




&lt;h2&gt;
  
  
  How Many Tabs Is Too Many Tabs?
&lt;/h2&gt;

&lt;p&gt;The world record for the most browser tabs open simultaneously in &lt;strong&gt;Google Chrome&lt;/strong&gt; is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;100,022 tabs&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It was set by &lt;strong&gt;John S.&lt;/strong&gt;, according to RecordSetter.&lt;/p&gt;

&lt;p&gt;🔗 &lt;a href="https://recordsetter.com/world-record/google-chrome-tabs-open-once/46456" rel="noopener noreferrer"&gt;https://recordsetter.com/world-record/google-chrome-tabs-open-once/46456&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Looking into Chrome turned out to be much more than learning how a browser works.&lt;/p&gt;

&lt;p&gt;It connected several operating system concepts—including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Processes&lt;/li&gt;
&lt;li&gt;Threads&lt;/li&gt;
&lt;li&gt;Memory isolation&lt;/li&gt;
&lt;li&gt;Inter-Process Communication (IPC)&lt;/li&gt;
&lt;li&gt;Sandboxing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;all in a way that finally made them click.&lt;/p&gt;

&lt;p&gt;I hope this article did the same for you.&lt;/p&gt;

&lt;p&gt;So yes, Chrome may use a lot of RAM—but now you know where much of it goes.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>beginners</category>
      <category>learning</category>
    </item>
  </channel>
</rss>
