32-bit apps in a 64-bit world

JOSHSKORN

New member
Member
VIP
Local time
7:47 AM
Messages
121
I was just wondering if it is possible to reverse engineer a 32-bit application and recompile it as a 64-bit application. If so, would it still function?

I don't know if talking about reverse engineering is acceptable in this forum or not. If not, my apologies. Also, I don't exactly know how "legal" it is or if it's against any EULAs.

I'm a heavy browser user. I use Firefox Nightly and constantly have several tabs open. I also run several different applications at once and occasionally Skype. I'm CONSTANTLY hitting the 32-bit barrier for RAM (can't remember if it's 3.1, 3.2 or 3.3 GB) and I still have more RAM on my system. I'm thinking the video quality on Skype starts going south when I run low/out on addressable memory since it's a 32-bit application. Other applications start slowing, as well.
 

My Computer

Computer Manufacturer/Model Number
N/A
OS
Windows 7 Ultimate 64-bit
CPU
E6750 OC'd ~ 2.9 Mhz
Motherboard
P5N-E
Memory
DDR2 800 MHz 4GB
Graphics Card(s)
GTX 460 SE 1GB
Sound Card
Realtek Audio (Onboard sound)
Hard Drives
Seagate 500 GB HD
PSU
750 watt
I was just wondering if it is possible to reverse engineer a 32-bit application and recompile it as a 64-bit application. If so, would it still function?

I don't know if talking about reverse engineering is acceptable in this forum or not. If not, my apologies. Also, I don't exactly know how "legal" it is or if it's against any EULAs.

I'm a heavy browser user. I use Firefox Nightly and constantly have several tabs open. I also run several different applications at once and occasionally Skype. I'm CONSTANTLY hitting the 32-bit barrier for RAM (can't remember if it's 3.1, 3.2 or 3.3 GB) and I still have more RAM on my system. I'm thinking the video quality on Skype starts going south when I run low/out on addressable memory since it's a 32-bit application. Other applications start slowing, as well.

It would function (if possible) in a 64 bit OS but if you arent upping your ram it wont matter for with the 4 gigs you have you wont get much if any noticable improvement.

If you are running 32 bit 64 bit apps wont work (unless you are upgrading the os) so I am unsure what it is you are trying to do.

Im working on tonights Nightly with abt 10 tabs open am on skype, have an IM chat client working, team v iewed to another location and have a music player running in this ram
 
Last edited:

My Computer

Computer Manufacturer/Model Number
HP Pavillion dv-7 1005 Tx
OS
Win 8 Release candidate 8400
CPU
[email protected]
Memory
4 gigs
Graphics Card(s)
Nvidia 9600M
Sound Card
HD built-in
Monitor(s) Displays
17" Wxga
Screen Resolution
1440x900
Cooling
none
Internet Speed
45Mb down 5Mb up
It would function (if possible) in a 64 bit OS but if you arent upping your ram it wont matter for with the 4 gigs you have you wont get much if any noticable improvement.

If you are running 32 bit 64 bit apps wont work (unless you are upgrading the os) so I am unsure what it is you are trying to do.

Im working on tonights Nightly with abt 10 tabs open am on skype, have an IM chat client working, team v iewed to another location and have a music player running in this ram
I'm really scratching my head on your screen shot. Just, wow. I use that much ram just booting up. Once I get my apps started, forget about it. You mind sending me a list of active processes on your computer?

I'm on Windows 7 Ultimate 64-bit.
 

My Computer

Computer Manufacturer/Model Number
N/A
OS
Windows 7 Ultimate 64-bit
CPU
E6750 OC'd ~ 2.9 Mhz
Motherboard
P5N-E
Memory
DDR2 800 MHz 4GB
Graphics Card(s)
GTX 460 SE 1GB
Sound Card
Realtek Audio (Onboard sound)
Hard Drives
Seagate 500 GB HD
PSU
750 watt
It would function (if possible) in a 64 bit OS but if you arent upping your ram it wont matter for with the 4 gigs you have you wont get much if any noticable improvement.

If you are running 32 bit 64 bit apps wont work (unless you are upgrading the os) so I am unsure what it is you are trying to do.

Im working on tonights Nightly with abt 10 tabs open am on skype, have an IM chat client working, team viewer to another location and have a music player running in this ram
I'm really scratching my head on your screen shot. Just, wow. I use that much ram just booting up. Once I get my apps started, forget about it. You mind sending me a list of active processes on your computer?

I'm on Windows 7 Ultimate 64-bit.

Happy to help if you want. Was it a clean install?
 

My Computer

Computer Manufacturer/Model Number
HP Pavillion dv-7 1005 Tx
OS
Win 8 Release candidate 8400
CPU
[email protected]
Memory
4 gigs
Graphics Card(s)
Nvidia 9600M
Sound Card
HD built-in
Monitor(s) Displays
17" Wxga
Screen Resolution
1440x900
Cooling
none
Internet Speed
45Mb down 5Mb up
From what I've heard around here, a lot of the RAM in use under Windows is just "standby" memory - areas of the RAM that hold cached data and executable code so they'll load faster when needed. (See Superfetch.)

It's my understanding that the more total RAM is available, the more Windows uses for standby. But that RAM will be freed and made usable for running applications if all the other memory is filling up.

As for Firefox and Skype, I honestly find it hard to believe either one would even ever use so much as one GB, let alone 3 ?!? :shock:

I can tell you one thing about how RAM usage for 32-bit applications is managed under 32-bit and 64-bit versions of Windows.

By default, a 32-bit app running under 32-bit Windows is assigned a virtual address space of 2GB, which is mapped to real, physical RAM only to the extent actually necessary, i.e. that doesn't mean that 2GB of real RAM are immediately occupied for each running process. (Obviously) ;)
There are ways of increasing the virtual space for user applications under 32-bit Windows up to 3GB, but 2GB is the default setting.

The same 32-bit app running on 64-bit Windows will be assigned a 4GB virtual address space - but only if the application is "LAA" which means large address aware. Some 32-bit apps are LAA-aware to begin with, most (not all) others can be patched to turn on the LAA bit in the executable code structure. A few 32-bit apps may have problems running correctly if LAA is enabled this way, but generally this actually works quite well.

Long story short - you could try to patch Firefox and Skype to be able to use up to 4GB of RAM each rather than just 2GB. But again, I just can't see why they should need that much in the first place. :(
 

My Computer

Computer type
PC/Desktop
Computer Manufacturer/Model Number
Custom-built
OS
Windows 7 Professional SP1 32-bit
CPU
Intel Core 2 Duo E6600 2.4GHz
Motherboard
Asus PL5D2
Memory
4GB DDR2-667 (4x1GB in dual-channel config)
Graphics Card(s)
nVidia GeForce 9800 GT
Sound Card
Creative X-Fi XtremeMusic
Monitor(s) Displays
Acer P236H
Screen Resolution
1920x1200 (DVI)
Hard Drives
OCZ SSD Vertex Plus 60GB SATA (Firmware 3.55), 64MB cache
Hitachi HD321KJ SATA, 320GB, 7200rpm, 16MB cache
PSU
Antec TruePower 2.0
Case
Cooler Master Centurion
Cooling
Too many fans
Keyboard
Standard
Mouse
Microsoft wireless optical mouse
Internet Speed
AT&T U-verse (18mbit/sec)
Antivirus
Microsoft Security Essentials
Browser
Firefox
Other Info
Other devices:
Compaq CQ-60 laptop
Google Nexus 7 (2012) tablet
Nvidia SHIELD tablet (US/LTE)
Hardkernel ODROID-XU single-board computer (Samsung Exynos 5420)
Happy to help if you want. Was it a clean install?
Haven't done a clean install since around April/May.

I have Registry Mechanic, I'm wondering if I optimize my computer for Performance, what will happen. The thing is, I've looked at that and I don't want to lose the visual "frills" of Windows 7 and basically make it look like Windows 2000. Is that how yours is set up?

The same 32-bit app running on 64-bit Windows will be assigned a 4GB virtual address space - but only if the application is "LAA" which means large address aware. Some 32-bit apps are LAA-aware to begin with, most (not all) others can be patched to turn on the LAA bit in the executable code structure. A few 32-bit apps may have problems running correctly if LAA is enabled this way, but generally this actually works quite well.

Long story short - you could try to patch Firefox and Skype to be able to use up to 4GB of RAM each rather than just 2GB. But again, I just can't see why they should need that much in the first place. :(
Alright. So how do I do this? I might try to do this with several applications, since apparently software developers are a bit stubborn and won't build 64-bit apps for whatever reason, they don't see the "need" for it. That's...um, well..BS....IMO.

EDIT: Found this. I'm currently testing it. I'll report back.
 
Last edited:

My Computer

Computer Manufacturer/Model Number
N/A
OS
Windows 7 Ultimate 64-bit
CPU
E6750 OC'd ~ 2.9 Mhz
Motherboard
P5N-E
Memory
DDR2 800 MHz 4GB
Graphics Card(s)
GTX 460 SE 1GB
Sound Card
Realtek Audio (Onboard sound)
Hard Drives
Seagate 500 GB HD
PSU
750 watt

My Computer

Computer type
PC/Desktop
Computer Manufacturer/Model Number
Custom-built
OS
Windows 7 Professional SP1 32-bit
CPU
Intel Core 2 Duo E6600 2.4GHz
Motherboard
Asus PL5D2
Memory
4GB DDR2-667 (4x1GB in dual-channel config)
Graphics Card(s)
nVidia GeForce 9800 GT
Sound Card
Creative X-Fi XtremeMusic
Monitor(s) Displays
Acer P236H
Screen Resolution
1920x1200 (DVI)
Hard Drives
OCZ SSD Vertex Plus 60GB SATA (Firmware 3.55), 64MB cache
Hitachi HD321KJ SATA, 320GB, 7200rpm, 16MB cache
PSU
Antec TruePower 2.0
Case
Cooler Master Centurion
Cooling
Too many fans
Keyboard
Standard
Mouse
Microsoft wireless optical mouse
Internet Speed
AT&T U-verse (18mbit/sec)
Antivirus
Microsoft Security Essentials
Browser
Firefox
Other Info
Other devices:
Compaq CQ-60 laptop
Google Nexus 7 (2012) tablet
Nvidia SHIELD tablet (US/LTE)
Hardkernel ODROID-XU single-board computer (Samsung Exynos 5420)
No problem, just take a look here:

Prevent Crashes in Oblivion - 4GB EXE Patcher (gives a good explanation, ignore the reference to Oblivion)

NTCore's Homepage <-- this is where you can download the actual patch utility.
I don't think these will be necessary but I may revisit them another time. Meanwhile, the link to the application I posted above in my edit (also here), I've tried out and so far it is satisfactory.

Some other day, I'm anxious to try it with other games as well. Seems to work ok for Halo, but I'm curious about the newer games like BF3 and MW3 which use far more resources (RAM).

Since I mention the 2 games, I'll try them out later on this week, then report back. At that time, I will mark the thread solved.
 

My Computer

Computer Manufacturer/Model Number
N/A
OS
Windows 7 Ultimate 64-bit
CPU
E6750 OC'd ~ 2.9 Mhz
Motherboard
P5N-E
Memory
DDR2 800 MHz 4GB
Graphics Card(s)
GTX 460 SE 1GB
Sound Card
Realtek Audio (Onboard sound)
Hard Drives
Seagate 500 GB HD
PSU
750 watt
Hi there
????
Why on Earth would you want to do it.

You could usually re-compile the source code assuming the same functionality was available and you have a 64 bit compiler in the source language of the application.

However again I am not sure what you would gain from this UNTIL 32 bit support was dropped from the OS -- not yet true in W7 (or even in the W8 developer preview editions you can download from MS).

Link here http://msdn.microsoft.com/en-us/windows/apps/br229516

(For x-64 bit with developer tools you won't be able to burn directly to a non-dual layer DVD - size is 4.8GB. For a standard DVD burn max size is 4.7GB so use the mechanism to create a bootable usb stick and boot from that.)

Re-writing the application to include features you want to add or optimising run time / memory usage for 64 bit would be fine but just a bog standard re-compile --no can't see the value of it.

Cheers
jimbo
 

My Computer

Computer type
PC/Desktop
Computer Manufacturer/Model Number
Custom built, several laptops HP/ASUS
OS
Linux CENTOS 7 / various Windows OS'es and servers
CPU
Intel i7 Intel i5
Memory
8GB, 16GB
Graphics Card(s)
On Motherboard
Sound Card
Realtek HD audio
Monitor(s) Displays
Apple Cinema display, Samsung LCD
Screen Resolution
1920 X 1080
Hard Drives
4 X 1TB SATA
Mouse
Toshiba wireless laser
Internet Speed
> 20MB up
jimbo, the question of running on 32-bit or 64-bit Windows isn't directly related to the 2GB vs. 4GB issue. And obviously, for the OP recompiling isn't an option, where would he even get the source code from as these apps are proprietary?

There's still a definite advantage to be had from setting the LAA bit on 32-bit apps under 64-bit Windows, that is IF you have more than 4GB of physical RAM available. Otherwise it doesn't make much sense, that's true.
 

My Computer

Computer type
PC/Desktop
Computer Manufacturer/Model Number
Custom-built
OS
Windows 7 Professional SP1 32-bit
CPU
Intel Core 2 Duo E6600 2.4GHz
Motherboard
Asus PL5D2
Memory
4GB DDR2-667 (4x1GB in dual-channel config)
Graphics Card(s)
nVidia GeForce 9800 GT
Sound Card
Creative X-Fi XtremeMusic
Monitor(s) Displays
Acer P236H
Screen Resolution
1920x1200 (DVI)
Hard Drives
OCZ SSD Vertex Plus 60GB SATA (Firmware 3.55), 64MB cache
Hitachi HD321KJ SATA, 320GB, 7200rpm, 16MB cache
PSU
Antec TruePower 2.0
Case
Cooler Master Centurion
Cooling
Too many fans
Keyboard
Standard
Mouse
Microsoft wireless optical mouse
Internet Speed
AT&T U-verse (18mbit/sec)
Antivirus
Microsoft Security Essentials
Browser
Firefox
Other Info
Other devices:
Compaq CQ-60 laptop
Google Nexus 7 (2012) tablet
Nvidia SHIELD tablet (US/LTE)
Hardkernel ODROID-XU single-board computer (Samsung Exynos 5420)
jimbo, the question of running on 32-bit or 64-bit Windows isn't directly related to the 2GB vs. 4GB issue. And obviously, for the OP recompiling isn't an option, where would he even get the source code from as these apps are proprietary?

There's still a definite advantage to be had from setting the LAA bit on 32-bit apps under 64-bit Windows, that is IF you have more than 4GB of physical RAM available. Otherwise it doesn't make much sense, that's true.

I have absolutely no idea what jimbo said. Oh well. It makes no difference to me.

I couldn't sleep so I thought I'd go through all of my games and change the setting on the EXE files. I'd found that some 32-bit applications are already set up for LAA. Well, the reason I say that is because if you look at the application link I posted, the checkbox is already checked when I open up the EXE. I'm actually assuming this actually but I went ahead and resaved it.

I actually got up to 96% usage with Chrome. So, this is apparently working. I tried launching MW3, but all I got was a black screen. It's a new games, so I don't know if that has anything to do with a fix needed or my CPU isn't great. I seem to remember being able to launch it on a fresh boot. I'll try it again some other time.

As far as Skype is concerned, I can't answer that yet. No one's online. The image before was a bit sloppy and I have a feeling it was a problem with RAM addressing, which what prompted me to make this topic in the first place.
 

My Computer

Computer Manufacturer/Model Number
N/A
OS
Windows 7 Ultimate 64-bit
CPU
E6750 OC'd ~ 2.9 Mhz
Motherboard
P5N-E
Memory
DDR2 800 MHz 4GB
Graphics Card(s)
GTX 460 SE 1GB
Sound Card
Realtek Audio (Onboard sound)
Hard Drives
Seagate 500 GB HD
PSU
750 watt
Back
Top