[H8-ML(2031)] ランタイムからmainの呼び出しは?その2
From: "yas" <yas_non@xxxxxxxxxxxxxxxx>
Date: 2002年07月03日(水)09時30分47秒
 こんにちはYASです。

 話の続きなのです。
基本はすべてジャンプでCメインを呼ぶようにしているのですが、
「mainからexit()は使わないの?」
と突っ込まれました。

 まぁ、確かに状態によってはexit()ないしはabort()でもとは思いま
すが、
「mainの返す値は?返した値はど〜すんの。」
 と突っ込み返しをしてみました。

> 自分の書くランタイムは基本的に全部ジャンプで処理していました。これは
> H8に限らずですね。けど、他のランタイムで、スタックに戻りを積んでリター
> ンをカマしてるのを見た事があります。コールは.....覚えがないですね(^_^;
> )。

 OSなどを使わない組込みならばmainに返す値をつけなくてもいいだろうし、
exit()自体の実装も自前で記述しなけれいけないだろうし、
「mainの中はwhile、forの無限ループ(while一発と呼んでます)
でいいんじゃない。」
とおもいます。

 「でも何かのはずみでループを抜けたりしたら?」
 なんてほざくので
 「そんなのプログラムの信頼性がないんだよ。」
 と言ってみましたが...。

> というワケで、3通りってコトになりますが、たぶんそれぞれのポリシーによ
> って変わるのではないかって気がします。もしくは作者の趣味で変わるですか
> ね(^_^;)。

 そうですよね〜。私も基本はジャンプにしているのです。
行き着くところ作者の趣味、思想の世界になるのかなと思います。
でも最近東芝製のコンパイラでwhile一発を書くと
「そんなコーディングじゃ実行されないコードがあるよ〜ん。」
なんてワーニングが出力されるので、ちょっと考えが傾いています。

 ワーニングが問題じゃなくてシステム全体の信頼性の問題でもあり。
本来ならばウォッチドッグとかいろいろ信頼性をハードでもカバーできるけど、
ソフトでも2重3重の信頼性向上があってもと思ったりします...。

--------------------------------
From

 YAS
-------------------------------


スレッド概略
[2029(R)](起点)
 └[2030(U)]
   └[表示中]
     └[2033(1)]


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


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