无忧启动论坛

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

[原创] gpt单硬盘win7x86差分vhd系统

[复制链接]
跳转到指定楼层
1#
发表于 2014-2-17 22:08:12 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 2012wuzhong 于 2014-2-17 22:09 编辑

首先声明:
1、bios启动而不是efi
2、只在虚拟机中实现,实体机未测试

大致原理:
bios启动->xorboot主引导(位于0号磁盘)->xorboot辅助代码(位于某2个分区之间)->grldr(位于系统分区)->g4d模拟primo内存盘mbr(位于系统分区前的63个扇区)->BOOTMGR启动系统分区中的差分vhd系统->primo驱动载入镜像文件生成primo内存盘->系统从primo内存盘中加载差分vhd系统(primo内存盘中使用junction链接,真正的文件位于系统分区)
参考:“基于primo差分vhd-win7-ramos v1.1”,http://user.qzone.qq.com/1543764927

主要步骤:
1、安装u盘vhd系统,安装primo内存盘,确保如下注册表操作:
rem 设置u盘启动标志
reg add hklm\system\ControlSet001\Control /v BootDriverFlags /t REG_DWORD /d 4 /f >nul 2>nul
reg add hklm\system\ControlSet001\Control\PnP /v PollBootPartitionTimeout /t REG_DWORD /d 30000 /f >nul 2>nul
rem 去除vhd固定占用最大空间
reg add hklm\system\ControlSet001\services\FsDepends\Parameters /v VirtualDiskExpandOnMount /t REG_DWORD /d 4 /f >nul 2>nul

2、用bootice查看系统分区(我的系统分区为2号分区)前63扇区位置是否未被占用,如果占用请使用dg软件进行分区调整。并记录起始扇区号,如467104,虚拟mbr的位置为467104-63=467041

3、用bootice查看是否存在某2个分区之间有间隙,用于存放xorboot辅助代码(可能需要100个以上的扇区)。如2号与3号之间留有2000个左右的扇区,存放位置应>467104+41942920,如42410032

4、布置xorboot,修改或添加菜单项:搜索并启动grldr,辅助扇区设为42410032

5、用bootice将内存盘mbr复制到系统分区前63个扇区处,如467041。修改终止位置信息为fe ff ff(位于01c3),修改总扇区数为ff ff ff ff(位于01ca)

6、primo内存盘中建立junction链接(g盘为内存盘,d盘为系统分区)
junction g:\vhdos d:\vhdos

7、修改menu.lst
2#
发表于 2014-2-18 23:49:54 | 只看该作者
江湖大佬的技术总是这么深奥而玄妙!
回复

使用道具 举报

3#
发表于 2014-2-19 12:20:20 | 只看该作者
bios+gpt方式意义不大:小于2TB的硬盘,一般没必要用GPT。大于2TB的硬盘,bios访问大多会出问题,所以大于2T的硬盘启动一般用EFI+GPT。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-15 04:08

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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