Jump to content











Photo
- - - - -

More than 4 GB ImDisk on 32 bit Windows ?

4 gb 32 64 bit

  • Please log in to reply
26 replies to this topic

#1 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 26 July 2012 - 06:44 AM

Hi Oluf

Yes I know, that there's a 3.3 GB RAM limit on 32 bit Windows :dubbio:

But reading http://msdn.microsof...8(v=vs.85).aspx I'm not sure if or what PAE enabled is about, because I've never heard about it before.

X86 client versions with PAE enabled do have a usable 37-bit (128 GB) physical address space. The limit that these versions impose is the highest permitted physical RAM address, not the size of the IO space. That means PAE-aware drivers can actually use physical space above 4 GB if they want. For example, drivers could map the "lost" memory regions located above 4 GB and expose this memory as a RAM disk.

Related topics
4-Gigabyte Tuning IMAGE_FILE_LARGE_ADDRESS_AWARE Physical Address Extension


As far as I know ImDisk is not a program in RAM but a driver, so according to the quote above, it should be possible to map up to 128 GB ImDisk virtual disk :clap:

I thought that you already knows about it, and can answer me, and if so, can we or can't we map more than 4 GB on 32 bit Windows with your ImDisk if our 32 bit Windows is PAE enabled.

And how do we find out if it is PAE enabled (maybe using ImDisk.exe with a new switch)

There's a huge description of PAE in VikiPedia, which also talks about a total another option to use more than 4 GB in 32 bit Windows using Address Windowing Extensions.


Sincerely

Jorgen Malmgren
IT-Programmer
www.tryware.dk

Edited by TrywareDk, 26 July 2012 - 07:22 AM.


#2 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 26 July 2012 - 09:01 AM

:loleverybody:

If you were following 100% identical topic http://reboot.pro/17288, then mark it as "unfollow", because this topic is the active one!

:loleverybody:

Edited by TrywareDk, 26 July 2012 - 09:03 AM.


#3 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 26 July 2012 - 09:56 AM

PAE is supported on the following 32-bit versions: Windows XP, Vista and 7

But if DEP is enabled, PAE only works if loaded with bcdedit

How to disable DEP: bcdedit.exe /set {current} nx AlwaysOff

But warning, if I google the whole bcdedit command, I get lots of error examples :dubbio:

#4 cdob

cdob

    Gold Member

  • Expert
  • 1469 posts

Posted 26 July 2012 - 08:07 PM

Read:
Allocating beyond 4GB using awealloc. http://reboot.pro/15911/

#5 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 26 July 2012 - 09:27 PM

Read:
Allocating beyond 4GB using awealloc. http://reboot.pro/15911/


Hi cdob

As far as I can read topic 15911, there have been some errors using awealloc on 32 bit Windows.

Do you have any experience using it, and if so, what OS ?

But your are right about it being a possible option, because Olof writes on his website, that

An additional driver, awealloc, in this install package supports memory allocation beyond 4 GB limit on 32 bit Windows through address window extension, AWE.

, so maybe it could work.

But I need a 100% safe option without errors, otherwise I won't use it on my Windows XP SP2, Windows 7 Home Premium and Windows 7 Enterprise, all 3 of them is 32 bit.

Edited by TrywareDk, 26 July 2012 - 09:30 PM.


#6 cdob

cdob

    Gold Member

  • Expert
  • 1469 posts

Posted 27 July 2012 - 04:19 AM

on my Windows XP SP2, Windows 7 Home Premium and Windows 7 Enterprise, all 3 of them is 32 bit.

Read again http://reboot.pro/15911/#entry149251
OS has to support RAM too. awealloc access RAM within OS possibilities.

Use a server OS or enable max RAM at Windows 7.

#7 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 27 July 2012 - 05:12 AM

Hi cdob

I'm sure you knows what you are talking about, but I don't understand what you mean.

I already read the #entry149251 before I started this topic, and I have read it again at your request.

It's Olof writing about Awealloc, and he is the designer and programmer behind ImDisk. And one of his conclusions at #entry149251 is:

Awealloc as it works today seems unable to do this.
we would need a new kind of awealloc driver that does not use AWE


I'm sure it would work if I used a 32 bit server OS

What do you mean by enabling max RAM at 32 bit Windows 7. Can you please specify how to do that

Edited by TrywareDk, 27 July 2012 - 05:12 AM.


#8 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 27 July 2012 - 10:40 AM

Hi

After studying this topic a little more, I found a very precise and easy understandable explanation, that I urge you all to read:
http://www.romexsoft...ble-memory.html

So the bcdedit command is only for Windows Vista and Windows 7, not for Windows XP where the same issue is solved using the C:boot.ini file.

So on my Windows XP SP2 computer with 8GB RAM I did the following:

Installed Olof's ImDisk, and made sure it worked.

I changed my C:boot.ini from:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP Professional" /fastdetect


I changed my C:boot.ini to:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP Professional"/noexecute=alwaysoff /fastdetect /NOLOWMEM /PAE


I rebooted my computer without any problems.

I started the awealloc service using the following in a command prompt: net start awealloc

I tried with no luck these 2 options in a command prompt:

ImDisk.exe -a -f .awealloc -s 5G -m E: -p "/fs:ntfs /q /y"

ImDisk.exe -a -t vm -m Z: -o rw,fix,hd -s 5G -p "/fs:ntfs /q /y"

I also tried the 2 options above with no luck using 4G, 3G and 2G

I tried with no luck the same using ImDisk.cpl

Edited by TrywareDk, 27 July 2012 - 10:41 AM.


#9 cdob

cdob

    Gold Member

  • Expert
  • 1469 posts

Posted 27 July 2012 - 02:27 PM

What do you mean by enabling max RAM at 32 bit Windows 7.

There are kernel patches at own risk and reposibility.
http://en.wikipedia....dress_Extension

So on my Windows XP SP2 computer with 8GB RAM

I tried with no luck

Yes, this is the expected result.

#10 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 27 July 2012 - 06:08 PM

Hi cdob

There are kernel patches at own risk and reposibility.
http://en.wikipedia....dress_Extension


Yes, but not for Windows XP

Unofficial kernel patches for Windows Vista and Windows 7 32-bit are available


And as told earlier I wouldn't use them on my Windows 7 computer

But I need a 100% safe option without errors, otherwise I won't use it on my Windows XP SP2, Windows 7 Home Premium and Windows 7 Enterprise, all 3 of them is 32 bit.


because

Microsoft Technical Fellow Mark Russinovich says that some drivers were found to be unstable when encountering physical addresses above 4GB.


So do you know anything about how I can use more than 4GB on my Windows XP SP2

Yes, this is the expected result.



#11 cdob

cdob

    Gold Member

  • Expert
  • 1469 posts

Posted 27 July 2012 - 07:24 PM

Yes, but not for Windows XP

Yes, that's true. Neither was it recommended for XP. Suggestion was for Windows 7.

Request is without manufacturer support:
there is no 100% safe option, a 100% safe option is impossible

Use a 64 bit OS, if you need a 100% safe option.

Try Gavotte's RRamdisk
http://reboot.pro/1507/
http://reboot.pro/4064/
A PAE RAMdisk does works, I don't know max size.

Or use a commercial RAMdisk.

#12 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 27 July 2012 - 08:43 PM

Hi cdob

Thanks you for your excellent answer, so from now on I don't need more answers to this topic, except if Oluf writes a new 100% safe driver to 32 bit using more than 4 GB

What you couldn't know (because I forgot to tell you), I actually have 2 more options when searching for software: 100% freeware and options to run everyting with silent command line switches, even without being prompted for administrator elevation.

So I started searching about 3 weeks ago, and did try these:

http://alternativeto...ws&license=free


But Gavotte's couldn't run with silent switches.

So until another 100% safe, freeware and silent is shown to me, I'm still a satistied user of ImDisk.

From now on I only need to test ImDisk on my Windows 7 64 bit computer, to find out about 4 GB or more.


Sincerely

Jorgen Malmgren
IT-Programmer
www.tryware.dk

Edited by TrywareDk, 27 July 2012 - 08:43 PM.


#13 Olof Lagerkvist

Olof Lagerkvist

    Gold Member

  • Developer
  • 1448 posts
  • Location:Borås, Sweden
  •  
    Sweden

Posted 28 July 2012 - 08:35 AM

@TrywareDk
About the problems with awealloc that seem to scare you a bit from using it, which problems exactly? I get a feeling that you might have read an old thread somewhere where there has been discussions about problems that were later fixed. But that should have been when used on 64-bit Windows, so I might have misunderstood you. I have used awealloc for over a year now on a Windows Server 2003 to allocate a 2 GB RAM disk above 4 GB boundary. It has worked perfectly well.

#14 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 28 July 2012 - 09:53 AM

Hi Oluf

I'm happy to hear from you, because I'm 100% safe with your answers, and 99% safe with cdob :dubbio:

I get a feeling that you might have read an old thread somewhere where there has been discussions about problems that were later fixed.


Yes, that was about kernel patches at own risk and reposibility at http://en.wikipedia....dress_Extension, where Microsoft Technical Fellow Mark Russinovich in [3] in the "Windows Client Memory Limits" 4 years ago says about Windows XP:

What they found was that many of the systems would crash, hang, or become unbootable because some device drivers, commonly those for video and audio devices that are found typically on clients but not servers, were not programmed to expect physical addresses larger than 4GB. As a result, the drivers truncated such addresses, resulting in memory corruptions and corruption side effects. Server systems commonly have more generic devices and with simpler and more stable drivers, and therefore hadn't generally surfaced these problems. The problematic client driver ecosystem led to the decision for client SKUs to ignore physical memory that resides above 4GB, even though they can theoretically address it.


I have used awealloc for over a year now on a Windows Server 2003


But as told above to cdob I'm concerned about getting a 100% safe solution for more than 4GB on Windows XP, and as told, I did try awealloc without any luck on Windows XP,:


Installed Olof's ImDisk, and made sure it worked.

I changed my C:boot.ini from:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP Professional" /fastdetect

I changed my C:boot.ini to:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP Professional"/noexecute=alwaysoff /fastdetect /NOLOWMEM /PAE


I rebooted my computer without any problems.

I started the awealloc service using the following in a command prompt: net start awealloc

I tried with no luck these 2 options in a command prompt:

ImDisk.exe -a -f .awealloc -s 5G -m E: -p "/fs:ntfs /q /y"

ImDisk.exe -a -t vm -m Z: -o rw,fix,hd -s 5G -p "/fs:ntfs /q /y"

I also tried the 2 options above with no luck using 4G, 3G and 2G

I tried with no luck the same using ImDisk.cpl


So my question now is, after installing your ImDisk version 4.57.0.0 on a "clean" Windows XP SP2computer, what do I need to download/install/do in order to gain 100% sure access to more than 4 GB on Windows XP SP2, where I have 8 GB installed (to no use).

When I read your answer I will test it on my Windows XP SP2 computer, and document the results to you.

And after that I only need to test your ImDisk on my Windows 7 64 bit computer, to find out about 4 GB or more, where I suppose not to find any problems.

Edited by TrywareDk, 28 July 2012 - 10:02 AM.


#15 Olof Lagerkvist

Olof Lagerkvist

    Gold Member

  • Developer
  • 1448 posts
  • Location:Borås, Sweden
  •  
    Sweden

Posted 28 July 2012 - 10:41 AM

Hi Oluf

I'm happy to hear from you, because I'm 100% safe with your answers, and 99% safe with cdob :dubbio:



Yes, that was about kernel patches at own risk and reposibility at http://en.wikipedia....dress_Extension, where Microsoft Technical Fellow Mark Russinovich in [3] in the "Windows Client Memory Limits" 4 years ago says about Windows XP:


Same goes for Windows Server 2003. It really does not matter, problems back then where the same. 32 bit drivers often assumed 32 bit address limits.

But as told above to cdob I'm concerned about getting a 100% safe solution for more than 4GB on Windows XP, and as told, I did try awealloc without any luck on Windows XP,:

So my question now is, after installing your ImDisk version 4.57.0.0 on a "clean" Windows XP SP2computer, what do I need to download/install/do in order to gain 100% sure access to more than 4 GB on Windows XP SP2, where I have 8 GB installed (to no use).


Like I suggested in another thread, someone could of course write a driver similar to awealloc, but that uses MmMapIoSpace or similar kernel functions for directly accessing memory beyond 4 GB. But it should be said that this could never ever be 100% safe. There is no "allocation semantics" for memory at those high addresses on XP, because that memory is not managed by Windows kernel at all. That means that there is no way to "allocate" it and to tell other drivers to not touch it. So, you could easily end up with having two or more drivers trying to use the same memory.

So, you need a Server version of 32 bit Windows to do this is a safe way. Some years ago there were widely spread rumors that Windows XP with SP2 would allow access to memory above 4 GB, but as far as I know, nobody seem to have found any way to actually do that. It more likely turned out to be not supported, after all. Otherwise, the same methods as we use in 32 bit Windows Server 2003 should really have worked on Windows XP SP2 as well.

And after that I only need to test your ImDisk on my Windows 7 64 bit computer, to find out about 4 GB or more, where I suppose not to find any problems.


That sounds a lot better. :)

Just remember that for large memory disks, such as above 1 GB or so, it is usually a lot more efficient to use awealloc even on 64 bit Windows than trying to create a memory disk directly with ImDisk.

:cheers:

#16 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 28 July 2012 - 06:50 PM

Hi Olof

Sorry for the late answer, but I've done a lot of reserch about XP and 4 GB

cdob suggested to

Try Gavotte's RRamdisk
http://reboot.pro/1507/
http://reboot.pro/4064/


but I told him, that I'm only seeking a freeware solution.

:google_lt:
But with more research I actually did find a promissing freeware version of VSuite Ramdisk, that promissed me 4 GB ramdisk on XP, and in their FAQ told me to add /PAE to my boot.ini, and reboot my computer before installing VSuite. But I have a warning to everybody reading this, don't waste your time with VSuite, because I installed it on my XP SP2 with 8 GB RAM, and was able to mount 2 GB, but 3 and 4 GB resulted in a Blue Screen Of Dead about IRQ_NO_LOW_LIMIT (and I didn't have /NOLOWLIMIT in my boot.ini.

In order to totally stop my reseach on XP, I tried the following on my XP SP2 with 8 GB RAM showing 2.8 GB free RAM in task manager, and only used imdisk.cpl (and did reboot between each change of boot.ini):


/PAE /AWE in boot.ini
Imdisk installed
sc config awealloc start= auto
net start awealloc
Max. avaiable result: 1.831 MB



/PAE in boot.ini
Imdisk installed
net stop awealloc (showed no such service)
Max. avaiable result: 1.831 MB



/PAE removed from boot.ini
Imdisk installed
net stop awealloc (showed no such service)
Max. avaiable result: 1.831 MB


Each try over 2000MB resulted in error from ImDisk.in XP, and in each try Task Manager still shows 2.8 GB free

Then I tried the following on my Windows 7 Home Premium 64 bit with 8 GB RAM, showing 6.1 GB free RAM in task manager, only using ImDisk.cpl, and I didn't change anything with: bcdedit /set [{ID}] pae ForceEnable

Imdisk installed
net stop awealloc (showed no such service)
Max. avaiable result: 21.390 MB


And Task Manager still showed 6.1 GB free

So now I only need to test ImDisk on my Windows 7 Enterprise 32 bit, but I believe it would be the same result as on Windows XP SP2


:sos:
Dear Olof, I simply don't understand this:

it is usually a lot more efficient to use awealloc even on 64 bit Windows than trying to create a memory disk directly with ImDisk.


As I read it, I should only on my Windows 7 64 bit install Imdisk but not use it, and then only start the awealloc service:

sc config awealloc start= auto
net start awealloc


But then what ????? :dubbio:

Please explain that in details for me

Edited by TrywareDk, 28 July 2012 - 06:55 PM.


#17 Olof Lagerkvist

Olof Lagerkvist

    Gold Member

  • Developer
  • 1448 posts
  • Location:Borås, Sweden
  •  
    Sweden

Posted 28 July 2012 - 07:43 PM

:sos:
Dear Olof, I simply don't understand this:


As I read it, I should only on my Windows 7 64 bit install Imdisk but not use it, and then only start the awealloc service:


But then what ????? :dubbio:

Please explain that in details for me


Well, now I don't really follow either... Why are you starting and stopping the awealloc driver in your examples above? The awealloc and imdisk drivers are completely different things for different purposes. ImDisk is a virtual disk driver and awealloc is a driver that allocates AWE memory to emulate a file. When you use awealloc from ImDisk, it is just an ordinary image file from ImDisk point of view. If you don't specify \\.\awealloc as image file from ImDisk, you are not using awealloc from ImDisk.

So, to create a large true RAM disk on 64 bit Windows 7, I suggest:
imdisk -a -f \\.\awealloc -s 6G -m R: -p "/fs:ntfs /q /y"
or similar. If you don't type an image filename, ImDisk would just create a memory disk by its own, without using awealloc driver. That could be quite inefficient memory usage, like I wrote before.

(If you use the Control Panel applet you would type \\.\awealloc as image file name there instead. Without an image filename, ImDisk would create a memory disk itself, just like explained for command line above.)

So, you should install ImDisk and use it, as that is the actual virtual disk driver. The awealloc driver just allocates AWE memory for it in this case.

#18 cdob

cdob

    Gold Member

  • Expert
  • 1469 posts

Posted 29 July 2012 - 11:16 AM

but I told him, that I'm only seeking a freeware solution.

Gavotte ramdisk is freeware.
Silent command line install switches http://reboot.pro/40..._75#entry135682

A XP SP3 32 bit with 8 GB RAM:
3.5 GB available at XP
4.4 GB available at ramdisk R:

In addition:
create a file based ImDisk virtual disk at a gavotte PAE ramdisk.

#19 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 29 July 2012 - 11:22 AM

Hi Oluf

Sorry about the late answer, but I wasn't near my computer yesterday :cold:

Thank you for clarifying to me, that the ImDisk driver and the AweAlloc driver is 2 totally different things.

You are quite right about

imdisk -a -f .awealloc -s 6G -m R: -p "/fs:ntfs /q /y"


That doesn't work on Windows XP SP2 and Windows 7 32 bit, but works on Windows 7 64 bit

But maybe you'r not right about

So, you should install ImDisk and use it, as that is the actual virtual disk driver. The awealloc driver just allocates AWE memory for it in this case.


The reason is, that I've found 2 ways of using a command line installer at your websites, where this one

imdiskinst.exe -y
sc config imdisk start=auto
net start imdisk


doesn't install the awealloc driver, but your install.cmd does:

if exist "%SystemRoot%system32imdisk.exe" ( "%SystemRoot%system32imdisk.exe" -l | find "Device" ) && (
msgbox "Please dismount all existing ImDisk virtual disks before upgrade!" 16 "ImDisk Virtual Disk Driver setup"
goto :eof
)

net stop imdsksvc
net stop awealloc
net stop imdisk

rundll32 setupapi.dll,InstallHinfSection DefaultInstall 132 .imdisk.inf

if errorlevel 1 (
msgbox "Setup failed. Please try to reboot the computer and then try to run the setup package again." 16 "ImDisk Virtual Disk Driver setup"
goto :eof
)

net start imdsksvc
net start imdisk

msgbox "Setup finished successfully. Open ImDisk Virtual Disk Driver applet in Control Panel or use imdisk command line to manage your virtual disks!" 0 "ImDisk Virtual Disk Driver setup"


I was then able to use these on my Windows 7 64 bit with 8 GB RAM

imdisk -a -f .awealloc -s 6G -m R: -p "/fs:ntfs /q /y"


imdisk -a -f .awealloc -s 19G -m R: -p "/fs:ntfs /q /y"


But I wasn't able to use this one:

imdisk -a -f .awealloc -s 20G -m R: -p "/fs:ntfs /q /y"

(Not that I need so much)

The strange thing is, that if I start the awealloc service, none of the 3 above works, because then I'm restricted to the actual free memory in my 8 GB RAM, and can only create a "normal" ImDisk mapped drive using

imdisk -a -f .awealloc -s 5G -m R: -p "/fs:ntfs /q /y"


So maybe you should consider to add one of the following to the bottum of your install.cmd, even if you already did add stopping the awealloc service before installing.

sc config imdisk start=manual
sc config imdisk start=disabled


So on Windows 64 bit the conclusion is to make sure using the right installation method, and to make sure to stop the awealloc service.

#20 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 29 July 2012 - 11:48 AM

Hi cdob

I'm sure your'e right about

Gavotte ramdisk is freeware.
Silent command line install switches http://reboot.pro/40..._75#entry135682


So that meets my wishes when searching for software, and thus I did study (but didn't download) Gavotte's RRamdisk once more. There doesn't seem to be any website or forum where "Gavotte" tells about RRamdisk, and provides us with download links and specifications. I couldn't find anything else, than a lot of different download links from different users in different forums, but none from "Gavotte". Thus I can't be sure of the freeware and re-distribution policy from "Gavotte", who ever that is.

And remembering the hours I spend with no luck downloading and trying

VSuite Ramdisk,



I decided not to use more time with your suggestion cdob. Maybe that was wrong, maybe "Gavotte's" RRamdisk was the right one for me, but I've made my desicion, and from now on all my time is used about how to use ImDisk and AweAlloc.

Edited by TrywareDk, 29 July 2012 - 11:55 AM.


#21 Olof Lagerkvist

Olof Lagerkvist

    Gold Member

  • Developer
  • 1448 posts
  • Location:Borås, Sweden
  •  
    Sweden

Posted 29 July 2012 - 12:44 PM

Hi Oluf

Sorry about the late answer, but I wasn't near my computer yesterday :cold:

Thank you for clarifying to me, that the ImDisk driver and the AweAlloc driver is 2 totally different things.

You are quite right about


That doesn't work on Windows XP SP2 and Windows 7 32 bit, but works on Windows 7 64 bit

But maybe you'r not right about


The reason is, that I've found 2 ways of using a command line installer at your websites, where this one


doesn't install the awealloc driver, but your install.cmd does:


Well, you have probably misunderstood a few things here. When you run imdiskinst.exe, it actually runs install.cmd. So, both ways installs all included drivers and services. It does not however automatically start awealloc driver, because that one is not always needed. You need to do that yourself:

sc config awealloc start= auto

net start awealloc


The reason why it stops all related drivers and services before calling the actual .inf setup script, including stopping awealloc, is to ensure that upgrade from earlier versions should be successful, or otherwise not possible at all.

The strange thing is, that if I start the awealloc service, none of the 3 above works, because then I'm restricted to the actual free memory in my 8 GB RAM, and can only create a "normal" ImDisk mapped drive using


Of course this makes no sense. You cannot use the -f \\.\awealloc syntax unless awealloc is started. And if it is started, it would never affect anything else with imdisk or any other driver unless you use the \\.\awealloc syntax somewhere to access it. So there must have been some other problem around there.

So maybe you should consider to add one of the following to the bottum of your install.cmd, even if you already did add stopping the awealloc service before installing.


sc config imdisk start=manual

sc config imdisk start=disabled


No, sorry, you must have understood something here. If the imdisk driver is disabled, it could not be used at all. In that case it would be easier to just uninstall ImDisk instead. Then it would remove all of ImDisk, including awealloc. If the imdisk driver is set to manual start, it will be automatically started by Control Panel applet or imdisk.exe when a new virtual disk is created, if the user requesting it has permissions to load device drivers.

So on Windows 64 bit the conclusion is to make sure using the right installation method, and to make sure to stop the awealloc service.


That conclusion can definitely not be correct. If you do not want to use awealloc, just don't use the \\.\awealloc syntax. If you want to use awealloc, make sure it is started and then use the \\.\awealloc syntax.

#22 cdob

cdob

    Gold Member

  • Expert
  • 1469 posts

Posted 29 July 2012 - 04:01 PM

I did study (but didn't download) Gavotte's RRamdisk once more. There doesn't seem to be any website or forum where "Gavotte" tells about RRamdisk

Did you read the whole thread?
Read again Post #7 http://reboot.pro/4064/#entry30382 and Post #36

I've made my desicion, and from now on all my time is used about how to use ImDisk and AweAlloc.

This limits to 4GB RAM usage at consumer windows 32 bit.

#23 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 29 July 2012 - 08:25 PM

Hi Oluf

Of course this makes no sense. You cannot use the -f .awealloc syntax unless awealloc is started. And if it is started, it would never affect anything else with imdisk or any other driver unless you use the .awealloc syntax somewhere to access it.


Yes, when reading your earlier answer, that was also my first thought, that the awealloc driver must be started in order to be used.

The awealloc and imdisk drivers are completely different things for different purposes. ImDisk is a virtual disk driver and awealloc is a driver that allocates AWE memory to emulate a file.


But when testing it on my Windows 7 Home Premium 64 bit I actually did get the opposite results, as told above

So there must have been some other problem around there.


Yes/maybe/probably - But what??? :dubbio:

I really want to find out why it's the opposite on my computer, and maybe you can guess it, reading my documentation of what I tested, and as you can see, I have never used bcdedit to change my boot settings neither about AWE or PAE.

So to show you what happened, I executed this command line script on my Windows 7 Home Premium 64 bit computer with 8GB RAM, being a lokal administrator:

@echo.
bcdedit /enum

@echo.
systeminfo

@echo.
dir /A:h pagefile.sys

@echo.
@echo Installing imdisk manually only using IndiskInst.exe and receiving the 7z msgbox about installation OK
@echo.
pause

@echo.
net start awealloc

@echo.
wmic os get TotalVisibleMemorySize,FreePhysicalMemory

@echo.
imdisk -a -f .awealloc -s 14G -m R: -p "/fs:ntfs /q /y"

@echo.
ImDisk.exe -a -t vm -m R: -o rw,fix,hd -s 14G -p "/FS:NTFS /q /y"

@echo.
wmic os get TotalVisibleMemorySize,FreePhysicalMemory

@echo.
imdisk -d -m R:

@echo.
ImDisk.exe -a -t vm -m Z: -o rw,fix,hd -s 15G -p "/FS:NTFS /q /y"

@echo.
imdisk -d -m R:

@echo.
@echo Uninstalling imdisk manually using control panel, and can't do another install without a reboot
@echo.
pause


And the the Danish results is translated by me:

C:>bcdedit /enum

Windows Boot Manager
--------------------
id {bootmgr}
device partition=DeviceHarddiskVolume1
description Windows Boot Manager
locale da-DK
inherit {globalsettings}
extendedinput Yes
default {current}
resumeobject {b1486731-1460-11e1-883c-2c27d73fe19c}
displayorder {current}
toolsdisplayorder {memdiag}
timeout 30
customactions 0x1000085000001
0x5400000f
custom:5400000f {c6676e76-14aa-11e1-8efd-2c27d73fe19c}

Windows Boot Loader
-------------------
id {current}
device partition=C:
path Windowssystem32winload.exe
description Windows 7
locale da-DK
inherit {bootloadersettings}
recoverysequence {c6676e76-14aa-11e1-8efd-2c27d73fe19c}
recoveryenabled Yes
osdevice partition=C:
systemroot Windows
resumeobject {b1486731-1460-11e1-883c-2c27d73fe19c}
nx OptIn

C:>systeminfo

Hostname: ***** <my computername> *****
OS-name: Microsoft Windows 7 Home Premium
OS-version: 6.1.7601 Service Pack 1 Build 7601
OS-vendor: Microsoft Corporation
OS-configuration: Separat arbejdsstation
Operatingsysystems build-type: Multiprocessor Free
Registrated owner: ***** <my username> *****
Registrated organisation: Hewlett-Packard Company
Product-id: 00359-OEM-8992687-00010
First installations date: 21-11-2011, 17:45:00
Systems starting time: 29-07-2012, 21:17:59
System vendor: Hewlett-Packard
System model: G5470sc
System type: x64-based PC
Processors: 1 processor(er) er installeret.
[01]: Intel64 Family 6 Model 42 Stepping 7 GenuineIntel ~3100 Mhz
BIOS-version: AMI 7.14, 21-10-2011
Windows-folder: C:Windows
System folder: C:Windowssystem32
Starting device: DeviceHarddiskVolume1
Systems country standard: da;Danish
Country standard: da;Danish
Timezone: (UTC+01:00) Copenhagen, Stockholm, Oslo, Madrid, Paris
Total physical memory: 8.173 MB
Free physical memory: 6.679 MB
Virtual memory: max. size: 6.346 MB
Virtual memory: avaiable: 14.747 MB
Virtual memory: used: 1.599 MB
Pagefile folder: C:pagefile.sys
Domain: WORKGROUP

C:>dir /A:h pagefile.sys
Content of C:

29-07-2012 21:18 8.569.835.520 pagefile.sys
1 fil(e) 8.569.835.520 bytes
0 folder® 487.940.034.560 bytes free

---------> Installing imdisk manually only using IndiskInst.exe and receiving the 7z msgbox about installation OK <----------

C:>pause

C:>net start awealloc
The AWE Memory Allocation Driver service is started.

C:>wmic os get TotalVisibleMemorySize,FreePhysicalMemory
FreePhysicalMemory TotalVisibleMemorySize
6779824 8368980

C:>imdisk -a -f .awealloc -s 14G -m R: -p "/fs:ntfs /q /y"
Creating device...
Error creating virtual disk:
There is not enough free memory using this command.

C:>ImDisk.exe -a -t vm -m R: -o rw,fix,hd -s 14G -p "/FS:NTFS /q /y"
Creating device...
Created device 0: R: -> VM image
Formatting disk...
Filsystemtype is RAW.
The new filsystemtype is NTFS.
Expressformatting 14336 MB
The disk device is not conneted. All open handles to this disk device is now not valid.
Creating system structures.
The formatting is now finished
14,0 GB total disk size
13,9 GB free to use
Notifying applications...
Done.

C:>wmic os get TotalVisibleMemorySize,FreePhysicalMemory
FreePhysicalMemory TotalVisibleMemorySize
6717464 8368980

C:>imdisk -d -m R:
Notifying applications...
Flushing file buffers...
Locking volume...
Dismounting filesystem...
Removing device...
Removing mountpoint...
Done.

C:>ImDisk.exe -a -t vm -m Z: -o rw,fix,hd -s 15G -p "/FS:NTFS /q /y"
Creating device...
Error creating virtual disk:
There is not enough free memory using this command.

C:>imdisk -d -m R:
Notifying applications...
Flushing file buffers...
Locking volume...
Dismounting filesystem...
Removing device...
Removing mountpoint...
Done.

---------> Uninstalling imdisk manually using control panel <----------


As you can see my free RAM was only minimized with 62360 bytes when mounting and formatting 14 GB without using .awealloc

But I can't show you the next without a reboot after the uninstall, because I get error when trying to do a new re-install.

So I'm rebooting my computer, and executed this command line script on the same Windows 7 Home Premium 64 bit computer with 8GB RAM, being a lokal administrator:

----------> Installing imdisk only using your install.cmd with among others - rundll32 setupapi.dll,InstallHinfSection DefaultInstall 132 .imdisk.inf <----------

pause

@echo.
net start imdsksvc

@echo.
net start imdisk

@echo.
net stop awealloc

@echo.
imdisk -a -f .awealloc -s 6G -m R: -p "/fs:ntfs /q /y"

@echo.
net start awealloc

@echo.
wmic os get TotalVisibleMemorySize,FreePhysicalMemory

@echo.
imdisk -a -f .awealloc -s 6G -m R: -p "/fs:ntfs /q /y"

@echo.
wmic os get TotalVisibleMemorySize,FreePhysicalMemory

@echo.
imdisk -d -m R:

@echo.
imdisk -a -f .awealloc -s 7G -m R: -p "/fs:ntfs /q /y"

@echo.
net stop awealloc

@echo.
imdisk -a -f .awealloc -s 14G -m R: -p "/fs:ntfs /q /y"

@echo.
imdisk -d -m R:

@echo.
net start awealloc

@echo.
imdisk -a -f .awealloc -s 14G -m R: -p "/fs:ntfs /q /y"


The result of this was:

C:>net start imdsksvc
The specified service is already started.

C:>net start imdisk
The specified service is already started.

C:>net stop awealloc
The AWE Memory Allocation Driver service is not started

C:>imdisk -a -f .awealloc -s 6G -m R: -p "/fs:ntfs /q /y"
Creating device...
Error creating virtual dis: The specified file is not found.

C:>net start awealloc
The AWE Memory Allocation Driver service is started

C:>wmic os get TotalVisibleMemorySize,FreePhysicalMemory
FreePhysicalMemory TotalVisibleMemorySize
6744488 8368980

C:>imdisk -a -f .awealloc -s 6G -m R: -p "/fs:ntfs /q /y"
Creating device...
Created device 0: R: -> .awealloc
Formatting disk...
Filsystemtype is RAW.
The new filsystemtype is NTFS.
Expressformatting 6144MB
The disk device is not conneted. All open handles to this disk device is now not valid.
Creating system structures.
The formatting is now finished
6,0 GB total disk size.
6,0 GB free to use
Notifying applications...
Done.

C:>wmic os get TotalVisibleMemorySize,FreePhysicalMemory
FreePhysicalMemory TotalVisibleMemorySize
1082948 8368980

C:>imdisk -d -m R:
Notifying applications...
Flushing file buffers...
Locking volume...
Dismounting filesystem...
Removing device...
Removing mountpoint...
Done.

C:>imdisk -a -f .awealloc -s 7G -m R: -p "/fs:ntfs /q /y"
Creating device...
Created device 0: R: -> .awealloc
Formatting disk...
Filsystemtype is RAW.
The new filsystemtype is NTFS.
Expressformatting 7168
The disk device is not conneted. All open handles to this disk device is now not valid.
Creating system structures.
The formatting is now finished
7,0 GB total disk size.
7,0 GB free to use
Notifying applications...
Done.

C:>net stop awealloc
The AWE Memory Allocation Driver service is stopping........
The AWE Memory Allocation Driver service could not stop.

C:>imdisk -a -f .awealloc -s 14G -m R: -p "/fs:ntfs /q /y"
Creating device...
Error creating virtual disk: The specified file was not found.

C:>imdisk -d -m R:
Notifying applications...
Flushing file buffers...
Locking volume...
Dismounting filesystem...
Removing device...
Removing mountpoint...
Done.


Please note that I lost 5661540 bytes of free physical RAM with this test.

I'm sure the same test on your server version will create another result, but the above is what happened on my computer.

Edited by TrywareDk, 29 July 2012 - 08:28 PM.


#24 TrywareDk

TrywareDk

    Newbie

  • Members
  • 26 posts
  •  
    Denmark

Posted 29 July 2012 - 08:33 PM

Hi cdob

Did you read the whole thread?
Read again Post #7 http://reboot.pro/4064/#entry30382 and Post #36


I admit, that I didn't read page 2 and 3 before deciding, but now I've read #36 on page 2, and

According to Goldie, from http://forum.pcdvd.c...g>#18</strong>), a new version has been released:


And #18 in this url actually tells us about a Gavotte user in a Chinese forum http://bbs.et8.net/b...ad.php?t=906641

And when I try to rightclick this user, I'm not admitted information unless I join as member of the forum. But I simply don't understand Chinese, so I can't get more info about this Gavotte user, because http://bbs.et8.net/b...ber.php?u=45893

So now I'm even more convinced about not to use more time about Gavotte.

Edited by TrywareDk, 29 July 2012 - 08:34 PM.


#25 Olof Lagerkvist

Olof Lagerkvist

    Gold Member

  • Developer
  • 1448 posts
  • Location:Borås, Sweden
  •  
    Sweden

Posted 29 July 2012 - 08:58 PM

So to show you what happened, I executed this command line script on my Windows 7 Home Premium 64 bit computer with 8GB RAM, being a lokal administrator:


No, nowhere does this show that you need to stop awealloc to be able to allocate 14GB memory disk. You did not even try to create a 14 GB without using awealloc in your second test run. If you had tried to start awealloc but then created an ImDisk drive without .awealloc syntax in your second test run, I am pretty sure it would have worked as well. What it shows, is that you could never successfully allocate 14 GB with awealloc, but you can create 14 GB virtual memory disk with ImDisk. This is because awealloc always allocates physical RAM, while ImDisk virtual memory backed disks could be backed by any kind of virtual memory. Even swapfile, if needed. Your test does not show that you need to stop any driver at any point to make something else work.

What you actually did, was that you stopped awealloc driver while it was in use. Then, your existing awealloc allocated memory was invalid and you tried to allocate a new memory disk with awealloc, which was then in a kind of "zombie state" because you stopped in while it was in use.

Never stop a driver that is in use in Windows. Never. It could cause all sorts of strange phenomenons and is not really supported (just happens to be possible for some strange reason).




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users