腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
使用GDB读取寄存器指向的
内存
、
、
、
如果我知道
内存
位置,有没有办法
查看
GDB中的
内存
内容? 也就是说,我正在调试我为操作
系统
课程编写的x86汇编程序。现在,我正在尝试用C和gas (GNU assembler)为x86上的
Linux
编写一个用户级线程库。我
分配
了自己的
堆栈
,并使esp寄存器指向该
内存
位置。现在,我想要读取
内存
,以
查看
我
分配
的
堆栈
中有什么。
浏览 0
提问于2013-03-30
得票数 4
回答已采纳
2
回答
线程
堆栈
分配
、
、
、
我们知道每个线程都有自己的
堆栈
。这些
堆栈
在哪里
分配
?我读过一些文档,当创建线程时,
堆栈
似乎是从堆中
分配
的。这有道理吗?提前感谢!
浏览 2
提问于2014-05-16
得票数 5
回答已采纳
6
回答
如何为
linux
上的clone()
系统
调用映射
堆栈
?
、
、
、
、
Linux
上的clone()
系统
调用接受一个参数,该参数指向新创建的线程要使用的
堆栈
。我遇到了,它解释说:“
Linux
pthread实现使用的最佳解决方案是使用mmap来
分配
内存
,并使用标志指定在使用时
分配
的
内存
区域。这样,
内存
就会在需要时
分配
给
堆栈
,如果
系统
无法
分配
额外的
内存
,就会出现分段冲突。” 我听说mmap使用的唯一上下文是将文件映射到
浏览 0
提问于2009-07-04
得票数 13
回答已采纳
2
回答
在
堆栈
上
分配
大缓冲区
、
、
、
在
堆栈
中
分配
大缓冲区(如果
堆栈
有足够的容量)是一种“糟糕的方式”吗?我的意思是在
Linux
系统
中使用8MB
堆栈
分配
300-500KB的对象。或者它可能会导致任何错误?另外,有没有关于如何使用
堆栈
内存
的指南?
浏览 27
提问于2021-11-18
得票数 3
2
回答
C程序中
堆栈
和堆的“标准”大小是多少?
、
、
我读到过
Linux
上的“标准”和初始
堆栈
大小约为8MB,而Windows上的
堆栈
大小约为1MB。 但是堆
分配
是如何工作的呢?操作
系统
是否为进程堆设置了“虚拟”大小,就像它为具有已提交
内存
和保留
内存
的
堆栈
所做的那样?
浏览 3
提问于2011-11-05
得票数 6
1
回答
在Solaris/
Linux
中释放
分配
的
内存
、
、
、
我已经编写了一个小程序,并在Solaris/
Linux
平台上编译它,以测量将此代码应用于我的应用程序的性能。 程序就是这样写的,一开始用的是sbrk(0)
系统
调用,我取了堆区域的基址。之后,我使用malloc
系统
调用
分配
了1.5 GB的
内存
,然后使用memcpy
系统
调用将1.5 GB的内容复制到
分配
的
内存
区。然后,我释放了
分配
的
内存
。在释放之后,我再次使用sbrk(0)
系统
调用来
查
浏览 0
提问于2010-06-01
得票数 4
回答已采纳
8
回答
调用free或delete是否会将
内存
释放回“
系统
”
这是我的问题:调用free或delete会释放回“
系统
”的
内存
吗?我的意思是,它曾经减少过进程的数据段吗?现在考虑这个场景,在峰值负载时,在堆上
分配
了许多对象。据我所知(请纠正我),使用malloc
分配
的
内存
永远不会释放
浏览 0
提问于2009-09-14
得票数 43
回答已采纳
1
回答
JPA持久化大blob
、
、
、
我试图用一个大的blob文件来持久化一个实体,但我在JBoss日志中得到了一个“
内存
不足”的错误。举个例子..。
浏览 2
提问于2012-11-15
得票数 0
3
回答
Linux
内核中的
堆栈
内存
、
、
、
最近,我试着想象如何在
Linux
内核中处理
堆栈
内存
,但无法想出任何可靠的东西。我知道内核使用它自己的函数来进行动态
内存
管理,但是我不知道它是如何管理普通C
堆栈
内存
的,因为它毕竟可以用普通C实现,用普通GCC编译。据我所知,在处理操作
系统
时,
堆栈
内存
分配
通常由libc的一种形式处理,甚至在类似AVR的情况下也是如此。但据我所知,
Linux
内核不依赖libc?我不太清楚
堆栈
内存
浏览 3
提问于2015-12-31
得票数 2
回答已采纳
2
回答
为什么我们不应该用C动态地在
堆栈
上
分配
内存
呢?
在windows和
Linux
系统
中,我们都有在
堆栈
上
分配
内存
的函数,但是它们的使用是不被鼓励的,它们也不是C标准的一部分?这意味着他们提供了一些不规范的行为。由于我没有那么丰富的经验,所以我无法理解从
堆栈
而不是使用堆
分配
内存
会有什么问题? 谢谢。编辑:我的观点:正如Delan解释的那样,
分配
给一个程序的
堆栈
数量是在编译时决定的,因此我们不能要求从操作
系统
中获得更多的
堆栈
--如果我们
浏览 7
提问于2011-07-18
得票数 1
回答已采纳
3
回答
将
堆栈
的大小扩展到大型本地数据处理是个好主意吗?
、
、
、
我的环境是gcc,C++,
Linux
。当我的应用程序进行一些数据计算时,它可能需要一个“大”(可能是几个MBs)
内存
数来存储数据、计算结果和其他东西。由于在某些函数作用域之外没有所有权,所以我认为所有这些
内存
都可以在
堆栈
中
分配
。那么,扩展
浏览 1
提问于2012-07-11
得票数 3
回答已采纳
4
回答
在C中调用函数时,是否使用操作
系统
的
堆栈
,
堆栈
的大小是否固定?
、
、
、
、
那么这就是操作
系统
的
堆栈
吗?也就是说,操作
系统
是否有专门为此而设计的单独的
内存
块?如果我必须将这么大的值传递给我的函数,该怎么办呢?
浏览 4
提问于2013-04-30
得票数 1
回答已采纳
2
回答
Linux
中进程/线程的大小
、
、
、
在
Linux
中,进程/线程的大小是多少?当创建了一个进程/线程,以及其中的task_struct和其他数据结构时,是否还有其他内容?当标准进程/线程在
内存
中创建时,我如何知道它的大小?
浏览 6
提问于2012-07-11
得票数 4
回答已采纳
1
回答
Linux
中的
堆栈
内存
管理
、
、
我有几个关于
Linux
堆栈
大小限制的问题。我对x86_64
系统
最感兴趣,但如果存在平台差异,我也想了解它们。我的问题是:但是,如果在运行应用程序时使用strace跟踪
系统
调用,则不会看到任何与生成
堆栈
相关的信息。因此,我想知道内核正在做什么来
浏览 1
提问于2015-07-09
得票数 3
2
回答
堆栈
上存储了哪些
系统
数据
、
、
我正在尝试理解如何在带有gcc的
Linux
x86_64
系统
上使用pthread进行
堆栈
分配
和对齐,以及该
系统
在
堆栈
上存储了哪些数据。我知道您可以使用pthread_attr_setstack配置
堆栈
内存
。我还可以看到,添加TLS
内存
(使用__thread变量)会导致rsp的第一个值更低。因此,看起来TLS变量被
分配
在
堆栈
的顶部。 然而,我不确定的是还有什么。在我看来,
堆栈
的第一页
浏览 1
提问于2011-12-13
得票数 2
回答已采纳
2
回答
为什么运行std::带空函数的线程占用大量
内存
、
、
、
、
计算机有128 has的
内存
。我发现运行空主函数需要使用14 main
内存
。如果运行std::带空函数应用程序的线程,则每个线程开始使用~8MB。但是如果我只做了一个动态
内存
分配
程序,那么每个线程开始使用大约64 to的
内存
。我不明白什么能花这么多的记忆。我怎么能控制这个尺寸?以及如何
分配
动态
内存
以最小化某些
系统
的默认
分配
?
系统
: Ubuntu 14.04.3 编译器选项:‘-s
浏览 4
提问于2017-01-31
得票数 6
2
回答
如何在Java VisualVM中
查看
内存
分配
堆栈
跟踪
、
、
本文描述如何在Java VisualVM:中
查看
内存
分配
堆栈
跟踪。 简而言之,在Java VisualVM选项中定义一个自定义预置,并检查
内存
设置选项卡中的“记录
分配
堆栈
跟踪”复选框。现在,当我选择自定义预置并启动
内存
分析时,我仍然无法
查看
内存
分配
堆栈
跟踪。没有像本文所描述的那样右键单击项目上的操作“获取快照并显示
分配
堆栈
跟踪”,也没有类似的东西
浏览 9
提问于2012-08-18
得票数 16
回答已采纳
2
回答
malloc不能保证返回物理上连续的
内存
。
、
我正在阅读关于虚拟
内存
的文章,我的结论如下: 我是对的还是错的?请解释一下。
浏览 3
提问于2015-09-28
得票数 5
回答已采纳
2
回答
堆栈
和堆
内存
是否实际实现为
堆栈
和堆数据结构?
、
、
、
、
我想知道
堆栈
和堆
内存
中提到的
堆栈
和堆是否实际上实现为
堆栈
和堆数据结构?我认为
堆栈
实际上是一个具有指向函数中声明的LIFO ()变量的指针的
堆栈
,但是我想确认并询问堆是否与满足堆属性的动态树数据结构共享的不仅仅是它的名称?最近,我在
堆栈
和堆上读了很多书,并且相信我理解这个概念,但是它让我对实际的实现感到好奇。我想,在不同的体系结构上,它也可能是不同的,而且对于所有的计算机和操作
系统
,可能也没有一个具体的一般答案。如果有人遇到这个问题,但仍然不知道
浏览 5
提问于2016-04-20
得票数 1
回答已采纳
2
回答
如何以编程方式获得
Linux
进程的
堆栈
开始和结束地址?
、
、
对于单线程程序,我想检查给定的虚拟地址是否在进程的
堆栈
中。我想在用C写的过程中做到这一点。 /proc/self/maps为我的特定进程显示了一个132 k的
堆栈
,并且在我的
系统
上,
堆栈
的最大大小(ulimit -s)是8 mega。
Linux
如何知道由于我们超过<e
浏览 5
提问于2014-04-23
得票数 16
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
查看 Linux 系统中进程和用户的内存使用情况
Linux 内核将弃用并删除 SLOB 内存分配器
Linux服务器如何查看CPU使用率、内存占用情况
黑客基础:操作系统怎么管理内存的?非连续分配管理是什么?
微软 Win11 安卓子系统 2304 更新:可分配内存大小
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券