返事ありがとうございます。
大昔、fj.comp.lang.cでこの辺りが話題になったことがありまして
上でmallocの話が出て思い出しついでにちょっと尋ねてみました。
当時、malloc/callocがメモリを確保するヒープ領域は、プログラム(正確にはプロセスだったか?)終了後に
OSが解放するんだからfreeは不要だ!と主張する人がいたことを憶えています。
プログラムを"安全側"に設計することに嫌悪する人もいたり…

私もfreeするべきだと思います。
プログラムもOSも、それぞれが自分がやったことの後始末は、基本的に
自分の中で責任持って完結するべき、と思ってます。
OSがやってくれるからサボってていいや〜みたいな考え方だと
余計なトラブルを招きかねないですよね。まぁ安全側の考え方ですが。
つまらない話、すみませんでした。