目次

監修のことばはじめに

8
10

第 I 部 基礎編

第1章

13

T-Kernel とは・・・・・・・・・・・・・・・・・・・ 14

1.1 T-Kernel と T-Engine

15

1.2 T-Kernel と T-Kernel Extension
1.3

21

プロセスベースと T-Kernel ベース

第2章

Teaboard とその開発環境・ ・・・・・・・・・・・・ 30

2.1

Teaboard とは

2.2

Eclipse ベースの統合開発環境

第3章

25

31
36

開発環境のセットアップ・ ・・・・・・・・・・・・・ 41

3.1

Teaboard とパソコンの USB 接続

42

3.2

Cygwin のインストール

3.3

Eclipse と Teaboard 開発環境のインストール

2

目次46
50

3.4

SD カードからの起動

58

3.5

「Hello, world」プロセスベース編

61

3.6

「Hello, world」T-Kernel ベース編

66

第 II 部

実践編

71

第4章

速習リアルタイム OS・ ・・・・・・・・・・・・・・ 72

4.1

プロセスベースの場合のタスク

4.2

T-Kernel ベースのタスク

4.3

割込みハンドラ

4.4

セマフォ

第5章

73

81

85

92

ネットワーク・ ・・・・・・・・・・・・・・・・・・ 96

5.1

ネットワークを使うには

97

5.2

IP アドレスの取得

5.3

ネットワークプログラミングの通信手順

5.4

TCP の例：ウェブサーバ

5.5

UDP の例：NTP クライアント

3

目次

102

109
122105

第6章

ファイル・ ・・・・・・・・・・・・・・・・・・・ 129

6.1

ファイルを扱うには

6.2

ディレクトリの読み込み

6.3

FAT ファイルシステムのアクセス

6.4

ROM ディスクからのアプリケーションの自動起動

第7章

130134

デバイスドライバを呼び出すには

7.2

RS-232C ドライバの利用

151

155

デジタル I/O・ ・・・・・・・・・・・・・・・・・ 160

8.1

LED の表示161

8.2

GPIO の操作

166

8.3

チャタリングの除去

第9章

146

デバイスドライバの利用・ ・・・・・・・・・・・・ 150

7.1

第8章

140

170

A/D、D/A 変換・・・・・・・・・・・・・・・・・ 177

9.1

D/A 変換178

9.2

A/D 変換180

4

目次

第 10 章デバイスドライバの作成・ ・・・・・・・・・・・ 184

10.1 デバイスドライバの構造18510.2 温度センサードライバの作成

第 11 章191

PMC 機器制御サーバ・・・・・・・・・・・・・・ 204

11.1 PMC 機器制御サーバとは11.2 スクリプトの作成

205

209

第 III 部 応用編

第 12 章ご注意

212

テルミンを入力デバイスにする・ ・・・・・・・・ 213
213

12.1 制作内容

21412.2 ハードウェアの製作216

12.3 テルミンの周波数のカウント
12.4 値の正規化

225

12.5 デバイスドライバ化

231

12.6 ウェブサーバからの送信
12.7 画面表示

5目次

219

242

238

第 13 章楽器の自動演奏・ ・・・・・・・・・・・・・・・ 246

13.1 製作内容

247

13.2 ハードウェアの製作
13.3 楽器の制御

249

251

13.4 内蔵ブザーの制御
13.5 楽譜の自動演奏

255
261

13.6 デバイスドライバ化

267

13.7 ネットワーク経由での指示

第 14 章271

モーターの制御・ ・・・・・・・・・・・・・・・ 276

14.1 モーター制御の基礎

277

14.2 ハードウェアの製作

279

14.3 GPIO によるモーターの制御
14.4 PWM によるパルス生成
14.5 デバイスドライバ化

284
290

14.6 ネットワーク経由での指示
Teaboard について
索引

294

299

300

リンク集

305

ダウンロードのご案内／著作権表示／奥付
6281目次

306

コラム
01

メモリ保護の利点

02

プロセスとタスクの違い

03

W 型などの大文字のデータ型

04

T-Kernel のシステムコールと T-Kernel Extension のシステムコール

05

システムコールの戻り値

06

TCP のコネクションの確立

07

TCP では送受信が一対一に対応するとは限らない

08

汎用プロトコルの利点

09

リトルエンディアン

162

10

キャリブレーション

193

11

タスクでの周期処理

224

12

中央値（median）

13

MML

7

目次

262

18
2374

76

120

22611111575

監修のことば

昨今、組込みシステムの重要性が徐々に社会に認知されるようになってきた。組込みシステムとは、内蔵のマイクロコンピュータにより状況にリアルタイムに対応して機器の動作を効率的に制御し、便利で高度な機能を実現するシステムのことだ。携帯電話、デジタルカメラ、家電製品、自動車など最近の代表的な工業製品は、ほぼすべてがマイクロコンピュータ制御の組込みシステムである。
組込みシステムは、物流、エネルギー、情報通信など各種の産業から消費生活やレジャーの分野まで現代社会のあらゆる場面にいまや欠かせないものとなっている。そして、これらの組込みシステムの多くは、私が推進してきたトロンプロジェクトの成果であるμITRON などのリアルタイム・オペテーティングシステム（RTOS）により制御されている。
この組込みシステムの本質はリアルタイム動作である。また、コストや必要動作時間や機器のサイズの制限により、PC などの情報処理系のシステムに比べ計算資源が限られている中で、なおかつ確実な動作が求められる。そのため、完成度の高い組込みシステムを作るためのプログラ
ム開発には特有のスキルが要求される。しかしながら、そのようなスキルを持つ技術者の絶対数は不足している。
組込み技術者の能力の公正で客観的な評価により、スキル向上や技術者育成へのインセンティブへつなげ、またシステム開発工程管理の確実性を向上することを目的として、私が会長を務め
る T-Engine フォーラムでは今年から「トロン技術者認定試験」を始めた。この試験に対する関心の高まりを見ても、高い能力を持った組込み技術者の確保や育成が重要な課題となっていることがわかる。
近年の組込み機器は多機能化、複雑化、大規模化が進んでいる。大規模な組込みシステムを信
頼性を高めながら効率よく開発するためには、プログラムのモジュール化を行い、個々のモジュールの独立性や再利用性を高めることが重要である。また、多くのソフトウェアベンターが自社のソフトウェアをミドルウェアとしての流通させる環境があれば、それらのミドルウェアを自社製品に組み込み、自分たちは、コアとなるソフトウェアモジュールの開発に専念できる。
T-Kernel/T-Engine ではこれらの要求に応えるため定番リアルタイム OS であるμITRONをさらに進化させ、独立したサブシステム開発を可能にする構成を取り入れ大規模組込みシステ
ム開発の信頼性、効率性を高めるしくみを備えた。すなわち、カーネル自体だけでなく、プログラムモジュールの実行、流通環境にまで標準化の範囲を拡大化、深度化したのが T-Engine アー
キテクチャである。
T-Engine プロジェクトが始まって 6 年が経過し、T-Kernel のオープンなソースコードは数多くの開発者によってダウンロードされ、多様なハードウェア環境に実装された。T-Kernel 用のデバイスドライバ、ミドルウェアも多数流通するようになり、T-Kernel を採用する製品も増8

監修のことばえてきた。近年、あらゆるソフトウェアのオープン化が進む中、TRON プロジェクトのオープン性がさらに評価され、T-Kernel は、日本だけでなくアジアやヨーロッパを始め世界中で使われはじめている。
本 書 は、 組 込 み シ ス テ ム の 開 発 現 場 や 教 育 現 場 を 熟 知 す る エ ン ジ ニ ア の 手 で 書 か れ た
T-Kernel の入門書である。既刊書『T-Kernel プログラミング強化書』は、T-Kernel に関する広範囲かつ深い知識を取り扱ったが、本書は T-Engine 組込みボードの「Teaboard」を教材に、実際に手を動かしながらリアルタイム OS と T-Kernel の基礎が学べるように工夫されている。
組込みシステムを理解するための最良の方法は、自分自身で組込みシステムのプログラミングを行い、その難しさや楽しさを体験することである。組込みのプログラミングにおいても、C 言語や OS を使うという開発スタイルは、パソコンやサーバの場合と同じである。しかし、その処理対象については、ハードウェアを直接制御するデジタル入出力（DIO）など、パソコンやサーバではあまり馴染みのないものも含まれる。本書では、ソレノイドによる木琴の制御など、身近な素材を用いて、そのノウハウを解説しており、プログラムによるハードウェアの制御を実践的に学べるようになっている。
さらに、チャタリングの除去や PWM（Pulse Width Modulation）を使ったモーター制御など、組込みシステム開発の定番と言える話題についても、随所で実例を含めた解説が行われており、「組込み」に必要な知識をひととおり網羅している。電子楽器テルミンのセンサー部分を入力デバイスとして利用する例も楽しい。組込みシステムの本質がハードウェアとソフトウェアの協調動作であることを読者に実感させるという意味でも、本書に解説された例は的確でわかりやすいものとなっている。
本書では、トロンプロジェクトから生まれたリアルタイム OS「T-Kernel」と、T-Kernel を搭載した組込み制御用ボードである「Teaboard」を題材としているが、本書で得られた知識やノウハウは、他のボードやリアルタイム OS を利用する際にも役立つはずである。本書で学んだ技術者が、より多くの優れた組込みシステムの開発に貢献し、便利で楽しく快適な人間生活の営みに多少なりともプラスになれば、これに勝る喜びはない。一人でも多くの組込み技術者に本書をご活用いただけることを願っている。

2008 年 12 月
TRON プロジェクトリーダー
T-Engine フォーラム会長

坂村 健

9

監修のことばはじめに▍本書のねらいティーカーネル

テ ィ ー ボ ー ド

本書は組込みリアルタイム OS の T-Kernel と組込み用ボード Teaboard を題材として、プログラムのソースコードやハードウェア製作事例を満載した、組込みシステム開発の実践的な解説書です。

アイトロン

T-Kernel は、長年の実績とシェアを持ちリアルタイム性能でも定評のある ITRON をベースに、ミドルウェアの流通促進などの最新機能を加えた、オープンな組込み用の OS およびプラッティーエンジン

トフォームです。組込み業界最大の団体ともいえる T-Engine フォーラム（http://www.
t-engine.org/）によって標準化されています。
T-Kernel の使われている製品や開発用ボードは多数出ています。本書では Teaboard（P.299参照）という低価格で多機能なボードを具体例として取り上げていますが、T-Kernel では「強い標準化」が行われていますので、ハードウェアに直接関係する部分を除けば、T-Kernel を搭載した別のハードウェア上でもほとんど同じソースプログラムと同じ操作方法でご利用いただけるはずです。
近年では「ものづくり」と「IT」が注目度の高いキーワードとなっており、この両方にまたがる組込み分野の解説書もしだいに増えてきました。しかしながら、実際に動くソースコードを載せた書籍はまだ少ないようです。組込みシステムの開発には、直接人間の目に触れるアプリケーションから、ハードウェアを制御するデバイスドライバまで、多様な知識と経験が必要になります。そこで本書ではこういった幅広い分野に渡って、文章や図による概念の説明だけでなく、具体的に動くプログラムのソースコードを多数掲載しました。Teaboard を使って実際にプログラムを動かし、組込みプログラミングの世界を体験していただきたいと思います。

▍本書の構成本書は次の 3 部構成になっています。
第 I 部は基礎編として、T-Kernel や Teaboard の機能の概要を紹介したあと、Eclipse ベースの開発環境のインストール、サンプルプログラムの作成、実行手順を説明します。ここまで読んでいただくことにより、まずは T-Kernel や Teaboard を使い始めていただくことができます。
第 II 部では実践編として、まずタスクや割込みといったリアルタイム処理の基本をおさえてから、ウェブサーバへの機能追加といった形による実践的なアプリケーション開発を題材に、ネットワークやファイル、デバイスドライバの使い方などを説明します。またデジタル I/O などのハードウェア操作と、その機能をデバイスドライバとしてモジュール化する方法についても取り上げます。これらの説明により、アプリケーション開発とデバイスドライバ開発の双方に習熟す10はじめにることができます。さらに機器制御サーバを使って簡単なスクリプトで組込み機器のネットワーク制御を行う方法も紹介します。
第 III 部では応用編として、Teaboard に外部のハードウェアを接続して制御する典型的な例を 3 つ取り上げ、簡単なハードウェアの製作から、デバイスドライバ、アプリケーション、ネットワークを通じてウェブブラウザと連携するシステムを扱います。実際の組込み機器の開発の参考例として活用していただければと思います。

▍本書の読み方
本書は、組込みシステムの初心者の方から、開発現場の第一線で活躍されているエンジニアの方まで、幅広い読者を対象としています。
●

教育、研修、実習用の組込みシステム入門テキストとしてT-Kernel を使った組込みシステムの入門テキストとして使用する場合は、第 I 部（1 ～ 3 章）と第 II 部の 4 章までを順に読み進めて、リアルタイム OS の基本的な概念を身につけてください。この中には開発環境のインストールや Teaboard 上でのプログラム実行の手順も含まれています。この説明の流れに沿って、実際に手を動かしながら動作を確認してください。
その後は、5 章以降の実践的、応用的な話題から、興味のある部分を適宜選択して読み進めてください。

●

組込みシステム開発の第一線で活躍中のエンジニアの方にT-Kernel に関してすでにひととおりの知識や使用経験のある方は、必ずしも本書を最初から読む必要はありません。本書の第 II 部、第 III 部から、必要に応じて個別の話題を参照していただくのが効率的でしょう。
とはいえ、一般的なリアルタイム OS や ITRON には含まれず、T-Kernel において新たに加わった重要な概念も存在します。そこで少なくとも冒頭の 1 章にはひととおり目を通していただき、T-Kernel の基礎知識や全体像をご確認いただくことをお勧めします。

▍参考書
本書は単独で読めるように配慮してありますが、さらにご興味がある場合には、本書と合わせて下記の参考書をお勧めします。
『T-Kernel 組込みプログラミング強化書』●

坂村健監修、パーソナルメディア編著、パーソナルメディア発行、ISBN978-4-89362-246-4

11

はじめに

T-Kernel による組込みプログラミングの総合的な解説書です。本書よりも広い範囲を扱っており、待ちに入る非同期のデバイスドライバなど高度な内容まで含めて、具体的に動くプログラムのソースコードを掲載しています。また豊富な練習問題が掲載されているため、自習や試験対策にも役立ちます。
『T-Kernel 標準ハンドブック 改訂新版』●

坂村健監修、T-Engine フォーラム編著、パーソナルメディア発行、ISBN978-4-89362-229-7

T-Kernel の全 API の仕様を網羅した「原典」です。プログラミング中など、T-Kernel のAPI の仕様を確認したい場合に、手元に置いてご利用ください。

▍プログラムのダウンロード
本書に掲載したプログラムは、当社のウェブサイトから実際にダウンロードして Teaboard上で実行することができます。ダウンロード方法については本書の奥付ページをご覧ください。

12

はじめに

Teaboard とは

2.1

Teaboard のねらいや特長、ハードウェアやソフトウェアの構成を紹介します。

▍ T-Kernel 搭載ボード「Teaboard」
テ ィ ー ボ ー ド

本書では T-Kernel 搭載ボードとして Teaboard を例にとり、さまざまな組込みプログラミングを実際に行っていくことにします。
Teaboard は多機能で低価格な T-Kernel 搭載ボードの一つです。CPU チップに内蔵された周辺機能をできるだけ活用し、部品点数を減らしてハードウェアのコストダウンをはかっています。T-Kernel の載った開発環境つきボードとしては、現在最も低価格な製品の一つです。一方、付属するソフトウェアや開発環境は T-Engine 開発キットと同じ構成になっています。
本書執筆時点での最新製品は Teaboard2/ARM920-MX1 で、環境に配慮した RoHS 対応製品となっています（P.299 参照）。最新情報については http://www.t-engine4u.com/をご参照ください。

▍ Teaboard の利用例
（例 1）実際の動作を試せる組込み開発の教材として1976 年に発売された 8 ビットマイコンボード「TK-80」は、マイコンの基礎を修得するトレーニングキットとして多くの技術者を育てました。Teaboard はいわばその現代版といえます。現在では 1976 年当時と比べてハードウェアの機能や性能が飛躍的に進歩しました。またソフトウェア面でも、当時は「組込み OS」という考え方自体がほとんどありませんでしたが、その後 ITRON などのリアルタイム OS が普及し、その実績をベースに改良を積み重ね T-Kernel へと発展しています。Teaboard
は 32 ビット CPU 上で T-Kernel を使っていろいろ動かして遊んでみるには最適な環境となっています。
Teaboard の入出力としては、RS-232C（シリアル）が 2 ポート、SD カードが使えるほか、LAN でネットワークにも接続できます。またデジタル入出力（GPIO）やA/D、D/A 変換を搭載しており、外付け回路を製作すれば、各種のセンサーに接続したり、モーターやソレノイド等の制御をさせることもできます。
31

第 I 部 基礎編

第 2 章 Teaboard とその開発環境

2.1 Teaboard とは単なるマイコンボードであれば、Teaboard より安いものも含めて各種市販されています。しかし、T-Kernel を用いてリアルタイムにハードウェアを制御でき、開発環境やドライバ、TCP/IP 等もすべて付属しているところが Teaboard の強みです。
（例 2）実用的なシステムに組み込んで使うTeaboard を実用的なシステムに組み込んで、低価格な実行用ボードとして使うこともできます。
たとえば IC カードで扉の鍵を開ける電気錠システムを考えてみましょう（図 2.1）。
RS-232C で接続するタイプの IC カードリーダであれば、そのまま Teaboard に接続できます。電気錠への出力や扉の状態の入力には、Teaboard のデジタル入出力（GPIO）を用います。必要なら LAN を通じて他のマシンへのログ出力を行うこともできます。また、SD カード上に有効なカード ID のデータを格納しておけば、新しいカードの追加や、カード紛失時の無効化などにも柔軟に対応できます。
LAN
室外

室内
通電金具

LED LED
電気錠
制御盤
IC
カードリーダ

図 2.1

電気錠

T
Teaboard
ス
スイッチング
レギュレータAC100V

Teaboard を組み込んだ IC カード式電気錠システム▍ Teaboard のハードウェア
Teaboard では、サイズ 120mm × 75mm のコンパクトなボード上に、豊富な入出力機能を実装しています（図 2.2）。

32

第 I 部 基礎編

第 2 章 Teaboard とその開発環境

2.1 Teaboard とは1211136282751414315164212117182025221123 24

2192679108
Teaboard の裏面

Teaboard の CPU 面
1 CPU：MC9328MX1
2 SDRAM（裏面にもあります）
3 LAN コントローラ
4 CPLD 書込みコネクタ
5 D/A コンバータ
6 リセットスイッチ
7 CPU モードスイッチ
8 電源コネクタ
9 USB Type-B コネクタ
10 電源 LED

11 ネットワークコネクタ
12 RS-232C コネクタ
13 ブザー
14 トグルスイッチ
15 チップ LED
16 7 セグメント LED
17 温度センサ18 ディップスイッチ
19 JTAG コネクタ
20 プッシュスイッチ
図 2.2

21 CPLD
22 SDRAM（CPU 面にもあります）
23 Flash ROM
24 拡張バスコネクタ取付端子（コネクタは未実装）
25 I/O コネクタ取付端子（コネクタは未実装）
26 SD カードスロット
27 A/D コンバータ
28 RS-232C レベルコンバータ

Teaboard の表面（CPU 面）と裏面

Teaboard のハードウェア構成は表 2.1 のとおりです。
表 2.1

Teaboard のハードウェア仕様

CPU
フラッシュ ROMRAM
入出力 I/F

Freescale MC9328MX1（i.MX、ARM920T コア、最大 200MHz）
2MB
16MB
USB（Function）、RS-232C（シリアル）× 2、LAN（10/100Base-T）、

汎用スイッチLED
I/O
その他の機能電源
寸法SD カードスロット、拡張バス I/F、JTAG-ICE I/F
プッシュスイッチ 2bit、トグルスイッチ 4bit、ディップスイッチ 4bit
LED 8bit、7 セグメント LED 2 桁
D/A、A/D コンバータ、デジタル IO（GPIO、PWM）
圧電ブザー、温度センサー
USB バスパワー（または AC アダプタ）
120mm × 75mm（突起物を除く）

33

第 I 部 基礎編

第 2 章 Teaboard とその開発環境

2.1 Teaboard とはTeaboard のハードウェアの特長は、次のとおりです。
●

CPU チップは ARM 系 32bit CPU の「MC9328MX1」（DragonBall）です。仮想記
憶をサポートするのに必要な MMU のほか、さまざまな周辺機能が内蔵されています。

●

開発用のパソコンと USB 経由で接続し、高速にファイル転送やコンソール入出力ができます。

●

USB はボードへの電源供給も兼ねています。このため電源アダプタは不要です。

●

SD カード上のファイルを読み書きできます。

●

LAN ポートからネットワークに接続できます。

●

GPIO（デジタル入出力ポート）や A/D、D/A 変換を介して外部機器と接続できます。6)●

2ポートのシリアル（RS-232C）入出力があります。

●

7 セグメント LED や押しボタンスイッチなどの入出力も備えています。

▍ Teaboard のソフトウェア
Teaboard のソフトウェア構成としては、ボード上で動作する T-Kernel 等のソフトウェアと、パソコン上で動作する開発環境に大きく分かれます。主な構成を表 2.2 に示します。
Teaboard のソフトウェアの特長は、次のとおりです。
●Teaboard 上のソフトウェアは、OS からドライバやミドルウェア、さらに開発用のツール類まで、すべてひととおり揃っています。

●

開発環境としては、Eclipse ベースの統合開発環境を Windows パソコン上で利用できます。

●

Teaboard のこれらのソフトウェア構成は、各種 T-Engine 開発キットの構成と基本的に同じです。Teaboard での開発の経験やノウハウはもちろん、作成したソースプログラムの多くの部分についても、そのまま他の T-Engine 開発キット等に活かせます。

6)

34

I/O コネクタは標準では実装されていませんが、一般的な 2.54mm ピッチ 60 ピンのコネクタを取り付けることができます。

第 I 部 基礎編

第 2 章 Teaboard とその開発環境

2.1 Teaboard とは表 2.2

Teaboard のソフトウェア構成

ターゲット（Teaboard）側ソフトウェア
T-Monitor
PMC T-Monitor
T-Kernel
PMC T-Kernel（MMU 対応版）
T-Kernel Extension
プロセス管理、ファイル管理など
デバイスドライバ
SD カード、RS-232C、LAN など
ミドルウエアTCP/IP プロトコルスタック
CLIコマンドラインインタプリタ（ファイル操作、バッチ処理など）
ツール類
SD カードの区画作成、フォーマットなど
ホスト（PC）側開発環境
統合開発環境Eclipse for PMC T-Kernel
コンパイラ
GNU C/C++ コンパイラ（T-Kernel 対応済み）
デバッガ
GDB（ソースレベルデバッガ）
ライブラリ
ANSI C ライブラリ、T-Kernel 関連ライブラリなど
付属ドキュメントマニュアル
取扱説明書、ハードウェア仕様書、開発環境説明書、ライブラリ説明書、ドライバ説明書など
各種サンプルプログラム、チュートリアル教材

35

第 I 部 基礎編

第 2 章 Teaboard とその開発環境

2.1 Teaboard とは

・・・ この続きは、製品版でお楽しみください。

購入ご案内
iPad 用 PDF リーダアプリ「Smooth Reader」をご利用の方は、以下のボタンをタップすると購入手続きに進みます。

その他の電子書籍や、全国書店でお買い求めになれる紙書籍に関する情報は、当社ウェブページをご覧ください。
→ http://www.personal-media.co.jp/book/本 PDF は『実践 TRON 組込みプログラミング』のお試し版です。
本書掲載のプログラムコードがダウンロードできます。
詳しくは正式版をご覧ください。
本書掲載のハードウェアおよびソフトウェアの製作および実行は、本書使用者の責任において行うものとし、製作および実行により発生したいかなる直接的・間接的被害についてもパーソナルメディア株式会社および著作権者、製品販売元はその責任を負いません。
TRON は“The Real-time Operating System Nucleus”の略称です。
BTRON は“Business TRON”の略称です。
ITRON は“Industrial TRON”の略称です。
本書中の TRON、BTRON、ITRON、T-Engine、μ T-Engine、T-Monitor、T-Kernel、T-Kernel Extension は、コンピュータの仕様に対する名称であり、特定の商品を示すものではありません。
超漢字はパーソナルメディア株式会社の商標です。
強化書はパーソナルメディア株式会社の登録商標です。
その他のハードウェア名、ソフトウェア名などは一般に各メーカーの商標、登録商標です。
Microsoft Corporation のガイドラインに従って画面写真を使用しています。

実践 TRON 組込みプログラミング（お試し版）
T-Kernel と Teaboard で学ぶシステム構築の実際
2008 年 12 月 20 日

初版 1 刷発行（書籍版）

2011 年 11 月 21 日

PDF 版 発行

監修

坂村健編

著

パーソナルメディア株式会社

発行所

パーソナルメディア株式会社〒 141-0031 東京都品川区西五反田 1-29-1
TEL ：03-5759-8303
FAX ：03-5759-8306
E-mail：pub@personal-media.co.jp
http://www.personal-media.co.jp/© 2008 Personal Media Corporation
PMBK-254-PDF-00-01- Sample

306

ダウンロードのご案内 ／著作権表示 ／奥付

コイズミビル