腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
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
2
回答
线程
堆栈
分配
、
、
、
我们知道每个线程都有自己的
堆栈
。这些
堆栈
在哪里
分配
?我读过一些文档,当创建线程时,
堆栈
似乎是从堆中
分配
的。这有道理吗?提前感谢!
浏览 2
提问于2014-05-16
得票数 5
回答已采纳
2
回答
使用GDB读取寄存器指向的
内存
、
、
、
如果我知道
内存
位置,有没有办法查看GDB中的
内存
内容? 也就是说,我正在调试我为操作
系统
课程编写的x86汇编程序。现在,我正在尝试用C和gas (GNU assembler)为x86上的
Linux
编写一个用户级线程库。我
分配
了自己的
堆栈
,并使esp寄存器指向该
内存
位置。现在,我想要读取
内存
,以查看我
分配
的
堆栈
中有什么。
浏览 0
提问于2013-03-30
得票数 4
回答已采纳
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
回答已采纳
2
回答
Linux
中进程/线程的大小
、
、
、
在
Linux
中,进程/线程的大小是多少?当创建了一个进程/线程,以及其中的task_struct和其他数据结构时,是否还有其他内容?当标准进程/线程在
内存
中创建时,我如何知道它的大小?
浏览 6
提问于2012-07-11
得票数 4
回答已采纳
2
回答
堆栈
上存储了哪些
系统
数据
、
、
我正在尝试理解如何在带有gcc的
Linux
x86_64
系统
上使用pthread进行
堆栈
分配
和对齐,以及该
系统
在
堆栈
上存储了哪些数据。我知道您可以使用pthread_attr_setstack配置
堆栈
内存
。我还可以看到,添加TLS
内存
(使用__thread变量)会导致rsp的第一个值更低。因此,看起来TLS变量被
分配
在
堆栈
的顶部。 然而,我不确定的是还有什么。在我看来,
堆栈
的第一页
浏览 1
提问于2011-12-13
得票数 2
回答已采纳
2
回答
如何以编程方式获得
Linux
进程的
堆栈
开始和结束地址?
、
、
对于单线程程序,我想检查给定的虚拟地址是否在进程的
堆栈
中。我想在用C写的过程中做到这一点。 /proc/self/maps为我的特定进程显示了一个132 k的
堆栈
,并且在我的
系统
上,
堆栈
的最大大小(ulimit -s)是8 mega。
Linux
如何知道由于我们超过<e
浏览 5
提问于2014-04-23
得票数 16
回答已采纳
2
回答
malloc不能保证返回物理上连续的
内存
。
、
我正在阅读关于虚拟
内存
的文章,我的结论如下: 我是对的还是错的?请解释一下。
浏览 3
提问于2015-09-28
得票数 5
回答已采纳
2
回答
在
linux
中,每个进程都有一个4GB的虚拟地址空间,考虑到32位的体系结构。
、
、
、
、
嗨,我是
Linux
内核开发的新手。因此,希望对下面的语句有一些清晰的说明。
linux
中的每个进程都有内
浏览 3
提问于2015-06-13
得票数 3
1
回答
当没有足够的
内存
用于C中的静态
分配
时会发生什么?
、
、
当您动态
分配
内存
时,例如malloc(1024 * sizeof(char)),如果没有足够的
内存
可用来满足请求,则会将结果指针设置为NULL。当没有足够的
内存
来满足静态
分配
(如char c[1024] )时会发生什么情况
浏览 6
提问于2012-11-18
得票数 4
回答已采纳
1
回答
包含在可执行文件中的排序算法是否被信号11终止?
、
、
所以它在试图访问不存在的
内存
?该算法在50万行随机列表上运行良好,在一个有序列表的17万行上执行该算法需要29.48秒(在18万行时,它给了我一个信号11)。
浏览 4
提问于2015-09-04
得票数 0
回答已采纳
5
回答
为什么我在C中在
堆栈
上声明一个大的数组时会得到一个段错误?
、
我从这行代码中得到了一个段错误:为什么会这样呢?
浏览 1
提问于2010-06-30
得票数 3
回答已采纳
3
回答
Linux
32位计算机上程序的
堆栈
分配
限制
、
在C++中,在编译器放弃并表示无法为
堆栈
分配
更多
内存
之前,
堆栈
段可以增长多少。 在
linux
(fedora) 32位机器上使用gcc。
浏览 0
提问于2009-11-23
得票数 1
回答已采纳
1
回答
linux
中的最大线程数
、
、
Integer.MAX_VALUE); break; }操作
系统
为ubuntu:18.04,
内存
为4G,处理器数为2。我在命令中设置了-Xss1m,这是否意味着每个线程只有1m
内存
?如果它有单独的
内存
,第10000个线程将有10G
内存
,实际上机器中只有4G
内存
。
浏览 0
提问于2020-07-13
得票数 2
1
回答
获取无法在地址错误时访问
内存
、
我知道这个错误:0x0000000000400f8b in encryptFile (outPath=<error reading variable: Cannot access memory at address 0x7fffff63a0f0>, key=<error reading var
浏览 1
提问于2013-11-13
得票数 0
回答已采纳
3
回答
用于计算机进程超过操作
系统
分配
的
内存
的术语。
、
当计算机进程使用过多的
内存
,而操作
系统
不得不终止它时,这个术语是什么?我当时想的是memory leak,但这意味着
内存
没有被占用,但事实并非如此。我也不会使用术语stack overflow,因为可以在堆上
分配
内存
。
浏览 3
提问于2016-07-07
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux 内核将弃用并删除 SLOB 内存分配器
Redis 内存分配
内存的分配策略
白话Go语言内存管理--内存分配原理
c语言-malloc分配内存
热门
标签
更多标签
云服务器
ICP备案
对象存储
实时音视频
云直播
活动推荐
运营活动
广告
关闭
领券