clown_abhi

New Member
Joined
May 7, 2009
Messages
18
Hey Guys,

I installed Windows 7 x64 today and when i opened the system information tool, it shows 3.25GB usable.
So, i checked with task manager and it shows the same 3326(3.25) to my surprise.

How is this possible on a x64 OS?
Memory mapping is on 32 bit if i am not wrong...
Have been using Vista x64 for the last 1 year or more and never faced this issue and was able to use full 4GB RAM, so no BIOS issue.

If i go to Msconfig > Boot > advanced option > Maximum memory > change it to 4088 from 4096 or any other value and restart,
The RAM is detected now as 3.25GB.
This was not the case with Vista x64.
If i leave it unchecked, 4GB RAM is again detected and used properly.

This is an issue for those having Hauppage PVR-150 and planning to move to Windows 7 x64, since this hardware like many others needs a change of usable RAM to 4088 which could be set here and then the tuner card worked...(This used to work in Vista x64)
But now, with this bug, Maximum Memory option does not work properly in Windows 7 as it used to in Vista.
So, Hauppage PVR-150 just won't work in Windows 7 x64 anymore...
Link Removed due to 404 Error

Guys, if anybody has a workaround, plz help.
 


Solution
I am using Windows7 x64 along with the Hauppauge PVR150 and facing the same effects as the topic starter. The Hauppauge PVR150 needs Windows to use less than 4GB of memory otherwise it does not work properly.
Changing the Max memory loaded to 4095MB did the trick (PVR150 functions fine) but results in only 3,25GB of usable memory. Which is a waste.

As I read in this topic, this behaviour of the Max memory load function should be correct. If that is so, I think that putting a not along with the dialog would be a friendly addition (something like: "it looks you can change it to anything you like, but in fact it only works like you would expect below 3,2GB".

So, if I understand correctly, there IS a way to just give up 50MB or so on 4GB...
I know the problem he is talking about because to run halo 1 on vista 64 i have to limit my ram to 2 gigs and i do it thru the same way he does. If i have to take my side off to limit my ram thats pretty useless. Then again vista 64 had bugs up intil sp1 so i am sure that sooner or later they will fix it. Other bugs include but not limited to usb card reader windows 7 bsod and on the dual monitors the mouse wont go onto the second monitor if you use extend option yet some windows will open on the second monitor and no way to adjust it so u have to use dual monitors as duplicate.
Again i am sure they are working on it i use dual boot vista 64 and windows 7 64 so i have time to wait for updates and companies to fix problems.
 


This happened to me. I changed the settings in MSConfig. I changed it so that under the boot tab and advanced options I had typed in manually the amount of ram I had. This made it see less ram then I had. Maybe this will fix the problem some people have.
 


I know the problem he is talking about because to run halo 1 on vista 64 i have to limit my ram to 2 gigs and i do it thru the same way he does. If i have to take my side off to limit my ram thats pretty useless. Then again vista 64 had bugs up intil sp1 so i am sure that sooner or later they will fix it. Other bugs include but not limited to usb card reader windows 7 bsod and on the dual monitors the mouse wont go onto the second monitor if you use extend option yet some windows will open on the second monitor and no way to adjust it so u have to use dual monitors as duplicate.
Again i am sure they are working on it i use dual boot vista 64 and windows 7 64 so i have time to wait for updates and companies to fix problems.


The only thing here I can vouch for is that the dual monitor thing with extended view works just fine in vista 64 and Windows 7 64. My mouse pointer shows upevery window I put on second monitor is just fine .. in fact I have it set up right now, moving my mouse back and forth to each monitor .. I also opened up My power dvd and watching a movie on my second monitor.

I have a multicard reader installed through my usb port header on my MB and I just pulled pictures from the memory card off my camera and I also tested a portable SD Card usb adapter that I plug to an external USB port get no BSOD or any errors .. so that works fine too.

I wanna try halo to see if it will run on my machine with 8 gigs of ram .. I am curious why it doesnt for you though.

A lot of problems that people have are really not because of the operating system ( I.E. Vista and others), but its more a 3rd party driver issuse or even a hardware issue. If it were the OS then the problem would be consistant on every machine using that OS.
 


I too am not getting what the OP is trying to say.. I am using 8GB of RAM in my new rig and running Windows 7 RC 64-bit (Build 7100) with no RAM problems at all.. ;) It sees all 8GB's and uses all 8GB's so I really don't know what your trying to get at... I didn't have to change any settings for 7 to recognize all my RAM... :)

I can sense the OP's frustration but it's hard for us to help if we can't understand exactly what your trying to say.. ;) What is the exact model of your Motherboard and RAM modules..?
 


i have the same problem im on a gateway 6864fx laptop that came running windows vista 64bit i had the beta version and had all 4gb working when i upgraded to the 7100 build i now get thisLink Removed due to 404 Error kinda wack wondering where my gb of ram is
 


It's usually always different when you check it in other utilities in Windows.

Look in Performance Monitor or under Performance in Task Manger.

You can download this free utility to see what processes are running and how much memory they are using:

|MG| SIW (System Info) 2009.5.12
 


Hey Guys,

I installed Windows 7 x64 today and when i opened the system information tool, it shows 3.25GB usable.
So, i checked with task manager and it shows the same 3326(3.25) to my surprise.

How is this possible on a x64 OS?
Memory mapping is on 32 bit if i am not wrong...
Have been using Vista x64 for the last 1 year or more and never faced this issue and was able to use full 4GB RAM, so no BIOS issue.

If i go to Msconfig > Boot > advanced option > Maximum memory > change it to 4088 from 4096 or any other value and restart,
The RAM is detected now as 3.25GB.
This was not the case with Vista x64.
If i leave it unchecked, 4GB RAM is again detected and used properly.

This is an issue for those having Hauppage PVR-150 and planning to move to Windows 7 x64, since this hardware like many others needs a change of usable RAM to 4088 which could be set here and then the tuner card worked...(This used to work in Vista x64)
But now, with this bug, Maximum Memory option does not work properly in Windows 7 as it used to in Vista.
So, Hauppage PVR-150 just won't work in Windows 7 x64 anymore...
Link Removed due to 404 Error

Guys, if anybody has a workaround, plz help.


I don't have a solution, but I have played around with setting the maximum memory a bit. I agree with you that this is a bug. My system is 4GB memory and Win 7 x64 reports it correctly as 4GB with all of it usable. If I go to MSCONFIG and put a checkmark on maximum memory while leaving the number as 4096, and reboot, all of a sudden Windows report my system RAM as 4GB wih 3.2GB usable. This may be what is happening with your system. Now reduce the number for the maximum memory a few hundred at a time. At first Windows keep reporting 4GB with 3.2GB usable. Once you go down below 3.2GB though, the number becomes as expected. For example, if the number is 3100MB, Windows report 4GB with 3.03GB usable which is correct. So it seems the option only work if you are interested in going below 3.2GB, but then you may as well go with the 32bit operating system.

On Googling around I found a few people with the same problem with Vista64. They are relatively old posts. If your system worked in Vista64 before, it may be because the problem was resolved in the updates. So there is hope that it will be resolved in Windows 7.
 


This is sounding like it is working as it should.

Meaning, if you are trying to limit the ram, and you have 4G,
any amount entered above 3G is automatically set assuming you want it to run as it would under x32 with 4G. To me, this doesn't sound like a bug, but the intended result. Just my opinion.

Set below 3G and it sets to what you want.

Possibly explained better HERE.... which makes me believe it is not a bug....

Note: MAXMEM/TRUNCATEMEMORY is the option set in msconfig

How to set REMOVEMEMORY (has to be set from command line)

At the command prompt, type the following. Removememory removes memory from the total available memory that the operating system can use.

bcdedit /set {GUID} removememory bytes

Option Explanation

ID - Specifies the ID of the operating system entry you want to change. If you do not specify ID, the current operating system settings will be modified.

bytes - The number of bytes to remove.

Example - This example removes 256 MB of memory from the total available:

bcdedit /set {802d5e32-0784-11da-bd33-000476eba25f } removememory 256
followed by
How to set MAXMEM/TRUNCATEMEMORY

At the command prompt, type the following. Truncatememory disregards all memory at or above the specified physical address.

bcdedit /set {ID} truncatememory bytes

Note
We recommend that you use removememory instead. It does a better job of restricting the operating system to use the specified memory while accounting for memory holes.

Option Explanation

ID - The ID of the operating system entry you want to change. If you don't specify ID, the current operating system settings will be modified.

bytes - Specifies the number of bytes to truncate.

Example - This example sets the truncate memory to 1024 MB:

bcdedit /set {802d5e32-0784-11da-bd33-000476eba25f} truncatememory 1073741824
 


Last edited:
To play devils advocate.

It does clearly state that....

truncatememory addressLimits the amount of physical memory available to Windows. When you use this option, Windows ignores all memory at or above the specified physical address. Specify the address in bytes. For example, the following command sets the physical address limit at 1 GB. You can specify the address in decimal (1073741824) or hexadecimal (0x40000000).

bcdedit /set {49916baf-0e08-11db-9af4-000bdbd316a0} truncatememory Ox40000000

But they also use an example of 1G. To me this means that anything you set with this option above 1G (and possibly due to memory holes) is truncated to some portion of that 1G.

So the better switch to use, (and yes, this is what the maxmem switch in MSconfig should have been used for) is the removememory switch from command line.
 


This is sounding like it is working as it should.

Meaning, if you are trying to limit the ram, and you have 4G,
any amount entered above 3G is automatically set assuming you want it to run as it would under x32 with 4G. To me, this doesn't sound like a bug, but the intended result. Just my opinion.

Set below 3G and it sets to what you want.

Possibly explained better HERE.... which makes me believe it is not a bug....

Note: MAXMEM/TRUNCATEMEMORY is the option set in msconfig

followed by


I am not sure why it should be assumed that the only reason to limit the ram to under 4G is to make Windows run as it would under x32. In fact, the original post by Clown_abhi shows exactly a case where you'd want theRam to be as large as possible but just under 4G. I have exactly the same Hauppage PVR-150 that he has, so I understand his problem. To limit the RAM to 3G would make the card work, but would be entirely wasting an entire Gig of RAM. The fact that he used to be able to take out just 256MB of RAM using Msconfig in Vista x64 would indicate that it should be possible to do the same for Windows 7, I'd think. Perhaps it causes instability as you seem to be implying, I don't know for sure. I personally have moved on to using a different card that supports more than 4G of RAM, so this is no longer a problem for me.

At minimum, if setting max memory to more than 3G is not allowed, then the box in which to specify memory should not allow any value greater than 3G when the Max memory box is checked.
 


But as noted in my earlier post according to MS

"Note
We recommend that you use removememory instead of MemMAX. It does a better job of restricting the operating system to use the specified memory while
accounting for memory holes."
 


I just tested this and with using EasyBCD 1.7.2 I made the change,, it uses removememory switch.

I set it to 100M and Win7 reports I have 3.84G usable

I then set it to 50M and have 3.89G usable

So, the Max Mem switch in msconfig works in a particular way that remove mem doesn't.
Hence the Note from MS about recommending to use removememory rather than max mem
Why they made MaxMem the switch in msconfig is beyond me.

BTW, doing this enabled WinTV7 to work. That is the only version that will work in 7, trust me I tried every trick I could to make WinTV6/WinTV2K work under 7. They don't. Neither does GBPVR, among others (DeScaler, VDUB are a couple I tried, plus others).

So I reidderate, this is not a bug, it is by design.

on that note I want to add..... PLEASE Please please, stop assuming that every bad thing or some wierd thing in windows is a bug.
There are a lot of people who do this. Majority of the time it is proven not to be a bug. There are a lot of peopl out there that won't stop to do the research and testing, or finish reading a thread to find out that what was reported as a bug, infact wasn't. So STOP. end rant, eol
 


Last edited:
I am using Windows7 x64 along with the Hauppauge PVR150 and facing the same effects as the topic starter. The Hauppauge PVR150 needs Windows to use less than 4GB of memory otherwise it does not work properly.
Changing the Max memory loaded to 4095MB did the trick (PVR150 functions fine) but results in only 3,25GB of usable memory. Which is a waste.

As I read in this topic, this behaviour of the Max memory load function should be correct. If that is so, I think that putting a not along with the dialog would be a friendly addition (something like: "it looks you can change it to anything you like, but in fact it only works like you would expect below 3,2GB".

So, if I understand correctly, there IS a way to just give up 50MB or so on 4GB in Windows7 x64 by not using the msconfig method but some other method. Can this be achieved by some other command or reg setting than using EasyBCD?
 


Solution
Back
Top