中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区 » TinyBit 请进,about GRUB for DOS virtualization
« [1] [2] »
作者:
标题: TinyBit 请进,about GRUB for DOS virtualization 上一主题 | 下一主题
windrv
中级用户




积分 385
发帖 118
注册 2003-11-11
状态 离线
『第 16 楼』:  



  Quote:
以下是引用不点在2004-9-4 18:25:37的发言:
我还没有碰到仿真 C: 驱动器失败的情况.

要仿真 (hd0), 所用的 img 文件必须包含一个 MBR 作为第一扇区, 没有 MBR 的 IMG 是无法仿真的.

其实没有 MBR 也可以, 比如一个全部为 00 字节的 img 文件, 也可以用来仿真硬盘:

map --unsafe-boot --sectors-per-track=63 --heads-per-cylinder=255 HD.IMG (hd0)

但你用 chainloader (fd0)+1 和 boot 命令进入操作系统之后, 操作系统将认为该盘未经过分区, 于是不承认该逻辑盘的存在.

你用软盘进入 DOS 后, 运行 FDISK 和 FORMAT 可以对 HD.IMG 进行分区和格式化操作.

Dear Tinybit,
Contrary to what you have said about mapping a disk file as C:, we have been able to boot from such disk file as C: and use it both under DOS and Win9x. And the disk file is bootable and formatted beforehand.

2004-9-8 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 17 楼』:  


We have been successful in some occasions of using the 'map' command on NTFS partition. But there are errors sometimes.
Could
you tell us in which source file and where therein the 'map' command
can be found as well as the NTFS support module so that we understand
more about how the bug comes about?

map 命令在 builtins.c 文件中,但该命令和 NTFS 无关(没有直接关系),所以,可能无需修改它。


NTFS 支持模块是 fsys_ntfs.c 文件,我猜想,如果有 BUG 的话,很可能就是在这个文件里面了。


Contrary to what you have said about mapping a disk file as C:, we have
been able to boot from such disk file as C: and use it both under DOS
and Win9x. And the disk file is bootable and formatted beforehand.


是的,只要 img 文件中有 MBR,你确实可以顺利地用它来仿真硬盘。









因为我们亲手创建,这个世界更加美丽。
2004-9-10 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
windrv
中级用户




积分 385
发帖 118
注册 2003-11-11
状态 离线
『第 18 楼』:  



  Quote:
以下是引用不点在2004-9-10 17:35:50的发言:

We have been successful in some occasions of using the 'map' command on NTFS partition. But there are errors sometimes.


Could
you tell us in which source file and where therein the 'map' command
can be found as well as the NTFS support module so that we understand
more about how the bug comes about?


map 命令在 builtins.c 文件中,但该命令和 NTFS 无关(没有直接关系),所以,可能无需修改它。


NTFS 支持模块是 fsys_ntfs.c 文件,我猜想,如果有 BUG 的话,很可能就是在这个文件里面了。


Contrary to what you have said about mapping a disk file as C:, we have
been able to boot from such disk file as C: and use it both under DOS
and Win9x. And the disk file is bootable and formatted beforehand.


是的,只要 img 文件中有 MBR,你确实可以顺利地用它来仿真硬盘。

Dear Tinybit,
Thank you for your advice.
Is it possible that the routine of checking contiguous file for the 'map' command cannot handle big numbers when the partition size of the hard disk is too large?
We are in fact able to boot up such contiguous files on partitions of several gigabytes.

2004-9-10 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 19 楼』:  

是的, 确实存在 BIG NUMBER 问题.

GRUB 曾经把扇区总数定义为 int 也就是有符号的整数. 新近的版本中已经更正为 unsigned int 了.

然而 GRUB 总是使用 4 字节来表示整数, 所以, 如果你的扇区号码超过 4 字节的表示范围的话, 那么就会出现各种错误.

这是 GNU GRUB 的问题, 我不曾修正过它. 所有与此有关的 BUG 都是有 GNU 的管理者来修正的.






因为我们亲手创建,这个世界更加美丽。
2004-9-11 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
windrv
中级用户




积分 385
发帖 118
注册 2003-11-11
状态 离线
『第 20 楼』:  



  Quote:
以下是引用不点在2004-9-11 19:20:34的发言:
是的, 确实存在 BIG NUMBER 问题.

GRUB 曾经把扇区总数定义为 int 也就是有符号的整数. 新近的版本中已经更正为 unsigned int 了.

然而 GRUB 总是使用 4 字节来表示整数, 所以, 如果你的扇区号码超过 4 字节的表示范围的话, 那么就会出现各种错误.

这是 GNU GRUB 的问题, 我不曾修正过它. 所有与此有关的 BUG 都是有 GNU 的管理者来修正的.

Dear Tinybit,
According to your advice, I have used the 'blocklist' command to check that file which fails to be 'mapped', the result is:
blocklist (hd0,0)/part.img
(hd0,0)24810224+11671
The 'blocklist' commands seems to implement correctly and indicates that the image file is in one contiguous block. But the 'map' command fails to load the file.
Is it related to the GNU GRUB problem you referred to above?
Could the 'map' command handle this issue just like the 'blocklist' command does?

2004-9-13 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 21 楼』:  

Oh! I got the answer: There should only be letters within the filename and no numerals are allowed!

是这样吗? 太令人吃惊了!

只允许字母, 不允许数字作文件名, 我还从未注意过, 首次听说呢. 准备试试看. 我想, 数字应当是允许的, 但空格却可能不行.

----------------------

关于 map 命令处理连续性, 由于你的不断报告, 我也在研究问题的根源. 我刚刚发现了一处毛病, 或许修改了就好了, 但还不能肯定. 这可能是我改进算法之后的一个疏忽的地方. 谢谢.






因为我们亲手创建,这个世界更加美丽。
2004-9-13 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
windrv
中级用户




积分 385
发帖 118
注册 2003-11-11
状态 离线
『第 22 楼』:  



  Quote:
以下是引用不点在2004-9-13 15:02:17的发言:
Oh! I got the answer: There should only be letters within the filename and no numerals are allowed!

是这样吗? 太令人吃惊了!

只允许字母, 不允许数字作文件名, 我还从未注意过, 首次听说呢. 准备试试看. 我想, 数字应当是允许的, 但空格却可能不行.

----------------------

关于 map 命令处理连续性, 由于你的不断报告, 我也在研究问题的根源. 我刚刚发现了一处毛病, 或许修改了就好了, 但还不能肯定. 这可能是我改进算法之后的一个疏忽的地方. 谢谢.

Dear Tinybit,
Thank you for your effort!
I hope that your improvement will bring us great convenience of launching various disk-file based operating systems using boot.ini on NTFS partition. Please give us the update when it is ready.
By the way, we have put up a new webpage on the homepage link of sourceforge.net for the project of GRUB4DOS & WINGRUB. The webpage has pointings to our webpage on our website therein with links to the webpages for GRUB4DOS on linuxeden.com & Wengier's previous link as site 1 and site 2. If you want to put up more links for GRUB4DOS, please email to bean. His address is bean@windrv.net
Also if you have any other ideas about how to design your weblinks or want to have a separate webpage on our site or have a new icon or logo for GRUB4DOS, you are welcome to give us your opinions so that we can serve you.

[此贴子已经被作者于2004-9-14 9:11:13编辑过]




2004-9-14 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 23 楼』:  

我没有进一步的建议,只是觉得 sourceforge 的网页上似乎还没有释放出文件来。






因为我们亲手创建,这个世界更加美丽。
2004-9-14 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
windrv
中级用户




积分 385
发帖 118
注册 2003-11-11
状态 离线
『第 24 楼』:  



  Quote:
以下是引用不点在2004-9-14 10:05:49的发言:
我没有进一步的建议,只是觉得 sourceforge 的网页上似乎还没有释放出文件来。

Dear Tinybit,
Bean is writing up the help file for WINGRUB and there may also be some examples of how to use GRUB. As it is ready, files can be uploaded to sourceforge.net or people can download from our site.

2004-9-14 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 25 楼』:  

0.3 系列的第三个试验版. 这可以看作是 alpha 测试, 没有版本号, 只是用日期来表示不同的版本. 更正了上次版本不能启动 CDROM 的一个很顽固的 BUG.

这个版本中的 CDROM 相关命令仍然只能用于某些华硕的机器型号. 对于华硕机器, 可以报告 BUG 了. 下载:

http://grub.linuxeden.com/wakka.php?wakka=UploadFile/files.xml&action=download&file=grub-2004-09-17.tar.gz
ftp://ftp.linuxeden.com/tinybit/grldr
ftp://ftp2.linuxeden.com/tools/grldr
ftp://ftp.linuxeden.com/tinybit/grub.exe
ftp://ftp2.linuxeden.com/tools/grub.exe

用法:

map --cdrom=9   这条命令直接引导光驱中可引导的 CDROM 盘片. 如果成功, 光盘中的操作系统将被引导, 因而不可能返回到当前的 GRUB 环境. 如果失败, 将返回到当前的 GRUB 环境.

map --cdrom=8   类似于上面的 map --cdrom=9, 但只是做好启动 CDROM 的准备工作, 需要再敲入一条 boot 命令才真正开始启动 CDROM.

map --cdrom=4 这条命令挂接光驱, 使它成为 BIOS 硬盘 0x80. 机器中原来的硬盘号码相应的都增加 1, 变成 0x81,0x82 等等. 如果成功, 你可以用 root (hd0)/[TAB] (此处表示按 Tab 键)来列出光盘上的文件了. 也就是说, 此时,(hd0) 就是光盘介质, 而 (hd1) 是你原来的硬盘 C: 了.

map --cdrom=-1  这条命令卸载由 map --cdrom=4 所建立的挂接, 恢复 BIOS 各磁盘号码为原始的值.

在微软的 win98 安装盘的情形, 由于 1.44M 的软盘映像的位置是在光盘绝对扇区 0x15, 这个采用的单位是 2048 字节的扇区,翻译成 512 字节的扇区, 则是在光盘绝对扇区 0x54, 也就是十进制的 84, 所以,可以这样来仿真软盘(注意是用光盘上的扇区序列来仿真软盘):

map (hd0)84+2880 (fd0)
map --hook

现在你用 root (fd0)/[TAB] 就可以列出虚拟软盘里的文件了.

另外, 用 blocklist 命令还可以验证, 光盘上的任何文件都是连续的, 没有碎片. 因此, 光盘上的 img 文件总是可以用作磁盘仿真的.

----------------------------------

windrv 可以试试看, 是否已经纠正了 map 判断连续性的错误.






因为我们亲手创建,这个世界更加美丽。
2004-9-17 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
windrv
中级用户




积分 385
发帖 118
注册 2003-11-11
状态 离线
『第 26 楼』:  

Dear Tinybit,
Initial testing shows that the updated version of grldr in relation to the 'map' command does not yet work.

[此贴子已经被作者于2004-9-20 11:02:10编辑过]




2004-9-20 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 27 楼』:  

旧版本确定文件连续性的方法是: 读出整个文件, 核对每一个读出的扇区, 看看是否连续. 这种方法能够成功, 但是很慢.

新版本确定文件连续性的方法是: 读第一个扇区, 确定起始扇区的位置, 再读最末一个扇区, 确定终止扇区的位置. 有了起始和终止扇区的物理位置,再和文件的长度进行比较, 就可以得出该文件中全部扇区是否连续的结论.

今天晚上准备发布一个调试版本, 专门针对 map 连续性检查的. 仍旧是上述的下载地址, 不过文件的日期会变化,请 windrv 注意查收.






因为我们亲手创建,这个世界更加美丽。
2004-9-20 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
windrv
中级用户




积分 385
发帖 118
注册 2003-11-11
状态 离线
『第 28 楼』:  



  Quote:
以下是引用不点在2004-9-20 15:42:30的发言:
旧版本确定文件连续性的方法是: 读出整个文件, 核对每一个读出的扇区, 看看是否连续. 这种方法能够成功, 但是很慢.

新版本确定文件连续性的方法是: 读第一个扇区, 确定起始扇区的位置, 再读最末一个扇区, 确定终止扇区的位置. 有了起始和终止扇区的物理位置,再和文件的长度进行比较, 就可以得出该文件中全部扇区是否连续的结论.

今天晚上准备发布一个调试版本, 专门针对 map 连续性检查的. 仍旧是上述的下载地址, 不过文件的日期会变化,请 windrv 注意查收.

Thanks a lot!

[此贴子已经被作者于2004-9-20 16:55:02编辑过]




2004-9-20 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: