无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: pseudo
打印 上一主题 下一主题

0PE_NBv1.5.1(2014-04-05)测试

    [复制链接]
1#
发表于 2012-12-31 10:28:28 | 显示全部楼层
请教:
在 burg3.3.6.1 的哪个菜单中,加入什么内容,才能加载 0pe.iso ?
为了测试 g4d 0.4.6a。

[ 本帖最后由 2011yaya2007777 于 2012-12-31 11:37 编辑 ]
回复

使用道具 举报

2#
发表于 2012-12-31 13:26:14 | 显示全部楼层
我下载了 0PE_NBv1.4.4(2012-12-19),使用 UltraISO 以 u+ 的方式按装到 u 盘。其内置的 grldr 就是0.4.6a版本。经测试,并没有 报NO  GRLDR。

我下载了 buldr ,按装到硬盘,不知怎样加载 0pe.iso。

我再用2楼的放法,使用 ud 试一下。

[ 本帖最后由 2011yaya2007777 于 2012-12-31 13:32 编辑 ]
回复

使用道具 举报

3#
发表于 2012-12-31 17:55:08 | 显示全部楼层
经测试,0pe.iso 内的 grldr,版本无论是 0.4.5c 还是 0.4.6a ,正常情况下,均不会报 NO  GRLDR。

用本帖二楼 burg 菜单引导 0pe.iso,内部的 grldr 版本无论是 0.4.5c 还是 0.4.6a ,均报 NO  GRLDR。
原因是 burg 加载了 0pe.iso 的引导代码,即 grldr 的 0-3 扇区,grldr 调用 int13/4b01,要获取引导扇区起始逻辑扇区,加载后续内容,然而返回的是 0。也就是说,burg 没有为 int13/4b01 做铺垫。
回复

使用道具 举报

4#
发表于 2012-12-31 18:20:00 | 显示全部楼层
请使用以下 grldr_cd.bin 作为 iso 文件的引导代码(即将正式发布),解决以上问题:
使用时去掉“.gz”,它不是压缩文件,只是为了上传。此文件支持 iso9600 及 udf 格式。

[ 本帖最后由 2011yaya2007777 于 2012-12-31 18:24 编辑 ]

grldr_cd.bin.gz

512 Bytes, 下载次数: 16, 下载积分: 无忧币 -2

回复

使用道具 举报

5#
发表于 2013-1-1 09:12:14 | 显示全部楼层
抱歉!测试得不仔细,0.4.6a 的问题找到了。正在修改调试,请等待。
回复

使用道具 举报

6#
发表于 2014-4-25 08:40:21 | 显示全部楼层
grub4dos 0.4.6a 测试版,由于支持碎片仿真,变更了映射插槽结构,因此加载 xp 及 0pe 有时出错,也可能影响 SISO。现在正在修正中。
grub4dos允许的映射总个数很有限(好像只有8个?),SISO内部往往要做很多个map映射,有时8个不够用。

映射数提高到几个合适?
回复

使用道具 举报

7#
发表于 2014-5-2 18:12:30 | 显示全部楼层
本帖最后由 2011yaya2007777 于 2014-5-9 09:12 编辑

grub4dos 0.4.6a 映射插槽增加到 16 个时,用于 0PE 启动 XP 蓝屏 0x7f(0,0,0,0)。
查原因,是由于 0PE 增加映射时,没有使用原 int13 插槽位置,而是又挂了一个 int13 中断,从而形成 2 个插槽区,形成启动失败。

点评

不知道具体怎样简单地重现0x7f。 此pe只是用了些g4d脚本,挂int13中断之类的事情应该没有主动去做。 唯一的线索是: 有的地方(主要是出0pe彩色主菜单时)会进dos处理SRS驱动,然后通过grub.0pe再显示g4d菜单  详情 回复 发表于 2014-5-3 13:53
回复

使用道具 举报

8#
发表于 2014-5-3 18:06:57 | 显示全部楼层
本帖最后由 2011yaya2007777 于 2014-5-4 08:29 编辑

当前版本的插槽结构已经改回原始状态,只是增加了插槽数,使得 "$INT13SF"靠后了。

清楚了,挂了 2 个  int13 中断,不是 0PE 脚本产生的,而是由于低版本的 grldr 只认识 8 个插槽,大于的话,他认为没有挂载映射插槽,所以没有复制原映射内容,也没有卸载原 int13 中断。
即便是挂 2 个 int13 中断,对于 win7/8 都没有问题。但是对于 XP 有时可以,有时又不行。看来问题仍然在 G4D。

重现蓝屏的方法:
map /0pe.iso (0xff)
map --hook
chainloader (0xff)
boot

点评

之前这么试过,未能重现蓝屏,有空我再试试。  详情 回复 发表于 2014-5-7 12:59
回复

使用道具 举报

9#
发表于 2014-5-9 09:20:50 | 显示全部楼层
之前这么试过,未能重现蓝屏,有空我再试试。

谢谢 pseudo ,不用再测试了。现在明白了,是因为多次加载 grldr 或 grub.exe,由于版本不兼容,没有卸载前一个造成的。已经找到解决办法。

点评

yaya大辛苦了  发表于 2014-5-9 21:27
回复

使用道具 举报

10#
发表于 2014-7-9 20:08:38 | 显示全部楼层
MKGRUB.BAT打了一个补丁,即使变更 grldr ,也不需要改变 grub.0pe。

MKGRUB.rar

939 Bytes, 下载次数: 42, 下载积分: 无忧币 -2

点评

太好了!  详情 回复 发表于 2014-7-9 21:36
回复

使用道具 举报

11#
发表于 2017-1-22 09:25:20 | 显示全部楼层
请教 pseudo :
1.  M1.LST 中,“map --status=0xff > nul || set titlexp=未部署”  是判断 0xff 驱动器是否存在,然后确定下一步怎么办吗?
似乎 grldr 不能做此判断,它限定驱动器号为 0-9。我准备修正它,是否应当?

2. “map --mem (md)0x18000+%sb%,%s% (11)” 如果不使用变量,似乎可以写成 map --mem (md)0x18000+0x400,20 (11)
这是执行什么?,%s%代表什么?似乎 (md)0x18000+0x400 后面不能跟随逗号和参数吧?

3. 什么时候使用 --mem=xxx 指定映射内存基地址?

点评

不好意思,过年回家这几天没上机,现在才看到。 谢谢不点大人详细介绍。 1、类似 map --status=0xff > nul && if not exist (0xff)/0PE/XP/NATIVE.LZMA set titlexp=未部署 这样的句子,是检测 (0xff)盘上是否有  详情 回复 发表于 2017-1-26 21:10
@yaya 我来答复,但脑子不好使,不一定都准确,仅供参考。 1、map --status=0xff 似乎是 chenall 增添的功能,而且文档没有公开。它的作用好像是,确定内存盘 (0xff) 的起始内存地址。简单说,是 chenall 开发  详情 回复 发表于 2017-1-22 11:16
回复

使用道具 举报

12#
发表于 2017-1-22 12:09:03 | 显示全部楼层
本帖最后由 2011yaya2007777 于 2017-1-22 12:16 编辑

谢谢不点这么详尽的解释。
1、map --status=0xff
现在代码只开放驱动器号 0-9,对 0xff 不会相应。需要修改代码。

2、(md)0x18000+0x400,20
我在命令行执行  (md)0x18000+0x400,20  (0) 返回错误13.

3、讨论一下 “--mem=N”
情况一明白了。
关于情况二(1):现在好多电脑,可用内存分为若干段,比如大于2G的有3段。如果要实现”用一个内存盘来占用(即,消耗掉)高端的内存,让操作系统只能见到 2G 或更少的可用内存。“,则是否应当同时用另外的其他内存盘,来占用其他段的更高端的内存?这样是有点复杂。
对于这种情况,似乎是最后对内存区域进行设置,不会再考虑对内存分配、释放。如果这样,则简单多了。

关于情况二(2):现在不能指定低于map_mem_min的内存区域。如果”想临时使用某个低端的内存区域来作为内存盘,用完后立即撤掉(unmap)这个内存盘“的话,那就得临时取消map_mem_min限制,或者说,允许他使用该内存地址,但是不在内存分配表记录,就像对待 rd 盘一样,可能会被下一分配内存覆盖。

点评

(md)0x18000+0x400,20 是合法的可执行文件吗?如果不是,当然要报错了。注意,该文件有 20 个字节,只有 20 个字节。但它有 0x400 个扇区。这么多的扇区里面,只有开头的 20 个字节是文件的内容。 注意!长度的单  详情 回复 发表于 2017-1-22 17:35
回复

使用道具 举报

13#
发表于 2017-1-22 19:26:45 | 显示全部楼层
明白了,谢谢.
回复

使用道具 举报

14#
发表于 2017-1-24 07:58:57 | 显示全部楼层
在命令行执行  (md)0x18000+0x40,0x7f00  (0)成功。
不过我觉得这种方法适用于 cat 等命令。对于 map ,虽然他返回了准确的文件尺寸,但是内存映射时做处理,最起码扇区对齐,甚至4KB对齐,所以没有实际意义。
回复

使用道具 举报

15#
发表于 2018-1-16 12:31:14 来自手机 | 显示全部楼层
你使用的是2017.6.25版本

点评

自动更新时可能只更新了ud区的grldr.而0pe.iso内的grldr并没有更新,两个grldr不一样,造成启动出错。 手动更新后,再重新生成新grldr和0pe.iso,启动正常了。 感谢大师。  详情 回复 发表于 2018-1-16 14:14
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-16 18:39

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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