无忧启动论坛

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

支持含有碎片的文件仿真

    [复制链接]
301#
发表于 2014-7-25 10:32:26 | 只看该作者
不点 发表于 2014-7-25 09:25
@chenall,

你的这个 grub4dos_dev 已经无法下载了。是删除了?还是挪动到别处了?从你的 Blog 上也找 ...

http://cdntel.115.com/gdown_grou ... le=grub4dos_dev.zip
回复

使用道具 举报

302#
发表于 2014-7-25 13:00:42 | 只看该作者
不点 发表于 2014-7-25 09:25
@chenall,

你的这个 grub4dos_dev 已经无法下载了。是删除了?还是挪动到别处了?从你的 Blog 上也找 ...

移了一个位置,前面加上dl就行了.
http://dl.grub4dos.chenall.net/grub4dos_dev_2014-06-25.7z

点评

知道这个位置了。谢谢。也谢谢 zxw。 但是,假如我忘了这个位置,又有什么办法可以找到呢? 我在百度里面搜 grub4dos_dev ,累死了也找不到。在你的 blog 的搜索框里面搜,也搜不到。在 download 里面也找不到  详情 回复 发表于 2014-7-25 13:48
回复

使用道具 举报

303#
发表于 2014-7-25 13:48:32 | 只看该作者
chenall 发表于 2014-7-25 13:00
移了一个位置,前面加上dl就行了.
http://dl.grub4dos.chenall.net/grub4dos_dev_2014-06-25.7z

知道这个位置了。谢谢。也谢谢 zxw。

但是,假如我忘了这个位置,又有什么办法可以找到呢?

我在百度里面搜 grub4dos_dev ,累死了也找不到。在你的 blog 的搜索框里面搜,也搜不到。在 download 里面也找不到。

假如时间久了,我找不到现在这个帖子了,那就更是找不到了。于是只能麻烦你,而且,你不一定正好在线,这时间就耽误了。

这个帖子里面有很多东西,是不是可以整理一下,写一篇博文,方便大家学习,方便下载软件呢?

回复

使用道具 举报

304#
发表于 2014-7-25 16:39:22 | 只看该作者
我回头把这个编译环境资料放到grub4dos.chenall.net上
回复

使用道具 举报

305#
发表于 2014-7-26 17:42:29 | 只看该作者
本帖最后由 mdyblog 于 2014-7-26 18:48 编辑

我写了一段Loader 调入 G4D的 grldr 并运行。我是从16扇区(前面跳过16扇区)开始读取grldr 到内存0820:0000并运行。
grldr版本是 0.4.5c 2013-0117

本来是CHS方式 -INT13-AH2读取, 很正常。

现在改成LBA方式-INT13-AH42读取,数据都正确读到内存了。但是有个问题。
如果随便个地方 “CHS方式 -INT13-AH2读取”1 扇区到没用的内存, grldr就能正常运行启动, 找到(hd0)上的文件并出菜单。
  1. //FIXME 否则Grub4DOS不认根设备
  2.         xor        %ebx, %ebx        /* %bx = 0, put it at 0 in the segment */
  3.         movw        %bx, %es        /* load %es segment with disk buffer */
  4.         mov         $0x7A00, %ebx
  5.         movb    $0, %dh   //head
  6.         movw    $(1*0x100+0x01), %cx   //ch=cyl cl=sec
  7.         movw        $0x0201, %ax        /* function 2 */
  8.         int        $0x13  //这句不能省
复制代码

放在LBA读取前,后均可
否则,grldr启动后root为(fd0)以至找不到(hd0)上的文件。

int        $0x13 这句还不能省。

这是为什么啊?问题在哪儿?怎么去掉这几行,直接初始话对应寄存器。


启动设备我是通过 %dl 寄存器传下去的。测试为0x80.
                 %dh 寄存器是分区号,测试为0xff.


LBA 读取时, 怎么传递参数,grldr 才能 正常 找到初始根设备(启动设备)。
弄了好几天,卡在这里。

2) 另外,测试了下 0.4.6a又可以。这是为什么啊?


我担心的是我的代码问题。如果只是旧版grldr 才有的问题, 而不是我代码的问题。
那就绕过去好了。换个版本。
请大神分析下,给个答复。


望大神指点!!!!





回复

使用道具 举报

306#
发表于 2014-7-26 19:16:49 | 只看该作者
估计是你搞错了,造成莫名其妙的错觉。

你可以看看 asm.S 开头的那些变量,尤其是 install_partition 和 boot_drive 变量。

传入的 DL 的值会被 0000:8200 处的代码自动存入到 boot_drive 变量中。

但 DH 值不会被自动存入 install_partition 的位 16 - 位 24 的字节上,你必须在传递控制之前修改好,即,你需要自己把 DH 的值存入 install_partition 的位 16 - 位 24 的字节上,然后再把控制转移到 0000:8200 处的代码。

同时,如果 0000:7C00 处含有合法的 BPB 引导扇区,则 grub4dos 有可能会利用这个 BPB 表来确定启动盘的信息。

就是说,在传递控制之前,如果能保证 0000:7C00 处含有某个主分区的引导扇区(或者碰巧是这样),则这个主分区就可能被 grub4dos 当作 boot 设备(以及当前 root 设备)。



点评

你是说这些变量需要初始化,是吗? 0000:8208 4字节(即双字) 启动分区号 install_partition (the boot partition) 0000:8280 4字节(即双字) 启动驱动器号(boot_drive) 0000:829C 4字节(即双字) 当前  详情 回复 发表于 2014-8-22 18:05
回复

使用道具 举报

307#
发表于 2014-7-27 07:06:49 | 只看该作者
另外,我看到你的代码中有:

movb    $0, %dh

这个已经改变了 DH 的值,不知你注意了没有。

传递 DH=FFh,这个分区号是整个硬盘。你只有将 DH 传递给 GRLDR 时,才会自动修改 install_partition 的值。这个修改的动作是由 GRLDR 的第二扇区代码完成的。由于你越过 16 扇区,所以,没能成功修改,因此默认的分区号就是 FFh,它代表整个硬盘。这应该是一种错误,导致默认分区号不正确,无法找到菜单。

另外,你说连盘号也弄错了,竟然成为 (fd0) 了。我怀疑,你确实是从软盘启动的,你的 0000:7C00  处含有主分区的 BPB 引导扇区。grub4dos 可能就是依据这个来判断启动设备,并把它作为 “根设备” 的。

点评

还有一点, 我不需要 分区号。 只要磁盘号就可以。 因为是从MBR启动的,不是分区启动的, 分区号 固定为0xFF。 启动后,分析启动磁盘(BIOS给的,这时还没错), 调入grldr到0x8200:0000处,执行。 启动grldr后,  详情 回复 发表于 2014-8-11 13:50
//movb $0, %dh dh dl 的值已经备份了, INT 13---CHS 都要 毁坏 dl 的。 最后,“执行” grldr 的之前,从 备份恢复。 //你说连盘号也弄错了,竟然成为 (fd0) 了。 是 0x80 启动的。 有调试信息。  详情 回复 发表于 2014-8-11 13:21
回复

使用道具 举报

308#
 楼主| 发表于 2014-7-28 09:38:00 | 只看该作者
启动设备我是通过 %dl 寄存器传下去的。测试为0x80.
                 %dh 寄存器是分区号,测试为0xff.

驱动器号及分区号是怎样实测的?
你的 (hd0,0) 是什么文件系统类型(fat16, fat32,ntfs)?分区引导代码是 grub4dos 0.4.5c? 还是其他?
不点说的很清楚,grldr 头16扇区除了查找及读取 grldr 后续代码,还做了一些初始化铺垫工作。你如果截断 16 扇区,那么这些铺垫工作就应当由你完成。
最便捷的方法是直接把 grldr 整体加载到某处(如 2000:0000)然后运行。

点评

》》驱动器号及分区号是怎样实测的? 就是 %dl %dh 不用分析。 这是BIOS 传递参数的规则。我也是这么向下 传递给 grldr, grub2, ..... 再打印出来。就看见了。  详情 回复 发表于 2014-8-11 13:54
(hd0,0) 如果有, 就是FAT16 或FAT32。 但不一定有分区。 就像 fbinst 一样, 还没有 分区。完全隐藏。  详情 回复 发表于 2014-8-11 13:25
回复

使用道具 举报

309#
发表于 2014-7-28 10:52:01 | 只看该作者
本帖最后由 不点 于 2014-7-28 10:53 编辑

是的,整体加载 grldr 是最省心的,免得自己还要处理很多细节。有人说,细节决定成败。细节也是令人头疼的事,不容易处理妥当。

当你整体加载 grldr 时,你需要传递给 grldr 的 CPU 寄存器是 DL= BIOS 盘号,DH=分区号码(0xFF 代表没有分区表的整个磁盘)。

你最好同时把启动分区的引导扇区(它含有 BPB 表)也放在 0000:7C00 处。这个分区应该是主分区。如果引导扇区是某个逻辑分区的,那就不要放了,因为逻辑分区不起作用。软盘的引导扇区也是可以放在 0000:7C00 处的。

点评

》》你最好同时把启动分区的引导扇区(它含有 BPB 表)也放在 0000:7C00 处。这个分区应该是主分区。如果引导扇区是某个逻辑分区的,那就不要放了,因为逻辑分区不起作用。软盘的引导扇区也是可以放在 0000:7C00 处  详情 回复 发表于 2014-8-11 13:29
回复

使用道具 举报

310#
发表于 2014-8-6 13:53:28 | 只看该作者
为了方便管理代码,

在github上重新建了一个0.4.6a的分支,之前的0.4.6我准备删掉, 请使用0.4.6a分支进行开发.
直接使用以下代码切换
git fetch grub4dos
git checkout grub4dos/0.4.6a -b 0.4.6a

首次更新请使用以下命令上传新的分支.
git push origin 0.4.6a
回复

使用道具 举报

311#
 楼主| 发表于 2014-8-7 09:59:47 | 只看该作者
知道了。

grub4dos-0.4.5c-2014-08-06.7z 更新了。没有同步更新 0.4.6a?
现在好不容易使两者同步了,如果是新增选项,最好都补上;如果是bug修正,共性的也应当都补上。

最近上网不便,大约到9月份。

点评

源码已经同步了,现在源码同步比较方便,git merge就行了. 是自动编译发布的问题,我一会处理下. 你有空的话可以顺便在你的grub4dos项目中设置一个webhook https://github.com/yaya2007/grub4dos/settings/hoo  详情 回复 发表于 2014-8-7 14:18
回复

使用道具 举报

312#
发表于 2014-8-7 14:18:17 | 只看该作者
2011yaya2007777 发表于 2014-8-7 09:59
知道了。

grub4dos-0.4.5c-2014-08-06.7z 更新了。没有同步更新 0.4.6a?

源码已经同步了,现在源码同步比较方便,git merge就行了.

是自动编译发布的问题,我一会处理下.

你有空的话可以顺便在你的grub4dos项目中设置一个webhook

https://github.com/yaya2007/grub4dos/settings/hooks

添加一个webhook参数如下.

Payload URL: http://hooka.chenall.net/grub4dos.php
Content type: application/json
Just the push event.

我在服务器上设置一下,这样以后你就可以只管更新源码,

不需要在push request,我让系统自动处理.

当然了一个重要的步骤别忘了,在每次修改代码之前先同步一下主库代码(当前假设在0.4.6a分支下)
git fetch grub4dos
git merge grub4dos/0.4.6a 或 git rebase grub4dos/0.4.6a
回复

使用道具 举报

313#
发表于 2014-8-11 13:21:27 | 只看该作者
不点 发表于 2014-7-27 07:06
另外,我看到你的代码中有:

movb    $0, %dh

//movb    $0, %dh
dh dl 的值已经备份了,
INT 13---CHS 都要 毁坏 dl 的。
最后,“执行” grldr 的之前,从 备份恢复。

//你说连盘号也弄错了,竟然成为 (fd0) 了。
是 0x80 启动的。
有调试信息。


>>你的 0000:7C00  处含有主分区的 BPB 引导扇区。grub4dos 可能就是依据这个来判断启动设备,并把它作为 “根设备” 的。

0000:7C00 出的确 有  BPB 引导扇区。 是 BIOS读到那儿的。
本代码 立即转移到别处执行。但 0000:7C00 没有擦除。

你意思是说, 要把  0000:7C00 处 擦掉, 以免 “误导”。
----我试试。

另外, 新版没有这个问题。奇怪, 是参数传递规则变简单了吗了吗?

回复

使用道具 举报

314#
发表于 2014-8-11 13:25:47 | 只看该作者
2011yaya2007777 发表于 2014-7-28 09:38
驱动器号及分区号是怎样实测的?
你的 (hd0,0) 是什么文件系统类型(fat16, fat32,ntfs)?分区引导 ...

(hd0,0)  如果有, 就是FAT16 或FAT32。
但不一定有分区。  就像 fbinst 一样, 还没有 分区。完全隐藏。


回复

使用道具 举报

315#
发表于 2014-8-11 13:29:13 | 只看该作者
不点 发表于 2014-7-28 10:52
是的,整体加载 grldr 是最省心的,免得自己还要处理很多细节。有人说,细节决定成败。细节也是令人头疼的 ...

》》你最好同时把启动分区的引导扇区(它含有 BPB 表)也放在 0000:7C00 处。这个分区应该是主分区。如果引导扇区是某个逻辑分区的,那就不要放了,因为逻辑分区不起作用。软盘的引导扇区也是可以放在 0000:7C00 处的。

没有分区时。
0000:7C00 处 512字节是不是要清0, 或446字节。
回复

使用道具 举报

316#
发表于 2014-8-11 13:50:11 | 只看该作者
本帖最后由 mdyblog 于 2014-8-11 13:58 编辑
不点 发表于 2014-7-27 07:06
另外,我看到你的代码中有:

movb    $0, %dh


还有一点, 我不需要 分区号。 只要磁盘号就可以。
因为是从MBR启动的,不是分区启动的, 分区号 固定为0xFF。
就说其中出错的一个启动分支流程吧:
启动后,分析启动磁盘(磁盘号1)(BIOS给的,这时还没错), 调入grldr到0x8200:0000处,执行。
启动grldr后, 再分析启动磁盘(磁盘号2)的数据,根据数据,建立虚拟磁盘。

如果   磁盘号2   错了, 就分析错误的磁盘。 从而无法进行下去。
现在是0x80变成0x00.


即使从分区启动(也可以), 也不理这个分区号(dh), 只是照样传递下去(给grldr)。

------------
奇怪, 很久一直这么做的, 直接丢掉grldr、grub.exe的引导头。
以前一直都是 CHS模式,一直没问题。
现在 才发现有不支持CHS的读卡器,才加上LBA。
测试LBA,发现这么个怪问题。
对旧版grldr(20130714) 必须 CHS方式读一下磁盘, grldr 的磁盘号才不会变错。
新版没问题。



回复

使用道具 举报

317#
发表于 2014-8-11 13:54:13 | 只看该作者
2011yaya2007777 发表于 2014-7-28 09:38
驱动器号及分区号是怎样实测的?
你的 (hd0,0) 是什么文件系统类型(fat16, fat32,ntfs)?分区引导 ...

》》驱动器号及分区号是怎样实测的?
就是 %dl    %dh  
不用分析。
这是BIOS 传递参数的规则。我也是这么向下 传递给 grldr, grub2, .....
再打印出来。就看见了。
回复

使用道具 举报

318#
发表于 2014-8-11 15:39:37 | 只看该作者
你这属于 “开拓、尝试、创新”。这期间会出现很多意想不到的问题。有的是自己的编程失误造成的,有的是对于某个知识的理解有错误或有偏差造成的,有的则是某个相关软件的 bug 造成的。

我不知道你的程序是如何接管控制的。你是不是打算写一个启动软件?

如果是的话,我建议你不要这么做。这不是打击你。是根据我的理解、依照我的判断,给你提出的建议。

其一,启动软件已经有很多了,而且都不错,它们多年来解决了很多问题,能够顺利运行。如果你再制作一个,则有重复发明轮子之嫌,劳动的成效不大。你的软件要想成熟,也得经历那些痛苦的过程。要知道,大量的情况都是 BIOS 厂家故意制造的问题,如果你的软件有问题,不能适应这乱七八糟的 BIOS,那么大多数用户可能根本就不向你报告,而是直接放弃你的软件。这个过程十分艰难,排错十分痛苦。

其二,BIOS 正遭遇封杀和淘汰。虽然未来有变数,但至少封杀是明显的,如果不是傻子,都能感觉到。在这样的情况下,编写 BIOS 启动软件,我觉得是不太划算的。你出了力,得到的成效怎么样?怕是不太满意的。

其三,即使你编写的软件很有成效,很火爆,那样也不妙。为什么呢?因为那时你就面临着直接的封杀了。grub4dos 本来就不算是一个软件,也没打算从 gnu grub 分离出来。但在很早的时候,就遇到了封杀,我很吃惊,也很好奇。假如没人封杀的话,说不定我会半途而废,早早地就转移兴趣到别处了,而不会坚持这么多年。

============================

如果我说了这么多,你还是决定要继续前行,那我恭喜你。你一定是有准备的,你一定是偏向虎山行的那种人。其实,我也差不多算是这样的人。

你大概想填补目前的空缺,制作一个能够适应 BIOS 和 EFI 两种环境的启动软件。不过一定要有失败的准备,因为任何事情都有可能失败。还要矢志不渝长期坚持开发,不能断断续续的。另外还需要机敏,能够敏锐地察觉到软件运行的状况,了解是否已经被攻击了,如何化解攻击。开发启动软件在技术上不难,难的是应对那些无穷无尽的非技术问题。

点评

怎么运行内存中的脚本? (md)0x200+1 是一段#!BAT 引导的 脚本。 不是菜单。 怎么运行它啊?  详情 回复 发表于 2014-8-19 07:32
>>你大概想填补目前的空缺,制作一个能够适应 BIOS 和 EFI 两种环境的启动软件。 是的。 叫 MBROS. http://bbs.wuyou.com/forum.php?mod=viewthread&tid=330493&extra=page%3D1#MBROS BIOS 在淘汰,没有问题,  详情 回复 发表于 2014-8-12 12:55
回复

使用道具 举报

319#
发表于 2014-8-11 18:29:28 | 只看该作者
USB3.0 32G UD盘 我的老机器GRUB找不到U盘后部外置文件,必须把U盘清空,先把外置文件复制进去,然后再复制其它文件才可以,发现外置文件更新后又不行了,有没有解决的办法。

点评

超过了 BIOS访问位置。 可以磁盘前面分个小分区, 放启动文件。 或用UDm, UDm 会在磁盘前面为grldr 预留一块启动空间。 BIOS总是能访问的。 http://bbs.wuyou.com/forum.php?mod=viewthread&tid=330493&extra=p  详情 回复 发表于 2014-8-12 13:00
回复

使用道具 举报

320#
发表于 2014-8-12 12:55:08 | 只看该作者
不点 发表于 2014-8-11 15:39
你这属于 “开拓、尝试、创新”。这期间会出现很多意想不到的问题。有的是自己的编程失误造成的,有的是对 ...

>>你大概想填补目前的空缺,制作一个能够适应 BIOS 和 EFI 两种环境的启动软件。
是的。 叫 MBROS.

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=330493&extra=page%3D1#MBROS
BIOS 在淘汰,没有问题, 还有EFI。
只要BIOS还在用, 就要支持啊。

BIOS 只是提供一个Loader。 最终还是 grldr  ntldr bootmgr grub2 等。

回复

使用道具 举报

321#
发表于 2014-8-12 13:00:49 | 只看该作者
本帖最后由 mdyblog 于 2014-8-12 13:03 编辑
xyzxp 发表于 2014-8-11 18:29
USB3.0 32G UD盘 我的老机器GRUB找不到U盘后部外置文件,必须把U盘清空,先把外置文件复制进去,然后再复制 ...


超过了 BIOS访问位置。
空盘时, grldr在前面, 可以访问。 修改后,会在后面再找个空地, 在后面, 超出访问范围。
可以磁盘前面分个小分区, 放启动文件。
或用UDm格式化,  UDm 会在磁盘前面为grldr 预留一块启动空间。 BIOS总是能访问的。
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=330493&extra=page%3D1#UDm
回复

使用道具 举报

322#
发表于 2014-8-15 10:32:42 | 只看该作者
本帖最后由 不点 于 2014-8-15 20:59 编辑

看到你在 MBROS 那个帖子 28 楼的 “原理知识普及”,满怀希望能看到真正的讲解,却只得到了几行含糊不清的(也许用个褒义词就是 “高度概括的”)条条。我得承认,我不可能把那个帖子序列里面的所有帖子都看完(身体条件不允许)。你也没有义务为我一个人解释详细的原理。但假如你愿意的话,你可以给我解释一下。我想知道下面两个问题:

1、MBRos 是否开源?
2、MBRos 比别的软件有哪些改进,不要笼统地说,要具体说。别的软件遇到什么问题?而 MBRos 又是如何突破和克服的?讲一下技术实现方面的东西,讲要点和巧妙之处,让别人一看就领会了的。不需要很多字,大概 200 字左右就可以说清楚。

如果由于某种原因你不便于答复或解释,那你就不要勉强自己了。我无意强求别人回答那些人家本来不想回答的问题。尤其是,假如(仅仅是假如)你有秘密不想透露太多的话,那就算了,我不强人所难。我不需要那些反复的、笼统的解释,而又不能让我领会其技术要点和技术突破。就是说,假如看完解释之后,仍然是一头雾水,仍然感到有某种神秘,莫名其妙,难以理解,那么我也不想看这样的解释。


补充说明两点,算是澄清,目的是尽量不至于让人误解:

1、我想知道一个技术是否开源,也就是确定我能否深入研究这项技术。不开源的技术也有很多,比如我很喜欢的 BOOTICE 就不是开源的。另一方面,也存在这样一些开源的技术:我既不用它,也不喜欢它。所以,我对于开源与否,都没有成见。开源也有糟糕的技术,而闭源也有优秀的技术。糟糕与优秀,不同的人有不同的评判。像 BOOTICE 这样的软件,我只需要用起来顺手就可以了。因此,我并不需要它是开源的。即使是开源的,我也不去看它的源代码,因为我已经大致清楚了它的工作原理,没必要看源代码。换句话说,我只需要使用 BOOTICE,而不需要深入研究 BOOTICE,也不需要去改造 BOOTICE。然而对于启动软件,那就不同了。我可能比较关心,因而有可能需要深入研究。这就需要知道这个启动软件是否开源了。因为如果不开源的话,我可能就没法深入研究了。好了,这就解释了我为何想知道 “mbros 是否开源” 的问题。

2、我想知道 mbros 在技术上都有哪些改进,是想 “打破沙锅问到底”,我想深入了解这项技术,不留下任何含糊不清的疑点,这是我的目的。如果你能够满足我的要求,那你就可以回答我的问题。如果由于某种原因不能满足我这样的好奇心,那就建议干脆不要回答我的问题了。如果你回答了我的一部分问题,我可能还要继续追问其他问题,一直问到我自己觉得没有什么可问的程度为止。如果你没有时间答复我的问题,或者没有兴趣答复我的问题,或者仅仅就是不想答复我的问题,那你最好一开始就不要答复了。大家都很忙,都有自己的事情在做,因此,这样也就可以避免浪费双方的时间了。

点评

不点大师,你好! 分开将,某些特点别的软件也有。作为一个用户解决方案, 整个作为一个大特点吧。 1. 安全。象UD一样,UDm是一个深度隐藏区,普通的程序无法访问。(这个 UD也支持。) 2. 万能USB启动。采  详情 回复 发表于 2014-8-16 11:16
回复

使用道具 举报

323#
发表于 2014-8-15 11:26:27 | 只看该作者
我也觉得MBROS是神一样的东西,原理模糊不清,反正我不明白,不知道其他网友是否明白,如果谁明白了求通俗易懂的介绍。比如说拥有fbinst的高兼容性,我只看到了和fbinst一样把头63个扇区都弄mbr,其他就没有了介绍了,如果仅仅这样那和fbinst的高兼容性粘不上边。
回复

使用道具 举报

324#
发表于 2014-8-15 19:01:25 | 只看该作者
我也看得头晕。。。反复没看完。。。最终点击浏览器的右上角按键了事。

点评

那个说明书, 是操作说明书。 需要对着软件看。 光看不做,理解很难的。 那个U盘, 安个VM虚拟机。 边操作边看说明书。 操作在VM中。 启动测试在实机上。  详情 回复 发表于 2014-8-16 11:26
回复

使用道具 举报

325#
发表于 2014-8-16 11:16:54 | 只看该作者
本帖最后由 mdyblog 于 2014-8-19 05:20 编辑
不点 发表于 2014-8-15 10:32
看到你在 MBROS 那个帖子 28 楼的 “原理知识普及”,满怀希望能看到真正的讲解,却只得到了几行含糊不清的 ...


不点大师,你好!

一。 是 完全免费且无功能限制,不是开源(至少目前还没开)。



二。

分开将,某些特点别的软件也有。作为一个用户解决方案, 整个作为一个大特点吧。

1. 安全。象UD一样,UDm是一个深度隐藏区,普通的程序无法访问。(这个  UD也支持。)

2. 万能U盘启动。采用和UD相似的方法来支持U盘BIOS启动,理论上同样有高的成功率。(这个  UD也支持。)

3. 支持UEFI启动-----*****

4. 支持 GPT分区-----*****

5. 有标准文件系统,
   因此可在系统或PE中直接挂载到盘符(只读/可写),并且被更多的启动器支持,例如grub4dos, grub, grub2, linux。支持直接挂载,使得PE可以避免数据搬移就能直接访问UDm分区。
    grub4dos、grub2、windows、linux,  等不必为UDM专门开发驱动程序。


6. 容易修复。"引导部分"  可随时恢复, 分区表丢失可随时重新设定。(UD就支持 “引导码” 修复。)

7. 支持 只读的 “软光盘”-----*****
   插到一般机器上,自动加载盘符,但是 是只读的。 这样保护MBROS系统不受误操作和病毒影响。
    和 “深度隐藏” 是排斥选项, 可以切换 模式。
   MBROSTOOL 可以修改,升级其内容。

8. 支持 只读的 “钢光盘”-----*****
   内容不能修改。 但可以重新换个ISO(只是更新保留空间部分,其它的数据和启动信息不动)。
   作为多分区中的一个UDm分区。

9. 支持 多种包的直接软量产
   iso zip rar 7z fba mos  img  ...

大概就是解决这些问题吧。
回复

使用道具 举报

326#
发表于 2014-8-16 11:26:31 | 只看该作者
本帖最后由 mdyblog 于 2014-8-16 11:28 编辑
135956 发表于 2014-8-15 19:01
我也看得头晕。。。反复没看完。。。最终点击浏览器的右上角按键了事。

你好!
那个说明书, 是 “操作”说明书。
需要对着软件看。 光看不做,理解很难的。(很多操作逻辑就在界面上,一目了然)
拿个U盘, 安个VM虚拟机。 边操作边看说明书。
操作在VM中。
启动测试在实机上。
回复

使用道具 举报

327#
发表于 2014-8-19 07:32:26 | 只看该作者
不点 发表于 2014-8-11 15:39
你这属于 “开拓、尝试、创新”。这期间会出现很多意想不到的问题。有的是自己的编程失误造成的,有的是对 ...

怎么运行内存中的脚本?
(md)0x200+1
是一段#!BAT 引导的 脚本。 不是菜单。
怎么运行它啊?
回复

使用道具 举报

328#
发表于 2014-8-19 10:53:26 | 只看该作者
运行一个程序文件或脚本批处理文件,其方法都是一样的,可以采用以下两种方法之一:

1、用 “ command 【文件名】”
2、省略 command 关键字,直接用 “文件名” 来运行。

内存文件也是一个文件。因此你可以直接运行它:

(md)0x200+1

或者

command  (md)0x200+1

点评

谢谢回复。 我原来也是这么想的,但是失败:不认识的格式。 [attachimg]198292[/attachimg]  详情 回复 发表于 2014-8-20 18:02

评分

参与人数 1无忧币 +5 收起 理由
135956 + 5 又涨姿势了。

查看全部评分

回复

使用道具 举报

329#
发表于 2014-8-19 16:36:34 | 只看该作者
国内开源托管git http://git.oschina.net/ 速度很不错,不知道grub4dos能不能同时顺便托管到上面去。

点评

国内有gitcafe,另外国内的开源托管有很多,没有必要都托管,留一个备份够了.  发表于 2014-8-19 18:05
回复

使用道具 举报

330#
发表于 2014-8-20 18:02:30 | 只看该作者
本帖最后由 mdyblog 于 2014-8-20 18:13 编辑
不点 发表于 2014-8-19 10:53
运行一个程序文件或脚本批处理文件,其方法都是一样的,可以采用以下两种方法之一:

1、用 “ command  ...


谢谢回复。
我原来也是这么想的,但是失败:不认识的格式。


是不是设计有这个功能, 但是出问题了,没工作。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-24 02:41

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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