Last Update 2016/10/06

組み込みLinux入門
開発環境/デバイスドライバ/ミドルウェア/他OSからの移行

日本エンベデッドリナックスコンソーシアム 監修
B5判 272ページ
定価2,305円(税込)
JAN9784789833271
2003年4月1日発行
[絶版2012.1.19] 組み込みLinux入門
大変恐縮ですが,こちらの商品は品切れ絶版となりました.

 サーバ用途でかなり普及したLinuxだが,組み込みシステム開発へのLinux導入の取り組みも着々と進行している.
 本書では,組み込みシステムの開発にLinuxを使うための技術要素を,入門者向けに,総覧的に解説している.内容としては,組み込みLinuxの現状,開発環境,カーネル/デバイスドライバ,ミドルウェア,他OSからの移行などを盛り込んでいる.また,組み込みLinuxに関連するキーマンへのインタビューも収録している.

目次

 第1部 技術解説編

 第1章 Linuxを使った組み込みシステム開発
   1 Linuxについて
   2 RTOSとの比較によるLinuxの解説
   3 開発手順
   4 開発環境
   5 組み込みLinuxを実装するハードウェア
   6 オープンソースライセンス
   column1 Linuxのスケジューリング
   column2 ファイルシステム
   column3 オープソースのROMモニタ/イメージローダ
   column4 RAMディスクイメージの作成方法

 第2章 組み込みLinuxを使った開発の流れ
   1 一般的な組み込みソフトウェア開発手法
   2 現状のLinux開発手法
   3 実際の組み込みLinux開発手法(開発支援ツールの必要性)
   4 今後の課題
   column1 BIOSとモニタとブートローダ
   column2 セルフ開発とクロス開発
   column3 組み込みという単語
   column4 組み込みオペレーティングシステムの処理速度について
   column5 従来の組み込みエンジニアの不満
   column6 組み込みLinuxの将来
   column7 GNUに関して
   column8 近頃の組み込みLinux情報(ROM化編)

 Appendix 組み込みLinuxの各種開発環境について
   1 エミュレータ編
   2 統合開発環境編

 第3章 組み込みLinuxの開発環境--デバッグ環境の実際
   1 M32R用Linuxのデバッグ環境構築
   2 kgdb
   3 gdbserver
   4 kgdbとgdbserverデバッグ環境の課題
   5 JTAGエミュレータによるデバッグ環境
   6 SDI仕様デバッグ環境構築
   7 JTAGエミュレータでの課題
   column1 Mappiの概要
   column2 デバッグ機能実装時の配慮

 第4章 組み込みLinuxアプリケーションの開発環境
   1 組み込みLinuxの開発環境の現状
   2 組み込みLinux開発工程とツール
   3 GNU/非GNU系開発環境と課題
   4 ハードウェアによるデバッグ環境
   column1 組み込みエンジニアから見た組み込みLinux

 第5章 Linuxで構築した工場のライン監視装置
   1 ハードウェアの構成
   2 ソフトウェアの構成
   3 SiliconLinux
   4 開発の進行
   5 ハードウェアの選定
   6 SiliconLinuxの構成
   7 PLCエンジン
   8 アプリケーションの開発

 第6章 シリアルポートとイーサネットLANを接続するターミナルサーバの構築
   1 なぜLinuxを採用したか?
   2 新しいターミナルサーバの設計に何を使うかの検討
   3 ソフトウェアの移植
   4 標準Linuxと組み込みLinux?
   5 開発環境について
   6 GPLとオープンソースを理解すること
   7 デバイスドライバの開発とデバッグ
   8 アプリケーションを移植する
   9 LinuxとリアルタイムOSを比較してみる
   10 フラッシュメモリのマップとブートプロセス
   11 Linuxを採用したことにより得られたメリット
   12 組み込みネットワークの将来について

 第7章 組み込みLinuxカーネル構築の実際
   1 Linuxカーネルの構成
   2 Linuxカーネルのビルド方法
   3 Linuxカーネルサイズの縮小化手法
   4 Linuxカーネルソースへのデバイスドライバの組み込み方法
   5 Linuxカーネルのデバッグ手法

 第8章 組み込みLinuxカーネルの構築時に知っておかなければならない項目
   1 組み込みLinuxカーネルを構築するとき知っておかなければならない項目
   2 カーネルのブート過程
   3 RedBootについて
   4 RedHat Network(RHN)

 第9章 MIPSベースのカードコンピュータ用デバイスドライバを開発する
   1 Linuxで作る意味と方法
   2 L-Card+での実例
   3 デバイスドライバ開発上の注意点
   4 デバイスドライバのデバッグ手法
   column1 uClinux
   column2 modutils
   column3 gdb
   column4 printk

 第10章 アプリケーションとデバイスドライバの間のデータ転送
   1 全体の動作
   2 メジャー番号とマイナ番号
   3 空きリソースの確認
   4 カーネルの構築
   5 PCIデバイスのリソース検索
   6 ローカルバスデバイスの検索
   7 file_operations構造体
   8 筆者の使用するシステムの制御方法
   9 I/O制御コード
   10 デバイスドライバとハードウェア間のオーバヘッド
   11 アプリケーションとデバイスドライバのオーバヘッド

 第11章 WindowsのカーネルドライバをLinuxへ移植する
   1 Windows NTのカーネルドライバからLinuxデバイスドライバへの移植手順例
   2 ネットワーク接続したテスト環境例
   3 ログデータをもたせるテスト環境例
   4 DLLをLinuxに移植する
   5 デバイスドライバ部を付加する
   column1 GCC拡張,c99拡張
   column2 行末除去の注意点--GNU sadと/usr/bin/sad
   column3 マルチアーキテクチャ環境での注意点
   column4 shared object作成上の注意点
   column5 Programming Language Interface(PLI)
   column6 便利な-I-オプション

 第12章 組み込み向けLinuxミドルウェア入門--基礎編
   1 GUI関連
   2 ブラウザ関連
   3 マルチメディア関連
   4 プロトコルスタック

 第13章 組み込み向けLinuxミドルウェア入門--システム構築・実験編
   1 RedHat ELDSを使った組み込みLinuxシステムの構築
   2 MontaVista Linuxを使った組み込みLinuxシステムの構築
   3 接続実験

 第14章 LinuxとITRONとの違い
   1 組み込みシステムとリアルタイムOS
   2 ITRONとLinux---長所と短所
   3 リアルタイムOS
   4 TRONプロジェクトの現状と将来
   5 日本の組み込みシステムに多く採用されているOSは?
   6 Linuxの現状
   7 組み込みLinuxのワーキンググループについて
   8 LinuxとITRON仕様でのスケジューリングの違い
   9 ドライバの違い
   10 オープンソース系のITRONについて
   column1 組み込みLinux普及の原動力は?
   column2 Windowsファミリについて
   column3 ハイブリッド技術は過渡的な技術か?
   column4 ハイブリッド構造の発想
   column5 最近の動向

 第15章 従来のリアルタイムOSアプリケーションを組み込みLinux上に移植するときのポイント
   1 従来のRTOSと組み込みLinuxの違い
   2 移植に際して必要なこと
   3 移植について(アプリケーション編)
   4 アプリケーションにおける禁止項目
   5 問題点

 第16章 ソフトリアルタイムシステムをリアルタイムLinuxに移行するプロセス
   1 移行ポリシー
   2 移行プロセス
   column1 EmblixリアルタイムWGについて
   column2 Linux on ITRON評価プログラム
   column3 デバイスドライバ開発について
   column4 Linuxカーネルのリアルタイム化
   column5 カーネル内の長時間ロック
   column6 システムの堅牢性

 第17章 Linux on ITRON--ハイブリッド構造の実装
   1 Linuxにおけるリアルタイム処理
   2 ハイブリッド構造
   3 ハイブリッド技術への期待
   4 Linuxを組み込みシステムへ活用する試み--Emblix
   5 OS間インターフェース
   6 ハイブリッド構造の構築
   7 リアルタイムOSとハイブリッド構造
   8 ハイブリッド構造の実装時の注意
   9 実装例
   10 その他の実装例
   11 ハイブリッド構造のシステム構築
   column1 Linux on ITRONという名称について
   column2 ハイブリッド構造とGPL
   column3 ハイブリッドアーキテクチャWGについて
   column4 希望される優先順位
   column5 筆者が行った実装
   column6 関数cli,stiについて
   column7 割り込みの共有
   column8 ハイブリッド製品

 第2部 インタビュー編

 第18章 Linuxのリアルタイム化について
   1 組み込みLinuxとサーバ/デスクトップ系Linuxの違い
   2 組み込みLinuxとリアルタイムLinuxの違い
   3 プリエンプティブ性とオーバヘッド
   4 リアルタイム性の重要度と現実のシステム開発
   5 組み込み型の一例---Hard Hat Linux
   6 高度なリアルタイムシステム用の特別なAPI の必要性
   7 マイクロカーネルについて
   8 新しいオペレーティングシステムの可能性
   9 組み込みシステム開発技術者にとって必要なことは?
   column1 MontaVista Linux 3.0について

 第19章 組み込みLinuxおよびITRONのミドルウェアと共通化
   1 LinuxとITRONの関係
   2 ミドルウェアと教育の問題
   3 ミドルウェア,ソフトウェア部品,コンポーネント
   4 教育の話
   5 ミドルウェアの共通化はどこまですべきか?
   6 ミドルウェアを共通化していく利点について
   7 コンポーネントの粒度
   8 ミドルウェアを使った開発の理想モデル
   9 組み込み技術者はどうすべきか?

 第20章 組み込みLinuxの将来について
   1 GPL/リアルタイム/ミドルウェアというキーワードについて
   2 LinuxとITRONの位置づけ
   3 組み込みLinux関連の話題
   4 組み込みLinuxの問題点の現況
   5 ユビキタスコンピューティング
   6 現場の組み込み技術者にとって重要なことは?