草庐IT

虚拟内存分区

全部标签

windows - 如何修复 Matlab 中 10800x10800 矩阵的内存不足错误?

情况:如何处理“出内存”错误。问题基本上是我使用10800x10800矩阵。我在32位Windows系统上。执行此操作时出现内存不足错误:a=zeros(10800,10800);这是我得到的内存:>>memoryMaximumpossiblearray:393MB(4.120e+08bytes)*Memoryavailableforallarrays:1097MB(1.150e+09bytes)**MemoryusedbyMATLAB:639MB(6.697e+08bytes)PhysicalMemory(RAM):895MB(9.387e+08bytes)*Limitedbycon

c++ - 我们可以假设内存地址的最后 2 位为 00 并重用这些位吗? Windows 7页面错误蓝屏

我的friend在64位Windows7PC上用C++编程,他想出了一个疯狂的想法来节省一点内存:他观察到他的内存地址的最后2位似乎总是00,所以他认为他可以将这些位用于其他用途,然后在需要内存地址时,只需使用位掩码将最后2位设置为0,无论是在写入还是读取内存时。他只使用最后2位的原因是它也需要在32位系统上工作。无论如何,在他的Windows764位系统上,他在运行程序时遇到以下蓝屏错误:PAGE_FAULT_IN_NON_PAGED_AREA会不会是他疯狂的内存节省想法造成的?也就是说,有时会发生内存地址的最后2位不是00的情况,并且他正在访问的内存部分位于他的一个内存页面上,部分

c++ - 内存映射文件和实际内存使用情况如何?

真的找不到任何关于这个的细节,这里是我所知道的关于Windows中的mmf的所有信息:在Windows中创建内存映射文件不会增加程序使用的表观内存量创建该文件的View消耗的内存相当于View大小这对我来说看起来很倒退,因为一方面,我知道mmf本身实际上有内存……在某处。如果我在mmf中写一些东西并破坏View,数据仍然存在。同时,为什么View会占用任何内存?它只是一个指针,不是吗?然后是ram中的实际内容和磁盘中的内容的奇怪之处。在具有分布式访问模式的大型mmf中,有时速度很快,有时则不然。我猜其中的一些有时会存储在文件中,如果一个与它或分页文件相关联,但实际上,我不知道。无论如何

c++ - 虚拟列表控件 (MFC)

我正在使用列表控件来显示vector中元素的表示。单击列表时,另一个控件会显示有关该元素的信息。元素的索引当前由它在控件中的索引确定,但是如果我想对结果进行排序或过滤,这将不再有效。有人告诉我可以使用虚拟列表控件,但MSDN不是很友好,有人可以告诉我如何为此使用虚拟列表控件吗? 最佳答案 坦率地说-将数据(数据vector中的位置)与列表控件中数据的呈现(列表ctrl中的位置)联系起来是我会远离的事情。在MFC中,每个控件都有一个“数据”DWORD成员变量——在MFC中编码时,我总是为添加的每个项目调用“SetItemData”,并

asp.net - 使用虚拟化进行 Web 开发的优势

这是我经常看到但从未真正想到的事情之一。您认为以Web应用程序开发为目的(特别是ASP.NETWebForms/MVC)。您认为做这样的事情有好处吗?如果有,会带来什么样的好处?我所说的虚拟化是指使用Hyper-V等产品来分离SQL和Web服务器等服务器上下文。 最佳答案 第一个问题是,什么的虚拟化?你的意思是服务器虚拟化?您的意思是在每个开发人员的笔记本电脑上运行VMWare和多个操作系统吗?您的意思是将所有内容都移动到云端吗?服务器虚拟化,在Web应用程序环境中,与一般IT并没有真正的不同-互联网上的大多数服务器,包括Stack

windows - 监控您自己进程中的内存使用情况

让我们暂时搁置海森堡。我将如何从我自己的进程中监控该进程使用了​​多少内存?(我可能故意低估了问题,梦想有创意的答案......) 最佳答案 Quassnoi是正确的-但它也可能值得检查我们的这个问题:HowtodetermineCPUandmemoryconsumptionfrominsideaprocess其中包括代码示例 关于windows-监控您自己进程中的内存使用情况,我们在StackOverflow上找到一个类似的问题: https://stack

c++ - 从另一个进程中获取内存

在Windows中,假设我使用DLL注入(inject)进入另一个进程。我还对我注入(inject)的进程的内存进行了一些截屏,并知道我想要提取的数据的位置。假设在0xaaaaaaaa处的另一个进程中有包含特定值的数据。我如何从那个过程中获取这个值,以便我可以在我的注入(inject)应用程序中使用它?既然我被注入(inject)到进程中,我可以只使用像memcpy这样的东西吗?memcpy(value,0xaaaaaaaa,10);我假设它可能比这更复杂?编辑:对于下面的回复,我看不出WM_COPYDATA对我有何帮助,因为它用于将数据发送到另一个应用程序,而不是用于从现有应用程序检

python - 如何在虚拟环境中使用 pip

我正在尝试安装Django并且我已经为这个项目创建了一个虚拟环境(我是virtualenv的新手)。我以这种方式创建了环境:virtualenvpath这似乎可以正常工作,因为我的项目文件夹中有一个新文件夹“env”。现在我尝试将Django安装到这个virtualenv中。\PycharmProjects\Django_tutorial>env/bin/pipinstalldjango'env'isnotrecognizedasaninternalorexternalcommand,operableprogramorbatchfile.所以我检查了env文件夹,有这些文件夹:Incl

linux - 操作系统如何知道映射内存中的页面是脏的?

我的意思是直接在内存中更新数据,而不使用write()。在linux中,我认为在msync调用中指定的所有数据都已刷新。但在Windows中,FlushViewOfFile的文档说“写入脏页”,因此操作系统以某种方式知道哪些页面已更新。这是如何运作的?我们必须使用WriteFile来更新映射内存吗?如果我们在linux中使用write()是否msync只同步脏页? 最佳答案 在大多数(也许是所有)运行Linux或Windows的现代计算机上,CPU代表操作系统跟踪脏页。此信息存储在pagetable中.(例如,参见Intel®64a

windows - 报告 Direct3D 内存使用情况

我有一个Direct3D9应用程序,我想监控内存使用情况。有没有工具可以知道Direct3D使用了多少系统内存和视频内存?理想情况下,它还会报告为纹理、顶点缓冲区、索引缓冲区分配了多少... 最佳答案 您可以使用旧的DirectDraw界面查询总内存和可用内存。您通过这种方式获得的数字并不可靠。可用内存可能随时变化,可用内存通常会考虑AGP内存(严格来说不是视频内存)。您可以使用这些数字很好地猜测您的应用程序/游戏的默认纹理分辨率和细节级别,仅此而已。您可能想知道为什么没有办法获得更好的数字,毕竟跟踪资源使用情况并不难。从应用的角度