Fuchsia: Micro kernel written in C by Google
github.comLess technical article: https://www.fastcompany.com/3063006/why-on-earth-is-google-b... (Why On Earth Is Google Building A New Operating System From Scratch?).
Previous: https://news.ycombinator.com/item?id=12271354 (10 days ago, 168 comments)
One wonders if Fuchsia is one of those '20% time' projects, where a single (or group) of Googlers get to spend 20% of their work time on a personal side-project.
Even if not, I'm also thinking that if the roadmap here is for a drop-in replacement OS for the AI inside Google cars - don't they currently run a variant of Linux? Which as the fastcompany article says, isn't an RTOS.
We know Google has its own CPU made from scratch, now new OS... is Google creating new end-to-end solution for desktop/mobile? With completely new hardware and software on it?
> We know Google has its own CPU made from scratch, now new OS...
CPU from scratch?
Are you referring to the LLVM backend for a "new" lanai ISA that they contributed recently? That wasn't designed by Google (but an existing networking equipment manufacturer) and it wasn't a general purpose CPU (integer only, no hardware dividers, made for running a TCP/IP stack and not much else).
This new kernel/OS is a bit more interesting than that. This seems to be targeted at end user devices, runs on x86 and ARM and has got some kind of userspace with UI going on.
It would be interesting to know what this is targeted at.
Yes, I'm referring to what was described in this thread https://news.ycombinator.com/item?id=11072085
Yeah, I assumed you meant that.
That's not something that's intended for consumer hardware, it's a special purpose CPU used in high-end networking hardware. It's been around for a while, the only real news in that was the upstreaming of the LLVM backend code. It did cause some unwarranted rumors, though.
A quick peek at the actual code reveals that it's not a general purpose CPU. A few web searches will tell that it's a custom CPU used in Myricom's LANAI networking products. There's a much older GCC backend and other compiler tools for it available too.
How Fuchsia is compared to L4?
I guess that will reboot the micro kernel vs monolithic kernel discussion.
Shouldn't it be "Micro kernel written in C++" ?
Github says the code is 72.6% C and 19.3% C++.
Personally, I wouldn't call that 'definitely C' or 'definitely C++'
The Linux kernel, just for reference, is 95.7% C and only 2% C++
Most of the kernel code seems to be written in plain old C. I didn't come across any C++ code while digging around the kernel internals, but there's at least some C++ code in the userspace components.