无忧启动论坛

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

支持含有碎片的文件仿真

    [复制链接]
931#
发表于 2015-3-1 09:09:58 | 只看该作者
2011yaya2007777 发表于 2015-2-28 18:25
请 chenall 看看,今天打了一个补丁,上传到我的分支,不知为何没有进入你的主干。

因为github有时候会抽疯访问不了.

昨天我有看了下代码是有并入0.4.6a,只是没有自动编译,我后面手工处理了一下.
回复

使用道具 举报

932#
发表于 2015-3-1 10:36:04 | 只看该作者
不点 发表于 2015-2-28 21:46
4:0.4.5 有问题吗?(前面问过的,没有得到答复)
----------------
我等会儿再补上。(干嘛要测这 ...

4:0.4.5 有问题吗?(前面问过的,没有得到答复)
----------------
我等会儿再补上。(干嘛要测这么多版本,挺烦的,难道不能就做好一个版本,并维护好.大家始终向都一个版本看齐。节省劳动,提高效率)

0.45c测试 补上了。 grub4dos-0.4.5c-2015-02-09.7z
效果和0.46a一样。
先确认hd启动,不是fd。

  1. geometry --lba1sector (128)
  2. dd  if=(128)0+1  of=(md)0x200+1
复制代码

就死翘翘了。


没有geometry --lba1sector
  1. dd  if=(128)0+1  of=(md)0x200+1
复制代码

就没问题。
回复

使用道具 举报

933#
发表于 2015-3-1 10:40:04 | 只看该作者
本帖最后由 mdyblog 于 2015-3-1 10:47 编辑
不点 发表于 2015-3-1 05:52
1. 单扇区读盘的参数,是我设计的。它应该能够处理未经 map 的盘。至于说 map 之后,情况复杂,那涉及到修 ...


1: 现在基本确定是ud引起的软件混乱导致死翘翘。

关闭ud就好了。
root (128)
calc *0x82b8=0
geometry --lba1sector  (128)
dd  if=(128)0+1  of=(md)0x200+1

这样就没问题了。


2:
关于按'S'进入 --lba1的安全模式。

在这他机器上,
提示执行 geometry --lba1sector  成功, root为0x23.
立马就死翘翘了。

连内置菜单也没出来。

只是提示在执行内置菜单.......

点评

你的报告,大致上可以理解为,单扇区读盘模式有 bug,需要排解。至于说如何排解,我好像也帮不上什么忙,那就由你们来做了。  详情 回复 发表于 2015-3-1 10:58
回复

使用道具 举报

934#
发表于 2015-3-1 10:49:07 | 只看该作者
mdyblog 发表于 2015-3-1 09:07
1: 原来是这个原因。也就是读一个扇区,实际读127个!慢了127倍。

2:能提供其它函数, 或在提供一 ...

2:能提供其它函数, 或在提供一个开关,就让他不要一次连着读127个扇区。

这一条,目前用已经公开的函数接口,好像是做不到。但我没有仔细研究,也许能做到,也未可知。你可以向开发者提要求,要求提供单扇区读盘函数。如果开发者觉得有必要,他会满足你的要求。如果他觉得没必要而拒绝,他会给你解释理由。

缓冲机制是 gnu grub 原有的机制,不是 grub4dos 特有的。原来的 gnu grub 就是按照磁道读盘的。只不过原来是按照 63 扇区作为 lba 模式的一个虚拟磁道,我改成了 127 扇区作为 lba 模式的虚拟磁道。

chenall 写了一个外部命令,就叫做 bios,它可以实现单扇区读盘。你只要懂得 int13 的调用规范,就可以使用 bios 这个命令。具体用法,你自己搜索。
回复

使用道具 举报

935#
发表于 2015-3-1 10:58:28 | 只看该作者
本帖最后由 不点 于 2015-3-1 17:58 编辑
mdyblog 发表于 2015-3-1 10:40
1: 现在基本确定是ud引起的软件混乱导致死翘翘。

关闭ud就好了。


你的报告,大致上可以理解为,单扇区读盘模式有 bug,需要排解。至于说如何排解,我好像也帮不上什么忙,那就由你们来做了。

对于 grub4dos,随着时间的推移,我的记忆会越来越模糊。趁着现在还保留了一部分记忆,我尽量多来这里回答问题。

能答复多少,就是多少。答复不了的,那就没办法了,我尽力了,因此我也不会后悔。具体的排解 bug、写代码,都很伤身体,我也都做不了了。我只能出点小力,不能出大力了。

回复

使用道具 举报

936#
发表于 2015-3-1 14:57:06 | 只看该作者
@yaya
之前的报告#841楼
http://bbs.wuyou.net/forum.php?m ... 04&fromuid=1025

昨天报告者说0.4.5c也有问题?如果问题确实存在的话那是不是说这个问题很早的版本就存在了?

回复

使用道具 举报

937#
 楼主| 发表于 2015-3-1 17:11:59 | 只看该作者
在 exfat 分区,使用 grub4dos-0.4.5c-2015-01-20,可以正常加载 .iso 镜像。
原因是:0.4.5c 没有探测到 exfat 的 bpb,因而使用探测的几何参数;而 0.4.6a 可以探测到 exfat 的 bpb,因而使用 bpb 的参数。但是 exfat 参数的位置与 fat 不同,从而出错(已经修正)。

点评

???? 这个报告是grldr.mbr的问题,查找的时候直接查找(hd1)这样子,少了分区号.  详情 回复 发表于 2015-3-1 17:29
回复

使用道具 举报

938#
发表于 2015-3-1 17:29:05 | 只看该作者
2011yaya2007777 发表于 2015-3-1 17:11
在 exfat 分区,使用 grub4dos-0.4.5c-2015-01-20,可以正常加载 .iso 镜像。
原因是:0.4.5c 没有探测到  ...

????

这个报告是grldr.mbr的问题,查找的时候直接查找(hd1)这样子,少了分区号.
回复

使用道具 举报

939#
 楼主| 发表于 2015-3-1 17:40:09 | 只看该作者
使用 grub4dos-0.4.5c-2015-01-20 测试,没有问题。请让报告者截图,并说明 grldr 版本。
Press F12 for boot menu.

Booting from Hard Disk...

Try (hd0,0): NTFS5: No grldr
Try (hd0,1): Extended:
Try (hd0,2): FAT16: No GRLDR
Try (hd0,3): FAT16: No GRLDR
Try (hd0,4): FAT16: No GRLDR
Try (hd0,5): Extended:
Try (hd0,5): FAT16: No GRLDR
Try (hd1,0): NTFS5: No grldr
Try (hd1,1): NTFS5: No grldr
Try (hd1,2): NTFS5: No grldr
Try (hd1,3): NTFS5: No grldr
BIOS: Drive=0x0, H=0, S=0

Try (fd0): NTFS5: 0
Cannot find grldr in all drives. Press Ctrl+Alt+Del to restart.?
回复

使用道具 举报

940#
发表于 2015-3-6 13:03:08 | 只看该作者
grldr版本:grub4dos-0.4.6a-2015-03-04.ec76ac40
调用菜单:
debug off
::VBE效果处理
graphicsmode -1 -1 -1 24:32 && graphicsmode -1 800 600 24:32
::字间距
terminal --font-spacing=1:3
(bd)/boot/grub/automenu

其中automenu文件见附件,原先是去年的版本,使用正常,换新版后,出了一屏的报错信息,但是可以进菜单。

新建截图-20150306125754.jpg (192.02 KB, 下载次数: 287)

新建截图-20150306125754.jpg

AUTOMENU.zip

3.79 KB, 下载次数: 7

回复

使用道具 举报

941#
发表于 2015-3-8 13:40:28 | 只看该作者
本帖最后由 mdyblog 于 2015-3-9 06:23 编辑
fukystone 发表于 2015-3-6 13:03
grldr版本:grub4dos-0.4.6a-2015-03-04.ec76ac40
调用菜单:
debug off


嵌入字体不能放在 脚本(bd)/boot/grub/automenu
要放在菜单中。
把它直接放在该菜单的目末尾就可以了。

看你的脚本。
把它追加到 (md)0x23000+0x10 的末尾       

点评

多谢。明白了  详情 回复 发表于 2015-3-9 20:04
回复

使用道具 举报

942#
发表于 2015-3-9 20:04:20 | 只看该作者
报告一个疑似bug。
pxe方式下,46a的新版会死机在splashimage命令。2月28号和3月4号的版本都一样,2014.7.9的版本没问题。同样菜单,45c的2015.3.4版本没问题。
回复

使用道具 举报

943#
发表于 2015-3-9 20:04:37 | 只看该作者
mdyblog 发表于 2015-3-8 13:40
嵌入字体不能放在 脚本(bd)/boot/grub/automenu
要放在菜单中。
把它直接放在该菜单的目末尾就可以了 ...

多谢。明白了
回复

使用道具 举报

944#
发表于 2015-3-10 20:31:10 | 只看该作者
在报告一个问题:
45c和46a的新版(150304,150228,150114)在调用srsf6的时候都会报错。
20140709版的46a没问题。

新建截图-20150309224422.jpg (71.78 KB, 下载次数: 272)

新建截图-20150309224422.jpg
回复

使用道具 举报

945#
发表于 2015-3-11 09:41:00 | 只看该作者
本帖最后由 mdyblog 于 2015-3-11 12:49 编辑
fukystone 发表于 2015-3-10 20:31
在报告一个问题:
45c和46a的新版(150304,150228,150114)在调用srsf6的时候都会报错。
20140709版的46a ...

这个现象, 前面已经报告过。 新版G4D就是这么设计的。只有改SRSF6了。

用这个 SRSF6/SRSF6N二合一版, 最新的grldr 也没这个问题。

6825#
MBROSTool包内有。

点评

二合一版对dpms方案支持不好,换成5大修改的那个就好了,我暂时两个都用  详情 回复 发表于 2015-3-21 15:32
回复

使用道具 举报

946#
 楼主| 发表于 2015-3-20 16:19:23 | 只看该作者
内置 usb 驱动支持原生4k扇区磁盘测试:
http://wuyou.net/forum.php?mod=attachment&aid=MjEyMDAxfDdlMTdkZGZhNWZlYWFjNTA5OWUwMTlhZDgzNmVkOWVlfDE3MzI1OTE4NDk%3D&request=yes&_f=.rar
回复

使用道具 举报

947#
发表于 2015-3-20 16:23:53 | 只看该作者
怎么测试
回复

使用道具 举报

948#
 楼主| 发表于 2015-3-20 16:48:12 | 只看该作者
如果有原生4k扇区磁盘,通过 usb 接口连接电脑。从其他磁盘启动电脑,进入 grub4dos,执行 usb --init 。
看看是否为 usb 分配盘符。如果分配,试一试可否执行:
find
cat --hex (hd1)+1     ;假如 usb 是 hd1

点评

编译日期怎么是1.20号的?我测试没有分配盘符  发表于 2015-3-21 09:59
回复

使用道具 举报

949#
发表于 2015-3-21 10:06:20 | 只看该作者
3.20(编译日期1.20)与3.18测试结果一样,没有分配盘符。插入的是SSD固态移动硬盘(128G,分2个区)

Snap1.jpg (40.21 KB, 下载次数: 192)

Snap1.jpg
回复

使用道具 举报

950#
 楼主| 发表于 2015-3-21 10:48:19 | 只看该作者
3.20(编译日期1.20)与3.18测试结果一样,没有分配盘符

这种情况,应当热重启一次看一看。
回复

使用道具 举报

951#
发表于 2015-3-21 15:32:49 | 只看该作者
mdyblog 发表于 2015-3-11 09:41
这个现象, 前面已经报告过。 新版G4D就是这么设计的。只有改SRSF6了。

用这个 SRSF6/SRSF6N二合一版 ...

二合一版对dpms方案支持不好,换成5大修改的那个就好了,我暂时两个都用

点评

dpms 需要参数的。 srsf6 --cli --all --rootfd0 DEFAULT=dpms DPMS=/SRS/dpms.lzma DPMS=/SRS/dpms.lzma 依你的实际而变化  详情 回复 发表于 2015-3-21 15:41
回复

使用道具 举报

952#
发表于 2015-3-21 15:41:40 | 只看该作者
土著007 发表于 2015-3-21 15:32
二合一版对dpms方案支持不好,换成5大修改的那个就好了,我暂时两个都用

dpms 需要参数的。

srsf6 --cli  --all  --rootfd0  DEFAULT=dpms DPMS=/SRS/dpms.lzma

DPMS=/SRS/dpms.lzma 依你的实际而变化

点评

--all参数容易把问题掩盖了,因为F6IMG方案能加载成功 ------------------- 那么其它 版本 , 你是怎么“单独” 测试 DPMS ????????? --one 是从我这个版本才开始有的。 以前的版 只有 默认 的-all的  详情 回复 发表于 2015-3-22 19:30
文件在默认路径,也曾加路径测试过,DPMS方案失败,--all参数容易把问题掩盖了,因为F6IMG方案能加载成功  详情 回复 发表于 2015-3-21 16:45
回复

使用道具 举报

953#
发表于 2015-3-21 16:45:17 | 只看该作者
mdyblog 发表于 2015-3-21 15:41
dpms 需要参数的。

srsf6 --cli  --all  --rootfd0  DEFAULT=dpms DPMS=/SRS/dpms.lzma

文件在默认路径,也曾加路径测试过,DPMS方案失败,--all参数容易把问题掩盖了,因为F6IMG方案能加载成功

点评

可以试试这个,兼容mdyblog老大增加的所有参数。 所做的增强有:1.方案加载过程中不再接受用户干预,会按顺序执行F6IMG--DPMS--SRSF6N。 2.F6IMG采用ZXW老大的最新版。支持完全解开的驱动  详情 回复 发表于 2015-3-21 20:07
你把 srs目录打包上来看看。  详情 回复 发表于 2015-3-21 17:43
回复

使用道具 举报

954#
发表于 2015-3-21 17:43:18 | 只看该作者
本帖最后由 mdyblog 于 2015-3-21 17:46 编辑
土著007 发表于 2015-3-21 16:45
文件在默认路径,也曾加路径测试过,DPMS方案失败,--all参数容易把问题掩盖了,因为F6IMG方案能加载成功


都是5大的基础上接着改进的(5大当了好多年甩手掌柜),而且一般改的是上层,真正底层 F6IMG、DPMS 等 都是原来的 没动啊。

你把 srs目录打包上来看看。连同5大的srsf6  srsf6n, 你的SRS实际命令(如果有便利,展开策划那个实际执行的命令)

点评

见楼上  详情 回复 发表于 2015-3-21 20:08
回复

使用道具 举报

955#
发表于 2015-3-21 20:07:31 | 只看该作者
本帖最后由 527104427 于 2015-3-22 09:49 编辑
土著007 发表于 2015-3-21 16:45
文件在默认路径,也曾加路径测试过,DPMS方案失败,--all参数容易把问题掩盖了,因为F6IMG方案能加载成功


可以试试这个,兼容mdyblog老大增加的所有参数。

所做的增强有:1.方案加载过程中不再接受用户干预,会按顺序执行F6IMG--DPMS--SRSF6N。
                      2.F6IMG采用ZXW老大的最新版。支持完全解开的驱动。比如直接将官网的驱动解压到 /srs/f6img/,也可以打包成ISO。
                      3.照顾ZIP老机,无加载驱动时,不处理fd0
                      4.增加防蓝屏参数:E820=N
                      5.增加一个参数:ISO_BOOT,用于启动ISO.
                      6.将中文版和英文版合二为一。
                      7.--silent/--s为完全静默,没有任何输出。但如果DPMS发现两个SRS驱动,或加载FIRADISK时发现B盘已存在SRS驱动,还是会有提示。
                      8.尽量优化代码,去除冗余。
                      9.所有参数:
[--help] [-h] [?] [/?] [--cn|--gui|--en|--cli] [--silent|--s] [--one|--all] [--rootfd0-|--udm] [--FIRA]  [--FIRAX86] [--FIRAX64]  [--WVBLK]  [--WVBLKX86]  [--WVBLKX64] [DEFAULT=f6img|dpms|srsf6n] [F6IMG=/SRS/] [F6IMG--X64=/SRS/] [DPMS=/SRS/dpms.lzma]  [SRSF6N=/SRS/SRSF6N.LZMA] [ISO|ISO_BOOT=MYISO] [E820=Num.]


下载:
http://bbs.wuyou.net/forum.php?m ... &fromuid=378114

点评

实机测试,F6IMG和DPMS方案都能成功加载驱动;只是进入PE后,发现UDM区也被加载成可见区,并分配盘符C:,wimtool不能用(多次测试,可确定非偶然)  详情 回复 发表于 2015-3-21 20:37
好啊。  详情 回复 发表于 2015-3-21 20:22
回复

使用道具 举报

956#
发表于 2015-3-21 20:22:21 | 只看该作者
527104427 发表于 2015-3-21 20:07
可以试试这个,兼容mdyblog老大增加的所有参数。

所做的增强有:1.方案加载过程中不再接受用户干预, ...

好啊。
回复

使用道具 举报

957#
发表于 2015-3-21 20:37:12 | 只看该作者
527104427 发表于 2015-3-21 20:07
可以试试这个,兼容mdyblog老大增加的所有参数。

所做的增强有:1.方案加载过程中不再接受用户干预, ...

实机测试,F6IMG和DPMS方案都能成功加载驱动;只是进入PE后,发现UDM区也被加载成可见区,并分配盘符C:,wimtool不能用(多次测试,可确定非偶然)

点评

实机测试,F6IMG和DPMS方案都能成功加载驱动;只是进入PE后,发现UDM区也被加载成可见区,并分配盘符C:,wimtool不能用(多次测试,可确定非偶然) -------------------------- 在UDM方案中, 是要禁止 虚拟盘驱动  详情 回复 发表于 2015-3-22 13:27
呵呵,这个是PE的事了吧。加载驱动方面没问题就不想折腾了……  详情 回复 发表于 2015-3-21 20:39
回复

使用道具 举报

958#
发表于 2015-3-22 13:27:11 | 只看该作者
本帖最后由 mdyblog 于 2015-3-22 13:33 编辑
土著007 发表于 2015-3-21 20:37
实机测试,F6IMG和DPMS方案都能成功加载驱动;只是进入PE后,发现UDM区也被加载成可见区,并分配盘符C:, ...


实机测试,F6IMG和DPMS方案都能成功加载驱动;只是进入PE后,发现UDM区也被加载成可见区,并分配盘符C:,wimtool不能用(多次测试,可确定非偶然)
--------------------------
在UDM方案中, 是要禁止 虚拟盘驱动。
这是 我折腾这个 SRSF6 重要原因之一。 原来都是直接用F6IMG, 总是 发现 :
UDM区也被加载成可见区,并分配盘符,且是可写的。

后折腾到  SRSF6,默认是不加载 虚拟盘驱动
就是不带 --wvblk  ---FIRA  等参数。

还有有些 PE内置了 wvblk  -FIRA虚拟盘驱动, 必须删掉。


还有一种方式(UDM本来建议的方式),就UDM选择软盘方式, UDM为(fd0).
UDM为软盘,PE启动后不会显示。

但是 (fd0) 会被  SRSF6 搞没了, 这是我折腾SRSF6的第个也是最重要的---也是最终促使我动手的原因。
加了个 --rootfd0 , 这样 (fd0)就不会被搞掉了。


----用UDm
(1)SRSF6一般就不要 带  --wvblk  ---FIRA  等参数。
(2)如果可能 UDM设成软盘模式。

码了这么多, 竟然在  g4d的页面。 对不起了。我搬到UDm页面去,让更多UDm的人看看。
回复

使用道具 举报

959#
发表于 2015-3-22 19:30:30 | 只看该作者
mdyblog 发表于 2015-3-21 15:41
dpms 需要参数的。

srsf6 --cli  --all  --rootfd0  DEFAULT=dpms DPMS=/SRS/dpms.lzma

--all参数容易把问题掩盖了,因为F6IMG方案能加载成功
-------------------
那么其它 版本 , 你是怎么“单独” 测试 DPMS ?????????
--one 是从我这个版本才开始有的。

以前的版 只有 默认 的-all的功能模式。
虽然可以选择默认, 但是只是 改变顺序, 还是会轮循 全部,直到找到。

点评

CHKPCI -u /DRIVERPACK.INI > (8)/chkpci.pci 这句得出来的结果是有问题的。CHKPCI 将ID和/DRIVERPACK.INI 中内容进行匹配的时候,估计是将程序写死了,DRIVERPACK.INI 的内容一改变,程序就无法适应。 后  详情 回复 发表于 2015-3-22 19:50
回复

使用道具 举报

960#
发表于 2015-3-22 19:50:02 | 只看该作者
mdyblog 发表于 2015-3-22 19:30
--all参数容易把问题掩盖了,因为F6IMG方案能加载成功
-------------------
那么其它 版本 , 你是怎么 ...



CHKPCI -u /DRIVERPACK.INI > (8)/chkpci.pci

这句得出来的结果是有问题的。CHKPCI 将ID和/DRIVERPACK.INI 中内容进行匹配的时候,估计是将程序写死了,DRIVERPACK.INI 的内容一改变,程序就无法适应。

后来本人想办法绕了过去,又得到S大的指点,使程序更强壮了,从这往下看:

http://bbs.wuyou.net/forum.php?m ... &fromuid=378114



老大为何不对比一下两个DPMS有什么不同呢,一眼就可以看出来吧

1.png (167.98 KB, 下载次数: 300)

1.png
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-26 11:30

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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