TOPPERS

今年もTOPPERSの公募に応募するぞ!

一昨年からTOPPERSプロジェクトで公募事業を行っています。弊社では、一昨年、昨年と、2年にわたって応募してきたわけですが、いつも次点に終わり、場を賑わすだけの役割に徹しています。

[TOPPERS] cfg1_out.c はなぜ必要か?

ここのところTOPPERS新世代向けコンフィギュレータの話題が続いていますが、今回もそのひとつです。ASPカーネルでは、コンフィギュレータはパス1からパス3の三段階に分けて実行されます。その最初の段階であるパス1で、cfg は cfg1_out.c という中間ファイルを生成します。中間ファイルといっても、名前からも分かるようにCのソースファイルです。今回は、この cfg1_out.c が何なのか、なぜ必要かについて説明してみます。

[TOPPERS] tf のシンタックスはなぜこんなに汚いのか?

昨日、やっとのことでリリースになったコンフィギュレータの最新版ですが、予定より大幅に遅れてしまい、各方面にご迷惑をおかけしてしまいました。そのこととは直接関係はないのですが、これをきっかけとして、たまにはコンフィギュレータのことも書いてみようか思います。今回の話題は、TOPPERS新世代カーネル向けコンフィギュレータの入力として用いるテンプレートファイルについてです。

ころころビルドオプションを変えるな!

久々にCygwinをアップデートしたのですが、TOPPERS/ASPカーネルのコンフィギュレータをビルドしようとすると、次のエラーが大量に出ました。

undefined reference to `__Unwind_SjLj_Unregister'

外部識別子の有意先頭文字数の制限に関して

先日行われたTOPPERSプロジェクトのコンポーネント仕様WGの合宿で話題になったので、少しだけ書き留めておきます。

Cの外部識別子の有意先頭文字数についてなのですが、C90では(規格上は)6文字以内でしかも大文字小文字の区別なしということになっています。C99では、それが31文字まで拡張されています。ただし、C99に対応していない処理系の場合も、現在使われているものについていえば、有意先頭文字数31文字で大文字小文字の区別ありと考えて問題ないだろうと思っていました。

ところが、現実はそう甘くはありませんでした。新世代カーネルのコンフィギュレータが生成する中間ファイル(cfg1_out.c)では、比較的長めの外部識別子を使っているのですが、それが途中でちょん切れるケースが出てきたのです。調べてみると、外部識別子の有意先頭文字数は15文字(先頭に付加されるのアンダスコア等を含めて16文字)のようでした。

はっきり名前を出すと、M16C用のリンカLN30です。さらに調査してもらったところ、どうやらリンカオプションによるようで、今回に関しては比較的あっさり問題を解決できたわけですが、今後移植性を考慮する際には、外部識別子15文字も考慮に入れなければならないようです。

TOPPERS/ASPカーネルのWindowsシミュレータはそれなりにニーズがありそうだ

わかっていたことではありますが、TOPPERS/ASPカーネルのWindowsシミュレータを使いたいという方は少なくないようです。昨年作ったままで、いまいち動作が安定しません。明らかに手直しした方がよい部分も少なからずあるので、公開はずいぶん先になりそうです。

今はそれなりに忙しいので、着手できるとしても3月以降になるかと思います。時間が取れしだい手直ししますが、まずはTECSに使えるようにする作業が優先です。急ぎの方は、TOPPERSの会員になって、自分で納得のいく状態まで持っていくことをお勧めします。

コンフィギュレータのバージョンアップ版開発中

現在、TOPPERS新世代用コンフィギュレータのバージョンアップ版を作っています。今回は、Boost C++ Librariesの最新版に対応させることもひとつの課題でしたので、(そろそろ1.42.0が出そうだと思いつつも)バージョン1.41.0に対応するつもりでした。

ところが、とうとう1.42.0がリリースされてしまいました。コンフィギュレータのバージョンアップ後なら諦めたのですが、今のタイミングなら対応すべきですね。というわけで、現在、1.42.0をビルド中です。

久々に TECS の検索順位を調べてみました

一昨年の年末から昨年のはじめにかけて、TECSの話題、しかも、TECS自体の技術的な話題ではなく、TECSのウェブページのSEOについての話題をかなり採り上げていました。その後、TECSが一般公開され、当サイトとしてはほとんど何もやっていなかったのですが、今日、「そういえば...」ということで順位を調べてみました。

すると、Googleでは2位に付けているようです。1位はなかなか強敵のようですので、当面この順位は変わりそうにありません。もっと積極的に何かやればよいのでしょうが、ちょっとそこまで手が回りそうにありません。

TECSの技術的なことについても、私自身、大阪在住ということで、名古屋や岐阜にお住まいのメンバーに比べるとどうしても地の利がなく、一時期を境に大きくとってしまったということもあり、TECSは細部まで分からないのが正直なところです。さらに、非常勤講師を始めてからは、WGへの出席回数も半分ぐらいになってしまいました。今週末はコンポーネント仕様WGの合宿ですので、多少なりとも挽回を図りたいと思います。

TECS 関連情報

ここでは、TOPPERS/TECSに関する情報を集めていきたいと思います。

コンテンツ配信