> Like, real Linux, not some weird virtualized or translated environment.
Ah, no. It is very much specifically in a container inside a VM. Now, full credit where it's due: You're unlikely to notice. Performance is good, they've done work integrating it (filesystem integration, forwarding windows to the host display servers through Sommelier). But native it is not.
This is correct, but also a lot of these machines can native boot Linux if you enable developer mode. It's not the most frictionless experience in the world, but it can work pretty well.
Oh sure; x86 Chromebooks that support https://mrchromebox.tech firmware upgrades are actually some of the nicest Linux laptops on the market once they've been unlocked and flashed. I just want to call out that the author is precisely backwards and Crostini is a VM and a container and not bare Linux on hardware.
Edit: There's also Crouton, for an intermediate option that does need developer mode.
I didn't know about Mr. Chromebox. Very cool. You can also press CTRL+D at boot when you have dev mode enabled to boot an OS from external storage. This is viable on ARM architectures with, for example, Arch Linux ARM.
You can, but it's loud, freezes boot for 30s or until you hit the key combo, and if you hit the wrong key it wipes your device. Developer mode is a decent escape hatch but I wouldn't want to use it in "normal" use.
Yes, this is what I meant by "not the most frictionless experience."
However in my mind it was all paid back to me 100 fold when a customs officer at an international border tried to open my laptop and examine it, but was subjected to the sonic-boom beeping of dev mode boot timeout.
What happened next? Did they say log in? Don't some countries, maybe the us say they will keep your laptop for "study" if you don't log in and let them snoop?
Sure, but it became a waste of time once they stopped allowing you to upgrade the storage - this used to be the best path to a cheap linux laptop. Not any more.
Some devices do have soldered down eMMC storage, but others have M.2 slots for NVMe storage. The later can be easily upgraded. Some of the newer AMD Chromebooks have an eMMC to NVMe bridge in M.2 form factor, so these can be upgraded as well.
Seems like the FAQ makes a distinction between running the default container and running custom containers. From the description it seems like when using the default terminal app it is a container, not a VM, and when running custom containers it is in a VM: https://chromeos.dev/en/linux/linux-on-chromeos-faq#am-i-run...
ChromeOS forces an Google-dictated immutable VM image ("termina"). Inside this VM, in LXD containers, you get to run whatever you want. You can have multiple VMs, but they're all the termina image. You can get a shell in the termina VM, but it's pretty pointless, and all useful things are inside the LXD container.
When the hardware supports it (most often true these days), you can run nested virtualization: KVM (inside LXD) inside KVM. That will get you an arbitrary VM image.
They might relax the "Termina VMs only" policy later, but that depends on a bunch more security spending.
WSL 1 was ABI emulation, which I agree is different. But WSL 2 is Linux in a VM, which is actually one layer less than this, because this is Linux in a container in a VM.
Oh dear, that is even more locked down than many expected and much more distant from the typical Linux distro that the many Linux Desktop fans have been used to.
Either way, it doesn't matter, I'd expect whatever is running in ChromeOS (Linux Kernel) to be replaced by Fuchsia (Zircon kernel) underneath. They will more likely keep the 'ChromeOS' name to limit the confusion and that will be what these devices like that $100 Chromebook will be running in the future.
So it will be even more locked down and tightly controlled.
> They will more likely keep the 'ChromeOS' name to limit the confusion...
I mean, that would make sense. But being Google, I think they're likely to name it something different that nobody recognizes. And then change that name to something similar enough to ChromeOS to cause confusion, since they're actually separate and incompatible products.
Sigh. Sorry, I used to work for Google, on chat and video chat products.
Microkernels have always been slower than monolithic kernels, never faster.
There is zero chance that Zircon will be faster than Linux.
The classic example is Mach from CMU:
"When Mach was first being seriously used in the 2.x versions, performance was slower than traditional monolithic operating systems, perhaps as much as 25%... When Mach 3 attempted to move most of the operating system into user-space, the overhead became higher still: benchmarks between Mach and Ultrix on a MIPS R3000 showed a performance hit as great as 67% on some workloads."
Ah, no. It is very much specifically in a container inside a VM. Now, full credit where it's due: You're unlikely to notice. Performance is good, they've done work integrating it (filesystem integration, forwarding windows to the host display servers through Sommelier). But native it is not.
(Details: https://chromium.googlesource.com/chromiumos/docs/+/HEAD/con...)
EDIT: I guess I should mention; this does come up occasionally in ways that can actually matter. IIRC I got bit by the (default?) container setup not allowing you to ptrace, you can't mount filesystems or loop devices (https://chromium.googlesource.com/chromiumos/docs/+/HEAD/con...), and you can't touch the kernel or hardware (https://chromium.googlesource.com/chromiumos/docs/+/HEAD/con... and https://chromium.googlesource.com/chromiumos/docs/+/HEAD/con... ).