无忧启动论坛

 找回密码
 注册
搜索
WEPE笔记本电脑手机维修小包 IT发烧友的必备工具最纯净的「微PE装机优盘」UEPON大师作品卡瑞飞系统和装机二合一超级U盘
无忧启动论坛唯一网址:bbs.wuyou.net系统gho:最纯净好用系统下载站广告联系 QQ:184822951 微信:wuyouceo
楼主: 不点

menu.wee 的一点微调,chenall 留意一下

  [复制链接]
发表于 2016-1-29 20:11:05 | 显示全部楼层
不点 发表于 2016-1-29 18:04
我再解释一下如下菜单的执行细节:

find --set-root /g4d/pwins

刚才,进入wee命令行进行了测试:
用root (hd0,0)命令,出现unknown的提示,该分区是esp分区,看来要对wee修正后才能较好地支持gpt分区硬盘。

点评

你调试得很好。你确定 root 命令显示的分区是 esp 分区吗?它的起始扇区号和分区总扇区数都显示得正确吗? 如果都正确,那就说明是 wee 的 bug,即,wee 无法识别这个分区的文件系统。那就只好让 chenall 来修复  详情 回复 发表于 2016-1-29 21:20
回复

使用道具 举报

 楼主| 发表于 2016-1-29 21:20:34 | 显示全部楼层
qj_tzy 发表于 2016-1-29 20:11
刚才,进入wee命令行进行了测试:
用root (hd0,0)命令,出现unknown的提示,该分区是esp分区,看来要对w ...

你调试得很好。你确定 root 命令显示的分区是 esp 分区吗?它的起始扇区号和分区总扇区数都显示得正确吗?

如果都正确,那就说明是 wee 的 bug,即,wee 无法识别这个分区的文件系统。那就只好让 chenall 来修复 bug 了。

如果显示的分区起始扇区号和分区长度不正确,那说明 (hd0,0) 不一定是 ESP 分区,你可以再试试 (hd0,1) 、(hd0,2) 等等。

点评

1.确定显示的分区是ESP分区,用bootice显示的起始扇区号和分区总扇区数(用winhex显示的两分区的起始位置相减与此扇数总数相等 )应该是正确的,因总扇区数*512/1024/1024/1024,与显示的容量相同。 2.我把g4d移  详情 回复 发表于 2016-1-29 22:39
回复

使用道具 举报

发表于 2016-1-29 22:39:07 | 显示全部楼层
本帖最后由 qj_tzy 于 2016-1-29 23:07 编辑
不点 发表于 2016-1-29 21:20
你调试得很好。你确定 root 命令显示的分区是 esp 分区吗?它的起始扇区号和分区总扇区数都显示得正确吗 ...


1.确定显示的分区是ESP分区,用bootice显示的起始扇区号和分区总扇区数(用winhex显示的两分区的起始位置相减与此扇数总数相等 )应该是正确的,因总扇区数*512/1024/1024/1024,与显示的分区容量相同。

2.我把g4d移动到(hd0,1)分区测试:root (hd0,1)无错误提示,但运行/g4d/grldr,出现wee 17 >

点评

帮不上你。等着 chenall 处理吧。  详情 回复 发表于 2016-1-29 22:58
回复

使用道具 举报

 楼主| 发表于 2016-1-29 22:58:46 | 显示全部楼层
qj_tzy 发表于 2016-1-29 22:39
1.确定显示的分区是ESP分区,用bootice显示的起始扇区号和分区总扇区数(用winhex显示的两分区的起始位 ...

帮不上你。等着 chenall 处理吧。

点评

我试了一下,测试是双硬盘其中一个是GPT分区,一个是MBR的 启动WEE63直接进入按C键进入命令行 测试访问GPT分区正常,再执行find命令 再次访问GPT磁盘出现异常了,被识别为MBR分区了. 我看了代码没有找到原因  详情 回复 发表于 2016-1-30 13:37
您的回复,让我明白了一些东西,非常感谢!  详情 回复 发表于 2016-1-29 23:08
回复

使用道具 举报

发表于 2016-1-29 23:08:28 | 显示全部楼层
本帖最后由 qj_tzy 于 2016-1-29 23:10 编辑
不点 发表于 2016-1-29 22:58
帮不上你。等着 chenall 处理吧。


您的回复,让我明白了一些东西,非常感谢!

同时,也非常希望 chenall 能出手解决这一问题。
回复

使用道具 举报

发表于 2016-1-30 13:37:29 | 显示全部楼层
不点 发表于 2016-1-29 22:58
帮不上你。等着 chenall 处理吧。

我试了一下,测试是双硬盘其中一个是GPT分区,一个是MBR的

启动WEE63直接进入按C键进入命令行

测试访问GPT分区正常,再执行find命令

再次访问GPT磁盘出现异常了,被识别为MBR分区了.

我看了代码没有找到原因,通过HEXDUMP查看0x3e8000可以看到分区表不对.
看0x3e9000是0扇区的内容(正常情况下应该是GPT的分区表内容).

也不知是哪里错了,

如果是单单一个GPT硬盘没发现问题..


点评

有没有试试,不执行 find 命令,是否一切正常? 试试手动执行 root 命令切换到 hd1,然后再用 root 命令切换回到 hd0,这样 gpt 是否也会乱掉了? 测试的目的,暴露问题,缩小范围。  详情 回复 发表于 2016-1-30 14:13
回复

使用道具 举报

 楼主| 发表于 2016-1-30 14:13:40 | 显示全部楼层
chenall 发表于 2016-1-30 13:37
我试了一下,测试是双硬盘其中一个是GPT分区,一个是MBR的

启动WEE63直接进入按C键进入命令行

有没有试试,不执行 find 命令,是否一切正常?

试试手动执行 root 命令切换到 hd1,然后再用 root 命令切换回到 hd0,这样 gpt 是否也会乱掉了?

测试的目的,暴露问题,缩小范围。

点评

就是只要root (hd1) 再root (hd0)切换一下就不行了.  详情 回复 发表于 2016-1-30 14:33
回复

使用道具 举报

发表于 2016-1-30 14:33:38 | 显示全部楼层
不点 发表于 2016-1-30 14:13
有没有试试,不执行 find 命令,是否一切正常?

试试手动执行 root 命令切换到 hd1,然后再用 root 命 ...


就是只要root hd1 再root hd0切换一下就不行了.

点评

看了 list partitions 函数的代码,但无法准确地确定哪些是你改动的。 仅凭直觉,以及纯代码方面的逻辑关系,感觉上述代码可能有问题。 当 current slice 被设定为 0xff 即 -1 后,第一个 cmp 的结果将总是  详情 回复 发表于 2016-1-30 16:31
回复

使用道具 举报

 楼主| 发表于 2016-1-30 16:31:25 | 显示全部楼层
chenall 发表于 2016-1-30 14:33
就是只要root hd1 再root hd0切换一下就不行了.
  1.         cmpl        $0xff, ABS(EXT_C(current_slice))
  2.         je        100f
  3.         movl        $0xFF, ABS(EXT_C(current_slice))
  4.         cmpb        $0xee, 4(%esi)
  5.         jne        100f
复制代码

看了 list partitions 函数的代码,但无法准确地确定哪些是你改动的。

仅凭直觉,以及纯代码方面的逻辑关系,感觉上述代码可能有问题。

当 current slice 被设定为 0xff 即 -1 后,第一个 cmp 的结果将总是: 相等,

于是总是跳转到 100 标号的 mbr 老代码去执行,不再执行 gpt 代码。

我不确定我是否看准了。只是模模糊糊的,仅供参考。

回复

使用道具 举报

发表于 2016-1-30 16:52:46 | 显示全部楼层
本帖最后由 chenall 于 2016-1-31 12:24 编辑

把这一行注释掉目前看起来正常..

这些代码是我加的吗?太久了没什么印像了,没有注释现在也想不起来为什么当时要这一行了.

EDIT: 另外看了前后的代码,感觉以下好像是多余的??


  1.         cmpl        $0xff, ABS(EXT_C(current_slice))
  2.         je        100f
  3.         movl        $0xFF, ABS(EXT_C(current_slice))
复制代码

点评

关键是得把原来的代码找回来,才能比较。否则的话,那就只有摸着石头过河了。 我反正好长时间没有接触了,对此已经没有印象。 一切都得靠你自己调试了。  详情 回复 发表于 2016-1-30 17:17
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2019-12-6 17:27

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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