c/c++语言开发共享嵌入式系统中的malloc

我正在使用嵌入式系统。 该应用程序在AT91SAMxxxx和cortex m3 lpc17xxx上运行。 我正在研究动态内存分配,因为它会极大地改变应用程序的面貌(并给我更多的权力)。

我认为我唯一真正的路线是为堆设置一个内存区域,并设计一个最适合(双关)我的目的的定制malloc。

在查看不同的内存分配算法时,你不能偶然发现Doug Lea的malloc。 我认为这已经在我的嵌入式系统中使用过,那里没有操作系统和量身定制的版本,比如提供了sbrk()函数来实现这一目标。 我试图找到很好的例子来实现这个目标,或者在我开始编写自己的概念之前尝试一个概念validation。

是否可以在我的系统中使用dlmalloc?

如果有,是否有人可以指向相关资源? (找不到很多帮助我的人)

是不是更好地去编写我自己的malloc来满足我的需求?

并且道歉我到目前为止的大多数研究都是设计一个不使用道格的malloc,这是一个不同的挑战。 猜猜我试图找出更深入地研究这条路线是浪费时间。

编辑:

这个故事的寓意:在我的案例中看dlmalloc毫无意义。

    对于您的情况,您自己的mallocdlmalloc是绝对可能的,但不可取。

    在非常低级别的嵌入式系统,裸机MCU等,使用malloc是没有意义的。

    您将运行您的应用程序,只有您的应用程序,您知道您拥有和可以使用多少内存,并且您完全能够定制您的程序以满足这些需求。 使用malloc可以节省内存,但这在这里毫无意义。 如果你的内存使用率最高的程序没有超过设备上可用的内存,并且你的程序是唯一运行的程序,则没有理由使用malloc,没有理由让任何内存不被使用。

    tl; dr它可能但非常无意义。

    需要了解更多c/c++开发分享嵌入式系统中的malloc,也可以关注C/ C++技术分享栏目—计算机技术网(www.ctvol.com)!

      以上就是c/c++开发分享嵌入式系统中的malloc相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/978885.html

      (0)
      上一篇 2021年12月12日
      下一篇 2021年12月12日

      精彩推荐