在一些系统中,堆栈向上增长,而堆栈向下增长,在某些系统中,堆栈向下增长,堆栈向上增长。但是,哪一个是最好的设计?这两种特定设计中是否有编程优势?哪一种是最常用的,为什么它没有被标准化为遵循单一的方法?它们对某些特定场景是否有用/有针对性?如果是,他们是什么?堆栈增长和堆栈增长的方向
2
A
回答
0
我已经阅读了Miro Samek和其他各种嵌入式专家的着作,看来他们并不赞成在嵌入式系统上进行动态分配。这可能是由于复杂性和内存泄漏的可能性。如果你有一个绝对不能失败的项目,你可能会想避免使用Malloc,因此堆很小。其他非关键任务系统可能恰恰相反。我不认为会有一个标准的方法。
0
也许它只是取决于处理器:如果它支持堆栈向上或向下?
1
堆只在非常幼稚的实现方向“增长”。正如Paul R.提到的,堆栈增长的方向是由硬件定义的 - 在Intel CPU上,它总是朝着更小的地址“即'Up'”
相关问题
- 1. 英特尔堆栈增长和参考
- 2. 堆栈是否连续增长?
- 3. 未知堆增长
- 4. 堆增长和下降
- 5. 增加AsyncTask堆栈大小?
- 6. 增加堆栈大小c#
- 7. 增加堆栈大小
- 8. 增加栈保留后堆栈溢出
- 9. LuaJit增加堆栈/堆大小
- 10. 为什么堆栈增长到较低的地址?
- 11. 如何在系统中查看堆栈增长还是减少?
- 12. JVM - 堆栈和堆栈
- 13. addSubview和removeFromSuperview时的堆增长
- 14. 线程1中的堆栈溢出:无法将堆栈增长到0xffe601ff8 Valgrind错误
- 15. 如何增加堆栈的容量?
- 16. 的Android:增加调用堆栈大小
- 17. 增加MSXML中的XSL堆栈大小
- 18. 增长堆大小和OutOfMemory错误
- 19. 服务堆栈中的长轮询
- 20. Julia中较长的堆栈痕迹
- 21. 在Windows上增加堆栈大小(GCC)
- 22. 如何用runhaskell增加堆栈大小?
- 23. 用XCode增加堆栈大小
- 24. C++ vs2010增加堆栈大小
- 25. 增加堆栈大小IIS ASP.NET 3.5
- 26. 如何增加Java堆栈大小?
- 27. 如何解释堆和堆栈不会彼此成长
- 28. 堆栈帧和堆栈指针
- 29. 希望堆栈堆栈?
- 30. 如何查找堆栈向上或向下增加?
这个功课? – NullUserException 2010-07-30 18:39:59
不是。我一直在理解内存布局,这个查询弹出来了! – 2010-07-30 18:42:35
一般来说堆不会增长 - 它只是您感兴趣的堆栈增长的方向,而这是特定于架构的。 – 2010-07-30 18:48:28