无忧启动论坛

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

[原创] GRUB4DOS for UEFI

    [复制链接]
391#
发表于 2020-11-12 12:55:27 | 只看该作者
sunsea 发表于 2020-11-12 11:45
本质上这类驱动只是把这块内存“占用”起来,然后向Windows创建了一个设备而已。
然后如果映射到的磁盘 ...

SVBus之类的支持带文件碎片的map吗?

点评

我迷糊了,是否支持带碎片映射,不是只是 G4D 之类的事情吗,好像与 SVBUS 之类无关?G4D 能够映射出来的磁盘,安装了 SVBUS 之类驱动的 Windows 都难认出来并使用啊。  详情 回复 发表于 2020-11-12 13:45
不清楚,似乎没看见处理碎片的代码,应该是不支持的。  详情 回复 发表于 2020-11-12 13:22
回复

使用道具 举报

392#
发表于 2020-11-12 13:14:53 | 只看该作者
非常给力 非常牛
回复

使用道具 举报

393#
发表于 2020-11-12 13:22:10 来自手机 | 只看该作者
wintoflash 发表于 2020-11-12 12:55
SVBus之类的支持带文件碎片的map吗?

不清楚,似乎没看见处理碎片的代码,应该是不支持的。
回复

使用道具 举报

394#
 楼主| 发表于 2020-11-12 13:40:30 来自手机 | 只看该作者
不支持。要支持的话,它的把碎片插槽读进来。怎么传递给windows?还是内部拦截读程序,指挥windows读那一段?

点评

如果要处理碎片插槽的话,我觉得可以给这些驱动打个补丁……比如说还可以再在640KB的区域里再加一个$G4DBLCK这种特征签名的开头然后后面是碎片插槽,现在这些驱动里映射插槽只用了CHS,起始扇区和长度,以及from to_  详情 回复 发表于 2020-11-12 14:41
回复

使用道具 举报

395#
发表于 2020-11-12 13:45:46 | 只看该作者
wintoflash 发表于 2020-11-12 12:55
SVBus之类的支持带文件碎片的map吗?

我迷糊了,是否支持带碎片映射,不是只是  G4D 之类的事情吗,好像与 SVBUS 之类无关?G4D 能够映射出来的磁盘,安装了 SVBUS 之类驱动的 Windows 都难认出来并使用啊。
回复

使用道具 举报

396#
 楼主| 发表于 2020-11-12 13:57:22 来自手机 | 只看该作者
windows读文件系统,不连续的话,查簇表。而现在讨论的是扇区序列。
回复

使用道具 举报

397#
发表于 2020-11-12 14:41:14 来自手机 | 只看该作者
2011yaya2007777 发表于 2020-11-12 13:40
不支持。要支持的话,它的把碎片插槽读进来。怎么传递给windows?还是内部拦截读程序,指挥windows读那一段?

如果要处理碎片插槽的话,我觉得可以给这些驱动打个补丁……比如说还可以再在640KB的区域里再加一个$G4DBLCK这种特征签名的开头然后后面是碎片插槽,现在这些驱动里映射插槽只用了CHS,起始扇区和长度,以及from to_drive……剩下的字节可以用来表征用了几个碎片插槽啥的……然后驱动里用个链表记录一下这些碎块读盘的时候换算一下就行了……理论上应该能搞
回复

使用道具 举报

398#
 楼主| 发表于 2020-11-12 15:16:25 来自手机 | 只看该作者
我不清楚,是由SVBus安装的驱动吗?是,就好办。有人修改它吗?不是,后续windows或者其他程序还要读映射的社区序列的虚拟盘,就比较麻烦了。

点评

?安装驱动是什么情况? 说了好几遍只是为了认出系统文件而已…… SCSI Miniport这个层次,从上面收来的指令很简单的,就是读XXX扇区开始多长的几个扇区……所以应该还算好处理  详情 回复 发表于 2020-11-12 15:29
回复

使用道具 举报

399#
发表于 2020-11-12 15:29:26 来自手机 | 只看该作者
2011yaya2007777 发表于 2020-11-12 15:16
我不清楚,是由SVBus安装的驱动吗?是,就好办。有人修改它吗?不是,后续windows或者其他程序还要读映射的社 ...

?安装驱动是什么情况?
说了好几遍只是为了认出系统文件而已……

SCSI Miniport这个层次,从上面收来的指令很简单的,就是读XXX扇区开始多长的几个扇区……所以应该还算好处理
回复

使用道具 举报

400#
发表于 2020-11-12 18:57:01 | 只看该作者
大神辛苦了。感谢大神
回复

使用道具 举报

401#
发表于 2020-11-12 19:26:00 | 只看该作者
本帖最后由 2011whp 于 2020-11-13 11:45 编辑

yaya的意思 z.iso虚拟前有碎块:        
文件段1-100        磁盘块360起 100块
文件段100-200        磁盘块5148起 100块
……        ……
        
        
sunsea认为:svbus接收的是 连续内存块(不接收非ramos,因为此时没有文件系统),svbus只是虚拟出在主板上插了一块硬盘或光盘。并能对接上 后续的加载文件系统加载。


问题:yaya想让svbus能读文件系统,就得svbus中有转换功能
     还要求 win加载文件系统驱动时  得保证顺序,先加载实体的,再加载虚拟的(因为虚拟的还要用实体的文件系统)。这样才不会在过程中出错,有点难。做成连续内存块是g4e的工作。(svbus接收 一个对应表 直接io  实体磁盘,也是可行的吧)

yaya这样的要求,只能用imdisk之类的,在文件系统有了之后,接收个文件名,虚拟成设备

总之
传递连续内存块 :g4e 适应 svbus
传递对应表:  svbus 适应 g4e
传递文件名:  超出范围  
回复

使用道具 举报

402#
 楼主| 发表于 2020-11-12 19:49:36 来自手机 | 只看该作者
有点误解。我的意思是:假如读文件段90-120,现在是从450开始读30,480结束。应当是从450开始10,然后从5148读20,5168结束。

点评

实体文件如下: 90-100 对应450 起 10 100-120 对应5148起 20 交给 svbus 内部再怎么读是另一会事 如 subus 读 95 它会自动换成读 455  详情 回复 发表于 2020-11-12 20:03
回复

使用道具 举报

403#
发表于 2020-11-12 20:03:23 | 只看该作者
本帖最后由 2011whp 于 2020-11-14 10:42 编辑
2011yaya2007777 发表于 2020-11-12 19:49
有点误解。我的意思是:假如读文件段90-120,现在是从450开始读30,480结束。应当是从450开始10,然后从514 ...

实体文件如下:
90-100   对应450 起 10
100-120  对应5148起 20

交给 svbus  内部再怎么读是另一会事

如 svbus 读 95起10   它会自动换成读 455起5  +  5148起5
再住上加载成文件系统,就是用文件的 90-120 当成虚拟设备的绝对位置了(扇区号了)


文件内部顺序号=虚拟设备绝对扇区  对应实体磁盘扇区号



回复

使用道具 举报

404#
 楼主| 发表于 2020-11-12 20:10:59 来自手机 | 只看该作者
svbus会那样读吗?如果能,那太好了。但是现在还没有做到。

点评

现在没做到,但是做成这个应该还是比较简单的……我在想要不要写个补丁啥的  详情 回复 发表于 2020-11-12 20:12
回复

使用道具 举报

405#
发表于 2020-11-12 20:12:18 | 只看该作者
2011yaya2007777 发表于 2020-11-12 20:10
svbus会那样读吗?如果能,那太好了。但是现在还没有做到。

现在没做到,但是做成这个应该还是比较简单的……我在想要不要写个补丁啥的
回复

使用道具 举报

406#
 楼主| 发表于 2020-11-12 20:38:20 来自手机 | 只看该作者
到现在为止,还没有收到是否G4E成功配合了svbus.

点评

我过几天闲下来的时候做个测试吧,尼玛这几天全是考试……先测试下能否正常识别虚拟盘以及能否正常从上面开机好了……  详情 回复 发表于 2020-11-12 20:45
回复

使用道具 举报

407#
发表于 2020-11-12 20:45:01 | 只看该作者
2011yaya2007777 发表于 2020-11-12 20:38
到现在为止,还没有收到是否G4E成功配合了svbus.

我过几天闲下来的时候做个测试吧,尼玛这几天全是考试……先测试下能否正常识别虚拟盘以及能否正常从上面开机好了……
回复

使用道具 举报

408#
 楼主| 发表于 2020-11-12 21:16:53 来自手机 | 只看该作者
先办正是,闲下来再测试吧。
回复

使用道具 举报

409#
发表于 2020-11-15 08:31:42 | 只看该作者
终于支持了UEFI,不要每次用U盘来折腾了
回复

使用道具 举报

410#
发表于 2020-11-15 08:53:58 | 只看该作者
6. 目前 PXE 网启只支持 tftp。

看介绍是支持网启的,到底怎么弄啊?

点评

是可以网启的,不过目前还不支持proxydhcp,还不好测试  详情 回复 发表于 2020-11-16 15:45
回复

使用道具 举报

411#
发表于 2020-11-16 15:45:36 | 只看该作者
xhwfq 发表于 2020-11-15 08:53
6. 目前 PXE 网启只支持 tftp。

看介绍是支持网启的,到底怎么弄啊?

是可以网启的,不过目前还不支持proxydhcp,还不好测试
回复

使用道具 举报

412#
发表于 2020-11-16 23:11:34 | 只看该作者
顶起!终于等到向开发者致敬
回复

使用道具 举报

413#
发表于 2020-11-17 14:24:07 | 只看该作者
收藏 备用~~
g4d用着顺手
回复

使用道具 举报

414#
发表于 2020-11-18 11:45:12 | 只看该作者
OK,我下午处理一下。
回复

使用道具 举报

415#
发表于 2020-11-18 14:05:10 | 只看该作者
下载后只有:
BOOTX64.EFI
ChangeLog_UEFI.txt
Get_Source_of_This_Build.txt
grub4dos_8bb5845.diff
menu.lst
这几个文件,要做pxe,它好像还需要其它的支持文件吧?

点评

PXE的核心是 dhcpd 配置的参数 从参数里指定的 一个文件bootx64.efi(也可指定一个菜单文件menu.lst共两个),开始的 网卡默认是tftp 的 (pd) 盘 ,http支持 不标准,好像是麾改的 被引导的系统也得支持网启  详情 回复 发表于 2020-11-18 20:25
回复

使用道具 举报

416#
发表于 2020-11-18 18:12:13 | 只看该作者
牛毕人士
回复

使用道具 举报

417#
发表于 2020-11-18 19:46:04 | 只看该作者
2011yaya2007777 发表于 2020-11-18 10:48
chenall,我把源代码上传到这里,建立分支的事情有劳你了。
     批处理增加 esle 函数。增加 {脚本集} 表示法。
     如:
     if 条件
     {
       脚本集
       if 条件 {
         脚本集 }
       else {
         脚本集 }
     }
     esle if 条件
     {
       脚本集
     }
     esle
     {
       脚本集
     }


是不是打错了? "esle" -> "else"
回复

使用道具 举报

418#
 楼主| 发表于 2020-11-18 19:48:49 来自手机 | 只看该作者
打错了。

点评

[attachimg]468749[/attachimg] 你源码里面带的grub-mkimage是不是原版grub2的? 32位的程序在64位系统里面跑不了。如果是原版,那执行系统里面带的grub-mkimage是不是好一些。  详情 回复 发表于 2020-11-18 20:32
回复

使用道具 举报

419#
发表于 2020-11-18 20:25:09 | 只看该作者
hfxiang 发表于 2020-11-18 14:05
下载后只有:
BOOTX64.EFI
ChangeLog_UEFI.txt

PXE的核心是 dhcpd 配置的参数
从参数里指定的 一个文件bootx64.efi(也可指定一个菜单文件menu.lst共两个),开始的
网卡默认是tftp 的 (pd) 盘 ,http支持 不标准,好像是麾改的

被引导的系统也得支持网启

不知道,grub4dos_8bb5845.diff 这个是什么,好你与用户无关。望科普下……

点评

我对楼主所说的理解为“用bootx64.efi替代pxelinux.0”,是这样吧?谢谢您的热心回复  详情 回复 发表于 2020-11-19 08:46
回复

使用道具 举报

420#
发表于 2020-11-18 20:32:39 | 只看该作者
本帖最后由 wintoflash 于 2020-11-18 20:36 编辑


你源码里面带的grub-mkimage是不是原版grub2的?
32位的程序在64位系统里面跑不了。如果是原版,那执行系统里面带的grub-mkimage是不是好一些。

-------------------
原版不行。。。


-------------------
用grub-mkimage是把elf转成pe吗?
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-26 16:44

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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