- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果是这样,怎么做。我在说这个4GB Patch .
从表面上看,这似乎是个绝妙的主意:在 Windows 上,每个 32 位应用程序通常只能访问 2GB 的地址空间,但如果您使用的是 64 位 Windows,则可以启用一个小标志允许 32 位应用程序访问完整的 4GB。该页面提供了一些可能从中受益的应用示例。
但是,大多数应用程序似乎都假定内存分配总是成功的。一些应用程序会检查分配是否成功,但即便如此,最多也只能在失败时优雅地退出。在我(短暂的)生命中,我从来没有遇到过一个应用程序可能会导致内存分配失败并且仍然继续运行而不会丢失功能或影响正确性,而且我有一种感觉,这种应用程序从极其罕见到基本上没有 -存在于台式计算机领域。考虑到这一点,假设任何此类应用程序在正常情况下都将被编程为不超过 2GB 内存使用似乎是合理的,并且那些少数会使用已经启用的魔法标志构建的 64 位的好处用户。
那么,我是不是做出了一些不正确的假设?如果没有,该工具在实践中有何帮助?我不明白它怎么可能,但我看到互联网上有很多人声称它有效(对于作品的某些定义)。
最佳答案
你的麻烦假设是这些:
Some applications do check if allocations are successful, but even then can at best quit gracefully on failure. I've never in my (short) life come across an application that could fail a memory allocation and still keep going with no loss of functionality or impact on correctness, and I have a feeling that such applications are from extremely rare to essentially non-existent in the realm of desktop computers.
确实存在比在失败时“优雅退出”更好的应用程序。是的,功能会受到影响(毕竟,没有足够的内存来继续请求的操作),但许多应用程序至少能够保持运行 - 因此,例如,您可能无法添加更多将文本添加到您的巨大文档中,但您至少可以将文档保存为当前状态(或将其缩小等)
With this in mind, it would seem reasonable to assume that any such application would be programmed to not exceed 2GB memory usage under normal conditions, and those few that do would have been built with this magic flag already enabled for the benefit of 64-bit users.
这种假设的问题在于,一般来说,应用程序的内存使用情况取决于您对其进行的操作。因此,随着过去几年存储大小和内存大小的增长,人们想要操作的文件大小也在增长 - 因此,一个在 1GB 文件闻所未闻时运行良好的应用程序现在可能会遇到困难(对于例如)许多消费类相机都可以拍摄高清视频。
换句话说:过去可以轻松容纳在 2GB 内存中的应用程序不再适用,因为人们现在想用它们做更多事情。
关于memory - "4GB patch"在现实生活中有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31428278/
#include typedef std::vector vc; typedef std::vector vvc; vvc f() { const int N = (1 不把它还给操作系统。 因
我正在尝试训练 Dlib's train_shape_predictor_ex.cpp与 Halen数据集。我在 Release模式 中使用 Visual Studio 将代码编译为 64 位平台 作
当我试图解决this 时想到了这个问题。问题。 我有一个容量为 120 GB 的硬盘,其中 100 GB 被一个巨大的文件占用。所以 20 GB 仍然是免费的。 我的问题是,我们如何将这个巨大的文件拆
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: Can you allocate a very large single chunk of memory (
我有一台运行 Linux (3.19.5-200.fc21.x86_64) 的 128 GB RAM 的计算机。但是,我不能在单个进程中分配超过 ~30 GB 的 RAM。除此之外,malloc 失败
我需要为 808704000 个 float 分配内存,大约是 3085 MB。我的电脑有 32 GB 内存,运行 64 位 Linux (CentOS 6.6)。每次我尝试分配内存时,malloc
很抱歉这个愚蠢的问题,但是当reading about 32 bits limitation ,我发现由于 Memory-Mapped 方法,MongoDB 不能存储超过 2 GB,但是: 2^32
假设我们有一个 32 位地址,那么每一位可以是 1 或 0。 所以组合总数等于2^32。 所以我们可以表示 2^32 个地址(没有单位)。 但为什么人们说 32 位地址可以表示 2^32 字节地址(为
好吧,这个问题确实是一个挑战! 背景 我正在从事一个涉及比正常数字更大的基于算术的项目。我是新手,我打算使用 4 GB 文件大小的最坏情况(我什至希望将其扩展到 5GB 上限,因为我之前看到文件大小大
我在文件系统上有大约 12 个大小为 1 GB 到 10 GB 的存储库,我需要为所有这些存储库设置自动备份(我们的旧备份脚本在计算机出现故障时丢失了) XP 64 位机器。 看完this quest
我尝试调整 Linux VM 上的操作系统磁盘大小,该 VM 通常由 azure 自动创建。我无法创建自定义操作系统磁盘 - 请告知我该怎么做? enter image description her
我在 .NET 中遇到了一个问题,我的数组受到我拥有的 RAM 数量的限制,并且我需要可以容纳至少 40 GB 字节的数组。我正在考虑使用硬盘驱动器作为虚拟数组的想法不在乎它是否慢。 我正在研究这个想
我尝试调整 Linux VM 上的操作系统磁盘大小,该 VM 通常由 azure 自动创建。我无法创建自定义操作系统磁盘 - 请告知我该怎么做? enter image description her
我的目标是看看当使用比物理 GPU 内存所能容纳的更多纹理数据时会发生什么。我的第一次尝试是加载多达 40 个 DDS 纹理,导致内存占用比 GPU 内存高得多。但是,我的场景在 9500 GT 上仍
Windows 上的 JDK 最多需要 2 GB 左右的 RAM。即使我们为 JDK 分配更多 RAM;它不接受它。如果我需要在 Windows 上运行需要 8 GB RAM 的进程;我怎样才能实现它
我有一个程序需要分配2个15亿长度的整数数组。这是一个编码挑战( https://projecteuler.net/problem=282 ),并且没有办法使用如此大的数组(如果有,请不要告诉我;我应
假设我有一个 32 位内核。 4 Gb RAM,10 Gb 交换分区。 我有一个在无限循环中有 malloc 的进程。因此,最终系统的 OOM 将终止该进程。这里有两个论点。 参数 1:因为它是 32
我有一个可以大于 4GB 的文件。我正在使用 linux split 命令按行拆分它(这是要求)。但是拆分原始文件后,我希望拆分文件的大小始终小于 2GB。原始文件大小可能在 3-5 GB 之间。我想
我有一台带有 32GB RAM 的 Mac 服务器(雪豹)。当我尝试在 Perl (v 5.10.0) 中分配超过 1.1GB 的 RAM 时,出现内存不足错误。这是我使用的脚本: #!/usr/bi
我们正在尝试运行.NET 4 Web应用程序(在8 GB,8核心Windows 2008 R2 64位Webedition服务器上),该应用程序使用Spire.doc创建Word mailmerge文
我是一名优秀的程序员,十分优秀!