无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 4928|回复: 8
打印 上一主题 下一主题

VHD启动的实现是否依赖NT内核?

[复制链接]
跳转到指定楼层
1#
发表于 2011-8-11 20:34:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
粗略的看了几篇文章,google了一下,发现有人尝试用vhd装GUN/linux成功的,虽然修改了内核。
因为不了解原理,所以有点疑问。
从vhd启动是否要依赖一个已经启动了的NT内核?

个人感觉,vhd启动并不是什么很复杂的东西。vhd在这里可以看作是一个文件系统,bootloader mount之并载入里面的内核,然后该怎么样怎么样,grub已经这么干了好多年了。
但win下面是这样的么?

还是这个东西不仅仅依靠一个认识vhd文件系统的bootloader,还需要一个运行着的NT内核或者其他东西?
看MS喊什么虚拟化喊得多了,现在什么都搞不懂,不敢乱想。

我想这个问题明确了以后,有没有可能利用一下,用这个机制去mount任意介质上面的ISO或者其他镜像,然后用这个镜像启动?似乎grub4dos之类的东西现在还需要把iso载入到RAM里面才能干这种事。如果有其他途径能实现直接从介质中挂载,那光驱就可以老去了。
2#
 楼主| 发表于 2011-8-11 21:13:10 | 只看该作者
占楼说明一下。
看到有人把xp装vhd里面似乎颇费周章,linux内核也要修改才能启动,显然这个东西跟虚拟机是有区别的。
普通的linux启动流程是自检后载入bootloader,bootloader简单的挂载自己认识的文件系统到里面找stage2(grub),找到了以后再找配置文件,然后按照配置文件载入kernel,下来就交给kernel了。
这个vhd启动似乎不是这样。如果是,或者类似的话,内核应该是不需要什么很特别的设置的,因为总体流程不变么,载入一个特殊文件系统里面的内核而已。现在显然不是这样。如果不是的话,那就应该有个东西运行在win的bootloader和系统内核之间了,弄不好就是MS天天在喊的“虚拟化XX”的东西,某种控制器吧。这种控制器应该需要依赖某种硬件技术吧,比如vt、amd-v之类的东西才能运行?
我想还是有办法验证的。反正这个VHD可以用VPC载入。用VPC创建一个空盘,里面的MBR、分区表用diskgen之类的工具写,或者干脆写grub进去,然后设置让NT的bootloader从这个VHD启动,看看能不能看到咱自己装进去的bootmanager。
可以的话就有的倒腾了,可以很好玩。
回复

使用道具 举报

3#
发表于 2011-8-12 07:16:32 | 只看该作者
好像思路有点问题。。。
回复

使用道具 举报

4#
发表于 2011-8-12 10:30:33 | 只看该作者
vhd启动需要驱动,nt内核需要nt平台驱动,linux内核需要直接重新编译内核嵌入vhd驱动

只有dos/win9x vhd启动不需要其他驱动
回复

使用道具 举报

5#
 楼主| 发表于 2011-8-12 12:46:04 | 只看该作者
不明白楼上的意思。
定义一下吧,借用虚拟机的名词来描述:
存储着VHD文件的主机及其操作系统称为HOST
VHD文件中装载着的操作系统称为GUEST

我想问的是,HOST加载VHD并且启动VHD里面的GUEST的时候,是否需要HOST上有一个运行着的NT内核?

GUEST需要一些设置这个我没有疑问,在虚拟机里面运行的系统还要带虚拟机的驱动呢。关键是HOST上面,有没有什么东西在支持GUEST的内核在运行。如果HOST上面只是运行一下HOST的bootloader,挂上VHD以后剩下的东西和从磁盘启动操作系统一样,那这个bootloader就好玩了,可以做很多事情了。
如果不是这么简单,HOST上面还有某种“虚拟化管理器”、甚至是一个NT内核在运行,VHD里面的GUEST借助于这个东西提供的环境来运行,那估计就不是太好玩了,倒腾的过程会处处受到MS的限制。

不过也就是这么一想,倒腾的空间主要取决于HOST怎么对待VHD,是按照一个文件系统对待,还是按照一个磁盘来对待。如果只是一个文件系统,那grub早就做到了,不新鲜;如果是按照磁盘来对待的,能链式引导运行VHD里面的MBR,那就很有意思,非常有意思了。

另外问一下,从VHD启动的GUEST的运行效率跟直接启动的有差别么?多大差别?
回复

使用道具 举报

6#
发表于 2011-8-14 14:26:13 | 只看该作者
应该只是虚拟磁盘驱动而已,需要引导器的支持,不依赖于其他系统。<br /><br />楼主的意思应该是想问装个vhd系统是否需要先装其他系统吧?<br /><br />不需要的,你只需要一个引导器,比如bootmgr就可以了 ,用bootmgr直接引导装有win7的vhd系统,或者用ntldr引导vboot启动装有xp的vhd系统。<br /><br /><br />vhd系统真的非常实用,如果你愿意你可以很轻松的一口气装无数个xp系统,互不干扰,不麻烦,不费事。

装 xp费周章是因为微软的bootmgr引导vhd系统(叫什么 native boot)仅支持把win7系统放在vhd里面。而我们国产的vboot却支持把xp放在vhd里面,不过vboot是商业软件有时间限制,所以就涉及到一些破解啊之类的东西。装linux进vhd就更不用说了,毕竟vboot虽然很好用,但还不算完全成熟吧


性能的差别个人认为应该只是磁盘性能差别,其他cpu或显卡,因为vhd系统使用的是真实的硬件,所以差别应该不大的。网上有win7 vhd系统的性能评测,可以搜搜

[ 本帖最后由 terryxuwen 于 2011-8-14 14:33 编辑 ]
回复

使用道具 举报

7#
发表于 2011-8-14 14:41:12 | 只看该作者
另外,这玩意不能叫虚拟机,顶多是虚拟磁盘,所以用host,guest的说法应该不准确。
楼主没看到有些人把vhd都放到u盘里面去了么。如果跟其他系统有关系那放得进去么?
回复

使用道具 举报

8#
发表于 2011-8-14 14:48:27 | 只看该作者
再另外,现在哥基本不用光驱。把深度ghost版的xp系统灌入到vhd文件里面,接着把vboot破解驱动替换vhd系统里面的原版驱动,再拷贝一下vboot目录。就是一个vhd文件和vboot再u盘上,拿着u盘到处给各种机器装系统~~~
回复

使用道具 举报

9#
发表于 2011-8-14 19:41:37 | 只看该作者
原帖由 terryxuwen 于 2011-8-14 14:48 发表
再另外,现在哥基本不用光驱。把深度ghost版的xp系统灌入到vhd文件里面,接着把vboot破解驱动替换vhd系统里面的原版驱动,再拷贝一下vboot目录。就是一个vhd文件和vboot再u盘上,拿着u盘到处给各种机器装系统~~~

这么厉害啊 。具体细节怎么样做。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-30 23:21

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表