組み込みLinux入門
開発環境/デバイスドライバ/ミドルウェア/他OSからの移行
日本エンベデッドリナックスコンソーシアム 監修
B5判 272ページ
定価2,305円(税込)
JAN9784789833271
2003年4月1日発行
大変恐縮ですが,こちらの商品は品切れ絶版となりました.
サーバ用途でかなり普及した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 現場の組み込み技術者にとって重要なことは?