4 ms·
I wonder if this applies to Windows at all (and in which parts). Windows Longhorn (using this name for the two years of effectively scrapped work on Vista) was
by inlined 7y ago
I wonder if this applies to Windows at all (and in which parts). Windows Longhorn (using this name for the two years of effectively scrapped work on Vista) was written in c# but abandoned. The best reason I’ve heard is that the GC wasn’t suitable for an OS, especially in edge cases. For example, the C++ code I wrote at Microsoft had to gracefully handle an out of memory situation after any alloc (including setting the STL to not throw exceptions). An out of memory exception in C# can be catastrophic if the handler had to JIT in low level OS code.
- giancarlostoro 7y agoThere's also Midori written in a spin off language of C# by Microsoft: https://en.wikipedia.org/wiki/Midori_(operating_system) https://en.wikipedia.org/wiki/Midori_(operating_system)
- inlined 7y agoI was fascinated with Midori as a Microsoft employee but nearly 10 years later I’ve resigned that it will probably be forever a research toy and not be subject to the same scrutiny as Windows.
- muricula 7y agoMidori was laid to rest a few years ago. Production OS kernels in GC'd languages remain a pipe dream.
- inlined 7y agoI’m still holding out for Fuchsia, which is partially built in Go and Rust: https://en.m.wikipedia.org/wiki/Google_Fuchsia https://en.m.wikipedia.org/wiki/Google_Fuchsia
- giancarlostoro 7y agoI think that'd be the sweet spot. Do lower level portions in something like Rust or C, but the environment can be in Go, D, etc. Although a D OS could potentially be all D. Was this not what the Inferno OS did anyway? They used C for the core, and then made Inferno for other parts.
- muricula 7y agoLast I checked all the kernel bits were in C++.
- pjmlp 7y agoThe users of Lisp Machines, Oberon Workstations, Astrobe boards and Real Time Java are certainly production kernels in GC languages.
- muricula 7y agoMost of those things can only be found in museums.
- yawaramin 7y agoMirage OS would like to have a word with you https://mirage.io/ https://mirage.io/
- muricula 7y agoUnikernels are mostly a mirage these days. I also have serious security concerns about the entire OS being in one address space.
- yawaramin 7y agoUnikernels are more a glimpse of the future than a mirage, they're maybe not ready for general-purpose use but they are certainly quite real.