コンポーネント記述言語TECS CDL
これまで、組込みコンポーネントシステムTECSの概要、アプリケーション開発手順、コンポーネント図と説明を進めてきましたが、今回はTECSの核となるコンポーネント記述言語「TEC SCDL」について説明します。
コンポーネント図については第2回記事で大部分を説明できましたが、コンポーネント記述言語を細かいところまで説明をするには、かなりのページを要します。
そこで、まずはTOPPERS/JSPの配布に含まれているサンプルプログラムsample1を例に、コンポーネント記述を見ていきます。TOPPERS/JSPは、オープンソースのRTOSであり、TOPPERSプロジェクトのホームページからダウンロードできます。お持ちでない方は、ダウンロードしてみてください。
sample1のコンポーネント化
sample1を、コンポーネントに分解して、コンポーネント図で表したものが図1です。小さな例ですが、sample1が、4つのタスクと1つの周期ハンドラからなること、メインタスクが3つのサブタスクを制御していること、3つのサブタスクはメインルーチンを共有していることが見て取れます。
これらのことは、もちろんソースコードを眺めても分りますが、コンポーネント図による見える化で、直観的な理解が容易になります。前回説明しませんでしたが、タスクやハンドラのように能動的なコンポーネントは、二重線で囲みます。