[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends] Re: [jfriends] Re: [jfriends]RTOSにkaffe
金山@xxxxxxxxxxです。
maebashi> >つきましては、RealTimeOSなどの組込みやJavaに造詣の深い方にご意見などう
maebashi> >かがいたいのですが、いかがなものでしょうか。
maebashi>
maebashi> 私は、
maebashi>
maebashi> RealTimeOS ... まるで素人
maebashi> Java ... ほぼ初心者
maebashi>
maebashi> なので、無責任なちゃちゃとして聞き流してください(^^;
いえいえ、参考になります、ありがとうございます。
maebashi> ええと、この場合、JVMはもともとリアルタイム処理向けに書かれ
maebashi> たものではないのですよね? Kaffeって、私の認識では、DOS版JVM
maebashi> だと思っているのですが。
おっしゃる通りで、もともとはUNIX汎用のJVMということで開発されましたの
で、リアルタイム性に関してはなんの保証もありません。
DOS版についても、当然ながら、スレッドの切り替えはライブラリで行ってま
す。
maebashi> ・OS(VMより下位)はリアルタイムOSだとして、
maebashi> ・アプリケーション(VMより上位)は気を付けてリアルタイム性があ
maebashi> るように書くとして、
maebashi> VMそのもののリアルタイム性はどうなるのでしょう?
maebashi> Javaは本質的にヒープ使いまくり言語なので、バカスカnewを発行
maebashi> して回収はGCに任せるわけですが、
maebashi>
maebashi> 大量のオブジェクトが既に存在し、メモリのフラグメンテーション
maebashi> も進んだ状態では、当然 newにかかる時間も増大するでしょうし、
maebashi> GCも同様です。
maebashi> リアルタイムなGCなら、「とりあえずこの時間までには(中断して
maebashi> でも)処理を終える」ことを保証する必要がありますが、Kaffeはそ
maebashi> の辺はどうなっているのでしょうか?
かなりごもっともなご意見だと思います。
リアルタイム性を要求される処理というのは、いくつかに限られるでしょうか
ら、おそらく、「リアルタイムなスレッド」と「それ以外」にわけることにな
るんだと思うんですが、GCですとか、VMを含めた「それ以外」の部分で、「リ
アルタイムなスレッドのリアルタイム性の保証」を行う必要があると思います。
で、対応する必要があるというのは、つまり、現在のKaffeは、この辺は(実は
詳細には見てませんが)まったく考慮の範疇にないということです。UNIXベー
スですからねー。
うーん、やっぱり、大変ですね。
ご意見と人材をまだまだ募集中です。