組込みLinuxの技術課題 -

組込みLinuxの現状と技術課題
Japan Embedded Linux Consortium
早稲田大学 理工学部 情報学科
日本エンベデッドリナックスコンソーシアム
中島 達夫
2001年3月19日
1
概要





組込みLinuxとは?
なぜ組込みLinuxか?
組込みLinuxの具体例
日本エンベッデッドリナックスコンソーシアム
今後の課題
→ 今日は研究よりもプロモーションよりを強調!
本音の部分は質問されれば答えます…
Japan Embedded Linux Consortium
組込みLinuxとは?

なぜLinuxが組込みシステムに適しているのか?






RAMディスク, カーネル・コンフィグレーション
デバイスドライバなどの動的モジュールローディング
Webブラウザなどの様々なオープンソースのミドルウエア
優れた開発環境, ターゲットと開発マシンの共有
オープンソース, マルチベンダーサポートのカーネル
組込みに適さない部分も改良が進んでいる.

商用リアルタイムサポート



リアルタイムスケジューラ, 優先度継承の解消, プリエンプタビリ
ティの改善, 高精度タイマ
MMUがないCPUのサポート, ROM化ツールのサポート
メモリフットプリントの小さいWebブラウザ, ウインドウシステム
Japan Embedded Linux Consortium
組込みLinuxを用いた製品(1)
IBM LinuxWatch
Kerbango Internet Radio
Compaq iPAQ
Japan Embedded Linux Consortium
組込みLinuxを用いた製品(4)
Ericsson Cordless Screen Phone
AdomoWing
Samsung Yopy
Agenda VR3
Japan Embedded Linux Consortium
Aplio/PRO
組込みLinuxを用いた製品(2)
AdomoPad
FrontPath ProGear
Nokia Media Terminal
Indrema Entertainment System
Screen Media FreePad
Japan Embedded Linux Consortium
組込みLinuxを用いた製品(3)
Diamond Rio
PhatNoise PhatBox
Nixdorf POS
Axis Bluetooth
"hot spot"
Japan Embedded Linux Consortium
PenguinRadio
組込みLinuxを用いた製品(4)
NOKIA
iRobot
AT&T Laboratories, Cambridge
Broadband Phone System
Japan Embedded Linux Consortium
組込みLinuxを用いた製品(5)
Specification of IMT-2000 smart phone
(SK Telecom and Seoul National University)
Display and interfaces:
StrongARM SA1110 206MHz
4" TFT LCD display
Touch panel
Bluetooth interface
Camera
Voice codec for H.323
Serial and USB ports
Software related to PDA features:
Tynux(PalmPalm's embedded Linux) based on Linux Kernel 2.4.0
Trolltech's Qt/Embedded
Opera Web browser
H.323 protocol, VoIP
S/W MP3 player
Games
Pen Recognition
Japan Embedded Linux Consortium
なぜ組込みLinuxか?(1)
• インターネット
– あらゆるサービスやデバイスが相互に接続可能
• 組み込み技術
– いつでもどこでも情報へのアクセスが可能
2つの技術の組合せにより必要な情報が
いつでもどこでも入手可能となる
Japan Embedded Linux Consortium
なぜ組込みLinuxか?(2)
個人エリア
ネットワーク
タウンエリア
ネットワーク
オフィス
ネットワーク
車載
ネットワーク
インターネット
エンタープライズ
ネットワーク
Japan Embedded Linux Consortium
ホーム
ネットワーク
なぜ組込みLinuxか?(3)
• ユビキタスコンピューティング
– ネットワークで接続された知的オブジェクト
• 様々なアプライアンス
• パーソナルモーバイルアプライアンス
• ホームアプライアンス
– 新しい技術
• コンテキストアウェアネス
– パーソナライゼーション, カスタマイゼーション
• 新しいインタラクション技術
– 拡張現実感
• 環境インフラストラクチャ
– センサーネットワーク
Japan Embedded Linux Consortium
なぜ組込みLinuxか?(4)
• インターネットスケールなユビキタスコンピューティング
• すべての知的オブジェクトは直接か間接的にインターネッ
トに接続される
– 様々なタイプのアプライアンス
– 様々なタイプのネットワーク
– 様々なタイプの要求
→ 異機種性が最も大切なキーポイントとなる!!
→ 再利用可能なソフトウエア構築のためにはCOTSミドルウエアやオ
ペレーティングシステムを採用すべき
→ COTSソフトウエアは様々なプラットフォーム上に移植可能であるべ
きである.
Japan Embedded Linux Consortium
なぜ組込みLinuxか?(5)
• ユビキタスコンピューティング環境を構築するために必要な
インフラストラクチャに向けた課題
• Universal Software Substrate
• Universal API, Extremely Portable Component
• COTS Software such Linux, Java, CORBA
• Seamless Spaces
• Context Aware Service/Device Composition
• Universal Interaction/Communication
• Infrastructure Services
• Scalable, Distributed, Highly Available Application Specific
Services Infrastructure
• Service Integration, Media Fusion, Transcoding Gateway,
Japan Embedded Linux Consortium
なぜ組込みLinuxか?(6)
早稲田大学中島研究室の取り組み
COTS
既存COTSの
透過的な拡張
C, C++, Java
言語
OS
コンテキスト依存性
Linux
拡張性, 適応性
ミドルウエア
Java, CORBA
移植性
QOS(Real-Time, Security,
Fault-Tolerance)
TCP/IP
ネットワーク
ウルトラポータブルなソフトウエアをいかに作るか?
Japan Embedded Linux Consortium
なぜ組込みLinuxか?(7)
25
20
15
10
5
0
%
LinuxDevices.com
Japan Embedded Linux Consortium
Source is Available
No Run-Time Cost
Linux is more Robust
Linux has excellent networking support
There are more drivers and tools available
It's not from Microsoft
Lots of Programmers are Linux-savy
Other
組込みLinuxを用いたシステム(1)
組み込みインターネット
Webブラウザ・サーバ
ウインドウ
システム
HTTP, SMTP…
ネットワークシステム
Japan Embedded Linux Consortium
組込みLinux
組込みLinuxを用いたシステム(2)
A/V情報家電
HAVi
ウインドウ
システム
Java仮想マシン/ライブラリ
組込みLinux
Japan Embedded Linux Consortium
組込みLinuxの具体例(1)
• Lineo uC68EZ328 Single Inline
Microcontroller Module
• CPU
– DragonBallEZ(2.7MIPS)
• メモリ
– 2Mb FLASH ROM
– 8Mb RAM
• 入出力
– CrystalLan CS8900A(Ethernet)
– RS232-C, LCD
Japan Embedded Linux Consortium
組込みLinuxの具体例(2)

Linux on PDA


Compaq iPAQ H3600 PDA
StrongARM, WindowCE
www.handhelds.org
Japan Embedded Linux Consortium
MP3 Player
組込みLinuxの具体例(3)

X Scribble Project
 フリーの手書き入力ソフトウエア
Japan Embedded Linux Consortium
組込みLinuxの具体例(4)

Microwindows on iPAQ
 Microwindows
 Nano-X
 小さなXコンパチの
ウインドウシステム
 FLTK(www.fltk.org)
 組みこみ向けの
GUIツールキット
 ViewML(www.viewml.org)
 組みこみ向けのブラウザ
www.microwindows.org
 Qtコンパチブルレイヤ
Japan Embedded Linux Consortium
組込みLinuxの具体例(5)

HAVi on Linux
アプリケーション
HAVi
JavaVM
標準PC
Linux
IEEE1394
デジタルテレビ
チューナ
エミュレータ
MPEG2
Encoder
Windows98
Japan Embedded Linux Consortium
NTSC
アナログ
テレビ
デジタルテレビ
ディスプレイ
エミュレータ
Linux
組込みLinuxの具体例(6)
MST2000 早稲田大学ブース
Japan Embedded Linux Consortium
日本エンベッデッドリナックスコンソーシアム
組込みLinuxに関する産学協同のコンソーシアム

現在約80組織が加盟

組込みLinuxの普及促進

組込みLinuxの周辺技術の標準化

成果は基本的にオープン(仕様はすべてオープン)

国内外のLinux関係, 及び, 組込み/リアルタイム 関
連団体との情報交換

学術団体, 大学の研究室との共同

http://www.emblix.org/

Japan Embedded Linux Consortium
コンソーシアムの意義
組込み技術のオープンソース化の推進

組込みOS, リアルタイム化, ミドルウエア

組込みLinux上の様々な技術の標準化

カーネル内, カーネルAPI, ミドルウエア

組込みLinuxに関する技術の情報交換の場

組込み機器メーカ, 組込みLinuxディストリビュータ,
ツールベンダ

Japan Embedded Linux Consortium
コンソーシアムの組織
Japan Embedded Linux Consortium
コンソーシアムの活動
ワーキンググループ

開発環境ワーキンググループ

リアルタイムワーキンググループ

ハイブリッドアーキテクチャワーキンググループ
(Linux on ITRON)

専門小委員会

技術調査小委員会

法務小委員会

Japan Embedded Linux Consortium
リアルタイムワーキンググループ




リアルタイムLinuxの調査
 リアルタイム性の違い, アーキテクチャの違い
 どのようなときにどのようなアーキテクチャが適して
いるのか?
リアルタイム向けデバイスドライバ作成ガイドライン
 リアルタイムシステムに適したLinuxデバイスドライバの
作成手法.
リアルタイム向けミドルウエア作成ガイドライン
 リアルタイムに適したミドルウエアをLinux上に構築す
る場合の作成手法.
その他の項目の検討
Japan Embedded Linux Consortium
ハイブリッドアーキテクチャWG
Linux
プロセス
通信チャネル
Linuxカーネル
ITRONカーネル
Japan
Embedded Linux
Consortium
Japan
JapanEmbedded
EmbeddedLinux
LinuxConsortium
Consortium
ITRONタスク
組込みLinuxの将来

現在の組込みLinuxの普及は様々な企業がコンポーネン
トを提供していることに起因する
 アマチュアプログラマによるハッキングの成果ではない.
→ オープンソースを世の中が見とめなければLinuxに
は将来はない.
→ しかし, 既に多くの企業がオープンソースに賛同し,
製品コストを削減している.
→ 様子を見ていては後から追いつけない.
POSIXは世界標準なOSインタフェースなのでLinuxが
ベースとするPOSIXが廃れることは考えられない.
いずれにしてもほとんどのOSインタフェースはPOSIX
ベースとなる.
Japan Embedded Linux Consortium
オープンな組込みプラットフォームに向けて
インターネットと組込み技術の真の融合を実現
するためのインフラとして組込みLinuxは最適
→ 真にオープンな組込みプラットフォーム




様々なソフトウエアコンポーネントの普及
問題点の早期発見, マルチベンダサポート
産学共同でのソフトウエア開発
→ 技術促進のための組織の重要性


中立的な情報収集, 問題点の指摘
先行技術の実験等, 組込みLinux技術に関する
共同研究所的な役割
Japan Embedded Linux Consortium
オープンな組込みプラットフォームに向けて
OSGi, HAVi,
Jini, UPnP
Java, CORBA
Web Browser,
HTTP, SSL, POP
SMTP, SQL….
Linux, IPv4, IPv6
XHTML, XML,
XSTL, XMLScheme
IEEE1394, 802.11
ATM, xDSL..
COTSの活用
オープンソースの促進
ポータブルソフトウエアの研究
Japan Embedded Linux Consortium