Run 64 bit assembly code on a 32 bit operating system

Go To StackoverFlow.com

1

Assuming you have a 64 bit capable processor running a 32 bit operating system. Would it be possible to run some 64 bit assembly instructions in a 32 bit program? Can't see why not if you have a 64 bit capable processor, but there are so many stingy technical issues in computing, especially the operating system.

NOTE I am not talking about running a 64 bit program on a 32 bit os, just using 64 bit assembly instructions embedded in a 32 bit program.

2012-04-04 21:00
by NoName
I think VMWare does this with virtualization. In theory it should be possible, but you need to get low level access to the processing like they do with the HyperV stuff - CrazyDart 2012-04-04 21:04


1

The thing you would most need to know on this is to make sure you make your processor mode transitions correctly. You need to do some basic work to transition from 32 bit mode into 64 bit mode (also called long mode). The biggest issue would be making sure you set up the descriptor table correctly. Some more info is here: http://www.codeproject.com/Articles/45788/The-Real-Protected-Long-mode-assembly-tutorial-for

Hope this helps.

2012-04-13 18:02
by strangefreeworld
This helps, but are there any operating system specific restrictions to know about - NoName 2012-04-13 20:48
For clean addressing purposes, you may also want to ensure that your OS has PAE enabled - strangefreeworld 2012-04-16 11:30
Ads