組み込み Linux - 起動高速化 斬新な高速起動ソリューション Warp!! 機能/仕様

 

PRODUCTS&SERVICES
Products
Services
組み込みLinux超高速起動ソリューション Warp!!

Warp!! 機能/仕様 <Warp!! が実現する高速起動>

  Warp!!起動


    2次記憶装置(Flash等)に確保したスナップショット領域に、アプリケーションを起動した状態でのシステムメモリおよびHWの状態(レジスタ の内容)のスナップショットイメージを保存しておき、電源ON時に保存したスナップショットイメージからシステムメモリを一挙に復元し起動高速化を実現。
    一挙にシステムメモリを復元する事により、初期化コードの実行の軽減、メモリアクセスの軽減がされ高速化の可能性が期待できます。
通常起動と高速起動の比較

  スナップショット保存機能


    電源ON 時にスナップショットイメージ*1 からシステムメモリを一挙に復元することで高速起動を実現しています。このスナップショットの保存に組み込みLinux ディストリビュータであるリネオならではのテクノロジーがあります。

  • ターゲット単体でスナップショット保存が実行可能
  • 製品に最適なスナップショット保存モードを選択可能
  • ・ 保存対象となるメモリサイズを縮小
  • 実際に使用されているメモリのみを保存するため、搭載メモリサイズに依存しません。
  • ・ スナップショットの圧縮
  • 約1/5 ~ 1/2 に圧縮可能( 圧縮率はスナップショットデータに依存)
  • IO との並列処理による高速処理を実現
  • ・ 高速圧縮保存モードをサポート
  • 複数のスナップショットをサポート
  • セパレートモード*2で起動をさらに高速化
  • SMP/AMP に対応可能
  • SDRAM 全体を保存対象にすることが可能
  • スナップショット保存先として様々なストレージに対応
  • RAM、NOR/NAND Flash、SD、eMMC、SATA、PATA
     
高速起動のポイント

  • *1 スナップショットとは
  • アプリケーションが起動した状態でのシステムメモリおよび H/W の状態(レジスタの内容)をイメージとしてキャプチャしたものです。スナップショットイメージは2次記憶装置(Flash 等)にスナップショット専用に確保した領域に保存されます。
  • *2 セパレートモードとは
  • スナップショットの対象メモリを2つのグループに分割することで、電源投入直後に転送が必要なスナップショットの量を少なくする機能です。
     
  •   3つの起動方法を選択可能


    • ハイバネーションモード
    • 電源OFF 時の状態に復帰します。
    • 高速起動モード
    • 毎回同じスナップショットイメージから起動します。
    • Android モード
    • Android System の理想的な高速起動を実現します。
      高速起動を可能にするだけでなくユーザの設定値の反映も可能です。
      終了時に明示的な保存処理は不要です。
       
    3つの起動方法を選択可能
     

      Multi-Core 対応


    • スナップショット分割保存
    • SoC のMulti-Core 化は今後ますます進むことが予測されますし、Storage 規格もSD3.0、eMMC4,5 以降では大幅に高速化が進みます。Warp!!5 ではこれらのメリットを起動高速化に最大限に活用できる仕組みとして、スナップショットの分割保存に対応しました。
    • Multi-Core
    • 高速なストレージデバイス上にスナップショットをいくつかに分割して保存し、これらにCPU Coreを割り当てて、Multi-Core で一挙にメモリを復元することが可能です。
    • Multi-Core / Multi-Storage
    • バスの干渉の少ない低速なストレージデバイスのいくつかにスナップショットを分割保存し、これらにCPU Coreを割り当てて、Multi-Coreで一挙にメモリを復元することでI/O の最適化が可能です。
    • User APIのMulti-Core利用
    • CPU Coreをユーザスレッド専用に割り当てることで、効率的なシステムの初期化が可能になりました。例えば、サブシステムを複数抱えた複雑なシステムにおいて、各サブシステムとの同期合わせ等がLinux起動前に実現可能です。
       
    Multi-Core 対応
     

      UserAPI サポート


      ユーザスレッドにより、H/W の並列初期化や起動後に直ちに実行させたいアプリケーションを動作させることが可能です。また、Warp!! Software Development kitにUserAPIのサンプルプログラムが付属しています。
    • Power On 後、早期段階でスナップショットの読出し伸長とユーザスレッドを並列実行
    • ユーザは定期的に呼び出されるファンクションを設定し、例えばFPGAへデータ転送するDMAの再投入などの処理が可能
       
    UserAPI サポート
     

      スナップショットSwitch 機能


      これまでスナップショット切り替えはbootloader レベルでのみ可能でしたが、kernel コマンドラインからスナップショット切り替えの指示が可能になりました。Exchange Modeでは、ハイバネーションの様に最終状態を保存後、別のスナップショットに切り替えます。そのため複数のOSの状態を保ちながら、OSを切り替えることが可能です。一方 Overwrite Modeでは保存を行いませんので、高速で複数のOSを切り替えることができます。ただし切り替え後は常に初期起動状態となります。
       
    スナップショットSwitch 機能
     
    スナップショットSwitch 機能
     

      システム条件


      以下を必要とします。
    • Hibernation Driver を格納する領域(ROM 64K)
      ルートファイルシステム用の記憶領域以外にシステムメモリのスナップショットを保存する領域
    • bootloader
    • *Hibernation Driver の呼出の追加
    • kernel
    • *各種ドライバは、PMのSuspend/Resume の実装
      *Hibernation Driver 呼び出し等のWarp!!用パッチ適用
       

      様々なCPU コアへの対応


      Warp!!の優位性と柔軟性を示す様々なCPUコアへの対応
       
      ARM Cortex-A7 / Cortex-A15 / big.LITTLE
      Cortex-A5 / Cortex-A8 / Cortex-A9 / ARM11 / ARM9 / Marvell ARMADA 16x
      SuperH SH-4 / SH-4A / SH-4AL
      Power Architecture Power QUICC II Pro / Power QUICC-III / 440 / 464 / QorIQ P1022
      MIPS MIPS24K / MIPS34K / MIPS74K
      Intel ATOM
    カテゴリートップ
    TOP
    次
    Warp!!の速さを体感 デモ動画
     
    LinuxLink

    Linuxを開発し製品に組み込むために必要となるソフトウェア、各種ツールそしてドキュメントが用意されており、組み込みLinux開発を始めたばかりの開発者からエキスパートまで、幅広く利用いただけます。


    LL-rescueLL-rescue

    (Lineo Linux-rescue:エルエルレスキュー)Linux搭載の製品開発において発生する様々な課題/問題を解消するためのソリューションです。


    VzetVzet
    Linuxシステムは、複数のプロセスで構成される多くのアプリケーションが動作しており、“Vzet”は、このプロセス(スレッド)の『振る舞い』を『ビジュアルに表示』することを可能にします。


     
    Warp!!バイナリイメージファイルダウンロード

    Timesys    Mimer   MITSUBISHI   NewSoft   Belcarra

    ARM        Freescale        Renesas       jla         Linux Fundation


    Copyright © 2009 Lineo Solutions, Inc. All rights reserved.