講座について
携帯電話やデジタルカメラ、DVDプレイヤー、ゲーム機などのデジタル家電はもちろんのこと、輸送機器(自動車、列車、航空機など)や医療機器、事務機器、産業用ロボットなどにの中には数多くのコンピュータが組込まれており、人々の暮しを豊かに楽しくするためのさまざまなサービスを提供しています。これらの道具や機器に組込まれたコンピュータ(これらは組込みシステムと呼ばれる)は、ソフトウェア(プログラム)の指示に従ってさまざまな処理を行っています。このように、人々の生活の中にコンピュータが入り込んで暮らしを支えるようになるにつれ、これまでよりも安心して使える高性能なソフトウェアが求められます。
私共の講座では、組込みシステムのために使われる高性能なソフトウェアを開発するための種々の課題に取り組んでおり、組込みシステムを利用するユーザーはもちろんのこと、ソフトウェアの開発者も幸せにすることを目指しています。
講座の特色
一般にコンピュータといえば、本体にモニタ、キーボード、マウスが接続(あるいは内蔵)されている、いわゆるPC(パーソナルコンピュータ)を思い浮かべることでしょう。これらのPCを使って研究を行う場合、ハードウェア(本体、モニタ、キーボードなど)は汎用製品(標準品)が用いられており、できるだけハードウェアに依存しないようにとソフトウェア開発が試みられます。
これに対して、私共が対象としているコンピュータは道具や機器の内部に部品として組込まれており、ハードウェアには標準品以外に特殊目的用の専用品も含まれます。そのため、ハードウェアに固有な機能を充分に発揮するソフトウェアを開発する必要があります。あるいは、ソフトウェアを高速かつ安全に動かすための専用ハードウェアを新たに開発する必要に迫られる場合があります。
つまり、私どもの講座では、「ハードウェアのためのソフトウェア開発」、「ソフトウェアのためのハードウェア開発」の両者を課題としており、ソフトウェアに加えてハードウェアの基礎理論や実装法について教育・研究しています。

リアルタイムシステムとは

例えば、カーナビゲーションシステムでは、GPS(全地球測位システム)や車内センサーからの位置情報をもとに車の現在位置が算出され、その結果がモニタの地図上に表示されます。この現在位置は車の走行とともに更新されていきます。この例のように、時々刻々と更新される入力情報に対して、制限時間内に所定の処理(リアルタイム処理)を施し、その結果を随時出力し続けるシステムは「リアルタイムシステム」と呼ばれています。
カーナビゲーションシステムの他にリアルタイムシステムには、オートパイロット(例:航空機の自動操縦システム)、航空管制、自動車エンジン制御、温度調整(例:エアコンなど)、警備システム、産業用ロボットなどのように、組込みシステムと呼ばれているものの多くが含まれます。リアルタイムシステムのためのソフトウェアでは、計算を精度良く行うことができるだけでは不十分で、定められた時間内に計算を終えることが重要な条件となります。
このように、私どもの講座が主とする研究対象は、時間制約付の組込みシステムにあたります。