我怎样才能让我的32位Delphi应用程序使用4GB内存的64位Windows(通过Wow64.exe)? [英] How can I enable my 32-bit Delphi application to use 4gb of memory on 64-bit windows (via Wow64.exe)?

查看:1122
本文介绍了我怎样才能让我的32位Delphi应用程序使用4GB内存的64位Windows(通过Wow64.exe)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

根据这一 MSDN页面

WOW64使32位应用程序   乘坐64位内核的优势。   因此,32位应用程序可以使用   内核手柄更大数目和   窗口句柄。然而,32位   应用程序可能不能够创建   WOW64下尽可能多的线程,因为他们   可以在本机运行时,基于x86   系统因为WOW64分配的   附加的64位堆栈(通常为512   KB)为每个线程。此外,一些   地址空间量保留   为WOW 64本身和数据   结构,它使用。数量   保留取决于处理器;   更多的是保留在英特尔安腾   比基于x64处理器上。

WOW64 enables 32-bit applications to take advantage of the 64-bit kernel. Therefore, 32-bit applications can use a larger number of kernel handles and window handles. However, 32-bit applications may not be able to create as many threads under WOW64 as they can when running natively on x86-based systems because WOW64 allocates an additional 64-bit stack (usually 512 KB) for each thread. In addition, some amount of address space is reserved for WOW64 itself and the data structures it uses. The amount reserved depends on the processor; more is reserved on the Intel Itanium than on the x64 processor.

如果该应用程序有   IMAGE_FILE_LARGE_ADDRESS_AWARE标志   在图像标题中设置,每一个32位   应用程序接收到4 GB的虚拟   在WOW64地址空间   环境。如果   IMAGE_FILE_LARGE_ADDRESS_AWARE标志   没有设置,每个32位应用程序   获得2 GB的虚拟地址空间   在WOW64环境。

If the application has the IMAGE_FILE_LARGE_ADDRESS_AWARE flag set in the image header, each 32-bit application receives 4 GB of virtual address space in the WOW64 environment. If the IMAGE_FILE_LARGE_ADDRESS_AWARE flag is not set, each 32-bit application receives 2 GB of virtual address space in the WOW64 environment.

我如何有效地设置IMAGE_FILE_LARGE_ADDRESS_AWARE国旗在我的2007年德尔福的应用程序,这样我可以让我的32位应用程序WOW64的知道的和寻址最大内存全面4GB?

How do I effectively set the IMAGE_FILE_LARGE_ADDRESS_AWARE flag in my Delphi 2007 application so that I can make my 32-bit application Wow64 aware and address up to a full 4GB of memory?

推荐答案

请参阅此codeCentral文章:在32位Delphi程序使用超过3 GB的内存。

See this CodeCentral article: Using more than 3 GB memory in a 32 bit Delphi program.

这篇关于我怎样才能让我的32位Delphi应用程序使用4GB内存的64位Windows(通过Wow64.exe)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆