3 ms·
The author seems to have rediscovered the advantages of managed operating systems. Here's a relevant article for those not familiar with the concept: http://r
by inoop 15y ago
The author seems to have rediscovered the advantages of managed operating systems.
Here's a relevant article for those not familiar with the concept:
http://research.microsoft.com/apps/pubs/?id=69431 http://research.microsoft.com/apps/pubs/?id=69431
- dchest 15y agoWhy "managed"? Doesn't process isolation also works in normal operating systems?
- deleted 15y ago[deleted]
- inoop 15y agoIn managed operating systems memory safety is guaranteed by the runtime. Typically a type- and memory safe intermediate language is used (CIL, JVM byte code) which is checked by the OS loader. This means that you don't need an MMU to implement process isolation, and threads and processes are basically the same thing. Some of the performance drawbacks of not being able to do pointer arithmetic (breaks memory safety) and having to do run-time checking (i.e. array bounds, type safety) are offset by the fact that context switches for processes become as cheap as for threads as you don't have to setup your TLB every time. In the OS mentioned in the article, Singularity, pretty much everything lives inside its own process, even dynamically loaded libraries. Processes communicate over type safe channels, and shared memory spaces can be created if processes need to share a lot of data.
- j_baker 15y agoI think the GP is getting at the author's discussions of the limitations of GC. In some managed OSes that have come out, GCs are built in. Thus, file and socket handles would be garbage collected.
- dchest 15y agoBut the author's proposal seem to be opposite to this: as he points out, it's what current "normal" OSes do: having a command to terminate processes (and thus, collect handles).