3 ms·
This is all too primitive. If we're heading in the direction that the GP describes, it's probably because some people have realized a long time ago that Alan Ka
by gngeal 13y ago
This is all too primitive. If we're heading in the direction that the GP describes, it's probably because some people have realized a long time ago that Alan Kay was actually making sense when he was talking about the object-based computational model as being something like "small computers all the way down". If your application is a set of objects implementing the functionality by passing appropriate messages between those objects, and the OS is another set of objects, providing all the necessary interfaces to applications in form of capability-exposing objects, then everything is virtualized by definition. Or, in other words, in such a system, you can virtualize (in the classical sense) as much or as little as possible.
Need two versions of the same library for two different applications? No problem, because each app gets its own inferface.
One app needs to accesses a physical block device and another a virtual one? No problem, because each app gets its own inferface.
Is the capability required by the app deployed on another machine and you want to expose it to the application transparently? No problem, because each app gets its own inferface.
And if the current hardware isn't amenable to running such systems with ease, well, that might have something to do with the fact that everything we're running has its roots in the 1980s. The unprecedented success of the PC revolution has essentially frozen all development of substantially new systems.