The Chrome team has spent quite a lot of time replacing standard Linux parts

Mar 21, 2012 14:22 GMT  ·  By

Chrome OS may not look like it, but it started out as Linux. In fact, under the hood, it's still running on some standard Linux components. Google started out with a standard Linux desktop set up and started stripping away anything that wasn't explicitly needed.

This still left a bunch of libraries and software, from the low-level stuff, the kernel, the C/C++ libraries and so on, all the way up to the window manager.

Still, Google continued to replace the standard components with its own or remove the need for those components. For example, it's now working on the Aura window manager and UI framework.

It's a cross-platform framework and it will be hardware accelerated. In Chrome OS, it will mean that Google will finally be able to get rid of GTK+ and the window manager.

But Google is not stopping there, Google is working on replacing the sound components as well, it just landed a patch that enables CRAS, a Chrome OS specific audio library, in Chromium OS.

Chrome OS has relied on the true and tested ALSA, the Advanced Linux Sound Architecture, so far. It's not clear why Google wanted to create its own sound server and not continue to rely on ALSA alone.

Granted, ALSA is rather low-level and most major Linux desktop distributions use the PulseAudio sound server on top of ALSA. That's probably what Google is doing in Chrome OS, it created CRAS to provide an abstraction layer for audio.

Google actually hints at that in the patch description, "Instead of talking to ALSA in dB we talk to the new audio server (CRAS) in percent. CRAS will contain a board-specific volume curve for mapping percent to dB."

But this still leaves the question of why Google felt the need to create a sound server from scratch rather than use PulseAudio. There may be a technical reason, but Google engineers have been known to reinvent the wheel, just because they can.