无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 13360|回复: 28

[求助] 无法将基于XP的RAMOS加载到高位内存!

[复制链接]
发表于 2011-4-1 14:43:47 | 显示全部楼层 |阅读模式
  本人玩RAMOS系统也半年时间有多了,但一直都是2G内存在玩,无法加载大一点的镜像文件,总感觉不过瘾。近来终于把内存加到了5G,想着虚拟硬盘空间总算可以宽松点了,可结果让我很郁闷,因为无论怎么试,都无法将虚拟硬盘加载到3G以上的内存空间。所以镜像和系统抢夺内存的矛盾还是没有解决,搜遍了各处,都没能解决问题——因此,特来高手云集的无忧来求救。

  本人用的是台式机:DELL OPTIPLEX 755,除内存升级过两次,硬盘加到两个外,其它的都是原装。

  我用的GRUB4DOS是最新版,启动RAMOS时最顶行显示内容:
[GRUB4DOS 0.4.5b 2011-03-22, Mem: 639K/3059M/1920M, End: 352B32             1]

  启动菜单如下:
title /WIN7SYS/DELL.ima
find --set-root /WIN7SYS/DELL.ima
map --mem --top /WIN7SYS/DELL.ima (hd0)
map --hook
chainloader (hd0,0)/ntldr

也试过这样的:
title /WIN7SYS/DELL.ima
find --set-root /WIN7SYS/DELL.ima
map --mem--top /WIN7SYS/DELL.ima (hd0)
map --hook
chainloader (hd0,0)/ntldr

  请各位高手帮忙,先谢了!
 楼主| 发表于 2011-4-1 14:47:58 | 显示全部楼层
附启动后的内存截图,另外说明一下:我用的是WinVBlock驱动。最初用的是:FiraDisk,但后来为了能更新镜像文件需要直接从镜像(非--mem方式)启动,而用FiraDisk死活都无法成功,用WinVBlock一次就成功了。所以后来就改用WinVBlock了。
20110401_141748.jpg
回复

使用道具 举报

发表于 2011-4-1 16:44:58 | 显示全部楼层
你的高位内存只有5-3.25=1.75g,小于镜像文件。
回复

使用道具 举报

 楼主| 发表于 2011-4-1 18:54:03 | 显示全部楼层
原帖由 123-888 于 2011-4-1 16:44 发表
你的高位内存只有5-3.25=1.75g,小于镜像文件。


感谢关注!但我用1.2G镜像文件还是无法载入高位内存!
20110401_185118.jpg
回复

使用道具 举报

发表于 2011-4-1 19:28:38 | 显示全部楼层
原帖由 <i>123-888</i> 于 2011-4-1 16:44 发表
你的高位内存只有5-3.25=1.75g,小于镜像文件。
<br />

直觉这样不合理,但看了下说明,还真是这样。

  1. 0.4.5新增参数 --top ,配合 --mem 参数使用,可以将镜像加载至高端内存,如

  2. map --mem --top (hd0,0)/hdimg.img (hd1)

  3. 注意:把镜像加载到高位内存就不能使用gzip压缩,两者不能同时实现。

  4. 在grub4dos中,内存在3.25G处被分成了高端内存和低端内存两端,镜像不能跨3.25G这个点。

  5. 比如4G内存的机器,高端内存大概为4.0G-3.25G=0.75G,即750M左右。

  6. 要注意的是,高端内存和低端内存是不能被同一个镜像同时使用的,比如4G内存,不能将800M体积的镜像加载到高端内存,

  7. 因为高端内存只有750M左右,多余部分不会写入低端内存中,使用时要注意。


复制代码

点评

http://www.junbayi.com 我欲封天  发表于 2014-12-17 12:12
回复

使用道具 举报

 楼主| 发表于 2011-4-2 09:36:59 | 显示全部楼层
原帖由 快雪时晴 于 2011-4-1 19:28 发表


直觉这样不合理,但看了下说明,还真是这样。

0.4.5新增参数 --top ,配合 --mem 参数使用,可以将镜像加载至高端内存,如

map --mem --top (hd0,0)/hdimg.img (hd1)

注意:把镜像加载到高位内存 ...


这里我要说明几点:

1.首先我建立镜像文件大小的时候就注意到了3.25G的问题,所以我是根据启动时GRUB4DOS显示的内存数量建的1.92G的VHD文件,
[GRUB4DOS 0.4.5b 2011-03-22, Mem: 639K/3059M/1920M, End: 352B32             1]

另外为了验证,我还创建了更小的1.2G的镜像文件,测试结果都是一样的:无法加载至高位内存。


2.因为有时需要更新镜像内容,所以经常用不加载入内存的方式启动镜像文件(镜像文件当然是连续存储在硬盘上的),因此我从来不压缩镜像文件的(当然也因为我硬盘空间比较充足)。


继续期待高手帮忙!

[ 本帖最后由 2011happysong 于 2011-4-6 08:41 编辑 ]
回复

使用道具 举报

发表于 2011-4-2 11:29:21 | 显示全部楼层
会不会是显存也占用了高位内存,从而导致高位内存不足而加载不了?
回复

使用道具 举报

发表于 2011-4-2 11:58:52 | 显示全部楼层
把displaymem显示的信息贴出来看一下。

执行map --mem--top /WIN7SYS/DELL.ima (hd0)
之后再把map --status的结果贴出来看一下。
回复

使用道具 举报

发表于 2011-4-3 00:25:07 | 显示全部楼层
这个问题我遇到过,我敢说如果你的内存是4G的话就不会有这问题了。我以前的内存是4G的时候曾经成功将RamXP的镜像加载到高位内存过,但是当我将内存升级至6G时却遇到蓝屏,当然不用--top参数是可以的。百思不解的时候突然想到XP的启动配置文件有个/PAE参数,于是马下试试,结果是,,,,,,成功了。不知你的行不行。

点评

http://www.tiandihong8.com 易经算命  发表于 2014-12-17 12:13
回复

使用道具 举报

 楼主| 发表于 2011-4-3 09:23:19 | 显示全部楼层
原帖由 xianglang 于 2011-4-2 11:29 发表
会不会是显存也占用了高位内存,从而导致高位内存不足而加载不了?


我用内存虚拟硬盘软件试了,可以把高位内存虚拟成1980M的虚拟盘。也就是说高位内存是足够的。
回复

使用道具 举报

 楼主| 发表于 2011-4-3 09:24:21 | 显示全部楼层
原帖由 chenall 于 2011-4-2 11:58 发表
把displaymem显示的信息贴出来看一下。

执行map --mem--top /WIN7SYS/DELL.ima (hd0)
之后再把map --status的结果贴出来看一下。


电脑在办公室,等明天上班我就试。
回复

使用道具 举报

 楼主| 发表于 2011-4-4 10:17:10 | 显示全部楼层
原帖由 chenall 于 2011-4-2 11:58 发表
把displaymem显示的信息贴出来看一下。

执行map --mem--top /WIN7SYS/DELL.ima (hd0)
之后再把map --status的结果贴出来看一下。


下面这一行是启动时最一行的信息:
GRUB4DOS 0.4.5b 2011-03-22, Mem: 639K/3059M/1920M, End:352B32

下面是启动时的内存信息:
grub>displaymem
EISA Memory BIOS Interface is present
Address Map BIOS Interface is present
Lower Memory: 639K, Upper memory (to first chipset hole): 3133438K
[Address Range Descriptor entries immediately follow (values are 64-bit)]
  Usable RAM: Base: 0x0, Length: 0x9FC00
  Reserved: Base: 0xF0000, Length: 0x10000
  Usable RAM: Base: 0x100000, Length: 0xBF3FF800
  Reserved: Base: 0xBF4FF800, Length: 0x54400
  Reserved: Base: 0xBF553C00, Length: 0x2000
  Reserved: Base: 0xBF555C00, Length: 0xAAA400
  Reserved: Base: 0xE0000000, Length: 0x10000000
  Reserved: Base: 0xFED00000, Length: 0x400
  Reserved: Base: 0xFED20000, Length: 0x80000
  Reserved: Base: 0xFEC00000, Length: 0x100000
  Reserved: Base: 0xFEE00000, Length: 0x100000
  Reserved: Base: 0xFFB00000, Length: 0x500000
  Usable RAM: Base: 0x100000000, Length: 0x3C000000
  Usable RAM: Base: 0x13C000000, Length: 0x3C000000

下面是把1.92G的镜像文件加载到内存时的MAP --status信息:
grub>map --mem--top /WIN7SYS/DELL.ima (hd0) # DELL.ima's size: 1.92G
......
grub>map --status
floppies_orig=0, harddrives_orig=2, floppies_curr=0, harddrives_curr=2
Number of ATAPI CD-ROMs: 0
ram_drive=0x7F, rd_base=0x0, rd_size=0x100000000
Fr To Hm Sm To_C _H _S   Start_Sector     Sector_Count   DHR
-- -- -- -- ---- -- -- ---------------- ---------------- ---
80 FF FE 3F 82FE FE 7F 000000000021E1F8 00000000003DC600 M<S

下面是把1.2G的镜像文件加载到内存时的MAP --status信息:
grub>map --mem--top /WIN7SYS/RAMOS.IMG (hd0) # RAMOS.IMG's size: 1.2G
......
grub>map --status
floppies_orig=0, harddrives_orig=2, floppies_curr=0, harddrives_curr=2
Number of ATAPI CD-ROMs: 0
ram_drive=0x7F, rd_base=0x0, rd_size=0x100000000
Fr To Hm Sm To_C _H _S   Start_Sector     Sector_Count   DHR
-- -- -- -- ---- -- -- ---------------- ---------------- ---
80 FF FE 3F 8AFE FE 7F 00000000003907B8 000000000026A040 M<S

烦劳chenall老师了!
回复

使用道具 举报

发表于 2011-4-4 11:17:37 | 显示全部楼层
发现你的命令不对..

map --mem --top

中间要有空格

另外高位内存被分成了两个960MB.不知会不会有影响.

如果你1.2G的不能加载,可以试试小于960MB的应该是没有问题的.

[ 本帖最后由 chenall 于 2011-4-4 11:26 编辑 ]

点评

同样因为内存的问题搜多了好多资料找到这里了,请教下chenall老师,我K29,4+2的内存配置,grubdos里显示的内存居然是630k/511M/2550M。6G内存怎么会这么少呢,低位才511  详情 回复 发表于 2014-10-17 21:00
回复

使用道具 举报

 楼主| 发表于 2011-4-4 11:57:53 | 显示全部楼层
原帖由 chenall 于 2011-4-4 11:17 发表
发现你的命令不对..

map --mem --top

中间要有空格

另外高位内存被分成了两个960MB.不知会不会有影响.

如果你1.2G的不能加载,可以试试小于960MB的应该是没有问题的.


其实我一开始都是用有空格的命令试的,因为不成功,所以百度的时候见有人用没空格的命令能成功才去掉了空格试的。在测试的时候其实我是两种命令格式都试了的,刚刚又重启了一次去验证,结果还是那样——没有一个字符的差别。

不过如果说我的高位内存被分成了两个960M,那么有没有什么解决办法呢?

记得刚开始的时候,为了高位内存加载RAMOS的问题,我试过一个950M的镜像,结果是蓝屏。后来又试了同时加载两个镜像文件,第一个(1.2G)不加:--top参数,第二个(950M)加:--top参数,结果发现第二个是可以加到高位内存的,但却是未格式化的形式。不知道是什么原因。

另外:想请教一下chenall老师,用:displaymem显示的结果有没有办法直接导出到文本文件呢?我是一字一字抄下来的,抄到手软哪,呵呵!
回复

使用道具 举报

发表于 2011-4-4 12:00:44 | 显示全部楼层
在你的硬盘根目录下新建一个文件,大小4KB以上.(也可以直接复制一个没有用的文件过来)

比如文件名是display.txt

进入GRUB4DOS命令之后.
先定位这个文件的磁盘
find --set-root /display.txt
然后
displaymem > /display.txt
这样就把这个信息写入到/display.txt中去了.

像map信息也是一样.比如附加到/display.txt中
map --status >> /display.txt


注意:grub4dos 对空格的要求比较严格,该有的空格不可以少.不该有的也不能多.

[ 本帖最后由 chenall 于 2011-4-4 12:02 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2011-4-4 16:48:52 | 显示全部楼层
原帖由 chenall 于 2011-4-4 12:00 发表
在你的硬盘根目录下新建一个文件,大小4KB以上.(也可以直接复制一个没有用的文件过来)

比如文件名是display.txt

进入GRUB4DOS命令之后.
先定位这个文件的磁盘
find --set-root /display.txt
然后
disp ...


多谢,我已经按照老师说的学会导出结果了。不过导出的跟前面贴出来的还是一样的。

所以我又按照老师的指导做了两个958M的镜像文件,一试之下又有了新的发现。这里我把测试结果说明如下:
/WIN7SYS/RAM_XP.IMG —— 使用驱动程序:firadisk-driver-0.0.1.30
/WIN7SYS/RAM_XP-w.IMG —— 使用驱动程序:WinVBlock 0.0.0.8 (2011-02-14版)

一、启动菜单:
title testing with /WIN7SYS/RAM_XP.IMG
find --set-root /WIN7SYS/RAM_XP.IMG
map --mem --top /WIN7SYS/RAM_XP.IMG (hd0)
map --mem --top /WIN7SYS/RAM_XP-w.IMG (hd1)
map --hook
chainloader (hd0,0)/ntldr
结果:XP能够顺利启动,并且两个镜像文件都被加载入高位内存

二、启动菜单:
title testing with /WIN7SYS/RAM_XP-w.IMG
find --set-root /WIN7SYS/RAM_XP.IMG
map --mem --top /WIN7SYS/RAM_XP-w.IMG (hd0)
map --mem --top /WIN7SYS/RAM_XP.IMG (hd1)
map --hook
chainloader (hd0,0)/ntldr
结果:启动时蓝屏,无法进入RAM XP系统

三、启动菜单:
title testing with /WIN7SYS/RAM_XP-w.IMG
find --set-root /WIN7SYS/RAM_XP.IMG
map --mem /WIN7SYS/RAM_XP-w.IMG (hd0)
map --mem --top /WIN7SYS/RAM_XP.IMG (hd1)
map --hook
chainloader (hd0,0)/ntldr

结果:XP能够顺利启动(从第一个镜像文件),并且第二个镜像文件(/WIN7SYS/RAM_XP.IMG)也可以被加载入高位内存,但该虚拟硬盘(第二个镜像文件)被显示为未识别、未格式化的硬盘

四、启动菜单:
title ram_xp.img with  firadisk
find --set-root /WIN7SYS/RAM_XP.IMG
map /WIN7SYS/RAM_XP.IMG (hd0)
map --hook
chainloader (hd0,0)/ntldr
结果:启动时蓝屏,无法进入RAM XP系统

五、启动菜单:
title ram_xp.img with  firadisk
map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)
find --set-root /WIN7SYS/RAM_XP.IMG
map /WIN7SYS/RAM_XP.IMG (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=disk,vmem=find:/WIN7SYS/RAM_XP.IMG,boot;\n\0
rootnoverify (hd0)
chainloader +1
结果:启动时一直在滚动条处滚动,无法进入RAM XP系统

因此,我得出如下结论:
1、WinVBlock 0.0.0.8 不支持高位内存镜像,但对直接载入镜像文件(非载入内存)支持较好
2、FiraDisk 0.0.0.30 支持载入镜像文件到高位内存,但对直接载入镜像文件(非载入内存)支持较差(我这里根本不支持)

不知道以上结论是否正确?请各位高手斧正!
多谢了!
回复

使用道具 举报

 楼主| 发表于 2011-4-6 08:46:42 | 显示全部楼层
原帖由 chenall 于 2011-4-4 11:17 发表
发现你的命令不对..

map --mem --top

中间要有空格

另外高位内存被分成了两个960MB.不知会不会有影响.

如果你1.2G的不能加载,可以试试小于960MB的应该是没有问题的.


“另外高位内存被分成了两个960MB”,很可能就是这个原因了,请问为什么会产生这个问题呢,还有就是有没有什么办法解决这个问题呢?
回复

使用道具 举报

发表于 2011-4-6 13:06:17 | 显示全部楼层
原帖由 2011happysong 于 2011-4-6 08:46 发表


“另外高位内存被分成了两个960MB”,很可能就是这个原因了,请问为什么会产生这个问题呢,还有就是有没有什么办法解决这个问题呢?

这应该和bios有关。看你的内存提示639K/3059M/1920M,也就是32位低位内存不到3GB,而不是一般的3.25G,是不是开了集显?总内存少了5*1024-3059-1920=141MB
回复

使用道具 举报

 楼主| 发表于 2011-4-6 14:15:36 | 显示全部楼层
原帖由 fujianabc 于 2011-4-6 13:06 发表

这应该和bios有关。看你的内存提示639K/3059M/1920M,也就是32位低位内存不到3GB,而不是一般的3.25G,是不是开了集显?总内存少了5*1024-3059-1920=141MB


确实是用的集成显卡,这台机器是DELL机。

我在BIOS里也没找到跟集成显卡有关的选项。所以请问现在我还能采取什么办法解决这个问题吗?
回复

使用道具 举报

发表于 2011-11-1 20:45:15 | 显示全部楼层
我明天也5G内存了,跟楼主同一路线,楼主后来呢?没有下文了??
回复

使用道具 举报

发表于 2012-3-23 02:08:34 | 显示全部楼层
最后如何解决呢?麻烦楼主告知。
回复

使用道具 举报

发表于 2014-10-17 21:00:34 | 显示全部楼层
chenall 发表于 2011-4-4 11:17
发现你的命令不对..

map --mem --top

同样因为内存的问题搜多了好多资料找到这里了,请教下chenall老师,我K29,4+2的内存配置,grubdos里显示的内存居然是630k/511M/2550M。6G内存怎么会这么少呢,低位才511
回复

使用道具 举报

发表于 2014-12-9 01:09:29 来自手机 | 显示全部楼层
因此,我得出如下结论: 1、WinVBlock 0.0.0.8 不支持高位内存镜像,但对直接载入镜像文件(非载入内存)支持较好 2、FiraDisk 0.0.0.30 支持载入镜像文件到高位内存,但对直接载入镜像文件(非载入内存)支持较差(我这里根本不支持)  不知道以上结论是否正确?请各位高手斧正

点评

好高深的说,,,,顶  详情 回复 发表于 2016-6-18 19:13
回复

使用道具 举报

发表于 2014-12-9 01:11:55 来自手机 | 显示全部楼层
前几天,我做win7的ramos.winvbock没有成功过,现在想想估计是载入高位内存的原因
回复

使用道具 举报

发表于 2014-12-9 01:17:18 来自手机 | 显示全部楼层
firadisk就可以成功,和系统绝无关系,我尝试将img载入内存,在启动硬盘上的系统,加载f驱动的正常,w区现实未格式化,手动格式直接死机
回复

使用道具 举报

发表于 2016-6-18 19:13:40 | 显示全部楼层
huaqingyuan 发表于 2014-12-9 01:09
因此,我得出如下结论: 1、WinVBlock 0.0.0.8 不支持高位内存镜像,但对直接载入镜像文件(非载入内存)支 ...

好高深的说,,,,顶
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 02:29

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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