Earlier this year, 9to5 Google noticed code changes to LaCrOS. The work has progressed so far that LaCrOS is available on Chrome OS 87’s Canary Channel and appears as another Chrome browser icon. This is because Google is decoupling the Chrome browser from the Chrome OS on Chromebooks. And that’s what Linux is used for.
We know this from a Google doc that explains what LaCrOS is and what it stands for: L.inux And C.HR.ome operating system. Right, the Chrome browser is independent of Chrome OS and seems to be based on a Linux version of Chrome with improved Wayland support.
Why is Google doing this? To be honest, me Not I think it’s designed to extend the life of older Chromebooks, like others who cover this news have suggested.
I would love to be wrong believe me.
This doesn’t make much sense, however, as all Chromebooks now receive around 8 years of software update support. And it makes even less sense when you think of older Chromebooks that aren’t currently listed in the Software Support window: how would they get the update needed to break the Chrome browser out of Chrome OS?
Instead, I think this is primarily to help Google better manage the work in the Chrome browser and get browser updates for Chromebooks faster by making the platform more modular.
Have you ever wondered why Chrome OS updates typically roll out a week or two after Chrome updates for all other platforms? This is partly because Chromebooks don’t just get browser updates. You will also receive software platform updates for Chrome OS.
By decoupling the Chrome browser from Chrome OS, Google can manage a single Chrome code base for all platforms and push browser updates to those platforms at the same time. On the other hand, Chrome OS updates that may be ready to be deployed don’t need to be held up by Chrome browser updates.
The LaCrOS document indicates that having a separate Chrome browser may have a slight performance hit. This is because Chrome OS uses APIs to communicate with the browser instead of using native code for that communication:
The basic approach is to rename the existing binary to Ash Chrome with minimal changes. We then take the Linux Chrome binary, improve Wayland support, make it work like the web browser on Chrome OS, and ship it out as a Lacros Chrome binary. This allows the two binaries to be shared independently with some performance / resource cost. The API limit is semi-stable to begin with: it tolerates 1-2 version offset milestones. We can allow larger amounts of skew in the future.
However, I don’t expect the drop in performance to be very noticeable. As mentioned earlier, your Chromebook may be running Chrome OS 90 while your browser version is 91. This probably doesn’t matter to the end-user experience either, although you may have some new browser features before you get a Chrome OS update, which is good.
I’m sure people have thoughts and opinions on this approach from Google. So let’s hear them in the comments!