組み込み機器の進化の鍵は「クラウドネイティブ」にありMONOist 2023年展望(1/3 ページ)

組み込み機器のエンジニアからは“対岸の火事”に見えていた「クラウドネイティブ」だが、自動車や産業機器の分野で積極的な取り込みが図られるなどその影響は無視できなくなっている。

» 2023年01月12日 07時00分 公開
[朴尚洙MONOist]

 同じソフトウェア開発であっても、主にリアルタイム性や信頼性が重視される組み込み機器向けと、WebアプリケーションやITシステムなど向けでは、ハードウェアの仕様や求められる要件に大きな隔たりがあるため、これまでそれぞれの分野における常識は異なっていた。

対岸の火事 ※写真はイメージです

 例えば、使用するプログラミング言語は、組み込み機器ではC(場合によってはC++を使うことも)が一般的で、FPGAなどを扱う場合はHDL(ハードウェア記述言語)などを扱うこともある。一方、WebアプリケーションやITシステムの開発では、JavaやJavaScript、PHP、Ruby、AI(人工知能)の発展によって利用が拡大しているPythonなど、より抽象度の高いものが用いられている。ハードウェアについても、組み込み機器はマイコンやMCUと呼ばれる処理能力やメモリ容量が限られたプロセッサを中核に、消費電力もWレベルではなくmWレベルに抑えることが求められるが、WebアプリケーションやITシステムは先端のアプリケーションプロセッサで動作することが前提なのでそのような制約はない。

 だからこそ、組み込み機器のエンジニアから見れば、IT分野における「アジャイル開発」や「DevOps」といったトレンドワードは、いわば“対岸の火事”にすぎず、わがコトではなかったのではないだろうか。

⇒「MONOist 新年展望」バックナンバーはこちら

IoT時代に入り組み込み機器のPC化、スマホ化が求められる

 この常識は、2010年代半ば以降、組み込み機器がインターネットにつながってIoT(モノのインターネット)機器となることにより崩れつつある。

 組み込み機器は、PCやスマートフォンなどと異なり、インターネットに接続されていないスタンドアロンの機器であるという前提で開発されることが多い。自動車や産業機器など、5〜10年以上の寿命で使い続けられるような信頼性や耐久性を確保するために制約ギリギリまで仕様を追求する一方で、PCやスマートフォンのような機能追加は行わないことが当たり前だった。“ギリギリまで仕様を追求する”からこそ、IT分野では旧来の開発手法として語られるウオーターフォール開発が一般的だったわけだ。しかし、インターネットとつながるIoT機器では、組み込み機器の機能に対するPC化、スマホ化が求められることも多くなる。

 また、先ほどは組み込み機器とWebアプリケーションやITシステムという形で2つに分類したが、実際にはその中間に位置する、産業用PCやPOS端末などの組み込みWindowsや組み込みLinuxベースの機器も存在している。半導体の微細化が進展することで、プロセッサの高性能化やメモリの大容量化が進み、これらの高性能組み込み機器はPCやスマートフォンとそん色のない機能を搭載できるようになっている。IoT時代を迎えて、製品の付加価値を高めることを目的に、同じ“組み込み機器”ではあるもののIT分野のソリューションを積極的に導入するのは当然のことといえるだろう。

 このようにIoT時代を迎えて変わりつつある組み込み機器だが、一部の産業分野において取り込みが進んでいるのが「クラウドネイティブ」だ。

 組み込みエンジニア向けのクラウドネイティブの解説については以下の記事『組み込みエンジニアも知っておきたい「クラウドネイティブ」とは』を参照していただきたいが、技術的に注目されているのは、OSやミドルウェアなどの環境を含めて丸ごと開発、配布、実行する仕組みである「コンテナ」やその基盤となる「Kubernetes」、ソフトウェアの継続的な機能向上を図れる「CI/CD(継続的インティグレーション/継続的デリバリー)」だろう。

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.