計算機応用技術:組込み制御と通信 組込み機器の制御用(マイクロ)コンピュータ 通信機器の制御用(マイクロ)コンピュータ パソコンとはどこが違うか ソフトウェアの開発環境と実行環境 開発環境 = 実行環境 パソコンを含む汎用機 開発環境 ≠ 実行環境 組込み機器などの民生品 通信機器 通信機器&組込み制御機器=携帯電話 アナログ方式 通話が 中心 自動車電話 ディジタル方式 CDMA方式 通話+低速 データ通信 携帯電話(含むPHS) 利点)電子技術の進歩により端末が小型化.徐々に携帯可能.PHS(ディジタル 式家庭用コードレス電話機の子機として開発.PHS20ミリワット)と比較しても,電 波の出力が強く(携帯200∼800ミリワット),利用可能な地区も広い. 欠点)利用者に対して周波数の割り当てが少なく,特に人通りの多い都市部の 大きな鉄道駅の周辺や繁華街では,通話用のチャンネルがひっ迫(輻輳)するな ど,圧縮量の増加により音質劣化の欠点有り. CDMA(Code Division Multiple Access)方式:符号分割多重アクセス方式. 携帯電話で扱える電波の幅を拡大し,多量データ送受信の効率化を実現 携帯電話の進化 草創期 デジタル携帯電話 デジタル自動車電話 音声と 高速データ通信 (∼384kbps) デジタル携帯電話 Java搭載 第3 第3世代 世代 通話・通信(計算機) の高度な融合 円熟期 2000 年代 音声と 低速データ通信 (∼64kbps) AMPS(北米) モトローラ) TACS( など HiCap (NTT) PDC (NTT) 欧州) GSM( PHS iモードなど 第2 第2..5 5世代 世代 成熟期 1990 年代 アナログ携帯電話 アナログ自動車電話 第2 第2世代 世代 成長期 1980 年代 音声通信中心 第1 第1世代 世代 超高速データ通信 (∼2 Mbps) 第4 第4世代 世代 画像・広帯域サービス を含む次世代携帯電話 cdmaOne(KDDI) iアプリなど IMT-2000標準規格 W-CDMA(DoCoMo) CDMA2000(Qualcomm) 通信速度&音質の向 上,国際ローミング, USIMカードの採用 第3世代では2つの通信方式が世界規模で競合 W‐CDMA CDMA2000 (日欧方式) (北米方式) NTTドコモとノキア, エリクソンなど,欧 州メーカーが推奨. 日本では NTTドコモ とJ-フォンが採用. モトローラ,クアル コムなど,米国のメー カーが推奨.日本で はKDDI が採用. VS NTT ドコモ NTTドコモ Jフォン J-フォン JJスカイ スカイ 互換性 (2002 年より)) (2002年より 互換性が ない K KD DD DI I 「 au 「 」 au」 EZweb EZweb KDD,DDI,IDO, ツーカー KDD,DDI,IDO,ツーカー が が2000 年10 月合併 2000年 10月合併 あり 同じCDMA技術を使用しているので両方向 に対応するデュアル端末の開発は容易 国際ローミングサービスは実現可能 競合する2つの方式の長所・短所について W-CDMA方式 長所―GSMの発展型であるため,国際ローミングという点で 有利(国内でも最大手のドコモが採用) 短所―基地局の交換で設備投資のコストが増大する CDMA2000方式 長所―既存の無線システムが使えるため,通信料金に反映 できる 短所―国際ローミングという点で劣る ・日本が実験場の可能性?最も早く導入されるため ・真の勝者の条件は? 如何にしてコンテンツを充実させ,顧客を惹きつけるか! 第2世代(含む第2.5世代)と第3世代との共存 ◆第3世代携帯電話は高機能ながら,現時点ではコスト高. 必ずしも多くのユーザには不必要 ◆第2世代でも十分なユーザも少なくない 第2世代から第3世代への移行はゆるやか ◆サービスの向上は諸技術(ハード+ソフト)の統合が必須 ◆第2世代と第3世代が混在する時期には,特に,どちらの 携帯電話にでも対応するサービスの提供が不可欠 では,どのような技術でこのようなサービスを提供するか? Windows PCの場合 携帯電話の場合 通信やサービスの規格by通信事業社 CPU 電話機の製作byメーカ各社 メモリ Disk Windows or Linux マザーボード ハードウェア(およびソフトウェア)の 規格が統一されており,部品を揃え ればPCは組み立て可能 専用画面,特殊キーボード,極小の メモリやCPU(ほとんど非市販品) 極限の小型化,消費電力の抑制, 強度の確保,安価で高性能 しかも製品サイクルが短い! Java(特にプログラミング)に関する 基礎知識について (必要ならば説明するが,あまり時間を要する ようであれば,受講生各自に一任) TM Java の目指す応用分野 (Computing, Communication, Control) J2SE CLDC CDC J2ME 技術用語の説明(1) • J2SE: Java2 Platformの標準仕様(Standard Edition) 主としてパソコン向けのJavaの仕様 • J2ME:Java2 Platformの組込み仕様(MicroEdition) 主として家電製品向けのJavaの仕様(CDC+CLDCから成る) • CDC:Connected Device Configuration ネットワークに接続された機器向けのJava リッチな家電製品向けの仮想マシン構成 J2SE とほぼ同程度,GUIなどに制約があり,扱うメモリも小さい • CLDC:Connected Limited Device Configuration ネットワークに接続された制約のある機器向けのJava 軽微な家電,特に携帯電話向けの仮想マシン構成 J2SE やJ2ME/CDCから削られた機能も多い(メモリも256KB程度で動作可能) TM Java の実行環境(仮想マシンとライブラリ) ライブラリ 仮想マシン(VM) メモリサイズ・機能 J2EE J2SE J2ME CDC CLDC Personal Profile Car Profile ICカード向け JavaCard DoJa MIDP HotSpot JVM CVM TM KVM Java 仮想マシンの種類 CardVM 技術用語の説明(2) • J2EE:Java2 Platformの企業向け仕様( Enterprise Edition) 主としてサーバ向けのJavaのための仕様 • HotSpot:J2EE Platformのための仮想マシン Java言語で開発されたアプリケーションソフトを高速に動作させる技術. Java言語で作成されたプログラムは,「バイトコード」と呼ばれるOSやハードウェアに Java仮想マシン」(JVM)と呼ばれる 依存しない中間形式に変換され、実行時には「 ソフトウェアが,そのコンピュータで実行可能な形式(ネイティブコード)に変換しな がら実行する. このため,はじめからそのプラットフォームで実行可能なプログラムを生成するC言語 など他の言語に比べて,仮想マシンによる変換にかかる手間の分だけ,性能が 劣ってしまう可能性あり. HotSpotはJava仮想マシンに内蔵された機構で,バイトコードのうち,実行に時間のか かる繰り返し処理などの部分を,実行前にあらかじめネイティブコードに変換して おくことにより,C言語などで開発されたプログラムとほとんど変わらない実行速 度を実現する技術である. Javaの生みの親であるSun Microsystems社が,1997年にLongView Technologies社 を買収して取得した技術で,1999年に実際の製品としてリリースされた. CDCとCLDCとの機能比較 CDCの仕様 CLDCの仕様 CPU性能 32ビットCPU 16ビットor32ビットCPU 実装メモリ 2MB∼4MB程度 160KB∼512KB程度 仮想機械 CVM KVM 仮想機械の J2SEにかなり近い 性能 J2SEと比較すると制約あり(例えば) • 浮動小数点機能がなし • Javaバイトコードの正当性検証機能 がVMの外へ移動するよう設計 • SserialzationやRMIが省略 ライブラリ PC向けのサブセット ごく基本的なライブラリのみ 開発環境 J2SDKを使用 J2SDKを使用( +J2ME Wireless Toolkit) RMI: Remote Method Invocation,ネットワーク経由でのクラス遠隔実行機能 技術用語の説明(3) • CVM:J2ME CDC/Personal Profile準拠のJava実行環境 J2SE の仮想マシン(JVM)とほぼ同程度の機能を提供 電力やCPU性能+実装めもりに余裕のある機器向き:高機能家電,高機能 PDA,自動車の制御部など 将来的には高機能携帯電話には搭載される可能性あり • KVM :J2MEのコア KVM の名前はそのサイズが数 10K バイトの単位であることに由来. KVM は合計メモリーが数 100K バイト程度の16/32 ビットRISC/CISC マイクロ コントローラに適. 一般にデジタル携帯電話や小型の POS 端末などに使用 (現在,ほぼ総ての携帯電話がKVMを搭載しており,現状ではCVMは敬遠され ている) どちらも,SUNが提供する標準実装のVM.但し,他社が仕様に従って,別の仮想 マシンを開発することは可能である.しかし,この場合互換性のチェックを経る必要あり コンフィグレーション(Configuration)とプロファイル(Profile) Profile J2SE ライブラリ CDC ライブラリ CVM CLDC ライブラリ KVM Configuration JVM J2SE CDC CLDC 技術用語の説明(4) コンフィグレーション: ン 仮想機械の仕様+基本的なクラスライブラリの仕様 プロファイル: プロファイル コンフィグレーションの機能を拡張するためのクラスライブラリの仕様 クラスライブラリ: Javaではクラスを開発者以外でも利用できるようにすることが重要.そのため, 様々なプログラムからクラスを利用できるにする仕組みが必要.i mpor t 文を 使うと他のプログラムからクラスを呼び出すことが可能. 複数のクラスからプログラムを構成し,相互に利用し合うようにするため,まと まった機能を有するクラスを集約して特定のフォルダに整理し,どのプログラ ムからでも,一定の手続きで呼び出せれる仕組みをJavaは提供. こうして整理されたクラス群をクラスライブラリと呼ぶ. コンフィグレーションとプロファイルの具体的説明 CDCというコンフィグレーションを使用して,ディジタルテレビ(のある機能) を設計 する場合を考える. Javaとしての基本的機能は既にCDCに入っているので,それにディジタルテレビ 専用の機能追加を図ることになる.一般に,追加機能は,既に業界標準で規定さ れており,メーカが独自に定めると,Javaアプリの流通が阻害され,ユーザの利便 性が低下する.しかも,独自方式では開発コスト自体が高騰し,メリットは少ない. そこで,業界で話し合い,ディジタルテレビのための標準機能を先に定め,それを 基に,「ディジタルテレビ・プロファイル」のためのJavaライブラリ規格を定める. その結果,ディジタルテレビ用のJavaプログラム(アプリ)はメーカが異なっても同 じものが動作する.それを利用すれば,放送局などが,テレビのメーカを意識せず, プログラムを配布することが可能となる. 何故,コンフィグレーションとプロファイル という2つの概念が必要となるか? ディジタルテレビ用 プログラム群(相互 に互換性あり) ディジタル テレビ用 プロファイル Prog(A) Prog(B) Prog(C) PDA用プログラム群 (相互に互換性あり) Prog(K) Prog(L) PDA用 プロファイル Foundation Profile Configuration 例)J2ME/CDCの仮想機械 3社3様のハードウェア 開発するハードウェアに 対応したコンフィグレー ションの採用 同じプロファイルを持 つ製品間でプログラム の共有を実現 メーカの設計・開発するハードウェアを敢 えて統一しなくても,Javaを活用することで, 全く異なるCPUやメモリ,そしてOS環境で, 同じプログラムを流通させることが可能 i モード対応Javaプ ログラム(i アプリ) i モード対応 Java専用 Profile KDDI拡張 J-SkyJava ezplus クラスライブ Vアプリ ラリ JSCL MI DP Configuration J2ME/CLDCの仮想機械+基本クラスライブラリ 技術用語の説明(5) MIDP:Mobile Information Device Profile 移動情報端末用プロファイル.CLDCをコンフィグレーション に採用した機器を前提としたプロファイル.小さな画面,テ ンキー程度のキーボードを有する機械を対象.携帯電話を 中心としたプログラムを異なるハードウェアのマシンで共通 化できるように考えらる. JSCL:J-Phone Specific Class Library J-Phone(現,Vodafone)専用のクラスライブラリ i モード対応のJavaの構成図 i アプリの動作環境(ネットワーク環境)について TM DocomoやVodafone でのJava アプリ開発のための環境 開発実行環境(コンパイラやインタープリタJavaVM) エミュレータ環境(Javaアプリのエミュレーション)
© Copyright 2024 Paperzz