【问题标题】:X64 and x32 FreeBSD, memory alocation intro applicationX64 和 x32 FreeBSD,内存分配入口应用
【发布时间】:2016-03-25 02:44:11
【问题描述】:

我已经编译了一个介绍 FreeBSD 10.2 X32bit 的程序。 我想移动那个预编译的二进制介绍 amd64 并运行它。

为什么?我需要很多 ram 内存,我想我需要超过 64gb ram 内存。

我的问题是: 1)如果我编译一个应用程序介绍 i386 机器,该应用程序介绍 amd64 可以处理多少内存(我希望该应用程序可以使用所有 64gb 内存 ram)?所有内存?

2) 是否可以编译我的程序 intro i386 并指示编译器为我的应用程序允许超过 4gb 的空间?

我的想法是我希望我的应用程序能够访问所有资源,因为我有一个带有许多 conexions 的服务器,并且我使用缓冲区来存储数据 intro ram 内存。而且我需要更多的内存。

谢谢。 :d 我希望你们明白我的意思。

【问题讨论】:

  • 如果您创建一个 32 位应用程序,它有 32 位地址空间,即使您在 64 位系统上运行它也是如此。
  • 只编译为 64 位。 x86-32 已过时。

标签: c++ memory x86-64 freebsd i386


【解决方案1】:

您的应用程序可以处理的内存量取决于您构建它的架构。如果您希望您的应用程序能够访问超过 4 GiB 的内存,则必须将其编译为 64 位架构。显然,您也需要在 64 位操作系统上运行它。

如果您确实需要在 32 位主机上构建它,那么仍然可以生成一个64 位程序,using cross-compilation

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多