メモリ
組込みのお仕事で避けて通れないメモリの概念関するメモ。
メモリとは
参考: 【マイコン】メモリの概念「メモリ空間」「メモリマップ」とは?CPUとメモリの関係について解説!
メモリ領域
メモリ領域とは
参考:https://brain.cc.kogakuin.ac.jp/~kanamaru/lecture/MP/final/part06/node8.html
静的領域
- staticをつけると静的領域に配置される
参考:【C言語】staticローカル変数の使い方・メリットを解説-静的領域に配置される効果
参考:https://monozukuri-c.com/langc-static-memory/
動的領域
- 自動変数が確保される領域
参考:https://qiita.com/LemniscaterN/items/a3abfa143612cb928bde
参考:https://monozukuri-c.com/langc-dynamic-memory/
参考:https://www.youtube.com/watch?v=_qZ_vZYEfq0
スタック領域
- コンパイラやOSが割り当てる
- 使用容量は、コンパイル、リンク時に決まる
- メモリの管理が、下から順に積み上げていく先入れ先出し法
参考:スタックについて勉強したのでまとめてみた
参考:スタックってなあに? - プログラミング上の注意
参考:スタック使用量見積もり/調査
参考:使用スタックサイズを求める - その1:gccの機能を活用する。
参考:.suファイルとはスタック領域を確認するファイル
ヒープ領域
- ソフトウェアで割り当てる(malloc、free、ガベージコレクション)
参考:ヒープとスタック
静的領域
編集中。