はじめに

「Armadillo入門編」では、Armadilloを使った組み込みシステムを構築する方法の全体像につ いて説明を行いました。 本書「ソフトウェア開発編」では、システムの開発段階で役に立つ、より実 践的な事柄について説明します。

まず、3章開発環境の整備と運用で、 開発環境ATDE7について「Armadillo入門編」で説明しきれなかった詳細な設定方法や、パッケー ジ管理などの運用方法について説明します。

4章Linuxシステムの仕組みと運用、管理では、 Linuxシステム特有の用語や様々なコマンドについて、網羅的に紹介します。分 からない用語やコマンドがあった場合のリファレンスとして活用してください。

プログラミングの最初の話題として、5章シェルスクリプトプログラミングを取り 上げます。Linuxシステムに不慣れな方でも読めるように、基本的な文法から丁 寧に説明をおこないます。

6章C言語による実践プログラミングは、C言語経験者を対象とした内 容になっています。そのため、C言語の文法に関する説明は行いません。Linux システムや開発環境に依存した独特な部分や、組み込みシステムでアプリケー ションプログラムを開発する際に問題となることにフォーカスして説明します。

7章Python言語による実践プログラミングは、スクリプト言語である Pythonによるサンプルプログラムを紹介します。Linuxシステムや開発環境に依存した独特な部分がない アプリケーションであれば、Pythonを使用したほうが開発効率を上げられる可能性があります。

最後に、8章組み込みシステム構築の定石に Armadilloを使って組み込みシステムを構築する上での、組み込みまたは Armadillo特有のノウハウについて、まとめました。この章に書いてあることは 他の本には書いていませんが、とても重要な部分です。

1.1. 対象読者

本書が主な対象読者としているのは、Armadilloを使って組み込みシステムを開 発したいと考えているソフトウェア開発者です。ソフトウェア開発者は、少な くともC言語での開発経験が必要です。LinuxやArmadilloを使用した開発の経験 が少ない場合や開発の全体像を把握していない場合は、「Armadillo入門編」から読むことをお 勧めします。

1.2. 表記について

1.2.1. コマンド入力例

本書に記載されているコマンドの入力例は、表示されているプロンプトによって、 それぞれに対応した実行環境を想定して書かれています。 「 / 」の部分はカレントディレクトリによって異なります。 各ユーザのホームディレクトリは「 ~ 」で表します。

表1.1 表示プロンプトと実行環境の関係

プロンプト コマンドの実行環境

[PC /]#

作業用PC(Linux)の root ユーザで実行

[PC /]$

作業用PC(Linux)の一般ユーザで実行

[ATDE /]#

ATDE上の root ユーザで実行

[ATDE /]$

ATDE上の一般ユーザで実行

[armadillo /]#

Armadillo上 Linuxの root ユーザで実行

[armadillo /]$

Armadillo上 Linuxの一般ユーザで実行

Armadillo上 U-Bootの保守モードで実行


コマンド中で、変更の可能性のあるものや、環境により異なるものに関しては以下のように表記します。適宜読み替えて入力してください。

表1.2 コマンド入力例での省略表記

表記 説明

[version]

ファイルのバージョン番号


1.2.2. アイコン

本書では以下のようにアイコンを使用しています。

[警告]

注意事項を記載します。

[ティップ]

役に立つ情報を記載します。

[注記]

用語の説明や補足的な説明を記載します。

1.3. サンプルソースコード

本書で紹介するサンプルソースコードは、 https://download.atmark-techno.com/armadillo-guide-std/sample/ からダウンロードできます。 サンプルソースコードは、MITライセンス[1]の下に公開します。

1.4. 困った時は

本書を読んでわからなかったり困ったことがあった際は、ぜひArmadilloサイト [2]で情報を探してみてくださ い。本書には記載しきれていないFAQやHowtoが掲載されています。

Armadilloサイトでも知りたい情報が見つからない場合は、「Armadilloフォー ラム」 [3] で質問してみてください。Armadilloフォーラムは、アットマークテクノユーザー ズサイト内に設けられた、Armadilloブランド製品での開発や周辺技術に関する 話題を扱うユーザー向けコミュニティです。Armadilloに関する技術的な話題な ら何でも投稿できます。多くのユーザーや開発者が参加しているので、知識の ある人や同じ問題で困ったことがある人から情報を集めることができます。

[注記]フォーラムに参加するときの心構え

Armadilloフォーラムには、その前身となったメーリングリストから引き続き、 数百人のユーザーが参加しています。また、フォーラムへ投稿した内容はWeb上 で誰でも閲覧・検索可能になるほか、通知を希望しているユーザーにメールで 送信されます。

フォーラムには多くの人が参加しており、投稿内容は多くの人の目に触れます ので、そこにはマナーが存在します。一般的な対人関係と同様に、受け取り手 に対して失礼にならないよう一定の配慮はすべきです。技術系コミュニティに 不慣れな方は、投稿する前に「技術系メーリングリストで質問するときのパター ン・ランゲージ」[4] をご一読されることをお勧め します。メーリングリストに投稿するときの心構えや、適切な回答を得るため に有用なテクニックが分かりやすく紹介されています。メーリングリストと フォーラムの違いはあれど、基本的な考え方は共通しており、とても参考にな ります。

とはいえ、技術的に簡単なものであるとか、ちょっとした疑問だからという理 由で、投稿をためらう必要はありません。Armadilloに関係のある内容であれば、 難しく考えることなく気軽にお使いください。

1.5. お問い合わせ先

本書に関するご意見やご質問は、Armadilloフォーラム[3]にご連絡ください。

1.6. 商標

Armadilloは、株式会社アットマークテクノの登録商標です。その他の記載の商 品名および会社名は、各社・各団体の商標または登録商標です。™、®マー クは省略しています。

1.7. ライセンス

本書は、クリエイティブコモンズの表示-改変禁止 2.1 日本ライセンスの下に 公開します。ライセンスの内容は http://creativecommons.org/licenses/by-nd/2.1/jp/ でご確認ください。

クリエイティブコモンズライセンス

図1.1 クリエイティブコモンズライセンス


1.8. 謝辞

Armadillo で使用しているソフトウェアの多くは Free Software / Open Source Software で構成されています。 Free Software / Open Source Software は世界中の多くの開発者の成果によってなりたっています。 この場を借りて感謝の意を表します。