Earlier quoted context omitted.
And for another beautiful convergence: nowadays most software development is done in languages that naturally express capability patterns, namely memory-safe languages. That is, if you have a reference to an object or value, you have the authority to invoke any of the methods on that object or call any functions that accept such a value. So object references are capabilities. Most such languages only go too far by al…
And as an even deeper correspondence: Once your language is memory-safe and capability-secure, you don't even need a kernel, let alone a microkernel. Rather than use hardware address spaces to separate and modularize components (the primary idea behind microkernels), you just pass capabilities around to your components. One component can't crash the whole system, because all it can access is the APIs you pass in to i…
Fuchsia: a new operating system
171–180 of 324 posts
Re: Fuchsia: a new operating system
#172Earlier quoted context omitted.
> Linux essentially sucked all the air out of the UNIX development space by killing off all the commercial UNIXes. Only because they have done a really good job.
Eh. The biggest thing Linux had going for it in terms of winning market share was running on commodity x86 parts in a time period when the commercial Unices weren't touching it, and x86 made really strong gains in beating everybody else at performance per dollar.
Re: Fuchsia: a new operating system
#173I don't understand what the value is in writing a new original microkernel from scratch in this day and age when sel4* is free and open source, performance tuned for 20ish years, is security hardened, and is provably correct for both security and features? This doesn't seem like a wise path to take. * See http://sel4.systems/
I know nothing about differences between fuchsia and sel4 but it would be rather strange if something as complicated as a OS kernel wouldn't have many parts where you have to make trade-offs. People compete fiercely in the field of todo applications, I don't see why there shouldn't be competition in microkernel space. Things changed in hardware in last 20 years and maybe we've learned something about software as well…
Re: Fuchsia: a new operating system
#174Earlier quoted context omitted.
I wouldn't use SEL4 as an argument. It is completely unreasonable to build a production kernel the way they did - it took them ages to get what they had. Google is probably looking to develop features/ move code a lot faster than is possible using their technique. Good coding practices take no time to implement, you learn it once and you write that way. It is not bullet proof, neither are capabilities. Still, at leas…
How about Muen separation kernel in SPARK Ada with automated prover eliminating many classes of undefined behavior? Or C with tools like Frama-C and Astree Analyzer (like SPARK for C)? C++ can't reach the safety of its competition due to more complexity and less tooling.
Re: Fuchsia: a new operating system
#175Earlier quoted context omitted.
Your guess is as good as mine, but there are some clues: https://techspecs.blog/blog/2017/2/14/googles-not-so-secret-... https://techspecs.blog/blog/2017/2/15/proof
Thanks, but would sooner recommend my third article: https://techspecs.blog/blog/2017/3/15/fuchsias-hypervisor .
https://fuchsia.googlesource.com/magenta/+show/master/docs/m...
Re: Fuchsia: a new operating system
#176Earlier quoted context omitted.
No, but pushing that agenda via architectural level changes is not exactly a way to get a good architecture.
An architecture is a structural design made to achieve certain goals. They just happen to have another goal to achieve.
Re: Fuchsia: a new operating system
#177Earlier quoted context omitted.
(disclaimer: I work on the Flutter team.) You can use Flutter today to write an app that runs on iOS and Android. :)
How is it in turns of speed? On one hand, the website says that it's compiled to native code (so it can be same speed/faster than Java), but on the other hand, it's based on a soft-type language, which makes optimization difficult (even with V8, JS is still slower than native code). Side question: I understand that Dart was soft-typed because it was supposed to replace/compile to JS, but what advantage does soft-type…
Re: Fuchsia: a new operating system
#178Earlier quoted context omitted.
> The biggest thing Linux had going for it in terms of winning market share was running on commodity x86 parts in a time period when the commercial Unices weren't touching it From the 1980s to 1993 there were: v7 ports: Microsoft Xenix (later became SCO), Venix, Coherent System III ports: PC/IX (later 386/ix) SVR3 ports: official Intel, ESIX from Everex SVR4 ports: Dell UNIX, Novell UnixWare, Microport
Strictly speaking, Coherent wasn't a V7 port – they wrote the code from scratch rather than using any of AT&T's code, and they never paid AT&T any Unix license fees. AT&T was suspicious, but even after a careful investigation by Dennis Ritchie himself, they couldn't prove any of their code had been copied. Given both the V7 source code and Coherent source code have now been released, you can compare them yourself and…
Re: Fuchsia: a new operating system
#179Earlier quoted context omitted.
It will go down the Windows model of having a stable kernel ABI (I assume). And suffer/enjoy the same trade-offs as Microsoft. That model is not perfect, but it worked for MS -- and Google is in a similar enough position.
Just because there's a stable API doesn't mean the manufacturers will actually upgrade. Unless there's some legal requirement, it's going to be the same fragmentation
Re: Fuchsia: a new operating system
#180Earlier quoted context omitted.
>They are drawing everything in userspace with fast graphics render... Dumb question, does this mean that it's limited to software rendering only? You need to go through the kernel to talk to the GPU, right?
In addition to the other comments, I would be excited about a graphics driver not being able to take out my system.
In the cases where it does, I imagine it's a situation where you're actually doing 3D-accelerated renders of the user interface. In which case, when the graphics subsystem craps out, hasn't your running system been rendered effectively unusable anyway?
I get that this is a nice idea in theory, but does it actually improve anything practical in practice?