ユーザーアプリケーションの開発環境

Armadillo Base OS 向けユーザーアプリケーションを開発するための環境について説明します。

関連情報:

開発から運用までのベストプラクティス」で Armadillo Base OS を利用したユーザーアプリケーション開発についてアットマークテクノが考えるベストプラテクティスを説明します。

開発ツール

ATDE (Atmark Techno Development Environment)

Armadillo シリーズ向けの開発環境です。仮想マシンのデータイメージとしてArmadillo サイトで無償で提供されています。ゲストOS は Linux (Debian GNU/Linux) を採用し、ユーザーアプリケーションを開発するために必要な GNUクロス開発環境や Visual Studio Code (VSCode) といった開発ツールが事前にインストールされています。ATDE9 からは Armadillo Base OS に対応します。ATDE をご利用いただくとすぐにユーザーアプリケーションを開発することができます。

関連情報:

Armadillo Base OS Development Environment

Armadillo Base OS 向けアプリケーション開発をサポートする VSCode エクステンションです。VSCode マーケットプレイスにて無償で提供されています。エクステンションには以下の機能があります。

機能機能ブロック名説明
モニター機能MONITORプライベートネットワーク上のデバイスを探して ABOS web を用いて各種設定を行います。
アプリケーションのプロジェクト生成CREATE NEW PROJECTArmadillo 各製品向けのアプリケーションのひな形と、swu ファイル形式のソフトウェアを生成します。
汎用プロジェクト生成COMMON PROJECT COMMANDデバイスの初回セットアップ、コンテナの消去など、どの製品でも利用可能なプロジェクトを生成します。
Armadillo Base OS Development Environment の機能

関連情報:

mkswu

デバイス上でソフトウェアアップデートを実行するソフトウェアである SWUpdate で利用可能なswu ファイルを生成する開発ツールです。アットマークテクノの独自ツールでオープンソースとして公開されています。swu ファイルを生成するための設定ファイル swdesc ファイルを書くだけで、様々な swu ファイルを簡単に作ることができます。

make-installer

開発用デバイス上のユーザーアプリケーション、パッケージ群、Armadillo Base OS といった eMMC に書きこまれたソフトウェア全体のコールドブート向けスナップショットを作る開発ツールです。このスナップショットと書き込み処理を含んだ microSD カードをインストールディスクといいます。開発用デバイスを利用して開発が進んだ適切なタイミングでスナップショットを作成し、市場向けデバイスや量産品にスナップショットを書き込んでクローンを大量生産することができます。

生成物

ユーザーアプリケーション

ユーザーアプリケーションは Armadillo 上で動作する、ユーザーが開発・管理するソフトウェアです。Armadillo Base OS のアーキテクチャでは、ユーザーアプリケーションは仮想マシン上のコンテナで動作することを想定した設計になっており、ホストOS が Armadillo Base OS です。

Armadillo Base OS は、Armadillo の起動、OS、Armadillo のデバイスドライバ、ソフトウェアアップデート機能、基本的なセキュリティをカバーしており、ユーザーはそういったことをほとんど意識することなく開発に専念することができます。また、アットマークテクノによってメンテナンスされています。Armadillo サイトでセキュリティアップデートや機能追加が毎月、無償提供されており、Armadillo Twin ユーザーにはメールで更新をお知らせます。ユーザー判断のうえ適切なタイミングでアップデートすることをお勧めします。

関連情報:

インストールディスク・インストールディスクイメージ

インストールディスクは、 Armadillo の eMMC の中身をまとめて書き換えることのできる microSD カードの起動ディスクです。インストールディスクを利用すると eMMC に含まれる内容物はいったん全て消去されて、インストールディスクに含まれる内容物に書き換わります。

インストールディスクを作成するためには、インストールディスクイメージと呼ばれるバイナリイメージを書き込みます。make-installer で作成した eMMC のスナップショットや、工場出荷時のインストールディスクイメージを利用することができます。工場出荷時のインストールディスクイメージは以下で配布されています。

関連情報:

swu ファイル

デバイス上でソフトウェアアップデートを実行するソフトウェアである SWUpdate で利用可能なファイル形式です。Armadillo Base OS、ユーザーアプリケーションなどのアップデート対象のイメージファイルとチェックサム、書き込み先の情報、ソフトウェアのバージョンを含んでおり、コンテンツの圧縮、署名、暗号化を行うことができます。

関連情報:

初回セットアップと initial_setup.swu と swu key

initial_setup.swu はログインパスワードやユーザー固有の証明書 (swu key) などの初回セットアップによって生成されたユーザー固有の初期設定を Armadillo にインストールするためのファイルです。工場出荷時のデバイスはそれらユーザー固有の情報を含んでいません。そのため、アプリケーション開発を始める際には、「デバイスのセットアップ」を行って initial_setup.swu のインストールを行う必要があります。

swu key は、swu ファイルの署名確認鍵 (公開鍵)です。swu ファイル含まれる署名によって、同じく swu ファイルに含まれるユーザーアプリケーションなどイメージの真正性を確認することができます。Armadillo Base OS 対応製品には工場出荷時に共通デフォルト鍵が書かれています。そのため、ユーザー独自の正規アプリケーションであることを確認するために独自の鍵を生成してデバイスに書き込む必要があります。

関連情報: