腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
虚拟
分配
粒度
和
页面
大小
、
、
、
在Win64平台上,
虚拟
分配
粒度
和
页面
大小
的典型值是什么?那就是SYSTEM_INFO的dwAllocationGranularity
和
dwPageSize。在Win32系统上,这将是64k
和
4k。 我之所以需要知道,是因为我已经为Win32应用程序设计了一个基于VirtualAlloc的自定义
分配
器,并且想知道我的设计选择在Win64上是否仍然有效。
浏览 0
提问于2009-01-13
得票数 7
回答已采纳
1
回答
相当于Linux中的dwAllocationGranularity?
、
、
、
、
在Windows中,它被定义为: 请注意,这与PAGE_SIZE不同,后者是物理
页面
的
粒度
。(在Windows上,x86上的
虚拟
地址
粒度
是64 KiB,而
页面
大小
当然是4 KiB)。
浏览 3
提问于2014-07-18
得票数 3
回答已采纳
2
回答
mmap:强制64K对齐
、
、
VirtualAlloc返回的地址保证是所谓的
分配
粒度
(dwAllocationGranularity)的倍数。不要与
页面
大小
混淆,这个数字是任意的,在大多数Windows系统上是64K。相反,mmap返回的地址只保证
页面
对齐。 可以通过调用VirtualFree立即释放保留/
分配
区域,并且不需要传递
分配
大小
(即VirtualAlloc中使用的
大小
)。相反,应该给munmap精确的未映射区域
大小
,即它释
浏览 2
提问于2015-07-14
得票数 3
回答已采纳
1
回答
什么是“翘曲
分配
粒度
”,它在数据自动化系统的注册
分配
中起什么作用?
、
在CUDA中,注册
页面
是按线程组
分配
的.这些组单元要么是sm_1x设备上的块,要么是sm_2x
和
sm_3x设备上的翘曲。寄存器是在寄存器页中
分配
的,因此总是
分配
给寄存器页
大小
的im倍数-- CUDA占用率计算器称它为“寄存器
分配
粒度
”。 我对此很了解。我不明白的是,为什么注册
页面
只能
分配
给线程组单元,如果这些组中的翘曲数是“翘曲
分配
粒度
”的倍数。编程指南和更广泛的互联网几乎没有提到
浏览 1
提问于2014-07-24
得票数 0
回答已采纳
2
回答
VirtualAlloc对齐是否与
分配
的
大小
一致?
、
当使用VirtualAlloc API
分配
和
提交一个具有两个
页面
边界
大小
的
虚拟
内存区域时,例如:address似乎总是以64 4KB对齐,而不仅仅是
页面
边界,在我的例子中,
页面
边界是4KB。声明它保证在
页面
边界上,但不解决我所看到的行为。我之所以这样问,是因为我以后想要接
浏览 2
提问于2013-11-16
得票数 4
回答已采纳
1
回答
dwPageSize与dwAllocationGranularity的关系
、
、
、
, system_info.dwAllocationGranularity); return pagesize;正如您可以在上面的代码片段中看到的那样,pagesize(即
分配
单位)被计算为dwPageSize
和
dwAllocationGranularity之间的最大值。
浏览 1
提问于2016-09-12
得票数 4
0
回答
关于Windows调拨物理存储器的疑问?
、
、
、
它的原文是这样的:如果我的这个结构体是3B
大小
(3个字符类型即可),
页面
粒度
是4KB也就是4096B,那么我如果给一个结构体数组的第一个结构体调拨物理存储器,按
页面
粒度
来说,我就相当于
分配
给了13
浏览 91
提问于2022-09-30
1
回答
我们怎样才能减少
页面
错误
我了解到,在
虚拟
内存中,页错误导致的损失是昂贵的。我们如何减少这种
页面
错误?我看到了一个论点,即较小的
页面
大小
可以减少
页面
错误。为什么这是真的?
浏览 1
提问于2013-12-18
得票数 1
1
回答
不能在VirtualAlloc返回的自由区域上使用VirtualQuery
、
、
、
、
我试图在Windows应用程序中加载的DLL中的某个内存范围内
分配
一定数量的内存。 我这样做的方法是使用VirtualQuery()搜索标记为空闲的内存区域,该区域位于我进行
分配
所需的边界内。我看到的是,即使该区域被标记为MEM_FREE,VirtualAlloc()有时也无法
分配
内存。我工作的方式是,如果它足够大的话,使用
页面
大小
步骤扫描mbi.RegionSize,找到一个允许我
分配
所需内存的地址。为什么根据VirtualQuery,整个区域应该是自由的,我应该能够在我想要的任何地址
浏览 8
提问于2015-07-30
得票数 0
回答已采纳
1
回答
您能计算给定页
大小
和
虚拟
地址
大小
的最大物理地址空间吗?
系统有64位地址空间,页
大小
为256 of,如何计算最大物理地址空间?
浏览 2
提问于2022-05-07
得票数 0
1
回答
关于Windows用户空间内存
分配
限制的问题
、
、
、
我试图查看在Windows中我可以
分配
内存的最大地址。我使用GetSystemInfo获得最大地址,然后尝试
分配
一个4KB的
页面
。
分配
的
大小
实际上大于一个
页面
的4KB,它是64 4KB。为什么? 如果我能理解为什么会发生这种事那就太
浏览 5
提问于2021-01-26
得票数 0
回答已采纳
1
回答
如何在用户模式NUMA感知的内存
分配
器中实现交错
页面
分配
?
、
、
我正在为linux构建一个支持NUMA的用户模式内存
分配
器。
分配
器在初始化期间占用大量内存,每个NUMA节点占用一个内存块。在此之后,通过从大块池中提供尽可能多的内存页来满足用户请求的内存页。如果用户请求n个
页面
,那么很容易从一个特定的块中给出n个
页面
。但现在我想实现交错
分配
策略,用户从每个区块中获得一个
页面
,轮询最多n个
页面
。这带来了这些
页面
的
虚拟
地址不再连续的问题。Q1:有没有办法返回
虚拟
可寻址的连续内存?我能想
浏览 0
提问于2011-12-21
得票数 2
3
回答
物理页是如何在malloc
和
空闲调用期间
分配
和
释放的?
、
、
、
Malloc从进程的一个
虚拟
内存区域(称为Heap )
分配
内存。堆的初始
大小
(就在执行开始之后
和
任何malloc调用之前)?比如说,如果堆从X
虚拟
地址开始,以Y
虚拟
地址结束,我想知道X
和
Y之间的区别。 所写的答案都在
虚拟
地址的上下文中,但我想知道物理
页面
是如何
分配
的。我不确定,但我认为这个初始
大小
(X)在操作系统中不会有相应的
页面
表条目。
浏览 6
提问于2010-11-01
得票数 5
回答已采纳
1
回答
为什么Linux内核需要奇数
大小
的小短期内存块?
、
、
我正在阅读“操作系统:内部
和
设计原则”,第七版。在第8.4节Linux内存管理中,当谈到内核内存管理时,如下所示: Linux内核内存
分配
的基础是用于用户
虚拟
内存管理的
页面
分配
机制。在
虚拟
内存方案中,使用了一个伙伴算法,以便可以将内核的内存
分配
到一个或多个
页面
的单位中。因为可以以这种方式
分配
的最小内存量是一个
页面
,所以
页面
分配
器本身就会效率低下,因为内核需要奇数
大小</e
浏览 2
提问于2018-02-28
得票数 1
回答已采纳
2
回答
我能阻止gcc优化器延迟内存
分配
吗?
、
、
、
、
我有一个用gcc 11.2编译的程序,它首先在堆上
分配
一些内存(8GB)(使用新的),然后用示波器实时读取的数据填充它。;我面临的问题是,优化器跳过第一行的
分配
因为在循环中尽可能高效是很重要的,所以我找到了一种方法,强制编译器在进入for循环之前
分配
内存,即将所有保留值设置为零: uint32_t* buffer = new uint32_t[0x80000000EDIT1
浏览 2
提问于2022-08-31
得票数 9
回答已采纳
3
回答
iPhone
和
安卓系统上的内存对齐
、
、
、
、
所以问题是:在iOS
和
Android(NDK)上使用malloc()时,保证的内存对齐是什么?
浏览 2
提问于2011-03-06
得票数 8
回答已采纳
1
回答
qml
虚拟
键盘: keyboardDesignWidth
和
高度
、
、
、
我在看
虚拟
键盘的QML样式。keyboardDesignWidth
和
身高的目的是什么?我似乎在管理键盘的宽度
和
高度方面有很多困难,而且永远无法将它设置成我想要的。直接设置keyboardHeight
和
宽度也没有多大帮助。怎样才能直接控制
虚拟
键盘的宽度
和
<em
浏览 5
提问于2017-09-15
得票数 3
回答已采纳
1
回答
在内核中查找未知类型内存的
大小
、
、
是否可以找到缓冲区的内存
大小
。我没有访问malloc.h的权限,但是我可以访问Freebsd内核中的sys/malloc.h。
浏览 2
提问于2016-03-12
得票数 1
回答已采纳
3
回答
MapViewOfFile冻结Windows 6设备
、
、
实际上,
分配
的尺寸并不重要。我可以将其减半到128个字节,但仍然失败在>65535次迭代中。 Edit4:用实际文件支持MMF的似乎没有什么区别。>65535次迭代失败。
浏览 6
提问于2011-05-12
得票数 0
回答已采纳
1
回答
关于将dll-部分复制到内存
、
、
根据区段的特征中可能设置的位标志IMAGE_SCN_CNT_INITIALIZED_DATA
和
IMAGE_SCN_CNT_UNINITIALIZED_DATA,必须选择哪一个。”但是我无法理解当SizeOfRawData为零时,为什么提交的内存
大小
是SectionAlignment,而不是SizeOfInitializedData或SizeOfUninitializedData
浏览 3
提问于2013-08-19
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
一篇读懂Linux 是如何管理内存的
【20期】操作系统为什么要引入虚拟内存?
关于Linux内存管理的详细介绍,这篇万字长文值得你的收藏点赞!
测试粒度全解析:优化测试效率与质量的关键
竟态攻击:Hyper-V安全问题分析
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
云直播
活动推荐
运营活动
广告
关闭
领券