6

I wonder in which language Chromium OS is written.I guess they have used C/C++ but did they put something different (Go)?

Did they used Assembly for low level code as I know that they had to change some things to make booting a lot faster?

Parag Jadhav
  • 1,853
  • 2
  • 24
  • 41
Ethan C.
  • 63
  • 1
  • 3

5 Answers5

7

Poke around /etc/ in Chromium, and you'll quickly see it is mostly Ubuntu; Google contracted with Canonical to do the majority of the work.

It boots quickly because it doesn't do much. :) I'm sure there's more to it than that, but restricting what the system can do is a great way to reduce the boot speed problem to something more tractable.

sarnold
  • 102,305
  • 22
  • 181
  • 238
  • 4
    this is old, but this answer is 100% wrong. Google has never contracted w/Canonical wrt Chrome OS, nor has any released version of Chrome OS ever been based on Ubuntu. every release has always been based on Gentoo, and if you did poke around `/etc/` this would be quickly obvious. plus the shell prompt uses Gentoo colorization by default. just [search the official Chromium OS wiki](https://dev.chromium.org/system/app/pages/search?scope=search-site&q=gentoo) for "Gentoo" to see all the hits. – Mike Frysinger Mar 05 '16 at 20:42
  • @MikeFrysinger, while Chrome OS is _today_ based on Gentoo, it was based on Ubuntu six years ago and Google contracted with Canonical: [we should declare that Canonical is contributing engineering to Google under contract](http://blog.canonical.com/?p=294). Who knows what it'll be based on in another six years? (Incidentally, while I'm today employed by Canonical, that wasn't the case in 2010. What a small world..) – sarnold Mar 10 '16 at 03:48
  • Chromium OS has been based on Gentoo since at least [Feb 2010](https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/6bddf952dd03dc40049132e075b3d8ac510cf5e2) -- over 6 years ago. this question was posted Sep 2010, long after Ubuntu was dropped. the first device (CR-48) was released in Jun 2011. i don't know the background behind that post, but it's dated Nov 2009, and Ubuntu was already on the way out. Google has long had an internal distro based on Ubuntu w/support contracts (which is why Ubuntu was first used). can pretty much guarantee CrOS is never going back. – Mike Frysinger Mar 10 '16 at 04:00
  • Its actually Gentoo. Just see [here](https://www.chromium.org/chromium-os/how-tos-and-troubleshooting/chromiumos-architecture-porting-guide/#existing-gentoo-support). – ClaytonTDM Oct 05 '22 at 01:56
7

Asking what language is ChromiumOS is written is ambiguous. Chromium OS consists of a variety of components coded in different languages. The kernel is a Linux kernel, therefore it's primarily written in C and some assembly. Chromium itself is written primarily in C++, with a bit of C scattered around. There are also a number of other components, such as X and the window manager, and shell scripts, and python scripts, and what not, which are written in a variety of languages.

William Chan
  • 758
  • 7
  • 8
2

Chromium OS is based on Gentoo and uses a wide variety of languages to build. the vast majority to build Chromium OS are:

  • Python
  • shell (so bash, sed, awk, etc...)
  • C
  • C++
  • Assembly
  • Perl (for autotools and such)

at runtime, Chromium OS uses C/C++/Assembly the vast majority of the time, and once the browser is up, anything Chrome itself supports (so JavaScript is used a lot). there is some shell code with low level system boot up/maintenance, but there is no python or any other interpreted language on the system.

Mike Frysinger
  • 2,827
  • 1
  • 21
  • 26
1

If you mean Kernel and Libraries, they are written in C and Assembly.

Cipi
  • 11,055
  • 9
  • 47
  • 60
1

It's not really written in anything. It's yet another Linux distribution which packages a whole bunch of pre-exisiting programs, every single one developed independently and written in whichever language its individual author prefers.

It's really just YAUD (yet another Ubuntu derivative).

Jörg W Mittag
  • 363,080
  • 75
  • 446
  • 653