无忧启动论坛

 找回密码
 注册
搜索

请问下g4d/g4e有没有一个命令显示grub4dos的版本号?

查看数: 3909 | 评论数: 7 | 收藏 3
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-11-13 16:49

正文摘要:

请问下g4d/g4e有没有一个命令显示grub4dos的版本号? 每次都要问网友你所用的grub4dos版本是什么,BIOS还是UEFI,如果有个命令或者内部变量能够显示其版本,就不用问了,写在菜单中,运行的时候echo显示出来。 有 ...

回复

nowayer 发表于 2023-12-1 08:17:35
提示: 作者被禁止或删除 内容自动屏蔽
laonat 发表于 2022-11-20 03:09:13
过来看看,学习一下
szwp 发表于 2022-11-13 18:52:15
***               在固定位置访问一些内部变量                               ***
******************************************************************************

地址            长度            说明
=========        ========        ==============================================
0000:8208        4字节(即双字) 启动分区号 install_partition (the boot partition)
0000:8280        4字节(即双字) 启动驱动器号(boot_drive)
0000:8284        4字节(即双字) pxe 客户端 ip (即本地ip)
0000:8288        4字节(即双字) pxe 服务器 ip
0000:828C        4字节(即双字) pxe 网关 ip
0000:8290        8字节(即四字) 最后访问的文件的大小(是执行"cat --length=0"后的文件大小)
0000:8298        4字节(即双字) 从 1M 开始的连续内存块的大小(以 KB 为单位)
0000:829C        4字节(即双字) 当前根分区号(current root partition)
0000:82A0        4字节(即双字) 当前根所在的驱动器(current root drive)
0000:82A4        4字节(即双字) 解压标志 (gzip非自动解压),非0时不自动解压
0000:82A8        8字节(即四字) 最后访问的分区的起始扇区号
0000:82B0        8字节(即四字) 最后访问的分区的扇区总数
0000:82B8        4字节(即双字) UD分区:磁头数,每磁道扇区数,真正驱动器号,最大每磁道扇区数(低位)
0000:8278        4字节(即双字)  GRUB4DOS编译的日期十进制数.
0000:82c0        8字节(即四字) 从 4G 开始的连续内存块的大小(以 KB 为单位)

点评

给力  发表于 2022-11-14 00:53

评分

参与人数 1无忧币 +10 收起 理由
liuzhaoyzz + 10 很给力!

查看全部评分

2011whp 发表于 2022-11-13 17:49:59
本帖最后由 2011whp 于 2022-11-13 18:00 编辑

calc *0x8278 > nul ;; set g4dver=%@retval%
if %@UEFI%==64  && echo g4e%g4dver% ! echo g4d%g4dver%

点评

果然是可以!  详情 回复 发表于 2022-11-13 18:20
liuzhaoyzz 发表于 2022-11-13 17:09:52
本帖最后由 liuzhaoyzz 于 2022-11-13 17:40 编辑
不点 发表于 2022-11-13 17:01
顶行就是版本和日期。有人喜欢把顶行去掉,那就没办法了。弄个版本命令,会占用代码空间。建议不要在 for b ...

我知道屏幕顶端显示的是g4d/g4e的版本号。问题是有时候截屏出来反馈问题的是运行中的截屏,运行中的截屏没有显示g4d/g4e版本号的功能吧, g4d/g4e的版本号好像是以16进制型式保存在grldr/g4ebootx64.efi文件中,是不是需要转换才能显示。

代码占用空间的问题,完全理解。对于BIOS可以放在ext外部程序中吧,对于UEFI应该无所谓,不会占用多少内存空间。      
不点 发表于 2022-11-13 17:01:17
顶行就是版本和日期。有人喜欢把顶行去掉,那就没办法了。弄个版本命令,会占用代码空间。建议不要在 for bios 下干这个事。efi 底下,我不知道代码体积的影响有多大,没发言权。

在 for bios 版本下,我甚至建议,应该再删除一些不常用的代码(以及不常用的命令),来尽量避免代码过大覆盖数据空间 的问题。因为 for bios 的环境, grub legacy 没有内存分配接口,都是我们自己划定的区域,用于代码,或用于数据。因此,代码无限增大,就会越界,就会与数据冲突。

点评

我知道屏幕顶端显示的是g4d/g4e的版本号。问题是有时候截屏出来反馈问题的是运行中的截屏,运行中的截屏没有显示g4d/g4e版本号的功能吧, g4d/g4e的版本号好像是以16进制型式保存在grldr/g4ebootx64.efi中,是不是需  详情 回复 发表于 2022-11-13 17:09

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

闽公网安备 35020302032614号

GMT+8, 2024-11-22 14:40

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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