title: Only Malloc Lower 32bit address
body: <p>I've got a question on malloc in 64 bit machine. 
  I was wondering if it is possible for malloc to only allocate memory from lower 32bit addr. For instance, only allocate memory from 0xcfffffff to 0xffffffff, as it is in the 32bit machine. </p>
  
  <p>Thanks for the help. </p>
  
  <hr>
  
  <p>Update:
  At the moment, I am trying to implement a memory management tool for GPU devices which uses OpenCL.
  In order to do that, I need to intercept memory creating APIs from OpenCL, and reimplement them on my own. In other words, I implement a virtual memory for GPU devices on the host side. The problem is, in NVIDIA cuda, the OpenCL only has 32bit memory ptrs even in 64 bit machine. Therefore, every time I malloc a memory on the host side and tried to treat it as a OpenCL memory, the higher 32 bit will be truncated. Therefore, if I could malloc only lower 32bit, then there would be no problem.</p>