[H8-ML(2444)] RE:ダイナミックなメモリー確保
From: "Shouji Hirata" <shouji@xxxxxxxxxxxxx>
Date: 2002年11月25日(月)13時28分02秒
こんにちは。平田@マイクロフトです

> 私の考えでは・・。
> mallocで確保するメモリーの単位を適当なメモリーブロックで管理する
> 。
> 1ブロック(たとえば128バイト)を管理するテーブルを設けてその領域が
> 使われているかを管理する。
> これは誰でも考えつきます。
> 問題はfreeされた場合の領域管理で、malloc、freeを繰り返す
> と

私は多くの場合メモリ確保はheapをどかっと取っておいてmalloc,freeに任していま
す。

ただ組み込みで長時間動き続けるような応用では、おっしゃるとおり虫食いが発生す
ると怖いので別にメモリ管理プログラムを用意しています。
プログラム構成を検討して「おっきなメモリ:数K単位」と「ちっさなメモリ:128程度」固
定長にして使用中、開放済みのフラグで管理しています。ついでに時間(Tick)と、仕
様、開放したタスクIDもテーブルに残しておくとあとでデバックのときに役立つこと
が多いようです。

あまりこったことをすると動作検証が大変だったり、応答時間が一定にならないと組
み込み応用でつらかったりします(と、対外的な言い訳にしてます(^_^)

================================
平田祥司(shouji@xxxxxxxxxxxxx)

株式会社マイクロフト(www.microft.co.jp)
神奈川県横浜市青葉区あかね台2-11-29
================================


スレッド概略
[2377(R)](起点)
 └[2442(U)]
   └[表示中]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]