4 ms·
You could argue that hypervisor is a special type of OS. Compared to a "traditional OS": - hypervisor is much smaller, and as a result reduces security risk
by shykes 11y ago
You could argue that hypervisor is a special type of OS.
Compared to a "traditional OS":
- hypervisor is much smaller, and as a result reduces security risk
- hypervisor is younger and has less compatibility burden, so typically carries less technical debt, can improve faster.
- hypervisor exposes lower-level interface, so more work is left to the app developer (or the build toolchain, which is where unikernels come in).
- hypervisor has no support for legacy APIs such as posix or win32. As a result almost no applications target it, which makes it a hidden piece of plumbing and makes it harder to replace the traditional OS, even when it's redundant from a strictly technical point of view.
- rumcajz 11y agoGood point. The advantage that I am looking to get from unikernels, one that no one seems to mention, is that the whole area of functionality that's above hypervisor but below posix/win32 is suddenly open to play with for application developers.
- shykes 11y agoThat's correct, and one reason this is relevant for Docker (which is very developer-oriented). You should expect Docker to give applications much more control over their own infrastructure.
- pjmlp 11y agoUnikernels follow an old approach from high level languages in the 60, 70 and early 80's, with their full stack approach. Think Burroughs, Lisp Machines, Mesa/Cedar, Lillith, Spin OS, Oberon,... Basically the language runtime is the OS and access to lower layers is done via the type system.
- silentOpen 11y ago> An operating system is a collection of things that don't fit into a language. There shouldn't be one. ~ Daniel Ingalls, co-creator of Smalltalk http://web.archive.org/web/20070213165045/users.ipa.net/%7Edwighth/smalltalk/byte_aug81/design_principles_behind_smalltalk.html http://web.archive.org/web/20070213165045/users.ipa.net/%7Ed...
- pjmlp 11y agoYep. C and C++ are the outliers here. Although C++ is moving into a richer runtime, thus increasing the likelihood to write OS independent code without relying on third party libraries. Even C, if POSIX had been part of ANSI C, would fall into this scenario. In a way, UNIX can be seen as C's original runtime.
- cbd1984 11y ago> hypervisor is younger Younger than what? VM dates to the first half of the 1960s. The concept of the OS is older, but most OSes in active use now aren't.
- shykes 11y agoTo be more specific: the current active fleet of hypervisors (xen, vmware..) is much younger on average than the current active fleet of traditional operating systems (bsd/linux/solaris). By "younger" I mean the source code was written, and the interfaces defined, much more recently.