組み込みソフトウェアにおけるOSSの活用

今回のブログでは、6回にわたってお届けしているOSSコンプライアンスTips集の中身を少しだけご紹介します。

昨今のソフトウェア開発の現場では、オープンソースソフトウェア(OSS)を使わないという選択肢はないと言っても過言ではありません。OSSを利用することにより、開発のスピードアップやコスト削減、柔軟性など、さまざまなメリットが得られます。これまで、組み込みソフトウェアとOSSは相性が悪いと言われていましたが、ハードウェアの高性能化、あるいはハードウェアアーキテクチャの統一により、組み込みソフトウェアにも多くのOSSが採用されるようになりました。

組み込みシステム

家でのテレビ、工場でのロボット、自動車、エレベータ、コンビニの冷蔵庫、鉄道の自動改札など、私たちを取り巻くあらゆる機器には、必ず半導体が入っています。その半導体の上で、各機器に必要な機能や性能はソフトウェアの塊で作られています。

各機器は、見た目も用途も千差万別で、自動車や飛行機、工場設備や放送局設備など20年以上も動き続けることを前提にしなければならないものもあります。このような機器を動かすソフトウェアを一般に「組み込みソフトウェア」と呼び、組み込みソフトウェアで動いている機器や、機器群からなるシステムを「組み込みシステム」と一般に呼んでいます。

相性が合わなかった組み込みシステムとOSS

…本ブログでは省略…

今がソフトウェア開発の自前化のチャンス

これまでの組み込みシステムは、開発に独特のノウハウが必要で、職人技で少ないリソースを最大限活用できる人だけが対応してきました。このため、製品の企画をしても、ソフトウェア開発は専門業者に外注してしまうことが多かったのではないでしょうか。外注すると、開発着手後の仕様変更に非常に時間がかかり、発注側も受注側もストレスを抱えながら仕事をすることとなり、また費用面も膨らんでいくと言うことになっていたと思います。

しかし、スマートフォン関係の開発や、Raspberry PiやArduinoなどの汎用的な組み込みボードを用いた開発では、対応するOSSも多く、また困った場合もインターネットを検索すれば、多くの場合は先人達の対応策がソースコードごと見つかります。

…本ブログでは省略…

OSSの活用はスマートフォン関係の開発に留まらず、もはや車載ソフトウェアなどセーフティクリティカルなソフトウェアの開発にも広がりを見せています。ハードウェアがメインであった自動車メーカーが「ソフトウェアファースト」の方針を打ち出すなど、ソフトウェアの重要性が増しており、開発の自前化の流れも見受けられます。

 

本記事の続きは以下からお申込みください。