无忧启动论坛

标题: 请问 grldr 的 clear 命令有什么用? [打印本页]

作者: 2010qaqz111    时间: 2010-11-24 12:08
标题: 请问 grldr 的 clear 命令有什么用?
clear 是清除屏幕还是清除内存的变量什么的?

还有,map命令的用法,--hook和--rehook有什么不同?

title 【5】 启动 Windows Vista/Windows 7
map --unhook
find --set-root --devices=h /bootmgr
map () (hd0)
map (hd0) ()
map --rehook
find --set-root --devices=h /bootmgr
chainloader /bootmgr

这样一组命令中,为什么交换磁盘顺序后要用 map --rehook 不能用 map --hook ?


还有,grldr 常用命令的有专门的手册么?教程我大多都看过,但是没有仔细解释各条命令用法的,如果有这样的教程,麻烦给个链接,我搜了好久都没找到,想学学这东西都没处下手。。。
作者: sratlf    时间: 2010-11-24 12:20
标题: 回复 #1 2010qaqz111 的帖子
lianjiang的教程里就有  附录部分  常用命令的解释
作者: chenall    时间: 2010-11-24 12:54
clear 顾名思义就是清屏的。
map --hook /map --rehook
如果是上面的菜单使用map --hook就可以了。

map --rehook用于内存盘映射,又释放的情况,这时用map --rehook会回收释放的内存。
例子

map --mem /a.img (fd0)
map --mem /b.img (hd0)
map --hook
xxxx
xxxx
#到这里(fd0)不需要使用了可以释放它
map (fd0) (fd0) 或 map --unmap=0
##这里用rehook,释放并重新整理内存。使用hook也可以,但是不会释放占用的内存。
map --rehook

[ 本帖最后由 chenall 于 2010-11-28 09:17 编辑 ]
作者: 2010qaqz111    时间: 2010-11-24 13:10
原帖由 chenall 于 2010-11-24 12:54 发表
clear 顾名思义就是清屏的。
map --hook /map --rehook
如果是上面的菜单使用map --hook就可以了。

map --rehook用于内存盘映射,又释放的情况,这时用map --rehook会回收释放的内存。
例子

map --mem ...

1。--unload 的意思好理解,就是清空映射表对吧,=0是仅清空映射表的索引为0的项目,那么后面的项目应该是不会依次上移吧?

2。我在一些教程里看到说,map 命令执行映射的时候只是把映射加入了一个队列,在 --hook 之前不会生效,按照c大楼上的解释,是不是就是说,--rehook 的效果等于先 --unload 不带参数,然后再 --hook?

3。那么使用 --hook 的地方是不是都可以用 --rehook 代替?

4。顶楼那个菜单,如果用 --rehook 的话,在 VMW 里面(U盘链接为SCSI)会报错,说什么 table not empty 啥的(忘了具体的提示了),换成 rehook 就可以启动 U盘 可见分区里的 /bootmgr,这是什么原因?执行到 --hook 的时候报错说 table not empty,应该是因为映射表已经被填入内容了对吧,但是上面的菜单里在 --hook 之前没有过其他的 map --hook 命令啊?难道是交换设备顺序的那两行实际上已经填了东西到映射表里面去了?

[ 本帖最后由 2010qaqz111 于 2010-11-24 13:11 编辑 ]
作者: 2010qaqz111    时间: 2010-11-24 13:16
原帖由 sratlf 于 2010-11-24 12:20 发表
lianjiang的教程里就有  附录部分  常用命令的解释

谢谢,那个教程我看过,但是对命令参数什么的解释并不是很详细,所以很头痛。。。
作者: chenall    时间: 2010-11-24 13:27
看来你可能完全没有理解我的话,嘻嘻,这是很正常的。多次几次也许你就会明白了。

1.--unmap=0 是清除(fd0)的映射,你的解释不对。
相当于--unmap=(fd0)
如果是(hd0)就是0x80

2.不能这样解释。
map --unmap=xxx
再map --hook
这是不会释放内存的。

3.map --rehook有它固有的作用。
你只要知道如果你映射了很多内存盘,需要释放其中几个时。
先map --unmap=(xx) 再map --rehook就行了。
其它情况下只用map --hook,

4.参考3.

另外我不知道你菜单第一句
map --unhook
要做什么的,完全没有用处。
你的菜单直接使用map --hook是可以的。

[ 本帖最后由 chenall 于 2010-11-28 09:18 编辑 ]
作者: 2010qaqz111    时间: 2010-11-24 13:41
原帖由 chenall 于 2010-11-24 13:27 发表
看来你可能完全没有理解我的话,嘻嘻,这是很正常的。多次几次也许你就会明白了。

1.--unload=0 是清除(fd0)的映射,你的解释不对。
相当于--unload=(fd0)
如果是(hd0)就是0x80

2.不能这样解释。
map ...

谢谢解释,有点晕了,我再多试试,非常感谢
作者: zhaohj    时间: 2010-11-24 13:42
map --unhook=XXX?
是map --ummap=DRIVERS

map --unhook是有这个命令,但不知道干什么用的?
按意思理解是hook的反义,但hook后能unhook吗?
作者: chenall    时间: 2010-11-28 09:20
原帖由 zhaohj 于 2010-11-24 13:42 发表
map --unhook=XXX?
是map --ummap=DRIVERS

map --unhook是有这个命令,但不知道干什么用的?
按意思理解是hook的反义,但hook后能unhook吗?


汗,我也被搞晕了,前面的应该是--unmap,呵呵。

map --unhook
感觉这个命令没有多大用处,map --unhook之后所有有内存盘都将不可访问。
然后好像就没有其它作用了,在启动系统的时候还是会自动map --hook的。

这个的具体作用我也不清楚。




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net./) Powered by Discuz! X3.3