阅读:1387回复:2
请教Virtuozzo的实现原理
最近比较迷这个东西(www.parallels.com/en/products/virtuozzo)。据我所知,这个是唯一一个在NT内核上实现操作系统级虚拟机的产品。可惜就是太贵了。有谁了解在NT内核上虚拟多个操作系统的内部原理吗?
我现在可以理解的是应用程序级别的虚拟化,直接拦截对ntdll.dll的调用就行了。但是这个玩意的神奇之处在于每个虚拟机都有自己的用户,自己的admin,自己的rdp端口。我的猜测是它给每个虚拟机启动了一个自己的smss进程。甚至在nt startup process的更早阶段就下手了,可能是加载驱动程序那会。而且它确实是给guest操作系统写了特殊的驱动的(甚至连系统总线的驱动都是自己的)。由于在下没有内核开发的经验,只能凭借想象来猜测。哪位高手能够指点一下迷津? |
|
沙发#
发布于:2008-09-01 02:48
有IDA在手~~~
|
|
|
板凳#
发布于:2008-09-12 16:34
VT-X?
|
|
|