[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[WitchTech 00440] Re: 手抜き malloc



dieです。

On Mon, 4 Sep 2000 16:48:16 +0900 (JST)
in [WitchTech 00438] Re: 手抜き malloc
cdr@cosmonet.org (Tatsuya Kudoh) wrote:

> CDR/TKです。

> トータルで見た場合、mallocとfreeのどちらが速いほうが有利なんでしょう?

むぅ・・「トータル」と言うのは工藤さん自身が「ケースごとに適切」と
書いているのと反しちゃうのでは(^^;?

> 例えばテキストエディタをmalloc/freeで構成(1行ごとにmalloc)すると、

たぶんこの段落は一般論も入っていると思いますが、ここはWitch MLなんで
私なら「固定長の行バッファの配列を作っておいて、そのプールから欲しいだけ
貸してあげる専用アロケータ」にすると思います。議論になってませんね(笑)

これだけではあまりにも、なんで(^^;

> ・mallocとfreeが同程度の頻度で呼ばれる
> ・mallocされているブロックはかなり多い
> ・ブロックの再利用率はわりと高い -> 空きブロック数は少ない(本当かなぁ)
> という点からして、K&R方式の方が有利のような気がしますが、どうなんでしょう?

確かにそういう多ブロックな状況ではmallocリストがあるのは駄目ですね。
ただそれでもmalloc/freeを直接使うのはどうかな、って疑問です。
ページャ系のように編集がないならmalloc()直接でも何にも問題ないですけど。



*** ここから下は malloc() なんか興味ねぇよ〜、という方も必見(笑) ***


> # WW用のテキストエディタだと、ファイルシステムがネックですね。

これは別問題・・でもちょっと思うネタがあって・・

以前から(正確には紫雨さんにメールで個人授業を受けてから(笑))、
「せめてSRAMだけでも最初にファイルサイズ決めるのなんとかならんかな」
とか思っているのですが、それでも逃げてはあるんじゃないかと思っています。

案1: /ram0 上に「みんなで使うファイル」を作る。
     たとえば16KBのファイル。みんなで使えば有効活用。
     そのファイルにはbank BIOSとかでアクセスする。

案2: おそらく使っていない(笑) 2nd プロセス用のSRAM を使う(^^;
     そのメモリにはbank BIOSでアクセス。

まだ実証してませんが・・たぶん出来るんじゃないかと・・Ged なんか
ファイルのメモリアドレスを表示してくれてる(=サンプルがある)し。
みんなで使わなきゃ意味ないんだけど、作ったら使ってくれますか(^^)?

___
澤田 大輔(die)
email: die@zonze.nu(home), swd@techbrains.co.jp(office)


ML Archives